Commit 47f11e0b authored by Enric Balletbo i Serra's avatar Enric Balletbo i Serra Committed by Lee Jones

mfd / platform: cros_ec: Move cros-ec core driver out from MFD

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: default avatarEnric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarThierry Reding <thierry.reding@gmail.com>
Acked-by: default avatarMark Brown <broonie@kernel.org>
Acked-by: default avatarWolfram Sang <wsa@the-dreams.de>
Acked-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Acked-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Acked-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: default avatarBenjamin Tissoires <benjamin.tissoires@redhat.com>
Acked-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
Acked-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Reviewed-by: default avatarGwendal Grignou <gwendal@chromium.org>
Tested-by: default avatarGwendal Grignou <gwendal@chromium.org>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
parent 7aa703bb
...@@ -181,7 +181,7 @@ config EXTCON_USB_GPIO ...@@ -181,7 +181,7 @@ config EXTCON_USB_GPIO
config EXTCON_USBC_CROS_EC config EXTCON_USBC_CROS_EC
tristate "ChromeOS Embedded Controller EXTCON support" tristate "ChromeOS Embedded Controller EXTCON support"
depends on MFD_CROS_EC depends on CROS_EC
help help
Say Y here to enable USB Type C cable detection extcon support when Say Y here to enable USB Type C cable detection extcon support when
using Chrome OS EC based USB Type-C ports. using Chrome OS EC based USB Type-C ports.
......
...@@ -376,7 +376,7 @@ config HOLTEK_FF ...@@ -376,7 +376,7 @@ config HOLTEK_FF
config HID_GOOGLE_HAMMER config HID_GOOGLE_HAMMER
tristate "Google Hammer Keyboard" tristate "Google Hammer Keyboard"
depends on USB_HID && LEDS_CLASS && MFD_CROS_EC depends on USB_HID && LEDS_CLASS && CROS_EC
---help--- ---help---
Say Y here if you have a Google Hammer device. Say Y here if you have a Google Hammer device.
......
...@@ -1345,7 +1345,7 @@ config I2C_SIBYTE ...@@ -1345,7 +1345,7 @@ config I2C_SIBYTE
config I2C_CROS_EC_TUNNEL config I2C_CROS_EC_TUNNEL
tristate "ChromeOS EC tunnel I2C bus" tristate "ChromeOS EC tunnel I2C bus"
depends on MFD_CROS_EC depends on CROS_EC
help help
If you say yes here you get an I2C bus that will tunnel i2c commands 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 bus through to the other side of the ChromeOS EC to the i2c bus
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# #
config IIO_CROS_EC_SENSORS_CORE config IIO_CROS_EC_SENSORS_CORE
tristate "ChromeOS EC Sensors Core" tristate "ChromeOS EC Sensors Core"
depends on SYSFS && MFD_CROS_EC depends on SYSFS && CROS_EC
select IIO_BUFFER select IIO_BUFFER
select IIO_TRIGGERED_BUFFER select IIO_TRIGGERED_BUFFER
help help
......
...@@ -745,7 +745,7 @@ config KEYBOARD_W90P910 ...@@ -745,7 +745,7 @@ config KEYBOARD_W90P910
config KEYBOARD_CROS_EC config KEYBOARD_CROS_EC
tristate "ChromeOS EC keyboard" tristate "ChromeOS EC keyboard"
select INPUT_MATRIXKMAP select INPUT_MATRIXKMAP
depends on MFD_CROS_EC depends on CROS_EC
help help
Say Y here to enable the matrix keyboard used by ChromeOS devices Say Y here to enable the matrix keyboard used by ChromeOS devices
and implemented on the ChromeOS EC. You must enable one bus option and implemented on the ChromeOS EC. You must enable one bus option
......
...@@ -547,10 +547,9 @@ if CEC_PLATFORM_DRIVERS ...@@ -547,10 +547,9 @@ if CEC_PLATFORM_DRIVERS
config VIDEO_CROS_EC_CEC config VIDEO_CROS_EC_CEC
tristate "ChromeOS EC CEC driver" tristate "ChromeOS EC CEC driver"
depends on MFD_CROS_EC depends on CROS_EC
select CEC_CORE select CEC_CORE
select CEC_NOTIFIER select CEC_NOTIFIER
select CHROME_PLATFORMS
select CROS_EC_PROTO select CROS_EC_PROTO
help help
If you say yes here you will get support for the If you say yes here you will get support for the
......
...@@ -211,21 +211,10 @@ config MFD_AXP20X_RSB ...@@ -211,21 +211,10 @@ config MFD_AXP20X_RSB
components like regulators or the PEK (Power Enable Key) under the components like regulators or the PEK (Power Enable Key) under the
corresponding menus. 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 config MFD_CROS_EC_CHARDEV
tristate "Chrome OS Embedded Controller userspace device interface" tristate "Chrome OS Embedded Controller userspace device interface"
depends on MFD_CROS_EC depends on CROS_EC
select MFD_CORE
---help--- ---help---
This driver adds support to talk with the ChromeOS EC from userspace. This driver adds support to talk with the ChromeOS EC from userspace.
......
...@@ -13,8 +13,6 @@ obj-$(CONFIG_MFD_ASIC3) += asic3.o tmio_core.o ...@@ -13,8 +13,6 @@ obj-$(CONFIG_MFD_ASIC3) += asic3.o tmio_core.o
obj-$(CONFIG_ARCH_BCM2835) += bcm2835-pm.o obj-$(CONFIG_ARCH_BCM2835) += bcm2835-pm.o
obj-$(CONFIG_MFD_BCM590XX) += bcm590xx.o obj-$(CONFIG_MFD_BCM590XX) += bcm590xx.o
obj-$(CONFIG_MFD_BD9571MWV) += bd9571mwv.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_CROS_EC_CHARDEV) += cros_ec_dev.o
obj-$(CONFIG_MFD_EXYNOS_LPASS) += exynos-lpass.o obj-$(CONFIG_MFD_EXYNOS_LPASS) += exynos-lpass.o
......
...@@ -50,9 +50,22 @@ config CHROMEOS_TBMC ...@@ -50,9 +50,22 @@ config CHROMEOS_TBMC
To compile this driver as a module, choose M here: the To compile this driver as a module, choose M here: the
module will be called chromeos_tbmc. 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 config CROS_EC_I2C
tristate "ChromeOS Embedded Controller (I2C)" tristate "ChromeOS Embedded Controller (I2C)"
depends on MFD_CROS_EC && I2C depends on CROS_EC && I2C
help help
If you say Y here, you get support for talking to the ChromeOS If you say Y here, you get support for talking to the ChromeOS
...@@ -62,7 +75,7 @@ config CROS_EC_I2C ...@@ -62,7 +75,7 @@ config CROS_EC_I2C
config CROS_EC_RPMSG config CROS_EC_RPMSG
tristate "ChromeOS Embedded Controller (rpmsg)" tristate "ChromeOS Embedded Controller (rpmsg)"
depends on MFD_CROS_EC && RPMSG && OF depends on CROS_EC && RPMSG && OF
help help
If you say Y here, you get support for talking to the ChromeOS EC 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 through rpmsg. This uses a simple byte-level protocol with a
...@@ -87,7 +100,7 @@ config CROS_EC_ISHTP ...@@ -87,7 +100,7 @@ config CROS_EC_ISHTP
config CROS_EC_SPI config CROS_EC_SPI
tristate "ChromeOS Embedded Controller (SPI)" tristate "ChromeOS Embedded Controller (SPI)"
depends on MFD_CROS_EC && SPI depends on CROS_EC && SPI
---help--- ---help---
If you say Y here, you get support for talking to the ChromeOS EC If you say Y here, you get support for talking to the ChromeOS EC
...@@ -97,7 +110,7 @@ config CROS_EC_SPI ...@@ -97,7 +110,7 @@ config CROS_EC_SPI
config CROS_EC_LPC config CROS_EC_LPC
tristate "ChromeOS Embedded Controller (LPC)" tristate "ChromeOS Embedded Controller (LPC)"
depends on MFD_CROS_EC && ACPI && (X86 || COMPILE_TEST) depends on CROS_EC && ACPI && (X86 || COMPILE_TEST)
help help
If you say Y here, you get support for talking to the ChromeOS EC If you say Y here, you get support for talking to the ChromeOS EC
over an LPC bus, including the LPC Microchip EC (MEC) variant. over an LPC bus, including the LPC Microchip EC (MEC) variant.
......
...@@ -6,6 +6,7 @@ CFLAGS_cros_ec_trace.o:= -I$(src) ...@@ -6,6 +6,7 @@ CFLAGS_cros_ec_trace.o:= -I$(src)
obj-$(CONFIG_CHROMEOS_LAPTOP) += chromeos_laptop.o obj-$(CONFIG_CHROMEOS_LAPTOP) += chromeos_laptop.o
obj-$(CONFIG_CHROMEOS_PSTORE) += chromeos_pstore.o obj-$(CONFIG_CHROMEOS_PSTORE) += chromeos_pstore.o
obj-$(CONFIG_CHROMEOS_TBMC) += chromeos_tbmc.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_I2C) += cros_ec_i2c.o
obj-$(CONFIG_CROS_EC_ISHTP) += cros_ec_ishtp.o obj-$(CONFIG_CROS_EC_ISHTP) += cros_ec_ishtp.o
obj-$(CONFIG_CROS_EC_RPMSG) += cros_ec_rpmsg.o obj-$(CONFIG_CROS_EC_RPMSG) += cros_ec_rpmsg.o
......
...@@ -670,7 +670,7 @@ config CHARGER_RT9455 ...@@ -670,7 +670,7 @@ config CHARGER_RT9455
config CHARGER_CROS_USBPD config CHARGER_CROS_USBPD
tristate "ChromeOS EC based USBPD charger" tristate "ChromeOS EC based USBPD charger"
depends on MFD_CROS_EC depends on CROS_EC
default n default n
help help
Say Y here to enable ChromeOS EC based USBPD charger Say Y here to enable ChromeOS EC based USBPD charger
......
...@@ -145,7 +145,7 @@ config PWM_CRC ...@@ -145,7 +145,7 @@ config PWM_CRC
config PWM_CROS_EC config PWM_CROS_EC
tristate "ChromeOS EC PWM driver" tristate "ChromeOS EC PWM driver"
depends on MFD_CROS_EC depends on CROS_EC
help help
PWM driver for exposing a PWM attached to the ChromeOS Embedded PWM driver for exposing a PWM attached to the ChromeOS Embedded
Controller. Controller.
......
...@@ -1274,7 +1274,7 @@ config RTC_DRV_ZYNQMP ...@@ -1274,7 +1274,7 @@ config RTC_DRV_ZYNQMP
config RTC_DRV_CROS_EC config RTC_DRV_CROS_EC
tristate "Chrome OS EC RTC driver" tristate "Chrome OS EC RTC driver"
depends on MFD_CROS_EC depends on CROS_EC
help help
If you say yes here you will get support for the If you say yes here you will get support for the
Chrome OS Embedded Controller's RTC. Chrome OS Embedded Controller's RTC.
......
...@@ -51,7 +51,7 @@ config SND_SOC_ALL_CODECS ...@@ -51,7 +51,7 @@ config SND_SOC_ALL_CODECS
select SND_SOC_BT_SCO select SND_SOC_BT_SCO
select SND_SOC_BD28623 select SND_SOC_BD28623
select SND_SOC_CQ0093VC select SND_SOC_CQ0093VC
select SND_SOC_CROS_EC_CODEC if MFD_CROS_EC select SND_SOC_CROS_EC_CODEC if CROS_EC
select SND_SOC_CS35L32 if I2C select SND_SOC_CS35L32 if I2C
select SND_SOC_CS35L33 if I2C select SND_SOC_CS35L33 if I2C
select SND_SOC_CS35L34 if I2C select SND_SOC_CS35L34 if I2C
...@@ -474,7 +474,7 @@ config SND_SOC_CQ0093VC ...@@ -474,7 +474,7 @@ config SND_SOC_CQ0093VC
config SND_SOC_CROS_EC_CODEC config SND_SOC_CROS_EC_CODEC
tristate "codec driver for ChromeOS EC" tristate "codec driver for ChromeOS EC"
depends on MFD_CROS_EC depends on CROS_EC
help help
If you say yes here you will get support for the If you say yes here you will get support for the
ChromeOS Embedded Controller's Audio Codec. ChromeOS Embedded Controller's Audio Codec.
......
...@@ -99,7 +99,7 @@ config SND_SOC_MSM8996 ...@@ -99,7 +99,7 @@ config SND_SOC_MSM8996
config SND_SOC_SDM845 config SND_SOC_SDM845
tristate "SoC Machine driver for SDM845 boards" 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_QDSP6
select SND_SOC_QCOM_COMMON select SND_SOC_QCOM_COMMON
select SND_SOC_RT5663 select SND_SOC_RT5663
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment