freebsd-dev/sys/mips
Adrian Chadd 7fb4a4be07 Some of the atheros based embedded devices use one or more PCI NICs
on-board, glued to the AR71xx CPU.  These may forgo separate WMAC EEPROMs
(which store configuration and calibration data) and instead store
it in the main board SPI flash.

Normally the NIC reads the EEPROM attached to it to setup various PCI
configuration registers.  If this isn't done, the device will probe as
something different (eg 0x168c:abcd, or 0x168c:ff??.)  Other setup registers
are also written to which may control important functions.

This introduces a new compile option, AR71XX_ATH_EEPROM, which enables the
use of this particular code.  The ART offset in the SPI flash can be
specified as a hint against the relevant slot/device number, for example:

hint.pcib.0.bus.0.17.0.ath_fixup_addr=0x1fff1000
hint.pcib.0.bus.0.18.0.ath_fixup_addr=0x1fff5000

TODO:

* Think of a better name;
* Make the PCIe version of this fixup code also use this option;
* Maybe also check slot 19;
* This has to happen _before_ the SPI flash is set from memory-mapped
  to SPI-IO - so document that somewhere.
2012-01-15 19:29:33 +00:00
..
adm5120 kern cons: introduce infrastructure for console grabbing by kernel 2011-12-17 15:08:43 +00:00
alchemy - dump_avail layout should be sequence of [start, end) 2010-12-09 07:47:40 +00:00
atheros Some of the atheros based embedded devices use one or more PCI NICs 2012-01-15 19:29:33 +00:00
cavium - Add better COP2 (crypto coprocessor) context handler for Octeon. Keep 2012-01-06 01:23:26 +00:00
compile
conf This isn't required any longer - it turns out the flash 2012-01-05 07:19:05 +00:00
idt - There's no need to overwrite the default device method with the default 2011-11-22 21:28:20 +00:00
include Fix backtrace for MIPS64: 2012-01-13 23:31:36 +00:00
malta - There's no need to overwrite the default device method with the default 2011-11-22 21:28:20 +00:00
mips Fix backtrace for MIPS64: 2012-01-13 23:31:36 +00:00
nlm Fix N32 compilation again for XLP. 2011-12-05 03:10:01 +00:00
rmi Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
rt305x Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
sentry5 Remove duplicate header includes 2011-06-26 10:07:48 +00:00
sibyte Remove duplicate header includes 2011-06-26 10:07:48 +00:00