mainboard/google/kahlee: Add support for Dediprog em100
This device claims to run at 75MHz with dual read, but it is not always reliable. Add an option to change the SPI flash speed to 16MHz, to avoid any problems. BUG=b:111363976 TEST=manually try to get my em100 running (it doesn't yet) Change-Id: I78d3d32c467aac82c72d31c773bfb0f69808aed4 Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-on: https://review.coreboot.org/27466 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
parent
46255f7ee4
commit
acad6212c8
|
@ -34,19 +34,31 @@ void bootblock_mainboard_early_init(void)
|
|||
|
||||
void bootblock_mainboard_init(void)
|
||||
{
|
||||
/*
|
||||
* W25Q128FW Setup
|
||||
* Normal Read 40MHz
|
||||
* Fast Read 104MHz
|
||||
* Dual Read IO (1-2-2)
|
||||
*/
|
||||
sb_read_mode(SPI_READ_MODE_DUAL122);
|
||||
if (IS_ENABLED(CONFIG_EM100)) {
|
||||
/*
|
||||
* We should be able to rely on defaults, but it seems safer
|
||||
* to explicitly set up these registers.
|
||||
*/
|
||||
sb_read_mode(SPI_READ_MODE_NOM);
|
||||
sb_set_spi100(SPI_SPEED_16M, /* Normal */
|
||||
SPI_SPEED_16M, /* Fast */
|
||||
SPI_SPEED_16M, /* AltIO */
|
||||
SPI_SPEED_66M); /* TPM */
|
||||
} else {
|
||||
/*
|
||||
* W25Q128FW Setup
|
||||
* Normal Read 40MHz
|
||||
* Fast Read 104MHz
|
||||
* Dual Read IO (1-2-2)
|
||||
*/
|
||||
sb_read_mode(SPI_READ_MODE_DUAL122);
|
||||
|
||||
/* Set SPI speeds before verstage. Needed for TPM */
|
||||
sb_set_spi100(SPI_SPEED_33M, /* Normal */
|
||||
SPI_SPEED_66M, /* Fast */
|
||||
SPI_SPEED_66M, /* AltIO */
|
||||
SPI_SPEED_66M); /* TPM */
|
||||
/* Set SPI speeds before verstage. Needed for TPM */
|
||||
sb_set_spi100(SPI_SPEED_33M, /* Normal */
|
||||
SPI_SPEED_66M, /* Fast */
|
||||
SPI_SPEED_66M, /* AltIO */
|
||||
SPI_SPEED_66M); /* TPM */
|
||||
}
|
||||
|
||||
/* Setup TPM decode before verstage */
|
||||
sb_tpm_decode_spi();
|
||||
|
|
Loading…
Reference in New Issue