mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 15:12:36 +02:00
Handle programmer init errors and abort
If the programmer didn't initialize correctly, it is pointless to continue. Fix standalone IT87* SPI init to set flashbus to NONE if no IT87* SPI communication is possible. Print the I/O port detected by the IT87* SPI code. Corresponding to flashrom svn r633. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Ward Vandewege <ward@gnu.org>
This commit is contained in:
parent
0c854c0509
commit
34cc6cc070
@ -692,7 +692,10 @@ int main(int argc, char *argv[])
|
|||||||
if (optind < argc)
|
if (optind < argc)
|
||||||
filename = argv[optind++];
|
filename = argv[optind++];
|
||||||
|
|
||||||
ret = programmer_init();
|
if (programmer_init()) {
|
||||||
|
fprintf(stderr, "Error: Programmer initialization failed.\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
myusec_calibrate_delay();
|
myusec_calibrate_delay();
|
||||||
|
|
||||||
|
@ -83,11 +83,12 @@ static uint16_t find_ite_spi_flash_port(uint16_t port)
|
|||||||
tmp |= 1 << 4;
|
tmp |= 1 << 4;
|
||||||
sio_write(port, 0x24, tmp);
|
sio_write(port, 0x24, tmp);
|
||||||
}
|
}
|
||||||
printf("serial flash pin %i\n", (tmp & 1 << 5) ? 87 : 29);
|
printf("Serial flash pin %i\n", (tmp & 1 << 5) ? 87 : 29);
|
||||||
/* LDN 0x7, reg 0x64/0x65 */
|
/* LDN 0x7, reg 0x64/0x65 */
|
||||||
sio_write(port, 0x07, 0x7);
|
sio_write(port, 0x07, 0x7);
|
||||||
flashport = sio_read(port, 0x64) << 8;
|
flashport = sio_read(port, 0x64) << 8;
|
||||||
flashport |= sio_read(port, 0x65);
|
flashport |= sio_read(port, 0x65);
|
||||||
|
printf("Serial flash port 0x%04x\n", flashport);
|
||||||
}
|
}
|
||||||
exit_conf_mode_ite(port);
|
exit_conf_mode_ite(port);
|
||||||
return flashport;
|
return flashport;
|
||||||
@ -113,8 +114,11 @@ int it87spi_init(void)
|
|||||||
|
|
||||||
get_io_perms();
|
get_io_perms();
|
||||||
ret = it87spi_common_init();
|
ret = it87spi_common_init();
|
||||||
if (!ret)
|
if (!ret) {
|
||||||
buses_supported = CHIP_BUSTYPE_SPI;
|
buses_supported = CHIP_BUSTYPE_SPI;
|
||||||
|
} else {
|
||||||
|
buses_supported = CHIP_BUSTYPE_NONE;
|
||||||
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user