[flashrom] [PATCH 3/3] serprog: add support for setting the SPI frequency
Uwe Hermann
uwe at hermann-uwe.de
Thu Sep 15 22:14:11 CEST 2011
On Thu, Sep 08, 2011 at 12:56:23AM +0200, Stefan Tauner wrote:
> +0x14 Set SPI clock frequency 16-bit requested frequency ACK + 16-bit set frequency / NAK
^
"Set SPI clock frequency (in Hz)"
> + 0x14 (S_SPI_SCK):
Please rename to S_SPI_FREQ (also all other places with 'SCK'). SCK is
often used to name a clock pin, this is unnecessarily confusing here.
> + Set the SPI clock frequency.
^
in Hz
> + f_spi = extract_programmer_param("sck");
sck -> freq
> + if (f_spi && strlen(f_spi)) {
> + uint8_t buf[2];
> + uint16_t tmp = atoi(f_spi);
Hm, maybe use strtol() later and check for errors, atoi() is not so
good for that.
> + if (sp_check_commandavail(S_CMD_S_SPI_SCK) == 0)
> + msg_pdbg(MSGHEADER "Setting SPI clock rate is "
> + "not supported!\n");
> + else if (sp_docommand(S_CMD_S_SPI_SCK, 2, buf, 2, buf)
> + == 0) {
> + tmp = buf[0] | (buf[1]<<8);
^^
Missing spaces.
> + msg_pdbg(MSGHEADER "Requested to set SPI clock "
> + "frequency to %s kHz. It was actually "
> + "set to %d kHz\n", f_spi, tmp);
kHz -> Hz
I would highly recommend to use Hz as the unit for setting the frequency
(in the API). The frontend (flashrom) can easily allow freq=1000,
or freq=1khz, or freq=1mhz etc. for user friendlyness, but the API
should maintain max. flexibility IMHO.
Uwe.
--
http://hermann-uwe.de | http://sigrok.org
http://randomprojects.org | http://unmaintained-free-software.org
More information about the flashrom
mailing list