diff options
-rw-r--r-- | src/soc/amd/cezanne/acpi/mmio.asl | 7 | ||||
-rw-r--r-- | src/soc/amd/common/block/i2c/Kconfig | 10 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/soc/amd/cezanne/acpi/mmio.asl b/src/soc/amd/cezanne/acpi/mmio.asl index 9e587b75f1..fa43db00b7 100644 --- a/src/soc/amd/cezanne/acpi/mmio.asl +++ b/src/soc/amd/cezanne/acpi/mmio.asl @@ -232,7 +232,11 @@ Device (I2C2) { Device (I2C3) { +#if CONFIG(SOC_AMD_COMMON_BLOCK_I2C3_TPM_SHARED_WITH_PSP) + Name (_HID, "AMDI0019") +#else Name (_HID, "AMDI0010") +#endif Name (_UID, 0x3) Method (_CRS, 0) { Local0 = ResourceTemplate() { @@ -263,7 +267,10 @@ Device (I2C3) Return (0x0F) } +/* If this device is shared with PSP, then PSP takes care of power management */ +#if !CONFIG(SOC_AMD_COMMON_BLOCK_I2C3_TPM_SHARED_WITH_PSP) AOAC_DEVICE(FCH_AOAC_DEV_I2C3, 0) +#endif } Device (MISC) diff --git a/src/soc/amd/common/block/i2c/Kconfig b/src/soc/amd/common/block/i2c/Kconfig index f10c14ab1f..8e8ff9b148 100644 --- a/src/soc/amd/common/block/i2c/Kconfig +++ b/src/soc/amd/common/block/i2c/Kconfig @@ -14,3 +14,13 @@ config SOC_AMD_COMMON_BLOCK_I23C_PAD_CTRL help Select this option to add FCH I2C/I3C pad configuration functions to the build. + +config SOC_AMD_COMMON_BLOCK_I2C3_TPM_SHARED_WITH_PSP + bool + depends on !SOC_AMD_PICASSO && !SOC_AMD_STONEYRIDGE + default n + help + Enable PSP I2C arbitration if there is I2C3 controller with TPM device + connected, which is shared between x86 and PSP. This is necessary to + ensure proper communication with I2C peripherals connected to such + bus. |