From 019c0049a27c7eea0b92e8e5af3e5fb992beb315 Mon Sep 17 00:00:00 2001 From: Jonathan Zhang Date: Mon, 22 Feb 2021 12:17:30 -0800 Subject: mb/fb/watson: enable IPMI_KCS for watson_v2 For watson_v2 mainboard variant: * Enable IPMI_KCS in config. * In early_mainboard_romstage_entry(), enable LPC IO ports for IPMI over KCS. Signed-off-by: Ravi Rama Signed-off-by: Jonathan Zhang Change-Id: Ie0e718b44889678c49f3d61cccd0e33b306fc6f3 Reviewed-on: https://review.coreboot.org/c/coreboot/+/51310 Reviewed-by: Angel Pons Reviewed-by: Christian Walter Tested-by: build bot (Jenkins) --- src/mainboard/facebook/watson/Kconfig | 1 + src/mainboard/facebook/watson/include/variants.h | 1 + src/mainboard/facebook/watson/romstage.c | 7 ++++++- src/mainboard/facebook/watson/variants/watson_v2/romstage.c | 12 ++++++++++++ 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/mainboard/facebook/watson/Kconfig b/src/mainboard/facebook/watson/Kconfig index 2ebc0206cf24..919117d6537b 100644 --- a/src/mainboard/facebook/watson/Kconfig +++ b/src/mainboard/facebook/watson/Kconfig @@ -16,6 +16,7 @@ config BOARD_SPECIFIC_OPTIONS select HAVE_ACPI_TABLES select HAVE_OPTION_TABLE select INTEGRATED_UART + select IPMI_KCS if BOARD_FACEBOOK_WATSON_V2 select SERIRQ_CONTINUOUS_MODE select MAINBOARD_USES_IFD_GBE_REGION select MAINBOARD_HAS_LPC_TPM diff --git a/src/mainboard/facebook/watson/include/variants.h b/src/mainboard/facebook/watson/include/variants.h index 46989168c98a..d364b8b0077b 100644 --- a/src/mainboard/facebook/watson/include/variants.h +++ b/src/mainboard/facebook/watson/include/variants.h @@ -21,5 +21,6 @@ #include void variant_romstage_fsp_init_params(UPD_DATA_REGION *UpdData); +void variant_early_mainboard_romstage_entry(void); #endif /* BASEBOARD_VARIANTS_H */ diff --git a/src/mainboard/facebook/watson/romstage.c b/src/mainboard/facebook/watson/romstage.c index b8df79803192..d65ac0ef5179 100644 --- a/src/mainboard/facebook/watson/romstage.c +++ b/src/mainboard/facebook/watson/romstage.c @@ -25,7 +25,7 @@ */ void early_mainboard_romstage_entry(void) { - + variant_early_mainboard_romstage_entry(); } /** @@ -52,3 +52,8 @@ __weak void variant_romstage_fsp_init_params(UPD_DATA_REGION *UpdData) { } + +__weak void variant_early_mainboard_romstage_entry(void) +{ + +} diff --git a/src/mainboard/facebook/watson/variants/watson_v2/romstage.c b/src/mainboard/facebook/watson/variants/watson_v2/romstage.c index 55f30255e8ec..2e571b971350 100644 --- a/src/mainboard/facebook/watson/variants/watson_v2/romstage.c +++ b/src/mainboard/facebook/watson/variants/watson_v2/romstage.c @@ -15,6 +15,9 @@ * GNU General Public License for more details. */ +#include +#include +#include #include #include @@ -46,3 +49,12 @@ void variant_romstage_fsp_init_params(UPD_DATA_REGION *UpdData) UpdData->HotPlug_PchPciPort7 = 1; UpdData->HotPlug_PchPciPort8 = 1; } + +void variant_early_mainboard_romstage_entry(void) +{ + // Enable LPC IO ports 0xca2, 0xca8 for IPMI + pci_write_config32(PCH_DEV_LPC, LPC_GEN2_DEC, + (0 << 16) | ALIGN_DOWN(0xca2, 4) | 1); + pci_write_config32(PCH_DEV_LPC, LPC_GEN3_DEC, + (0 << 16) | ALIGN_DOWN(0xca8, 4) | 1); +} -- cgit v1.2.3