1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 23:22:37 +02:00

Small fixes for the linux_spi programmer code

Corresponding to flashrom svn r1432.

Signed-off-by: Sven Schnelle <svens@stackframe.org>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
This commit is contained in:
Sven Schnelle 2011-09-07 20:48:34 +00:00 committed by Uwe Hermann
parent 4335ec844a
commit cb24ddbe12

View File

@ -54,7 +54,7 @@ static const struct spi_programmer spi_programmer_linux = {
int linux_spi_init(void) int linux_spi_init(void)
{ {
char *p, *endp, *dev; char *p, *endp, *dev;
int speed = 0; uint32_t speed = 0;
dev = extract_programmer_param("dev"); dev = extract_programmer_param("dev");
if (!dev || !strlen(dev)) { if (!dev || !strlen(dev)) {
@ -65,24 +65,29 @@ int linux_spi_init(void)
p = extract_programmer_param("speed"); p = extract_programmer_param("speed");
if (p && strlen(p)) { if (p && strlen(p)) {
speed = strtoul(p, &endp, 10) * 1024; speed = (uint32_t)strtoul(p, &endp, 10) * 1024;
if (p == endp) { if (p == endp) {
msg_perr("%s: invalid clock: %s kHz\n", __func__, p); msg_perr("%s: invalid clock: %s kHz\n", __func__, p);
return 1; return 1;
} }
} }
msg_pdbg("Using device %s\n", dev);
if ((fd = open(dev, O_RDWR)) == -1) { if ((fd = open(dev, O_RDWR)) == -1) {
msg_perr("%s: failed to open %s: %s\n", __func__, msg_perr("%s: failed to open %s: %s\n", __func__,
dev, strerror(errno)); dev, strerror(errno));
return 1; return 1;
} }
if (speed > 0 && ioctl(fd, SPI_IOC_WR_MAX_SPEED_HZ, &speed) == -1) { if (speed > 0) {
msg_perr("%s: failed to set speed %dHz: %s\n", if (ioctl(fd, SPI_IOC_WR_MAX_SPEED_HZ, &speed) == -1) {
__func__, speed, strerror(errno)); msg_perr("%s: failed to set speed %dHz: %s\n",
close(fd); __func__, speed, strerror(errno));
return 1; close(fd);
return 1;
}
msg_pdbg("Using %d kHz clock\n", speed);
} }
if (register_shutdown(linux_spi_shutdown, NULL)) if (register_shutdown(linux_spi_shutdown, NULL))