From 30865c2fb1bacdb17c4109f5f82df2278187427b Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Thu, 5 Jun 2025 10:04:25 +0200 Subject: [PATCH] mb/amd/birman_plus: Skip i2c_early init Early init is only required for I2C2 since the DDI1 connector type must be probed in romstage. The other I2C busses aren't used at the moment and there's no need for early init. TEST=Display init on amd/birman_plus still works. I2C0, I2C1 and I2C3 are initialized in ramstage after FSPS. Change-Id: I0491d03464b675d18e42324580c91642aae4e727 Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/c/coreboot/+/87963 Tested-by: build bot (Jenkins) Reviewed-by: Angel Pons Reviewed-by: Maximilian Brune Reviewed-by: Fred Reitberger --- src/mainboard/amd/birman_plus/devicetree_glinda.cb | 4 ---- src/mainboard/amd/birman_plus/devicetree_phoenix.cb | 4 ---- src/mainboard/amd/birman_plus/early_gpio.c | 12 ------------ 3 files changed, 20 deletions(-) diff --git a/src/mainboard/amd/birman_plus/devicetree_glinda.cb b/src/mainboard/amd/birman_plus/devicetree_glinda.cb index 5a7dd163f4..9ec3c8fd71 100644 --- a/src/mainboard/amd/birman_plus/devicetree_glinda.cb +++ b/src/mainboard/amd/birman_plus/devicetree_glinda.cb @@ -23,11 +23,7 @@ chip soc/amd/glinda register "i2c_scl_reset" = "GPIO_I2C0_SCL | GPIO_I2C1_SCL | GPIO_I2C2_SCL | GPIO_I2C3_SCL" - - register "i2c[0].early_init" = "1" - register "i2c[1].early_init" = "1" register "i2c[2].early_init" = "1" - register "i2c[3].early_init" = "1" # I2C Pad Control RX Select Configuration register "i2c_pad[0].rx_level" = "I2C_PAD_RX_1_8V" diff --git a/src/mainboard/amd/birman_plus/devicetree_phoenix.cb b/src/mainboard/amd/birman_plus/devicetree_phoenix.cb index 2490c9b93b..a6d5503118 100644 --- a/src/mainboard/amd/birman_plus/devicetree_phoenix.cb +++ b/src/mainboard/amd/birman_plus/devicetree_phoenix.cb @@ -25,11 +25,7 @@ chip soc/amd/phoenix register "i2c_scl_reset" = "GPIO_I2C0_SCL | GPIO_I2C1_SCL | GPIO_I2C2_SCL | GPIO_I2C3_SCL" - - register "i2c[0].early_init" = "1" - register "i2c[1].early_init" = "1" register "i2c[2].early_init" = "1" - register "i2c[3].early_init" = "1" # I2C Pad Control RX Select Configuration register "i2c_pad[0].rx_level" = "I2C_PAD_RX_1_8V" diff --git a/src/mainboard/amd/birman_plus/early_gpio.c b/src/mainboard/amd/birman_plus/early_gpio.c index 4915996881..b7dcff175a 100644 --- a/src/mainboard/amd/birman_plus/early_gpio.c +++ b/src/mainboard/amd/birman_plus/early_gpio.c @@ -54,22 +54,10 @@ static const struct soc_amd_gpio gpio_set_stage_reset[] = { /* FANOUT0 */ PAD_NF(GPIO_85, FANOUT0, PULL_NONE), - /* I2C0 SCL */ - PAD_NF(GPIO_145, I2C0_SCL, PULL_NONE), - /* I2C0 SDA */ - PAD_NF(GPIO_146, I2C0_SDA, PULL_NONE), - /* I2C1 SCL */ - PAD_NF(GPIO_147, I2C1_SCL, PULL_NONE), - /* I2C1 SDA */ - PAD_NF(GPIO_148, I2C1_SDA, PULL_NONE), /* I2C2_SCL */ PAD_NF(GPIO_113, I2C2_SCL, PULL_NONE), /* I2C2_SDA */ PAD_NF(GPIO_114, I2C2_SDA, PULL_NONE), - /* I2C3_SCL */ - PAD_NF(GPIO_19, I2C3_SCL, PULL_NONE), - /* I2C3_SDA */ - PAD_NF(GPIO_20, I2C3_SDA, PULL_NONE), }; void mainboard_program_early_gpios(void)