The chtwc 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, opregion and i2c-bus drivers are built in.

This commit changes the option for the mfd driver to bool and adds
a select for the i2c-bus driver, ensuring both are built-in if enabled.

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

Signed-off-by: Hans de Goede <[email protected]>
---
 drivers/mfd/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 08f8dcb..396245d 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -443,12 +443,15 @@ config INTEL_SOC_PMIC
          on these systems.
 
 config INTEL_SOC_PMIC_CHTWC
-       tristate "Support for Intel Cherry Trail Whiskey Cove PMIC"
+       # This is a bool as it provides an ACPI Opregion which must be
+       # available as soon as possible
+       bool "Support for Intel Cherry Trail Whiskey Cove PMIC"
        depends on ACPI
        depends on I2C
        select MFD_CORE
        select REGMAP_I2C
        select REGMAP_IRQ
+       select I2C_DESIGNWARE_PLATFORM
        help
          Select this option to enable support for the Intel Cherry Trail
          Whiskey Cove PMIC found on some Intel Cherry Trail systems.
-- 
2.9.3

Reply via email to