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

Commit 87d43944 authored by Sahitya Tummala's avatar Sahitya Tummala Committed by Xiaonian Wang
Browse files

mmc: sdhci-msm: Ignore data timeout error for R1B commands



Ignore data timeout error for R1B commands as there will be no
data associated and the busy timeout value for these commands
could be lager than the maximum timeout value that controller
can handle.

CRs-fixed: 473435
Change-Id: I61f7463cf09648ad9fab83437abf5004effc7758
Signed-off-by: default avatarSahitya Tummala <stummala@codeaurora.org>
[subhashj@codeaurora.org: fixed minor merge conflict]
Signed-off-by: default avatarSubhash Jadavani <subhashj@codeaurora.org>
[xiaonian@codeaurora.org: fix trivial merge conflict]
Signed-off-by: default avatarXiaonian Wang <xiaonian@codeaurora.org>
parent 16dabee0
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1933,6 +1933,7 @@ static int sdhci_msm_probe(struct platform_device *pdev)
	host->quirks |= SDHCI_QUIRK_SINGLE_POWER_WRITE;
	host->quirks |= SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN;
	host->quirks2 |= SDHCI_QUIRK2_ALWAYS_USE_BASE_CLOCK;
	host->quirks2 |= SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD;

	host_version = readl_relaxed((host->ioaddr + SDHCI_HOST_VERSION));
	dev_dbg(&pdev->dev, "Host Version: 0x%x Vendor Version 0x%x\n",
+3 −0
Original line number Diff line number Diff line
@@ -2695,6 +2695,9 @@ static void sdhci_data_irq(struct sdhci_host *host, u32 intmask)
				sdhci_finish_mrq(host, data_cmd->mrq);
				return;
			}
			if (host->quirks2 &
				SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD)
				return;
		}

		/*
+8 −0
Original line number Diff line number Diff line
@@ -440,6 +440,14 @@ struct sdhci_host {

#define SDHCI_QUIRK2_ALWAYS_USE_BASE_CLOCK		(1<<19)

/*
 * Ignore data timeout error for R1B commands as there will be no
 * data associated and the busy timeout value for these commands
 * could be lager than the maximum timeout value that controller
 * can handle.
 */
#define SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD		(1<<21)

	int irq;		/* Device IRQ */
	void __iomem *ioaddr;	/* Mapped address */