summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-05-26 12:11:27 +0200
committerMacpaul Lin <macpaul@gmail.com>2013-07-24 11:49:17 +0800
commitdbb713baa608d3397e56bc32b26d2efe07c756ee (patch)
treef7df3803c5fe81baa1ec8aca9cacf6e56ebb1068
parentbea2868f5e5f994db3f6cf23a6111cfd6ac79fc3 (diff)
downloadu-boot-imx-dbb713baa608d3397e56bc32b26d2efe07c756ee.zip
u-boot-imx-dbb713baa608d3397e56bc32b26d2efe07c756ee.tar.gz
u-boot-imx-dbb713baa608d3397e56bc32b26d2efe07c756ee.tar.bz2
mmc: ftsdc010_mci: fix build error if CONFIG_FTSDC010_SDIO is not defined
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 <dantesu@faraday-tech.com> Cc: Macpaul Lin <macpaul@andestech.com> Signed-off-by: Gabor Juhos <juhosg@openwrt.org> Reviewed-by: Kuo-Jung Su <dantesu@faraday-tech.com>
-rw-r--r--drivers/mmc/ftsdc010_mci.c6
1 files changed, 5 insertions, 1 deletions
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