linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc
@ 2017-11-20  1:57 rui_feng
  2017-11-21 10:34 ` Daniel Bristot de Oliveira
  2017-11-21 23:53 ` kbuild test robot
  0 siblings, 2 replies; 4+ messages in thread
From: rui_feng @ 2017-11-20  1:57 UTC (permalink / raw)
  To: lee.jones, arnd, gregkh, ulf.hansson; +Cc: linux-kernel, ricky_wu, Rui Feng

From: Rui Feng <rui_feng@realsil.com.cn>

Because Realtek card reader drivers are pcie and usb drivers,
and they bridge mmc subsystem and memstick subsystem, they are
not mfd drivers. Greg and Lee Jones had a discussion about
where to put the drivers, the result is that misc is a good
place for them, so I move all files to misc. If I don't move
them to a right place, I can't add any patch for this driver.

Signed-off-by: Rui Feng <rui_feng@realsil.com.cn>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

v5 changes:
* update missing modification in mmc

---
 drivers/memstick/host/rtsx_pci_ms.c         |  2 +-
 drivers/mfd/Kconfig                         | 21 ---------------------
 drivers/mfd/Makefile                        |  4 ----
 drivers/misc/Kconfig                        |  1 +
 drivers/misc/Makefile                       |  1 +
 drivers/misc/cardreader/Kconfig             | 20 ++++++++++++++++++++
 drivers/misc/cardreader/Makefile            |  4 ++++
 drivers/{mfd => misc/cardreader}/rtl8411.c  |  2 +-
 drivers/{mfd => misc/cardreader}/rts5209.c  |  2 +-
 drivers/{mfd => misc/cardreader}/rts5227.c  |  2 +-
 drivers/{mfd => misc/cardreader}/rts5229.c  |  2 +-
 drivers/{mfd => misc/cardreader}/rts5249.c  |  3 +--
 drivers/{mfd => misc/cardreader}/rtsx_pcr.c |  2 +-
 drivers/{mfd => misc/cardreader}/rtsx_pcr.h |  2 +-
 drivers/{mfd => misc/cardreader}/rtsx_usb.c |  2 +-
 drivers/mmc/host/Kconfig                    |  4 ++--
 drivers/mmc/host/rtsx_pci_sdmmc.c           |  2 +-
 drivers/mmc/host/rtsx_usb_sdmmc.c           |  2 +-
 include/linux/{mfd => }/rtsx_common.h       |  0
 include/linux/{mfd => }/rtsx_pci.h          |  2 +-
 include/linux/{mfd => }/rtsx_usb.h          |  0
 21 files changed, 40 insertions(+), 40 deletions(-)
 create mode 100644 drivers/misc/cardreader/Kconfig
 create mode 100644 drivers/misc/cardreader/Makefile
 rename drivers/{mfd => misc/cardreader}/rtl8411.c (99%)
 rename drivers/{mfd => misc/cardreader}/rts5209.c (99%)
 rename drivers/{mfd => misc/cardreader}/rts5227.c (99%)
 rename drivers/{mfd => misc/cardreader}/rts5229.c (99%)
 rename drivers/{mfd => misc/cardreader}/rts5249.c (99%)
 rename drivers/{mfd => misc/cardreader}/rtsx_pcr.c (99%)
 rename drivers/{mfd => misc/cardreader}/rtsx_pcr.h (99%)
 rename drivers/{mfd => misc/cardreader}/rtsx_usb.c (99%)
 rename include/linux/{mfd => }/rtsx_common.h (100%)
 rename include/linux/{mfd => }/rtsx_pci.h (99%)
 rename include/linux/{mfd => }/rtsx_usb.h (100%)

diff --git a/drivers/memstick/host/rtsx_pci_ms.c b/drivers/memstick/host/rtsx_pci_ms.c
index 818fa94..a44b457 100644
--- a/drivers/memstick/host/rtsx_pci_ms.c
+++ b/drivers/memstick/host/rtsx_pci_ms.c
@@ -24,7 +24,7 @@
 #include <linux/delay.h>
 #include <linux/platform_device.h>
 #include <linux/memstick.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 #include <asm/unaligned.h>
 
 struct realtek_pci_ms {
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index fc5e4fe..80fd23f 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -916,17 +916,6 @@ config MFD_RDC321X
 	  southbridge which provides access to GPIOs and Watchdog using the
 	  southbridge PCI device configuration space.
 
-config MFD_RTSX_PCI
-	tristate "Realtek PCI-E card reader"
-	depends on PCI
-	select MFD_CORE
-	help
-	  This supports for Realtek PCI-Express card reader including rts5209,
-	  rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411, etc.
-	  Realtek card reader supports access to many types of memory cards,
-	  such as Memory Stick, Memory Stick Pro, Secure Digital and
-	  MultiMediaCard.
-
 config MFD_RT5033
 	tristate "Richtek RT5033 Power Management IC"
 	depends on I2C
@@ -940,16 +929,6 @@ config MFD_RT5033
 	  sub-devices like charger, fuel gauge, flash LED, current source,
 	  LDO and Buck.
 
-config MFD_RTSX_USB
-	tristate "Realtek USB card reader"
-	depends on USB
-	select MFD_CORE
-	help
-	  Select this option to get support for Realtek USB 2.0 card readers
-	  including RTS5129, RTS5139, RTS5179 and RTS5170.
-	  Realtek card reader supports access to many types of memory cards,
-	  such as Memory Stick Pro, Secure Digital and MultiMediaCard.
-
 config MFD_RC5T583
 	bool "Ricoh RC5T583 Power Management system device"
 	depends on I2C=y
diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
index c3d0a1b..2c1e9a6 100644
--- a/drivers/mfd/Makefile
+++ b/drivers/mfd/Makefile
@@ -18,10 +18,6 @@ obj-$(CONFIG_MFD_CROS_EC_I2C)	+= cros_ec_i2c.o
 obj-$(CONFIG_MFD_CROS_EC_SPI)	+= cros_ec_spi.o
 obj-$(CONFIG_MFD_EXYNOS_LPASS)	+= exynos-lpass.o
 
-rtsx_pci-objs			:= rtsx_pcr.o rts5209.o rts5229.o rtl8411.o rts5227.o rts5249.o
-obj-$(CONFIG_MFD_RTSX_PCI)	+= rtsx_pci.o
-obj-$(CONFIG_MFD_RTSX_USB)	+= rtsx_usb.o
-
 obj-$(CONFIG_HTC_PASIC3)	+= htc-pasic3.o
 obj-$(CONFIG_HTC_I2CPLD)	+= htc-i2cpld.o
 
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
index 8136dc7..026d712 100644
--- a/drivers/misc/Kconfig
+++ b/drivers/misc/Kconfig
@@ -518,4 +518,5 @@ source "drivers/misc/mic/Kconfig"
 source "drivers/misc/genwqe/Kconfig"
 source "drivers/misc/echo/Kconfig"
 source "drivers/misc/cxl/Kconfig"
+source "drivers/misc/cardreader/Kconfig"
 endmenu
diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
index d84819d..d6a2c09 100644
--- a/drivers/misc/Makefile
+++ b/drivers/misc/Makefile
@@ -55,6 +55,7 @@ obj-$(CONFIG_CXL_BASE)		+= cxl/
 obj-$(CONFIG_ASPEED_LPC_CTRL)	+= aspeed-lpc-ctrl.o
 obj-$(CONFIG_ASPEED_LPC_SNOOP)	+= aspeed-lpc-snoop.o
 obj-$(CONFIG_PCI_ENDPOINT_TEST)	+= pci_endpoint_test.o
+obj-$(CONFIG_MISC_RTSX_PCI)	+= cardreader/
 
 lkdtm-$(CONFIG_LKDTM)		+= lkdtm_core.o
 lkdtm-$(CONFIG_LKDTM)		+= lkdtm_bugs.o
diff --git a/drivers/misc/cardreader/Kconfig b/drivers/misc/cardreader/Kconfig
new file mode 100644
index 0000000..e7d835a
--- /dev/null
+++ b/drivers/misc/cardreader/Kconfig
@@ -0,0 +1,20 @@
+config MISC_RTSX_PCI
+	tristate "Realtek PCI-E card reader"
+	depends on PCI
+	select MFD_CORE
+	help
+	  This supports for Realtek PCI-Express card reader including rts5209,
+	  rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411.
+	  Realtek card readers support access to many types of memory cards,
+	  such as Memory Stick, Memory Stick Pro, Secure Digital and
+	  MultiMediaCard.
+
+config MISC_RTSX_USB
+	tristate "Realtek USB card reader"
+	depends on USB
+	select MFD_CORE
+	help
+	  Select this option to get support for Realtek USB 2.0 card readers
+	  including RTS5129, RTS5139, RTS5179 and RTS5170.
+	  Realtek card reader supports access to many types of memory cards,
+	  such as Memory Stick Pro, Secure Digital and MultiMediaCard.
diff --git a/drivers/misc/cardreader/Makefile b/drivers/misc/cardreader/Makefile
new file mode 100644
index 0000000..78337b2
--- /dev/null
+++ b/drivers/misc/cardreader/Makefile
@@ -0,0 +1,4 @@
+rtsx_pci-objs := rtsx_pcr.o rts5209.o rts5229.o rtl8411.o rts5227.o rts5249.o
+
+obj-$(CONFIG_MISC_RTSX_PCI)	+= rtsx_pci.o
+obj-$(CONFIG_MISC_RTSX_USB)	+= rtsx_usb.o
diff --git a/drivers/mfd/rtl8411.c b/drivers/misc/cardreader/rtl8411.c
similarity index 99%
rename from drivers/mfd/rtl8411.c
rename to drivers/misc/cardreader/rtl8411.c
index b3ae659..434fd07 100644
--- a/drivers/mfd/rtl8411.c
+++ b/drivers/misc/cardreader/rtl8411.c
@@ -23,7 +23,7 @@
 #include <linux/module.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #include "rtsx_pcr.h"
 
diff --git a/drivers/mfd/rts5209.c b/drivers/misc/cardreader/rts5209.c
similarity index 99%
rename from drivers/mfd/rts5209.c
rename to drivers/misc/cardreader/rts5209.c
index b95beec..ce68c48 100644
--- a/drivers/mfd/rts5209.c
+++ b/drivers/misc/cardreader/rts5209.c
@@ -21,7 +21,7 @@
 
 #include <linux/module.h>
 #include <linux/delay.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #include "rtsx_pcr.h"
 
diff --git a/drivers/mfd/rts5227.c b/drivers/misc/cardreader/rts5227.c
similarity index 99%
rename from drivers/mfd/rts5227.c
rename to drivers/misc/cardreader/rts5227.c
index ff296a4..024dcba 100644
--- a/drivers/mfd/rts5227.c
+++ b/drivers/misc/cardreader/rts5227.c
@@ -22,7 +22,7 @@
 
 #include <linux/module.h>
 #include <linux/delay.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #include "rtsx_pcr.h"
 
diff --git a/drivers/mfd/rts5229.c b/drivers/misc/cardreader/rts5229.c
similarity index 99%
rename from drivers/mfd/rts5229.c
rename to drivers/misc/cardreader/rts5229.c
index 9ed9dc8..9119261 100644
--- a/drivers/mfd/rts5229.c
+++ b/drivers/misc/cardreader/rts5229.c
@@ -21,7 +21,7 @@
 
 #include <linux/module.h>
 #include <linux/delay.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #include "rtsx_pcr.h"
 
diff --git a/drivers/mfd/rts5249.c b/drivers/misc/cardreader/rts5249.c
similarity index 99%
rename from drivers/mfd/rts5249.c
rename to drivers/misc/cardreader/rts5249.c
index 7fcf37b..dbe013a 100644
--- a/drivers/mfd/rts5249.c
+++ b/drivers/misc/cardreader/rts5249.c
@@ -21,7 +21,7 @@
 
 #include <linux/module.h>
 #include <linux/delay.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #include "rtsx_pcr.h"
 
@@ -738,4 +738,3 @@ void rts525a_init_params(struct rtsx_pcr *pcr)
 	pcr->reg_pm_ctrl3 = RTS524A_PM_CTRL3;
 	pcr->ops = &rts525a_pcr_ops;
 }
-
diff --git a/drivers/mfd/rtsx_pcr.c b/drivers/misc/cardreader/rtsx_pcr.c
similarity index 99%
rename from drivers/mfd/rtsx_pcr.c
rename to drivers/misc/cardreader/rtsx_pcr.c
index 590fb9a..b60bd2a 100644
--- a/drivers/mfd/rtsx_pcr.c
+++ b/drivers/misc/cardreader/rtsx_pcr.c
@@ -29,7 +29,7 @@
 #include <linux/idr.h>
 #include <linux/platform_device.h>
 #include <linux/mfd/core.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 #include <linux/mmc/card.h>
 #include <asm/unaligned.h>
 
diff --git a/drivers/mfd/rtsx_pcr.h b/drivers/misc/cardreader/rtsx_pcr.h
similarity index 99%
rename from drivers/mfd/rtsx_pcr.h
rename to drivers/misc/cardreader/rtsx_pcr.h
index ec784e0..b0691c9 100644
--- a/drivers/mfd/rtsx_pcr.h
+++ b/drivers/misc/cardreader/rtsx_pcr.h
@@ -22,7 +22,7 @@
 #ifndef __RTSX_PCR_H
 #define __RTSX_PCR_H
 
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 
 #define MIN_DIV_N_PCR		80
 #define MAX_DIV_N_PCR		208
diff --git a/drivers/mfd/rtsx_usb.c b/drivers/misc/cardreader/rtsx_usb.c
similarity index 99%
rename from drivers/mfd/rtsx_usb.c
rename to drivers/misc/cardreader/rtsx_usb.c
index 691dab7..e881209 100644
--- a/drivers/mfd/rtsx_usb.c
+++ b/drivers/misc/cardreader/rtsx_usb.c
@@ -23,7 +23,7 @@
 #include <linux/usb.h>
 #include <linux/platform_device.h>
 #include <linux/mfd/core.h>
-#include <linux/mfd/rtsx_usb.h>
+#include <linux/rtsx_usb.h>
 
 static int polling_pipe = 1;
 module_param(polling_pipe, int, S_IRUGO | S_IWUSR);
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 8c15637..8b458b1 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -824,14 +824,14 @@ config MMC_USDHI6ROL0
 
 config MMC_REALTEK_PCI
 	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
-	depends on MFD_RTSX_PCI
+	depends on MISC_RTSX_PCI
 	help
 	  Say Y here to include driver code to support SD/MMC card interface
 	  of Realtek PCI-E card reader
 
 config MMC_REALTEK_USB
 	tristate "Realtek USB SD/MMC Card Interface Driver"
-	depends on MFD_RTSX_USB
+	depends on MISC_RTSX_USB
 	help
 	  Say Y here to include driver code to support SD/MMC card interface
 	  of Realtek RTS5129/39 series card reader
diff --git a/drivers/mmc/host/rtsx_pci_sdmmc.c b/drivers/mmc/host/rtsx_pci_sdmmc.c
index 0848dc0..30bd808 100644
--- a/drivers/mmc/host/rtsx_pci_sdmmc.c
+++ b/drivers/mmc/host/rtsx_pci_sdmmc.c
@@ -30,7 +30,7 @@
 #include <linux/mmc/sd.h>
 #include <linux/mmc/sdio.h>
 #include <linux/mmc/card.h>
-#include <linux/mfd/rtsx_pci.h>
+#include <linux/rtsx_pci.h>
 #include <asm/unaligned.h>
 
 struct realtek_pci_sdmmc {
diff --git a/drivers/mmc/host/rtsx_usb_sdmmc.c b/drivers/mmc/host/rtsx_usb_sdmmc.c
index 76da168..7842207 100644
--- a/drivers/mmc/host/rtsx_usb_sdmmc.c
+++ b/drivers/mmc/host/rtsx_usb_sdmmc.c
@@ -31,7 +31,7 @@
 #include <linux/scatterlist.h>
 #include <linux/pm_runtime.h>
 
-#include <linux/mfd/rtsx_usb.h>
+#include <linux/rtsx_usb.h>
 #include <asm/unaligned.h>
 
 #if defined(CONFIG_LEDS_CLASS) || (defined(CONFIG_LEDS_CLASS_MODULE) && \
diff --git a/include/linux/mfd/rtsx_common.h b/include/linux/rtsx_common.h
similarity index 100%
rename from include/linux/mfd/rtsx_common.h
rename to include/linux/rtsx_common.h
diff --git a/include/linux/mfd/rtsx_pci.h b/include/linux/rtsx_pci.h
similarity index 99%
rename from include/linux/mfd/rtsx_pci.h
rename to include/linux/rtsx_pci.h
index a2a1318..82abac7 100644
--- a/include/linux/mfd/rtsx_pci.h
+++ b/include/linux/rtsx_pci.h
@@ -24,7 +24,7 @@
 
 #include <linux/sched.h>
 #include <linux/pci.h>
-#include <linux/mfd/rtsx_common.h>
+#include <linux/rtsx_common.h>
 
 #define MAX_RW_REG_CNT			1024
 
diff --git a/include/linux/mfd/rtsx_usb.h b/include/linux/rtsx_usb.h
similarity index 100%
rename from include/linux/mfd/rtsx_usb.h
rename to include/linux/rtsx_usb.h
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc
  2017-11-20  1:57 [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc rui_feng
@ 2017-11-21 10:34 ` Daniel Bristot de Oliveira
  2017-11-21 23:53 ` kbuild test robot
  1 sibling, 0 replies; 4+ messages in thread
From: Daniel Bristot de Oliveira @ 2017-11-21 10:34 UTC (permalink / raw)
  To: rui_feng, lee.jones, arnd, gregkh, ulf.hansson; +Cc: linux-kernel, ricky_wu

On 11/20/2017 02:57 AM, rui_feng@realsil.com.cn wrote:
> From: Rui Feng <rui_feng@realsil.com.cn>
> 
> Because Realtek card reader drivers are pcie and usb drivers,
> and they bridge mmc subsystem and memstick subsystem, they are
> not mfd drivers. Greg and Lee Jones had a discussion about
> where to put the drivers, the result is that misc is a good
> place for them, so I move all files to misc. If I don't move
> them to a right place, I can't add any patch for this driver.
> 
> Signed-off-by: Rui Feng <rui_feng@realsil.com.cn>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

Reviewed-by: Daniel Bristot de Oliveira <bristot@redhat.com>

Thanks!

-- Daniel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc
  2017-11-20  1:57 [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc rui_feng
  2017-11-21 10:34 ` Daniel Bristot de Oliveira
@ 2017-11-21 23:53 ` kbuild test robot
       [not found]   ` <2A308283684ECD4B896628E09AF5361E01A7EA51@RS-MBS01.realsil.com.cn>
  1 sibling, 1 reply; 4+ messages in thread
From: kbuild test robot @ 2017-11-21 23:53 UTC (permalink / raw)
  To: rui_feng
  Cc: kbuild-all, lee.jones, arnd, gregkh, ulf.hansson, linux-kernel,
	ricky_wu, Rui Feng

[-- Attachment #1: Type: text/plain, Size: 13692 bytes --]

Hi Rui,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on char-misc/char-misc-testing]
[also build test ERROR on v4.14 next-20171121]
[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/rui_feng-realsil-com-cn/misc-rtsx-Move-Realtek-Card-Reader-Driver-to-misc/20171122-032812
config: mips-allyesconfig (attached as .config)
compiler: mips-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=mips 

All errors (new ones prefixed by >>):

   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `rtsx_usb_update_led':
>> rtsx_usb_sdmmc.c:(.text+0x410): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x428): undefined reference to `rtsx_usb_ep0_write_register'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_change_phase':
>> rtsx_usb_sdmmc.c:(.text+0x574): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x590): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x5a8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x5c0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x5dc): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x5f4): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_change_phase':
>> rtsx_usb_sdmmc.c:(.text+0x630): undefined reference to `rtsx_usb_send_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_read_data':
   rtsx_usb_sdmmc.c:(.text+0x754): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x770): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x78c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x7a8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x7c4): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x7dc): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_read_data':
   rtsx_usb_sdmmc.c:(.text+0x914): undefined reference to `rtsx_usb_send_cmd'
>> rtsx_usb_sdmmc.c:(.text+0x964): undefined reference to `rtsx_usb_get_rsp'
>> rtsx_usb_sdmmc.c:(.text+0xa4c): undefined reference to `rtsx_usb_read_ppbuf'
>> rtsx_usb_sdmmc.c:(.text+0xadc): undefined reference to `rtsx_usb_read_register'
   rtsx_usb_sdmmc.c:(.text+0xaf4): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xb10): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xb28): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xb40): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xb58): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0xb70): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_read_data':
   rtsx_usb_sdmmc.c:(.text+0xbb8): undefined reference to `rtsx_usb_send_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_send_cmd_get_rsp':
   rtsx_usb_sdmmc.c:(.text+0xdb0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xdcc): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xdec): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xe10): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xe28): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0xe40): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_send_cmd_get_rsp':
>> rtsx_usb_sdmmc.c:(.text+0xeb8): undefined reference to `rtsx_usb_write_register'
   rtsx_usb_sdmmc.c:(.text+0xee8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xf24): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xf58): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0xf68): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0xfb8): undefined reference to `rtsx_usb_get_rsp'
   rtsx_usb_sdmmc.c:(.text+0x11cc): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x11e0): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x11f4): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x1208): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x1230): undefined reference to `rtsx_usb_ep0_write_register'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x1244): more undefined references to `rtsx_usb_ep0_write_register' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_card_busy':
   rtsx_usb_sdmmc.c:(.text+0x1300): undefined reference to `rtsx_usb_write_register'
   rtsx_usb_sdmmc.c:(.text+0x1320): undefined reference to `rtsx_usb_read_register'
   rtsx_usb_sdmmc.c:(.text+0x133c): undefined reference to `rtsx_usb_write_register'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_switch_voltage':
>> rtsx_usb_sdmmc.c:(.text+0x1430): undefined reference to `rtsx_usb_card_exclusive_check'
   rtsx_usb_sdmmc.c:(.text+0x1498): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x14b8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x14d4): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x14f0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1500): undefined reference to `rtsx_usb_send_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_get_cd':
>> rtsx_usb_sdmmc.c:(.text+0x1580): undefined reference to `rtsx_usb_get_card_status'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_get_ro':
   rtsx_usb_sdmmc.c:(.text+0x1620): undefined reference to `rtsx_usb_get_card_status'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_set_ios':
   rtsx_usb_sdmmc.c:(.text+0x17a8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x17c0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x17dc): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x17f8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1808): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1864): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x187c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1898): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x18b0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x18c8): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x1914): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_set_ios':
   rtsx_usb_sdmmc.c:(.text+0x19a8): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1a68): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1a80): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1a9c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1aac): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1b08): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1b20): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1b40): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1b58): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1b70): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x1bc0): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_set_ios':
   rtsx_usb_sdmmc.c:(.text+0x1c50): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1c70): undefined reference to `rtsx_usb_write_register'
   rtsx_usb_sdmmc.c:(.text+0x1cd8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1cf4): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1d04): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1d48): undefined reference to `rtsx_usb_write_register'
   rtsx_usb_sdmmc.c:(.text+0x1dcc): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1de8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1e14): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1e30): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x1e4c): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x1e68): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_set_ios':
   rtsx_usb_sdmmc.c:(.text+0x1f40): undefined reference to `rtsx_usb_send_cmd'
>> rtsx_usb_sdmmc.c:(.text+0x1ff4): undefined reference to `rtsx_usb_switch_clock'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_execute_tuning':
>> rtsx_usb_sdmmc.c:(.text+0x2200): undefined reference to `rtsx_usb_ep0_read_register'
   rtsx_usb_sdmmc.c:(.text+0x223c): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x2250): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x2264): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x2278): undefined reference to `rtsx_usb_ep0_write_register'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_normal_rw':
   rtsx_usb_sdmmc.c:(.text+0x2538): undefined reference to `rtsx_usb_write_register'
   rtsx_usb_sdmmc.c:(.text+0x2580): undefined reference to `rtsx_usb_write_register'
>> rtsx_usb_sdmmc.c:(.text+0x25ac): undefined reference to `rtsx_usb_write_ppbuf'
   rtsx_usb_sdmmc.c:(.text+0x265c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2678): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2694): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x26b0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x26cc): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x26e4): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_normal_rw':
   rtsx_usb_sdmmc.c:(.text+0x2808): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x297c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2998): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x29b0): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x29c8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x29e0): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x29f8): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sd_normal_rw':
   rtsx_usb_sdmmc.c:(.text+0x2a40): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2aa0): undefined reference to `rtsx_usb_get_rsp'
   rtsx_usb_sdmmc.c:(.text+0x2ab8): undefined reference to `rtsx_usb_get_rsp'
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_request':
   rtsx_usb_sdmmc.c:(.text+0x2dac): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2dc8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2de8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2e08): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2e20): undefined reference to `rtsx_usb_add_cmd'
   drivers/mmc/host/rtsx_usb_sdmmc.o:rtsx_usb_sdmmc.c:(.text+0x2e40): more undefined references to `rtsx_usb_add_cmd' follow
   drivers/mmc/host/rtsx_usb_sdmmc.o: In function `sdmmc_request':
   rtsx_usb_sdmmc.c:(.text+0x2f34): undefined reference to `rtsx_usb_send_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2f64): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2f80): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2f9c): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2fb8): undefined reference to `rtsx_usb_add_cmd'
   rtsx_usb_sdmmc.c:(.text+0x2fc8): undefined reference to `rtsx_usb_send_cmd'
>> rtsx_usb_sdmmc.c:(.text+0x3030): undefined reference to `rtsx_usb_transfer_data'
   rtsx_usb_sdmmc.c:(.text+0x3080): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x3094): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x30a8): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x30bc): undefined reference to `rtsx_usb_ep0_write_register'
   rtsx_usb_sdmmc.c:(.text+0x30d0): undefined reference to `rtsx_usb_get_rsp'
   rtsx_usb_sdmmc.c:(.text+0x310c): undefined reference to `rtsx_usb_write_register'

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 47732 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 答复: [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc
       [not found]   ` <2A308283684ECD4B896628E09AF5361E01A7EA51@RS-MBS01.realsil.com.cn>
@ 2017-11-22  9:35     ` Arnd Bergmann
  0 siblings, 0 replies; 4+ messages in thread
From: Arnd Bergmann @ 2017-11-22  9:35 UTC (permalink / raw)
  To: 冯锐
  Cc: kbuild test robot, kbuild-all, lee.jones, gregkh, ulf.hansson,
	linux-kernel, ricky_wu

On Wed, Nov 22, 2017 at 4:24 AM, 冯锐 <rui_feng@realsil.com.cn> wrote:
> Dear all:
>
> I checked the file ".config", I found " CONFIG_MMC_REALTEK_USB=y " but its dependence MISC_RTSX_USB is not selected, so compile errors occurred.
> What should I do to fix it?

The problem is this bit in the Makefile:

--- a/drivers/misc/Makefile
+++ b/drivers/misc/Makefile
@@ -55,6 +55,7 @@ obj-$(CONFIG_CXL_BASE)                += cxl/
 obj-$(CONFIG_ASPEED_LPC_CTRL)  += aspeed-lpc-ctrl.o
 obj-$(CONFIG_ASPEED_LPC_SNOOP) += aspeed-lpc-snoop.o
 obj-$(CONFIG_PCI_ENDPOINT_TEST)        += pci_endpoint_test.o
+obj-$(CONFIG_MISC_RTSX_PCI)    += cardreader/

 lkdtm-$(CONFIG_LKDTM)          += lkdtm_core.o
 lkdtm-$(CONFIG_LKDTM)          += lkdtm_bugs.o

I would suggest changing this to CONFIG_MISC_RTSX, and adding that symbol like

config MISC_RTSX
         tristate
         default MISC_RTSX_PCI || MISC_RTSX_USB

Then we enter the directory if one of the two gets selected.

You could also use "obj-y   += cardreader/" in the Makefile, but I
think the extra
symbol is a bit nicer, as it avoids entering the subdirectory when we
don't need it.

      Arnd

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-11-22  9:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-20  1:57 [PATCH v5,1/2] misc: rtsx: Move Realtek Card Reader Driver to misc rui_feng
2017-11-21 10:34 ` Daniel Bristot de Oliveira
2017-11-21 23:53 ` kbuild test robot
     [not found]   ` <2A308283684ECD4B896628E09AF5361E01A7EA51@RS-MBS01.realsil.com.cn>
2017-11-22  9:35     ` 答复: " Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).