From: Auger Eric <eric.auger@xxxxxxxxxx> If I2C is built as a module, ACPI_I2C_OPREGION cannot be set and any ACPI opregion calls targeting I2C fail with no opregion found. Commit da3c6647ee08 ("I2C/ACPI: Clean up I2C ACPI code and Add CONFIG_I2C_ACPI config") says following: "Current there is a race between removing I2C ACPI operation region and ACPI AML code accessing." This patch forces core I2C support to be compiled as a built-in module if ACPI is selected as code is not ready for dynamic module removal. Signed-off-by: Eric Auger <eric.auger@xxxxxxxxxx> Signed-off-by: Sinan Kaya <okaya@xxxxxxxxxxxxxx> --- drivers/acpi/Kconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index 4650539..5b48098 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig @@ -9,6 +9,8 @@ menuconfig ACPI depends on IA64 || X86 || ARM64 depends on PCI select PNP + # force building I2C in on ACPI systems, for opregion availability + imply I2C default y if (IA64 || X86) help Advanced Configuration and Power Interface (ACPI) support for -- 1.9.1