Re: [PATCH 02/10] mfd / platform: cros_ec: Move cros-ec core driver out from MFD
From: Sebastian Reichel <sre@kernel.org>
Date: 2019-06-11 19:52:25
Also in:
alsa-devel, linux-i2c, linux-pwm
Hi, On Tue, Jun 04, 2019 at 05:20:11PM +0200, Enric Balletbo i Serra wrote:
Now, the ChromeOS EC core driver has nothing related to an MFD device, so move that driver from the MFD subsystem to the platform/chrome subsystem. Signed-off-by: Enric Balletbo i Serra <redacted> ---
Acked-by: Sebastian Reichel <redacted> -- Sebastian
quoted hunk ↗ jump to hunk
drivers/extcon/Kconfig | 2 +- drivers/hid/Kconfig | 2 +- drivers/i2c/busses/Kconfig | 2 +- drivers/iio/common/cros_ec_sensors/Kconfig | 2 +- drivers/input/keyboard/Kconfig | 2 +- drivers/media/platform/Kconfig | 3 +-- drivers/mfd/Kconfig | 14 +------------- drivers/mfd/Makefile | 2 -- drivers/platform/chrome/Kconfig | 21 +++++++++++++++++---- drivers/platform/chrome/Makefile | 1 + drivers/{mfd => platform/chrome}/cros_ec.c | 0 drivers/power/supply/Kconfig | 2 +- drivers/pwm/Kconfig | 2 +- drivers/rtc/Kconfig | 2 +- sound/soc/qcom/Kconfig | 2 +- 15 files changed, 29 insertions(+), 30 deletions(-) rename drivers/{mfd => platform/chrome}/cros_ec.c (100%)diff --git a/drivers/extcon/Kconfig b/drivers/extcon/Kconfig index 6f5af4196b8d..0ebc599c5e51 100644 --- a/drivers/extcon/Kconfig +++ b/drivers/extcon/Kconfig@@ -169,7 +169,7 @@ config EXTCON_USB_GPIO config EXTCON_USBC_CROS_EC tristate "ChromeOS Embedded Controller EXTCON support" - depends on MFD_CROS_EC + depends on CROS_EC help Say Y here to enable USB Type C cable detection extcon support when using Chrome OS EC based USB Type-C ports.diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index 3872e03d9a59..a958b9625bba 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig@@ -376,7 +376,7 @@ config HOLTEK_FF config HID_GOOGLE_HAMMER tristate "Google Hammer Keyboard" - depends on USB_HID && LEDS_CLASS && MFD_CROS_EC + depends on USB_HID && LEDS_CLASS && CROS_EC ---help--- Say Y here if you have a Google Hammer device.diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig index ee5dfb5aee2a..42a224d08ec7 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig@@ -1336,7 +1336,7 @@ config I2C_SIBYTE config I2C_CROS_EC_TUNNEL tristate "ChromeOS EC tunnel I2C bus" - depends on MFD_CROS_EC + depends on CROS_EC help If you say yes here you get an I2C bus that will tunnel i2c commands through to the other side of the ChromeOS EC to the i2c busdiff --git a/drivers/iio/common/cros_ec_sensors/Kconfig b/drivers/iio/common/cros_ec_sensors/Kconfig index f9bf7ff7fcaf..55999104cd44 100644 --- a/drivers/iio/common/cros_ec_sensors/Kconfig +++ b/drivers/iio/common/cros_ec_sensors/Kconfig@@ -4,7 +4,7 @@ # config IIO_CROS_EC_SENSORS_CORE tristate "ChromeOS EC Sensors Core" - depends on SYSFS && MFD_CROS_EC + depends on SYSFS && CROS_EC select IIO_BUFFER select IIO_TRIGGERED_BUFFER helpdiff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig index 7c4f19dab34f..64555cc8d83e 100644 --- a/drivers/input/keyboard/Kconfig +++ b/drivers/input/keyboard/Kconfig@@ -729,7 +729,7 @@ config KEYBOARD_W90P910 config KEYBOARD_CROS_EC tristate "ChromeOS EC keyboard" select INPUT_MATRIXKMAP - depends on MFD_CROS_EC + depends on CROS_EC help Say Y here to enable the matrix keyboard used by ChromeOS devices and implemented on the ChromeOS EC. You must enable one bus optiondiff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig index f2b5f27ebacb..adec7a0bfe1e 100644 --- a/drivers/media/platform/Kconfig +++ b/drivers/media/platform/Kconfig@@ -558,10 +558,9 @@ if CEC_PLATFORM_DRIVERS config VIDEO_CROS_EC_CEC tristate "ChromeOS EC CEC driver" - depends on MFD_CROS_EC + depends on CROS_EC select CEC_CORE select CEC_NOTIFIER - select CHROME_PLATFORMS select CROS_EC_PROTO help If you say yes here you will get support for thediff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index a17d275bf1d4..ad0a5de74ef2 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig@@ -211,21 +211,9 @@ config MFD_AXP20X_RSB components like regulators or the PEK (Power Enable Key) under the corresponding menus. -config MFD_CROS_EC - tristate "ChromeOS Embedded Controller" - select MFD_CORE - select CHROME_PLATFORMS - select CROS_EC_PROTO - depends on X86 || ARM || ARM64 || COMPILE_TEST - help - If you say Y here you get support for the ChromeOS Embedded - Controller (EC) providing keyboard, battery and power services. - You also need to enable the driver for the bus you are using. The - protocol for talking to the EC is defined by the bus driver. - config MFD_CROS_EC_CHARDEV tristate "Chrome OS Embedded Controller userspace device interface" - depends on MFD_CROS_EC + depends on CROS_EC ---help--- This driver adds support to talk with the ChromeOS EC from userspace.diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 52b1a90ff515..32327dc6bb45 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile@@ -13,8 +13,6 @@ obj-$(CONFIG_MFD_ASIC3) += asic3.o tmio_core.o obj-$(CONFIG_ARCH_BCM2835) += bcm2835-pm.o obj-$(CONFIG_MFD_BCM590XX) += bcm590xx.o obj-$(CONFIG_MFD_BD9571MWV) += bd9571mwv.o -cros_ec_core-objs := cros_ec.o -obj-$(CONFIG_MFD_CROS_EC) += cros_ec_core.o obj-$(CONFIG_MFD_CROS_EC_CHARDEV) += cros_ec_dev.o obj-$(CONFIG_MFD_EXYNOS_LPASS) += exynos-lpass.odiff --git a/drivers/platform/chrome/Kconfig b/drivers/platform/chrome/Kconfig index 35bb5a2663f0..9417b982ad92 100644 --- a/drivers/platform/chrome/Kconfig +++ b/drivers/platform/chrome/Kconfig@@ -50,9 +50,22 @@ config CHROMEOS_TBMC To compile this driver as a module, choose M here: the module will be called chromeos_tbmc. +config CROS_EC + tristate "ChromeOS Embedded Controller" + select CROS_EC_PROTO + depends on X86 || ARM || ARM64 || COMPILE_TEST + help + If you say Y here you get support for the ChromeOS Embedded + Controller (EC) providing keyboard, battery and power services. + You also need to enable the driver for the bus you are using. The + protocol for talking to the EC is defined by the bus driver. + + To compile this driver as a module, choose M here: the + module will be called cros_ec. + config CROS_EC_I2C tristate "ChromeOS Embedded Controller (I2C)" - depends on MFD_CROS_EC && I2C + depends on CROS_EC && I2C help If you say Y here, you get support for talking to the ChromeOS@@ -62,7 +75,7 @@ config CROS_EC_I2C config CROS_EC_RPMSG tristate "ChromeOS Embedded Controller (rpmsg)" - depends on MFD_CROS_EC && RPMSG && OF + depends on CROS_EC && RPMSG && OF help If you say Y here, you get support for talking to the ChromeOS EC through rpmsg. This uses a simple byte-level protocol with a@@ -87,7 +100,7 @@ config CROS_EC_ISHTP config CROS_EC_SPI tristate "ChromeOS Embedded Controller (SPI)" - depends on MFD_CROS_EC && SPI + depends on CROS_EC && SPI ---help--- If you say Y here, you get support for talking to the ChromeOS EC@@ -97,7 +110,7 @@ config CROS_EC_SPI config CROS_EC_LPC tristate "ChromeOS Embedded Controller (LPC)" - depends on MFD_CROS_EC && ACPI && (X86 || COMPILE_TEST) + depends on CROS_EC && ACPI && (X86 || COMPILE_TEST) help If you say Y here, you get support for talking to the ChromeOS EC over an LPC bus. This uses a simple byte-level protocol with adiff --git a/drivers/platform/chrome/Makefile b/drivers/platform/chrome/Makefile index c5583c48d1e5..ebb57e21923b 100644 --- a/drivers/platform/chrome/Makefile +++ b/drivers/platform/chrome/Makefile@@ -6,6 +6,7 @@ CFLAGS_cros_ec_trace.o:= -I$(src) obj-$(CONFIG_CHROMEOS_LAPTOP) += chromeos_laptop.o obj-$(CONFIG_CHROMEOS_PSTORE) += chromeos_pstore.o obj-$(CONFIG_CHROMEOS_TBMC) += chromeos_tbmc.o +obj-$(CONFIG_CROS_EC) += cros_ec.o obj-$(CONFIG_CROS_EC_I2C) += cros_ec_i2c.o obj-$(CONFIG_CROS_EC_ISHTP) += cros_ec_ishtp.o obj-$(CONFIG_CROS_EC_RPMSG) += cros_ec_rpmsg.odiff --git a/drivers/mfd/cros_ec.c b/drivers/platform/chrome/cros_ec.c similarity index 100% rename from drivers/mfd/cros_ec.c rename to drivers/platform/chrome/cros_ec.c diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig index dd7da41f230c..e05140771845 100644 --- a/drivers/power/supply/Kconfig +++ b/drivers/power/supply/Kconfig@@ -656,7 +656,7 @@ config CHARGER_RT9455 config CHARGER_CROS_USBPD tristate "ChromeOS EC based USBPD charger" - depends on MFD_CROS_EC + depends on CROS_EC default n help Say Y here to enable ChromeOS EC based USBPD chargerdiff --git a/drivers/pwm/Kconfig b/drivers/pwm/Kconfig index dff5a93f7daa..99946e1bcc73 100644 --- a/drivers/pwm/Kconfig +++ b/drivers/pwm/Kconfig@@ -145,7 +145,7 @@ config PWM_CRC config PWM_CROS_EC tristate "ChromeOS EC PWM driver" - depends on MFD_CROS_EC + depends on CROS_EC help PWM driver for exposing a PWM attached to the ChromeOS Embedded Controller.diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 5c0790eed656..4eb311569fc4 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig@@ -1265,7 +1265,7 @@ config RTC_DRV_ZYNQMP config RTC_DRV_CROS_EC tristate "Chrome OS EC RTC driver" - depends on MFD_CROS_EC + depends on CROS_EC help If you say yes here you will get support for the Chrome OS Embedded Controller's RTC.diff --git a/sound/soc/qcom/Kconfig b/sound/soc/qcom/Kconfig index 8e3e86619b35..60086858e920 100644 --- a/sound/soc/qcom/Kconfig +++ b/sound/soc/qcom/Kconfig@@ -99,7 +99,7 @@ config SND_SOC_MSM8996 config SND_SOC_SDM845 tristate "SoC Machine driver for SDM845 boards" - depends on QCOM_APR && MFD_CROS_EC && I2C + depends on QCOM_APR && CROS_EC && I2C select SND_SOC_QDSP6 select SND_SOC_QCOM_COMMON select SND_SOC_RT5663-- 2.20.1