sb/intel/lynxpoint: Provide a function for mainboard super I/O config

The super I/O setup needs to be done after the LPC is enabled. For
Lynx Point, configuring the super I/O in `mainboard_romstage_entry()`
is too early to get a serial console output. To remedy this, add a
function `mainboard_config_superio()` that will be called at the
appropriate time, and can be overridden by mainboard code.

Change-Id: Iaf4188a17533c636e7b0c7efa220bc6a25876dda
Signed-off-by: Tristan Corrick <tristan@corrick.kiwi>
Reviewed-on: https://review.coreboot.org/29382
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Tristan Corrick 2018-10-31 02:26:19 +13:00 committed by Nico Huber
parent f3127d4af7
commit 655ef61937
2 changed files with 7 additions and 0 deletions

View File

@ -124,6 +124,10 @@ void pch_enable_lpc(void)
pci_write_config32(PCH_LPC_DEV, LPC_GEN4_DEC, config->gen4_dec); pci_write_config32(PCH_LPC_DEV, LPC_GEN4_DEC, config->gen4_dec);
} }
void __weak mainboard_config_superio(void)
{
}
int early_pch_init(const void *gpio_map, int early_pch_init(const void *gpio_map,
const struct rcba_config_instruction *rcba_config) const struct rcba_config_instruction *rcba_config)
{ {
@ -139,6 +143,8 @@ int early_pch_init(const void *gpio_map,
setup_pch_gpios(gpio_map); setup_pch_gpios(gpio_map);
#endif #endif
mainboard_config_superio();
console_init(); console_init();
pch_generic_setup(); pch_generic_setup();

View File

@ -206,6 +206,7 @@ int early_spi_read(u32 offset, u32 size, u8 *buffer);
int early_pch_init(const void *gpio_map, int early_pch_init(const void *gpio_map,
const struct rcba_config_instruction *rcba_config); const struct rcba_config_instruction *rcba_config);
void pch_enable_lpc(void); void pch_enable_lpc(void);
void mainboard_config_superio(void);
#endif /* !__PRE_RAM__ && !__SMM__ */ #endif /* !__PRE_RAM__ && !__SMM__ */
#endif /* __ASSEMBLER__ */ #endif /* __ASSEMBLER__ */