From 9c5496ecb06b12b6ea1cd0e9c8ca266bab381565 Mon Sep 17 00:00:00 2001 From: Lu Tang Date: Fri, 7 Feb 2025 14:10:53 +0800 Subject: [PATCH] soc/mediatek/mt8196: Set the driving strength of SPMI-P to maximum To fix the SPMI-P glitch, the driving strength of SPMI-P needs to be set to a maximum value of 16mA. Additionally, a hardware solution of external pull-down is also required. BRANCH=rauru TEST=Build passed and booted successfully. The platform remained idle for approximately 20 hours without hang. BUG=b:383634290 Signed-off-by: Lu Tang Change-Id: I131fd04c0313c7ed64bbd123f61d9a6849c8def4 Reviewed-on: https://review.coreboot.org/c/coreboot/+/86341 Tested-by: build bot (Jenkins) Reviewed-by: Yidi Lin Reviewed-by: Yu-Ping Wu --- src/soc/mediatek/mt8196/pmif_spmi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/soc/mediatek/mt8196/pmif_spmi.c b/src/soc/mediatek/mt8196/pmif_spmi.c index c4a984f5a6..cb78249662 100644 --- a/src/soc/mediatek/mt8196/pmif_spmi.c +++ b/src/soc/mediatek/mt8196/pmif_spmi.c @@ -165,9 +165,9 @@ void pmif_spmi_iocfg(void) /* SPMI_M 10mA */ gpio_set_driving(GPIO(SPMI_M_SCL), GPIO_DRV_10_MA); gpio_set_driving(GPIO(SPMI_M_SDA), GPIO_DRV_10_MA); - /* SPMI_P 14mA */ - gpio_set_driving(GPIO(SPMI_P_SCL), GPIO_DRV_14_MA); - gpio_set_driving(GPIO(SPMI_P_SDA), GPIO_DRV_14_MA); + /* SPMI_P 16mA */ + gpio_set_driving(GPIO(SPMI_P_SCL), GPIO_DRV_16_MA); + gpio_set_driving(GPIO(SPMI_P_SDA), GPIO_DRV_16_MA); /* SPMI-P set Pull-Down mode */ gpio_set_pull(GPIO(SPMI_P_SCL), GPIO_PULL_ENABLE, GPIO_PULL_DOWN); gpio_set_pull(GPIO(SPMI_P_SDA), GPIO_PULL_ENABLE, GPIO_PULL_DOWN);