From 6c3ba50a444d969c3086ab18d5123f119295748b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Niew=C3=B6hner?= Date: Sun, 8 Nov 2020 19:32:13 +0100 Subject: mb/supermicro/x11ssh-tf: configure "POST complete" gpio for IPMI driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Configure the "POST complete" gpio in the devicetree for the BMC/IPMI driver and set the pad's initial value to 0 since the signal is active- high and shall be set by the IPMI/BMC driver. Also add the pad to early gpio config, since it is expected to have an external pull-up like X11SSM-F, which is wrong and would confuse the BMC. Test: Boot the machine via the BMC web interface and check that sensors get read correctly by the IPMI firmware when the payload starts. Tested successfully. Change-Id: If344b2271bfc8d50b8b64847109818f96f2abbcb Tested-by: Patrick Rudolph Signed-off-by: Michael Niewöhner Reviewed-on: https://review.coreboot.org/c/coreboot/+/48711 Tested-by: build bot (Jenkins) Reviewed-by: Tim Wawrzynczak --- src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio.c | 2 +- .../supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio_early.c | 1 + .../supermicro/x11-lga1151-series/variants/x11ssh-tf/overridetree.cb | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio.c b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio.c index 06d3bd43c3..00faa2e3f6 100644 --- a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio.c +++ b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio.c @@ -50,7 +50,7 @@ static const struct pad_config gpio_table[] = { PAD_NC(GPP_B17, NONE), PAD_NC(GPP_B18, NONE), PAD_NC(GPP_B19, NONE), - PAD_CFG_GPO(GPP_B20, 1, PLTRST), + PAD_CFG_GPO(GPP_B20, 0, PLTRST), /* BMC POST_COMPLETE */ PAD_NC(GPP_B21, NONE), PAD_NC(GPP_B22, NONE), PAD_CFG_NF(GPP_B23, NONE, DEEP, NF2), diff --git a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio_early.c b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio_early.c index 3ea21e0321..e3c5c4d982 100644 --- a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio_early.c +++ b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/gpio_early.c @@ -14,6 +14,7 @@ static const struct pad_config early_gpio_table[] = { PAD_CFG_NF(GPP_A8, NONE, DEEP, NF1), PAD_CFG_NF(GPP_A9, NONE, DEEP, NF1), PAD_CFG_NF(GPP_A10, NONE, DEEP, NF1), + PAD_CFG_GPO(GPP_B20, 0, PLTRST), /* BMC POST_COMPLETE */ }; void mainboard_configure_early_gpios(void) diff --git a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/overridetree.cb b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/overridetree.cb index 093786cbd5..d7f5df8c8b 100644 --- a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/overridetree.cb +++ b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-tf/overridetree.cb @@ -76,6 +76,8 @@ chip soc/intel/skylake end device pci 1f.0 on # LPC Interface chip drivers/ipmi + use pch_gpio as gpio_dev + register "post_complete_gpio" = "GPP_B20" # On cold boot it takes a while for the BMC to start the IPMI service register "wait_for_bmc" = "1" register "bmc_boot_timeout" = "60" -- cgit v1.2.3