From patchwork Tue Jun 4 15:20:11 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Enric Balletbo i Serra X-Patchwork-Id: 10983255 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6F3B01515 for ; Sat, 8 Jun 2019 16:47:08 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5341428A60 for ; Sat, 8 Jun 2019 16:47:08 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 42B6A28A64; Sat, 8 Jun 2019 16:47:08 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 2902F28A60 for ; Sat, 8 Jun 2019 16:47:07 +0000 (UTC) Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 7E7E91684; Sat, 8 Jun 2019 18:46:15 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 7E7E91684 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1560012425; bh=OkMAeG+OUgqBMMbIXUyJ3/yjpeXLHoxI1UoKkmtEXyE=; h=From:To:Date:In-Reply-To:References:Cc:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=UsSAhqv/4/XJaBO5q8K9X3835ksfaHDJClA5J5iSMGQ9kSLjl0YXP0iKMIlDNGflW 4c1WvIc9eky5LRAccgx/zPfr54zU7JuJ0oZVsVkk4ZPUBGfu/6vGd05pafBK8vTjS9 ou9OSlDlFoE4CUyP5lLtZOx+fL0dSE5wsRo+D/bA= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 4BF34F89759; Sat, 8 Jun 2019 18:40:28 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa1.perex.cz (Postfix, from userid 50401) id 50C09F896F7; Tue, 4 Jun 2019 17:20:40 +0200 (CEST) Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 8F0FBF89673 for ; Tue, 4 Jun 2019 17:20:37 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 8F0FBF89673 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: eballetbo) with ESMTPSA id 4B25B285366 From: Enric Balletbo i Serra To: linux-kernel@vger.kernel.org Date: Tue, 4 Jun 2019 17:20:11 +0200 Message-Id: <20190604152019.16100-3-enric.balletbo@collabora.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190604152019.16100-1-enric.balletbo@collabora.com> References: <20190604152019.16100-1-enric.balletbo@collabora.com> MIME-Version: 1.0 X-Mailman-Approved-At: Sat, 08 Jun 2019 18:39:51 +0200 Cc: gwendal@chromium.org, Banajit Goswami , Vignesh R , Alexandre Belloni , Wolfram Sang , linux-iio@vger.kernel.org, Mark Brown , Juergen Fitschen , alsa-devel@alsa-project.org, Stefan Agner , Douglas Anderson , Benjamin Tissoires , Karthikeyan Ramasubramanian , linux-i2c@vger.kernel.org, Peter Meerwald-Stadler , Manivannan Sadhasivam , Guenter Roeck , kernel@collabora.com, dtor@chromium.org, Lars-Peter Clausen , Jean Delvare , Jacky Bai , linux-rtc@vger.kernel.org, Andy Shevchenko , Sean Young , Lee Jones , Patrick Lai , Takashi Iwai , Shreesha Rajashekar , Neil Armstrong , Chanwoo Choi , MyungJoo Ham , Hans Verkuil , linux-input@vger.kernel.org, Elie Morisse , linux-media@vger.kernel.org, Ettore Chimenti , linux-pwm@vger.kernel.org, Sakari Ailus , Arnd Bergmann , linux-pm@vger.kernel.org, Liam Girdwood , Jiri Kosina , Marco Felsch , Florian Fainelli , Thomas Gleixner , Mauro Carvalho Chehab , Benson Leung , Dong Aisheng , Alessandro Zummo , Greg Kroah-Hartman , Ajay Gupta , Dmitry Torokhov , Sebastian Reichel , Thierry Reding , Jarkko Nikula , Philipp Zabel , Hartmut Knaack , Eddie James , Jonathan Cameron Subject: [alsa-devel] [PATCH 02/10] mfd / platform: cros_ec: Move cros-ec core driver out from MFD X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" X-Virus-Scanned: ClamAV using ClamSMTP 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 Acked-by: Neil Armstrong # for the cros-cec part Acked-by: Jonathan Cameron #for the IIO parts. Acked-by: Benjamin Tissoires # for the HID part Acked-by: Dmitry Torokhov # for input Acked-by: Sebastian Reichel --- 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