[alsa-devel] [PATCH 02/10] mfd / platform: cros_ec: Move cros-ec core driver out from MFD

Benjamin Tissoires benjamin.tissoires at redhat.com
Tue Jun 11 11:20:43 CEST 2019


On Tue, Jun 4, 2019 at 5:20 PM Enric Balletbo i Serra
<enric.balletbo at collabora.com> 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 <enric.balletbo at collabora.com>
> ---

Acked-by: Benjamin Tissoires <benjamin.tissoires at redhat.com> # for the HID part

Cheers,
Benjamin

>
>  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 bus
> diff --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
>         help
> diff --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 option
> diff --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 the
> diff --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.o
>
> diff --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 a
> diff --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.o
> diff --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 charger
> diff --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
>


More information about the Alsa-devel mailing list