On 24 November 2017 at 02:20, <rui_f...@realsil.com.cn> wrote: > From: Rui Feng <rui_f...@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_f...@realsil.com.cn> > Acked-by: Arnd Bergmann <a...@arndb.de> > Acked-for-MFD-by: Lee Jones <lee.jo...@linaro.org> > Reviewed-by: Daniel Bristot de Oliveira <bris...@redhat.com>
For mmc: Acked-by: Ulf Hansson <ulf.hans...@linaro.org> Kind regards Uffe > > v6 changes: > * fix compile errors > * add Reviewed-by > > --- > drivers/memstick/host/rtsx_pci_ms.c | 2 +- > drivers/mfd/Kconfig | 21 --------------------- > drivers/mfd/Makefile | 4 ---- > drivers/misc/Kconfig | 5 +++++ > 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, 44 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 8703ff1..921eb99 100644 > --- a/drivers/mfd/Makefile > +++ b/drivers/mfd/Makefile > @@ -19,10 +19,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..b328552 100644 > --- a/drivers/misc/Kconfig > +++ b/drivers/misc/Kconfig > @@ -506,6 +506,10 @@ config PCI_ENDPOINT_TEST > Enable this configuration option to enable the host side test > driver > for PCI Endpoint. > > +config MISC_RTSX > + tristate > + default MISC_RTSX_PCI || MISC_RTSX_USB > + > source "drivers/misc/c2port/Kconfig" > source "drivers/misc/eeprom/Kconfig" > source "drivers/misc/cb710/Kconfig" > @@ -518,4 +522,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 ad0e64f..fa440bb 100644 > --- a/drivers/misc/Makefile > +++ b/drivers/misc/Makefile > @@ -56,6 +56,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) += 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 >