From d26f5a103fe300dc345b8059394039fa22d1e442 Mon Sep 17 00:00:00 2001 From: Felix Held Date: Mon, 20 Nov 2023 16:31:31 +0100 Subject: soc/amd/genoa: add I2C support The Genoa SoC has 6 I2C controllers. In order to support those, select SOC_AMD_COMMON_BLOCK_I2C and implement the SoC-specific functions and data structures needed by the common AMD I2C code. Since the common AMD I2C code also reports if the controller is enabled or not in the SSDT, change the corresponding DSDT code to use this information. In this patch the I2C pad control registers don't get configured by coreboot yet and we rely on ABL already having those set up correctly which seems to be an assumption that the reference firmware is making too. PPR #55901 Rev 0.26 was used as a reference for the I2C controllers and the GPIO pins being used. Signed-off-by: Felix Held Change-Id: Iebc10de6ea5c6d441cff04e016dcec62405078c3 Reviewed-on: https://review.coreboot.org/c/coreboot/+/78900 Tested-by: build bot (Jenkins) Reviewed-by: Varshit Pandya --- src/soc/amd/genoa/chipset.cb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/soc/amd/genoa/chipset.cb') diff --git a/src/soc/amd/genoa/chipset.cb b/src/soc/amd/genoa/chipset.cb index 58c11561a5..0f543e74c1 100644 --- a/src/soc/amd/genoa/chipset.cb +++ b/src/soc/amd/genoa/chipset.cb @@ -207,12 +207,12 @@ chip soc/amd/genoa end end - device mmio 0xfedc2000 alias i2c_0 off end - device mmio 0xfedc3000 alias i2c_1 off end - device mmio 0xfedc4000 alias i2c_2 off end - device mmio 0xfedc5000 alias i2c_3 off end - device mmio 0xfedc6000 alias i2c_4 off end - device mmio 0xfedcb000 alias i2c_5 off end + device mmio 0xfedc2000 alias i2c_0 off ops soc_amd_i2c_mmio_ops end + device mmio 0xfedc3000 alias i2c_1 off ops soc_amd_i2c_mmio_ops end + device mmio 0xfedc4000 alias i2c_2 off ops soc_amd_i2c_mmio_ops end + device mmio 0xfedc5000 alias i2c_3 off ops soc_amd_i2c_mmio_ops end + device mmio 0xfedc6000 alias i2c_4 off ops soc_amd_i2c_mmio_ops end + device mmio 0xfedcb000 alias i2c_5 off ops soc_amd_i2c_mmio_ops end device mmio 0xfedc9000 alias uart_0 off ops amd_uart_mmio_ops end device mmio 0xfedca000 alias uart_1 off ops amd_uart_mmio_ops end device mmio 0xfedce000 alias uart_2 off ops amd_uart_mmio_ops end -- cgit v1.2.3