Date: Fri, 6 Jul 2007 00:05:12 +0000 (UTC) From: Pyun YongHyeon <yongari@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/re if_re.c src/sys/pci if_rlreg.h Message-ID: <200707060005.l6605CWl065579@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
yongari 2007-07-06 00:05:12 UTC
FreeBSD src repository
Modified files:
sys/dev/re if_re.c
sys/pci if_rlreg.h
Log:
re(4) devices requires an external EEPROM. Depending on models it
would be 93C46(1Kbit) or 93C56(2Kbit). One of differences between them
is number of address lines required to access the EEPROM. For example,
93C56 EEPROM needs 8 address lines to read/write data. If 93C56
recevied premature end of required number of serial clock(CLK) to set
OP code/address of EEPROM, the result would be unexpected behavior.
Previously it tried to detect 93C46, which requires 6 address lines,
and then assumed it would be 93C56 if read data was not expected
value. However, this approach didn't work in some models/situations
as 93C56 requries 8 address lines to access its data. In order to fix
it, change EEPROM probing order such that 93C56 is detected reliably.
While I'm here change hard-coded address line numbers with defined
constant to enhance readability.
PR: 112710
Approved by: re (mux)
Revision Changes Path
1.91 +2 -2 src/sys/dev/re/if_re.c
1.66 +2 -0 src/sys/pci/if_rlreg.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200707060005.l6605CWl065579>
