mmc: ftsdc010_mci: fix build error if CONFIG_FTSDC010_SDIO is not defined
authorGabor Juhos <juhosg@openwrt.org>
Sun, 26 May 2013 10:11:27 +0000 (12:11 +0200)
committerMacpaul Lin <macpaul@gmail.com>
Wed, 24 Jul 2013 03:49:17 +0000 (11:49 +0800)
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>
drivers/mmc/ftsdc010_mci.c

index 562b14aff84d774299f94aa0152bd8786d8d4860..1fcb97c184abd6f6a02d5a413681656ea74e2f88 100644 (file)
@@ -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