Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1651316 > unrolled thread

[PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver

Started byHans de Goede <hdegoede@redhat.com>
First post2017-05-26 13:20 +0200
Last post2017-05-30 11:30 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver Hans de Goede <hdegoede@redhat.com> - 2017-05-26 13:20 +0200
    Re: [PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus  driver Lee Jones <lee.jones@linaro.org> - 2017-05-30 11:30 +0200

#1651316 — [PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver

FromHans de Goede <hdegoede@redhat.com>
Date2017-05-26 13:20 +0200
Subject[PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver
Message-ID<tLlrH-5bT-3@gated-at.bofh.it>
The Crystal Cove PMIC provides an ACPI OPRegion handler, which must be
available before other drivers using it are loaded, which is why
INTEL_SOC_PMIC is a bool.

Just having the driver is not enough, the driver for the i2c-bus must
also be built in, to ensure this, this patch adds a select for it.

This fixes errors like these during boot:

mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA
ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] (20170119/evregion-166)
ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-299)
ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93543b0cde10), AE_NOT_EXIST (20170119/psparse-543)
ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b0b5cd0), AE_NOT_EXIST (20170119/psparse-543)
acpi 80860F14:02: Failed to change power state to D0

While at it this patch also changes the human readable name of the Kconfig
option to make clear the INTEL_SOC_PMIC option selects support for the
Intel Crystal Cove PMIC and documents why this is a bool.

Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
Changes in v2:
-Fix Kconfig depends and selects to fix warning reported by kbuild test robot
-Improve commit msg (add example of ACPI errors this avoids)
Changes in v3:
-No changes
Changes in v4:
-Add explanation why this is a bool and why it selects i2c-designwaree
 to the help text rather then as comments in the Kconfig
Changes in v5:
-Add Andy's Reviewed-by
-Fix OpRegion spelling
---
 drivers/mfd/Kconfig | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 1b6a83a4a114..4f71cab2e6e8 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -448,17 +448,24 @@ config LPC_SCH
 
 config INTEL_SOC_PMIC
 	bool "Support for Crystal Cove PMIC"
-	depends on GPIOLIB
-	depends on I2C=y
+	depends on HAS_IOMEM
+	select GPIOLIB
+	select I2C
 	select MFD_CORE
 	select REGMAP_I2C
 	select REGMAP_IRQ
+	select COMMON_CLK
+	select I2C_DESIGNWARE_PLATFORM
 	help
 	  Select this option to enable support for Crystal Cove PMIC
 	  on some Intel SoC systems. The PMIC provides ADC, GPIO,
 	  thermal, charger and related power management functions
 	  on these systems.
 
+	  This option is a bool as it provides an ACPI OpRegion which must be
+	  available before any devices using it are probed. This option also
+	  causes the designware-i2c driver to be builtin for the same reason.
+
 config INTEL_SOC_PMIC_BXTWC
 	tristate "Support for Intel Broxton Whiskey Cove PMIC"
 	depends on INTEL_PMC_IPC
-- 
2.13.0

[toc] | [next] | [standalone]


#1653021 — Re: [PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver

FromLee Jones <lee.jones@linaro.org>
Date2017-05-30 11:30 +0200
SubjectRe: [PATCH v5 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver
Message-ID<tMLDs-5ux-21@gated-at.bofh.it>
In reply to#1651316
On Fri, 26 May 2017, Hans de Goede wrote:

> The Crystal Cove PMIC provides an ACPI OPRegion handler, which must be
> available before other drivers using it are loaded, which is why
> INTEL_SOC_PMIC is a bool.
> 
> Just having the driver is not enough, the driver for the i2c-bus must
> also be built in, to ensure this, this patch adds a select for it.
> 
> This fixes errors like these during boot:
> 
> mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA
> ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] (20170119/evregion-166)
> ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-299)
> ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93543b0cde10), AE_NOT_EXIST (20170119/psparse-543)
> ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b0b5cd0), AE_NOT_EXIST (20170119/psparse-543)
> acpi 80860F14:02: Failed to change power state to D0
> 
> While at it this patch also changes the human readable name of the Kconfig
> option to make clear the INTEL_SOC_PMIC option selects support for the
> Intel Crystal Cove PMIC and documents why this is a bool.
> 
> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> Changes in v2:
> -Fix Kconfig depends and selects to fix warning reported by kbuild test robot
> -Improve commit msg (add example of ACPI errors this avoids)
> Changes in v3:
> -No changes
> Changes in v4:
> -Add explanation why this is a bool and why it selects i2c-designwaree
>  to the help text rather then as comments in the Kconfig
> Changes in v5:
> -Add Andy's Reviewed-by
> -Fix OpRegion spelling
> ---
>  drivers/mfd/Kconfig | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 1b6a83a4a114..4f71cab2e6e8 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -448,17 +448,24 @@ config LPC_SCH
>  
>  config INTEL_SOC_PMIC
>  	bool "Support for Crystal Cove PMIC"
> -	depends on GPIOLIB
> -	depends on I2C=y
> +	depends on HAS_IOMEM
> +	select GPIOLIB
> +	select I2C
>  	select MFD_CORE
>  	select REGMAP_I2C
>  	select REGMAP_IRQ
> +	select COMMON_CLK
> +	select I2C_DESIGNWARE_PLATFORM
>  	help
>  	  Select this option to enable support for Crystal Cove PMIC
>  	  on some Intel SoC systems. The PMIC provides ADC, GPIO,
>  	  thermal, charger and related power management functions
>  	  on these systems.
>  
> +	  This option is a bool as it provides an ACPI OpRegion which must be
> +	  available before any devices using it are probed. This option also
> +	  causes the designware-i2c driver to be builtin for the same reason.
> +
>  config INTEL_SOC_PMIC_BXTWC
>  	tristate "Support for Intel Broxton Whiskey Cove PMIC"
>  	depends on INTEL_PMC_IPC

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web