On some systems, it appears to be possible for writes to the EEPROM registers to be delayed for long enough that the EEPROM's setup and hold times are violated, resulting in invalid data being read from the EEPROM. Fix by inserting a PCI read cycle immediately after writes to RTL_9346CR, to ensure that the write has completed before starting the udelay() used to time the SPI bus transitions. Reported-by: Gelip <mrgelip@gmail.com> Tested-by: Gelip <mrgelip@gmail.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>tags/v1.20.1
|
|
||
74 |
|
74 |
|
75 |
|
75 |
|
76 |
|
76 |
|
|
77 |
|
|
77 |
|
78 |
|
78 |
|
79 |
|
79 |
|
80 |
|
|
|
||
87 |
|
88 |
|
88 |
|
89 |
|
89 |
|
90 |
|
|
91 |
|
|
90 |
|
92 |
|
91 |
|
93 |
|
92 |
|
94 |
|
|
|
||
129 |
|
131 |
|
130 |
|
132 |
|
131 |
|
133 |
|
|
134 |
|
|
132 |
|
135 |
|
133 |
|
136 |
|
134 |
|
137 |
|