Home
last modified time | relevance | path

Searched hist:"7 e1e6ceda3f07a40445ae1c4ac5549a899d5e252" (Results 1 – 1 of 1) sorted by relevance

/openbmc/linux/drivers/usb/serial/
H A Dftdi_sio.cdiff 7e1e6ceda3f07a40445ae1c4ac5549a899d5e252 Wed Mar 08 10:02:58 CST 2017 Ian Abbott <abbotti@mev.co.uk> USB: serial: ftdi_sio: detect BM chip with iSerialNumber bug

If a BM type chip has iSerialNumber set to 0 in its EEPROM, an incorrect
value is read from the bcdDevice field of the USB descriptor, making it
look like an AM type chip. Attempt to correct this in
ftdi_determine_type() by attempting to read the latency timer for an AM
type chip if it has iSerialNumber set to 0. If that succeeds, assume it
is a BM type chip.

Currently, read_latency_timer() bails out without reading the latency
timer for an AM type chip, so factor out the guts of
read_latency_timer() into a new function _read_latency_timer() that
attempts to read the latency timer regardless of chip type, and returns
either the latency timer value or a negative error number.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Johan Hovold <johan@kernel.org>