Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1641958 > unrolled thread
| Started by | Hans de Goede <hdegoede@redhat.com> |
|---|---|
| First post | 2017-05-15 20:30 +0200 |
| Last post | 2017-05-22 21:10 +0200 |
| Articles | 5 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver Hans de Goede <hdegoede@redhat.com> - 2017-05-15 20:30 +0200
[PATCH v4 2/2] mfd: axp20x-i2c: Document that this must be builtin on x86 Hans de Goede <hdegoede@redhat.com> - 2017-05-15 20:30 +0200
Re: [PATCH v4 2/2] mfd: axp20x-i2c: Document that this must be builtin on x86 Lee Jones <lee.jones@linaro.org> - 2017-05-22 13:00 +0200
Re: [PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver Lee Jones <lee.jones@linaro.org> - 2017-05-22 13:00 +0200
Re: [PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2017-05-22 21:10 +0200
| From | Hans de Goede <hdegoede@redhat.com> |
|---|---|
| Date | 2017-05-15 20:30 +0200 |
| Subject | [PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver |
| Message-ID | <tHsUN-3dA-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> --- Note this patch will partially conflicts with (contains the same changes as) a patch in Andy Shevchenko's tree. --- 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 --- drivers/mfd/Kconfig | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 1b6a83a4a114..61ebda81e134 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.12.2
[toc] | [next] | [standalone]
| From | Hans de Goede <hdegoede@redhat.com> |
|---|---|
| Date | 2017-05-15 20:30 +0200 |
| Subject | [PATCH v4 2/2] mfd: axp20x-i2c: Document that this must be builtin on x86 |
| Message-ID | <tHsUO-3dA-17@gated-at.bofh.it> |
| In reply to | #1641958 |
On x86 the axp288 PMIC provides an ACPI OpRegion handler, which must be available before other drivers using it are loaded, which can only be ensured if the mfd, OpRegionr and i2c-bus drivers are built in. Since the axp20x mfd code is used on non X86 too we cannot simply change this into a bool, I've tried some Kconfig magic with if x86 but I could not get this working correctly, so this commit just documents that this should be builtin on x86, which fixes errors like these during boot: mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-2 ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93 ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b acpi 80860F14:02: Failed to change power state to D0 Signed-off-by: Hans de Goede <hdegoede@redhat.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: -Since the axp20x mfd code is used on ARM too where it does not necessarily need to be builtin settle for simply documenting the need to have this builtin on x86 --- drivers/mfd/Kconfig | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 61ebda81e134..cfac1e8a0a20 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -160,6 +160,11 @@ config MFD_AXP20X_I2C components like regulators or the PEK (Power Enable Key) under the corresponding menus. + Note on x86 this provides an ACPI OpRegion, so this must be 'y' + (builtin) and not a module, as the OpRegion must be available as + soon as possible. For the same reason the i2c bus driver options + I2C_DESIGNWARE_PLATFORM and I2C_DESIGNWARE_BAYTRAIL must be 'y' too. + config MFD_AXP20X_RSB tristate "X-Powers AXP series PMICs with RSB" select MFD_AXP20X -- 2.12.2
[toc] | [prev] | [next] | [standalone]
| From | Lee Jones <lee.jones@linaro.org> |
|---|---|
| Date | 2017-05-22 13:00 +0200 |
| Subject | Re: [PATCH v4 2/2] mfd: axp20x-i2c: Document that this must be builtin on x86 |
| Message-ID | <tJTea-4Fe-19@gated-at.bofh.it> |
| In reply to | #1641963 |
On Mon, 15 May 2017, Hans de Goede wrote: > On x86 the axp288 PMIC provides an ACPI OpRegion handler, which must be > available before other drivers using it are loaded, which can only be > ensured if the mfd, OpRegionr and i2c-bus drivers are built in. > > Since the axp20x mfd code is used on non X86 too we cannot simply change > this into a bool, I've tried some Kconfig magic with if x86 but I could > not get this working correctly, so this commit just documents that this > should be builtin on x86, which fixes errors like these during boot: > > mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA > ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] > ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-2 > ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93 > ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b > acpi 80860F14:02: Failed to change power state to D0 > > Signed-off-by: Hans de Goede <hdegoede@redhat.com> Would be good to get an Ack by the users/maintainers of this driver. > --- > 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: > -Since the axp20x mfd code is used on ARM too where it does not necessarily > need to be builtin settle for simply documenting the need to have this > builtin on x86 > --- > drivers/mfd/Kconfig | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index 61ebda81e134..cfac1e8a0a20 100644 > --- a/drivers/mfd/Kconfig > +++ b/drivers/mfd/Kconfig > @@ -160,6 +160,11 @@ config MFD_AXP20X_I2C > components like regulators or the PEK (Power Enable Key) under the > corresponding menus. > > + Note on x86 this provides an ACPI OpRegion, so this must be 'y' > + (builtin) and not a module, as the OpRegion must be available as > + soon as possible. For the same reason the i2c bus driver options Nit: s/i2c/I2C/ > + I2C_DESIGNWARE_PLATFORM and I2C_DESIGNWARE_BAYTRAIL must be 'y' too. > + > config MFD_AXP20X_RSB > tristate "X-Powers AXP series PMICs with RSB" > select MFD_AXP20X -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
[toc] | [prev] | [next] | [standalone]
| From | Lee Jones <lee.jones@linaro.org> |
|---|---|
| Date | 2017-05-22 13:00 +0200 |
| Subject | Re: [PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver |
| Message-ID | <tJTea-4Fe-23@gated-at.bofh.it> |
| In reply to | #1641958 |
On Mon, 15 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> Would be good to get an Ack by the users/maintainers of this driver. > --- > Note this patch will partially conflicts with (contains the same changes as) > a patch in Andy Shevchenko's tree. Has this been sorted now? > --- > 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 > --- > drivers/mfd/Kconfig | 11 +++++++++-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index 1b6a83a4a114..61ebda81e134 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 Nit: s/Opregion/OpRegion/ > + 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] | [next] | [standalone]
| From | Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
|---|---|
| Date | 2017-05-22 21:10 +0200 |
| Subject | Re: [PATCH v4 1/2] mfd: intel_soc_pmic: Select designware i2c-bus driver |
| Message-ID | <tK0Sm-19u-13@gated-at.bofh.it> |
| In reply to | #1646738 |
On Mon, 2017-05-22 at 11:57 +0100, Lee Jones wrote: > On Mon, 15 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> > > Would be good to get an Ack by the users/maintainers of this driver. I'm not sure you will get (active) one. From my prospective, FWIW: Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > > > --- > > Note this patch will partially conflicts with (contains the same > > changes as) > > a patch in Andy Shevchenko's tree. > > Has this been sorted now? From code it looks like (renaming is already done ---vvv). > > config INTEL_SOC_PMIC > > bool "Support for Crystal Cove PMIC" -- Andy Shevchenko <andriy.shevchenko@linux.intel.com> Intel Finland Oy
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web