Nico Huber has submitted this change. ( https://review.coreboot.org/c/coreboot/+/35949 )
Change subject: sb/intel/ibexpeak: Move some early PCH init after console init ......................................................................
sb/intel/ibexpeak: Move some early PCH init after console init
Some of the initialization isn't necessary before console INIT is done.
EHCI debug still works fine on the Lenovo Thinkpad X201.
Change-Id: I0c33efd98844f7188e0258cf9f90049d45145e7c Signed-off-by: Arthur Heymans arthur@aheymans.xyz Reviewed-on: https://review.coreboot.org/c/coreboot/+/35949 Reviewed-by: Kyösti Mälkki kyosti.malkki@gmail.com Reviewed-by: Nico Huber nico.h@gmx.de Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/northbridge/intel/nehalem/romstage.c M src/southbridge/intel/ibexpeak/early_pch.c M src/southbridge/intel/ibexpeak/pch.h 3 files changed, 9 insertions(+), 2 deletions(-)
Approvals: build bot (Jenkins): Verified Kyösti Mälkki: Looks good to me, approved Nico Huber: Looks good to me, approved
diff --git a/src/northbridge/intel/nehalem/romstage.c b/src/northbridge/intel/nehalem/romstage.c index c465a99..54766de 100644 --- a/src/northbridge/intel/nehalem/romstage.c +++ b/src/northbridge/intel/nehalem/romstage.c @@ -45,11 +45,13 @@ /* TODO, make this configurable */ nehalem_early_initialization(NEHALEM_MOBILE);
- early_pch_init(); + pch_pre_console_init();
/* Initialize console device(s) */ console_init();
+ early_pch_init(); + /* Read PM1_CNT, DON'T CLEAR IT or raminit will fail! */ reg32 = inl(DEFAULT_PMBASE + 0x04); printk(BIOS_DEBUG, "PM1_CNT: %08x\n", reg32); diff --git a/src/southbridge/intel/ibexpeak/early_pch.c b/src/southbridge/intel/ibexpeak/early_pch.c index 2707eb2..ccd8f74 100644 --- a/src/southbridge/intel/ibexpeak/early_pch.c +++ b/src/southbridge/intel/ibexpeak/early_pch.c @@ -80,10 +80,14 @@ RCBA32(FD2) = 1; }
-void early_pch_init(void) +void pch_pre_console_init(void) { early_lpc_init(); mainboard_lpc_init(); +} + +void early_pch_init(void) +{ early_gpio_init(); /* TODO, make this configurable */ pch_setup_cir(NEHALEM_MOBILE); diff --git a/src/southbridge/intel/ibexpeak/pch.h b/src/southbridge/intel/ibexpeak/pch.h index b963237..1449ee9 100644 --- a/src/southbridge/intel/ibexpeak/pch.h +++ b/src/southbridge/intel/ibexpeak/pch.h @@ -62,6 +62,7 @@ int smbus_block_write(unsigned device, unsigned cmd, u8 bytes, const u8 *buf); #endif
+void pch_pre_console_init(void); void early_pch_init(void);
void early_thermal_init(void);