diff mbox

mmc: host: tighten some of the dependencies on SoC drivers

Message ID 20170524121556.27819-1-pbrobinson@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Peter Robinson May 24, 2017, 12:15 p.m. UTC
Cleanup and tighten some of the dependencies for SoC specific hardware, remove a
duplication on MMC_SDHI, and add COMPILE_TEST where we add SoC specifics to
ensure continued build coverage.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
---
 drivers/mmc/host/Kconfig | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Stefan Wahren May 24, 2017, 2:47 p.m. UTC | #1
Hi Peter,

Am 24.05.2017 um 14:15 schrieb Peter Robinson:
> Cleanup and tighten some of the dependencies for SoC specific hardware, remove a
> duplication on MMC_SDHI, and add COMPILE_TEST where we add SoC specifics to
> ensure continued build coverage.

i suggest to send a copy to the relevant driver / platform maintainers.

Stefan

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
kernel test robot May 24, 2017, 10:25 p.m. UTC | #2
Hi Peter,

[auto build test ERROR on linus/master]
[also build test ERROR on v4.12-rc2]
[cannot apply to next-20170524]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Peter-Robinson/mmc-host-tighten-some-of-the-dependencies-on-SoC-drivers/20170525-042816
config: i386-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from drivers/mmc/host/tmio_mmc_pio.c:53:0:
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_read16_rep':
>> drivers/mmc/host/tmio_mmc.h:264:2: error: implicit declaration of function 'readsw' [-Werror=implicit-function-declaration]
     readsw(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_read32_rep':
>> drivers/mmc/host/tmio_mmc.h:276:2: error: implicit declaration of function 'readsl' [-Werror=implicit-function-declaration]
     readsl(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_write16_rep':
>> drivers/mmc/host/tmio_mmc.h:292:2: error: implicit declaration of function 'writesw' [-Werror=implicit-function-declaration]
     writesw(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_write32_rep':
>> drivers/mmc/host/tmio_mmc.h:304:2: error: implicit declaration of function 'writesl' [-Werror=implicit-function-declaration]
     writesl(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~~
   cc1: some warnings being treated as errors

vim +/readsw +264 drivers/mmc/host/tmio_mmc.h

7445bf9e Kuninori Morimoto     2015-01-13  258  	return readw(host->ctl + (addr << host->bus_shift));
a11862d3 Simon Horman          2011-06-21  259  }
a11862d3 Simon Horman          2011-06-21  260  
a11862d3 Simon Horman          2011-06-21  261  static inline void sd_ctrl_read16_rep(struct tmio_mmc_host *host, int addr,
a11862d3 Simon Horman          2011-06-21  262  		u16 *buf, int count)
a11862d3 Simon Horman          2011-06-21  263  {
7445bf9e Kuninori Morimoto     2015-01-13 @264  	readsw(host->ctl + (addr << host->bus_shift), buf, count);
a11862d3 Simon Horman          2011-06-21  265  }
a11862d3 Simon Horman          2011-06-21  266  
2c54506b Wolfram Sang          2016-04-27  267  static inline u32 sd_ctrl_read16_and_16_as_32(struct tmio_mmc_host *host, int addr)
a11862d3 Simon Horman          2011-06-21  268  {
7445bf9e Kuninori Morimoto     2015-01-13  269  	return readw(host->ctl + (addr << host->bus_shift)) |
7445bf9e Kuninori Morimoto     2015-01-13  270  	       readw(host->ctl + ((addr + 2) << host->bus_shift)) << 16;
a11862d3 Simon Horman          2011-06-21  271  }
a11862d3 Simon Horman          2011-06-21  272  
8185e51f Chris Brandt          2016-09-12  273  static inline void sd_ctrl_read32_rep(struct tmio_mmc_host *host, int addr,
8185e51f Chris Brandt          2016-09-12  274  		u32 *buf, int count)
8185e51f Chris Brandt          2016-09-12  275  {
8185e51f Chris Brandt          2016-09-12 @276  	readsl(host->ctl + (addr << host->bus_shift), buf, count);
8185e51f Chris Brandt          2016-09-12  277  }
8185e51f Chris Brandt          2016-09-12  278  
a11862d3 Simon Horman          2011-06-21  279  static inline void sd_ctrl_write16(struct tmio_mmc_host *host, int addr, u16 val)
a11862d3 Simon Horman          2011-06-21  280  {
973ed3af Simon Horman          2011-06-21  281  	/* If there is a hook and it returns non-zero then there
973ed3af Simon Horman          2011-06-21  282  	 * is an error and the write should be skipped
973ed3af Simon Horman          2011-06-21  283  	 */
dfe9a229 Kuninori Morimoto     2015-01-13  284  	if (host->write16_hook && host->write16_hook(host, addr))
973ed3af Simon Horman          2011-06-21  285  		return;
7445bf9e Kuninori Morimoto     2015-01-13  286  	writew(val, host->ctl + (addr << host->bus_shift));
a11862d3 Simon Horman          2011-06-21  287  }
a11862d3 Simon Horman          2011-06-21  288  
a11862d3 Simon Horman          2011-06-21  289  static inline void sd_ctrl_write16_rep(struct tmio_mmc_host *host, int addr,
a11862d3 Simon Horman          2011-06-21  290  		u16 *buf, int count)
a11862d3 Simon Horman          2011-06-21  291  {
7445bf9e Kuninori Morimoto     2015-01-13 @292  	writesw(host->ctl + (addr << host->bus_shift), buf, count);
a11862d3 Simon Horman          2011-06-21  293  }
a11862d3 Simon Horman          2011-06-21  294  
2c54506b Wolfram Sang          2016-04-27  295  static inline void sd_ctrl_write32_as_16_and_16(struct tmio_mmc_host *host, int addr, u32 val)
a11862d3 Simon Horman          2011-06-21  296  {
7c42dbf3 Wolfram Sang          2016-05-27  297  	writew(val & 0xffff, host->ctl + (addr << host->bus_shift));
7445bf9e Kuninori Morimoto     2015-01-13  298  	writew(val >> 16, host->ctl + ((addr + 2) << host->bus_shift));
a11862d3 Simon Horman          2011-06-21  299  }
a11862d3 Simon Horman          2011-06-21  300  
8185e51f Chris Brandt          2016-09-12  301  static inline void sd_ctrl_write32_rep(struct tmio_mmc_host *host, int addr,
8185e51f Chris Brandt          2016-09-12  302  		const u32 *buf, int count)
8185e51f Chris Brandt          2016-09-12  303  {
8185e51f Chris Brandt          2016-09-12 @304  	writesl(host->ctl + (addr << host->bus_shift), buf, count);
8185e51f Chris Brandt          2016-09-12  305  }
8185e51f Chris Brandt          2016-09-12  306  
b6147490 Guennadi Liakhovetski 2011-03-23  307  #endif

:::::: The code at line 264 was first introduced by commit
:::::: 7445bf9e6f4e5d7755e22c7c9b06f4ae0d6160c6 mmc: tmio: tmio_mmc_host has .bus_shift

:::::: TO: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
:::::: CC: Ulf Hansson <ulf.hansson@linaro.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
kernel test robot May 25, 2017, 12:20 a.m. UTC | #3
Hi Peter,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc2]
[cannot apply to next-20170524]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Peter-Robinson/mmc-host-tighten-some-of-the-dependencies-on-SoC-drivers/20170525-042816
reproduce:
        # apt-get install sparse
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)

   include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': unknown attribute
   drivers/mmc/host/tmio_mmc.h:276:9: sparse: undefined identifier 'readsl'
   drivers/mmc/host/tmio_mmc.h:304:9: sparse: undefined identifier 'writesl'
>> drivers/mmc/host/tmio_mmc.h:276:15: sparse: not a function <noident>
   drivers/mmc/host/tmio_mmc.h:304:16: sparse: not a function <noident>
   drivers/mmc/host/tmio_mmc.h:264:9: sparse: undefined identifier 'readsw'
   drivers/mmc/host/tmio_mmc.h:292:9: sparse: undefined identifier 'writesw'
   In file included from drivers/mmc/host/tmio_mmc_pio.c:53:0:
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_read16_rep':
   drivers/mmc/host/tmio_mmc.h:264:2: error: implicit declaration of function 'readsw' [-Werror=implicit-function-declaration]
     readsw(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_read32_rep':
   drivers/mmc/host/tmio_mmc.h:276:2: error: implicit declaration of function 'readsl' [-Werror=implicit-function-declaration]
     readsl(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_write16_rep':
   drivers/mmc/host/tmio_mmc.h:292:2: error: implicit declaration of function 'writesw' [-Werror=implicit-function-declaration]
     writesw(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~~
   drivers/mmc/host/tmio_mmc.h: In function 'sd_ctrl_write32_rep':
   drivers/mmc/host/tmio_mmc.h:304:2: error: implicit declaration of function 'writesl' [-Werror=implicit-function-declaration]
     writesl(host->ctl + (addr << host->bus_shift), buf, count);
     ^~~~~~~
   cc1: some warnings being treated as errors

vim +276 drivers/mmc/host/tmio_mmc.h

a11862d3 Simon Horman      2011-06-21  260  
a11862d3 Simon Horman      2011-06-21  261  static inline void sd_ctrl_read16_rep(struct tmio_mmc_host *host, int addr,
a11862d3 Simon Horman      2011-06-21  262  		u16 *buf, int count)
a11862d3 Simon Horman      2011-06-21  263  {
7445bf9e Kuninori Morimoto 2015-01-13  264  	readsw(host->ctl + (addr << host->bus_shift), buf, count);
a11862d3 Simon Horman      2011-06-21  265  }
a11862d3 Simon Horman      2011-06-21  266  
2c54506b Wolfram Sang      2016-04-27  267  static inline u32 sd_ctrl_read16_and_16_as_32(struct tmio_mmc_host *host, int addr)
a11862d3 Simon Horman      2011-06-21  268  {
7445bf9e Kuninori Morimoto 2015-01-13  269  	return readw(host->ctl + (addr << host->bus_shift)) |
7445bf9e Kuninori Morimoto 2015-01-13  270  	       readw(host->ctl + ((addr + 2) << host->bus_shift)) << 16;
a11862d3 Simon Horman      2011-06-21  271  }
a11862d3 Simon Horman      2011-06-21  272  
8185e51f Chris Brandt      2016-09-12  273  static inline void sd_ctrl_read32_rep(struct tmio_mmc_host *host, int addr,
8185e51f Chris Brandt      2016-09-12  274  		u32 *buf, int count)
8185e51f Chris Brandt      2016-09-12  275  {
8185e51f Chris Brandt      2016-09-12 @276  	readsl(host->ctl + (addr << host->bus_shift), buf, count);
8185e51f Chris Brandt      2016-09-12  277  }
8185e51f Chris Brandt      2016-09-12  278  
a11862d3 Simon Horman      2011-06-21  279  static inline void sd_ctrl_write16(struct tmio_mmc_host *host, int addr, u16 val)
a11862d3 Simon Horman      2011-06-21  280  {
973ed3af Simon Horman      2011-06-21  281  	/* If there is a hook and it returns non-zero then there
973ed3af Simon Horman      2011-06-21  282  	 * is an error and the write should be skipped
973ed3af Simon Horman      2011-06-21  283  	 */
dfe9a229 Kuninori Morimoto 2015-01-13  284  	if (host->write16_hook && host->write16_hook(host, addr))

:::::: The code at line 276 was first introduced by commit
:::::: 8185e51f358a8dd4801b67e8c66f03eb9eeaba75 mmc: tmio-mmc: add support for 32bit data port

:::::: TO: Chris Brandt <chris.brandt@renesas.com>
:::::: CC: Ulf Hansson <ulf.hansson@linaro.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 2db84dd664d7..a2818c813499 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -134,6 +134,7 @@  config MMC_SDHCI_OF_ARASAN
 config MMC_SDHCI_OF_AT91
 	tristate "SDHCI OF support for the Atmel SDMMC controller"
 	depends on MMC_SDHCI_PLTFM
+	depends on ARCH_AT91 || COMPILE_TEST
 	depends on OF
 	help
 	  This selects the Atmel SDMMC driver
@@ -572,7 +573,6 @@  config MMC_TMIO
 
 config MMC_SDHI
 	tristate "SH-Mobile SDHI SD/SDIO controller support"
-	depends on SUPERH || ARM || ARM64
 	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
 	select MMC_TMIO_CORE
 	help
@@ -634,7 +634,7 @@  config MMC_CAVIUM_OCTEON
 
 config MMC_CAVIUM_THUNDERX
 	tristate "Cavium ThunderX SD/MMC Card Interface support"
-	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
+	depends on PCI && 64BIT && (ARCH_THUNDER || COMPILE_TEST)
 	depends on GPIOLIB
 	depends on OF_ADDRESS
 	help
@@ -836,6 +836,7 @@  config MMC_BCM2835
 
 config MMC_MTK
 	tristate "MediaTek SD/MMC Card Interface support"
+	depends on ARCH_MEDIATEK || COMPILE_TEST
 	depends on HAS_DMA
 	help
 	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
@@ -866,6 +867,7 @@  config MMC_SDHCI_BRCMSTB
 
 config MMC_SDHCI_XENON
 	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
+	depends on ARCH_MVEBU || COMPILE_TEST
 	depends on MMC_SDHCI_PLTFM
 	help
 	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.