The FTSDC010_DCR_FIFO_RST symbol is conditionally
defined in <faraday/ftsdc010.h> and it is available
available when CONFIG_FTSDC010_SDIO is enabled.

However the actual driver code unconditionally uses
the FTSDC010_DCR_FIFO_RST constant and this causes
build error if CONFIG_FTSDC010_SDIO is not enabled.

The following error happens when compiling for the
adp-ag101 board:

  ftsdc010_mci.c: In function 'ftsdc010_request':
  ftsdc010_mci.c:178: error: 'FTSDC010_DCR_FIFO_RST' undeclared (first use in 
this function)
  ftsdc010_mci.c:178: error: (Each undeclared identifier is reported only once
  ftsdc010_mci.c:178: error: for each function it appears in.)

The patch ensures that the FTSDC010_DCR_FIFO_RST
symbol gets used only if CONFIG_FTSDC010_SDIO is
defined.

Compile tested only.

Cc: Kuo-Jung Su <dant...@faraday-tech.com>
Cc: Macpaul Lin <macp...@andestech.com>
Signed-off-by: Gabor Juhos <juh...@openwrt.org>
---
 drivers/mmc/ftsdc010_mci.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/ftsdc010_mci.c b/drivers/mmc/ftsdc010_mci.c
index 562b14a..1fcb97c 100644
--- a/drivers/mmc/ftsdc010_mci.c
+++ b/drivers/mmc/ftsdc010_mci.c
@@ -175,7 +175,11 @@ static int ftsdc010_request(struct mmc *mmc, struct 
mmc_cmd *cmd,
                len = data->blocksize * data->blocks;
 
                /* 1. data disable + fifo reset */
-               writel(FTSDC010_DCR_FIFO_RST, &regs->dcr);
+               dcr = 0;
+#ifdef CONFIG_FTSDC010_SDIO
+               dcr |= FTSDC010_DCR_FIFO_RST;
+#endif
+               writel(dcr, &regs->dcr);
 
                /* 2. clear status register */
                writel(FTSDC010_STATUS_DATA_MASK | FTSDC010_STATUS_FIFO_URUN
-- 
1.7.10

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to