Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 99d0928b authored by Ritesh Harjani's avatar Ritesh Harjani Committed by Pavan Anamula
Browse files

mmc: sdhci: Dont enable CDR for tuning commands



Currently we enable CDR for every read command including
for tuning procedure which is not correct (as CDR if
enabled might correct the phase during tuning and we
wont be able to detect the correct phase during tuning).

So, disable CDR for read tuning commands.

CRs-fixed: 759398
Change-Id: I051b6e3b204dde22cdc973759c3e32d0a81c369a
Signed-off-by: default avatarRitesh Harjani <riteshh@codeaurora.org>
Signed-off-by: default avatarPavan Anamula <pavana@codeaurora.org>
parent 2344e053
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -1070,9 +1070,15 @@ static void sdhci_set_transfer_mode(struct sdhci_host *host,

	if (data->flags & MMC_DATA_READ) {
		mode |= SDHCI_TRNS_READ;
		if (host->ops->toggle_cdr)
		if (host->ops->toggle_cdr) {
			if ((cmd->opcode == MMC_SEND_TUNING_BLOCK_HS200) ||
				(cmd->opcode == MMC_SEND_TUNING_BLOCK_HS400) ||
				(cmd->opcode == MMC_SEND_TUNING_BLOCK))
				host->ops->toggle_cdr(host, false);
			else
				host->ops->toggle_cdr(host, true);
		}
	}
	if (host->ops->toggle_cdr && (data->flags & MMC_DATA_WRITE))
		host->ops->toggle_cdr(host, false);
	if (host->flags & SDHCI_REQ_USE_DMA)
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@
#define MMC_READ_MULTIPLE_BLOCK  18   /* adtc [31:0] data addr   R1  */
#define MMC_SEND_TUNING_BLOCK    19   /* adtc                    R1  */
#define MMC_SEND_TUNING_BLOCK_HS200	21	/* adtc R1  */
#define MMC_SEND_TUNING_BLOCK_HS400      MMC_SEND_TUNING_BLOCK_HS200

#define MMC_TUNING_BLK_PATTERN_4BIT_SIZE	 64
#define MMC_TUNING_BLK_PATTERN_8BIT_SIZE	128