]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
mmc: zynq_sdhci: Replace mmc->dev->seq with deviceid
authorAshok Reddy Soma <ashok.reddy.soma@xilinx.com>
Wed, 28 Jul 2021 11:48:41 +0000 (05:48 -0600)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 28 Jul 2021 13:43:38 +0000 (15:43 +0200)
It is incorrect to use mmc->dev->seq to identify SD0 or SD1.
We are already reading "device_id" from DT to identify whether it is SD0
or SD1. It is stored in priv->deviceid.

Replace mmc->dev->seq with priv->deviceid and get node_id as per that.

Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com>
drivers/mmc/zynq_sdhci.c

index 18a895c72b4d3b5035d27495c5eae06b6df84ef1..f77764d7e322b2ca455d8250227dd02d34ab8dca 100644 (file)
@@ -144,9 +144,9 @@ static int arasan_sdhci_execute_tuning(struct mmc *mmc, u8 opcode)
        struct mmc_cmd cmd;
        struct mmc_data data;
        u32 ctrl;
-       u8 node_id = mmc->dev->seq ? NODE_SD_0 : NODE_SD_1;
        struct sdhci_host *host;
        struct arasan_sdhci_priv *priv = dev_get_priv(mmc->dev);
+       u8 node_id = priv->deviceid ? NODE_SD_1 : NODE_SD_0;
        char tuning_loop_counter = SDHCI_TUNING_LOOP_COUNT;
 
        debug("%s\n", __func__);
@@ -230,7 +230,8 @@ static int sdhci_zynqmp_sdcardclk_set_phase(struct sdhci_host *host,
 {
        struct mmc *mmc = (struct mmc *)host->mmc;
        struct udevice *dev = mmc->dev;
-       u8 node_id = dev->seq ? NODE_SD_0 : NODE_SD_1;
+       struct arasan_sdhci_priv *priv = dev_get_priv(mmc->dev);
+       u8 node_id = priv->deviceid ? NODE_SD_1 : NODE_SD_0;
        u8 tap_delay, tap_max = 0;
        int timing = mode2timing[mmc->selected_mode];
        int ret;
@@ -301,7 +302,8 @@ static int sdhci_zynqmp_sampleclk_set_phase(struct sdhci_host *host,
 {
        struct mmc *mmc = (struct mmc *)host->mmc;
        struct udevice *dev = mmc->dev;
-       u8 node_id = dev->seq ? NODE_SD_0 : NODE_SD_1;
+       struct arasan_sdhci_priv *priv = dev_get_priv(mmc->dev);
+       u8 node_id = priv->deviceid ? NODE_SD_1 : NODE_SD_0;
        u8 tap_delay, tap_max = 0;
        int timing = mode2timing[mmc->selected_mode];
        int ret;