mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
mmc: sdhci_am654: Move tuning_loop to local variable
The tuning_loop field in struct sdhci_am654_data is only used within
sdhci_am654_platform_execute_tuning() as a loop counter that is
initialized to 0 in sdhci_am654_init(). Since it shouldn't persist across
function calls, otherwise every failure expends its "budget", move it to a
local variable and remove the struct field along with the now-unnecessary
initialization.
Signed-off-by: Diogo Ivo (Schneider Electric) <diogo.ivo@bootlin.com>
Reviewed-by: Judith Mendez <jm@ti.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: de31f6ab68 ("mmc: sdhci_am654: Reset Command and Data line after tuning")
Cc: stable@vger.kernel.org
Signed-off-by: Ulf Hansson <ulfh@kernel.org>
This commit is contained in:
parent
5d13299047
commit
ff894dced1
|
|
@ -151,7 +151,6 @@ struct sdhci_am654_data {
|
|||
u32 flags;
|
||||
u32 quirks;
|
||||
bool dll_enable;
|
||||
u32 tuning_loop;
|
||||
|
||||
#define SDHCI_AM654_QUIRK_FORCE_CDTEST BIT(0)
|
||||
#define SDHCI_AM654_QUIRK_SUPPRESS_V1P8_ENA BIT(1)
|
||||
|
|
@ -576,13 +575,14 @@ static int sdhci_am654_platform_execute_tuning(struct sdhci_host *host,
|
|||
struct sdhci_am654_data *sdhci_am654 = sdhci_pltfm_priv(pltfm_host);
|
||||
unsigned char timing = host->mmc->ios.timing;
|
||||
struct device *dev = mmc_dev(host->mmc);
|
||||
unsigned int tuning_loop = 0;
|
||||
int itapdly;
|
||||
|
||||
do {
|
||||
itapdly = sdhci_am654_do_tuning(host, opcode);
|
||||
if (itapdly >= 0)
|
||||
break;
|
||||
} while (++sdhci_am654->tuning_loop < RETRY_TUNING_MAX);
|
||||
} while (++tuning_loop < RETRY_TUNING_MAX);
|
||||
|
||||
if (itapdly < 0) {
|
||||
dev_err(dev, "Failed to find itapdly, fail tuning\n");
|
||||
|
|
@ -806,9 +806,6 @@ static int sdhci_am654_init(struct sdhci_host *host)
|
|||
regmap_update_bits(sdhci_am654->base, CTL_CFG_3, TUNINGFORSDR50_MASK,
|
||||
TUNINGFORSDR50_MASK);
|
||||
|
||||
/* Use to re-execute tuning */
|
||||
sdhci_am654->tuning_loop = 0;
|
||||
|
||||
ret = sdhci_setup_host(host);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user