freebsd-nq/sys/mips/atheros
Adrian Chadd 08f06f0ace Fix the AR724x PCIe glue to correctly probe the BAR on AR7240 devices.
There's a bug in the AR7240 PCIe hardware where a correct BAR will end
up having the device disappear.

It turns out that for the device address it should be all 0's.

However, this meant that the PCI probe code would try writing 0xffffffff
in to see how big the window was, read back 0x0, and think the window
was 32 bits.  It then ended up calculating a resource size of 0 bytes,
failed to find anything via an rman call, and this would fail to attach.

I have quite absolutely no idea how in the various planes of existence
this particular bit of code and how it worked with the PCI bus code
ever worked.  But, well, it did.

Tested:

* Atheros AP93 - AR7240 + AR9280 reference board
2014-09-28 07:27:58 +00:00
..
apb.c Implement apb_print_child(). 2014-03-17 23:21:31 +00:00
apbvar.h The AR71xx has APB interrupts in the MISC registers from 0-7, later 2014-03-16 08:39:46 +00:00
ar71xx_bus_space_reversed.c
ar71xx_bus_space_reversed.h
ar71xx_chip.c
ar71xx_chip.h
ar71xx_cpudef.h Extend the Atheros SoC support to include a method to enable/disable 2014-03-18 12:19:39 +00:00
ar71xx_ehci.c Add the USB EHCI flags required for the post-AR71xx devices. 2014-03-02 02:49:20 +00:00
ar71xx_fixup.c
ar71xx_fixup.h
ar71xx_gpio.c Do not configure all pins as outputs as this can lead to short circuits when 2014-05-10 13:16:04 +00:00
ar71xx_gpiovar.h
ar71xx_machdep.c Add support for reading RouterBoard's memory which is passed by the loader 2014-05-09 14:02:18 +00:00
ar71xx_ohci.c
ar71xx_pci_bus_space.c
ar71xx_pci_bus_space.h
ar71xx_pci.c
ar71xx_setup.c
ar71xx_setup.h
ar71xx_spi.c
ar71xx_wdog.c
ar71xxreg.h
ar91xx_chip.c
ar91xx_chip.h
ar91xxreg.h
ar724x_chip.c
ar724x_chip.h
ar724x_pci.c Fix the AR724x PCIe glue to correctly probe the BAR on AR7240 devices. 2014-09-28 07:27:58 +00:00
ar724xreg.h
ar933x_chip.c
ar933x_chip.h
ar933x_uart.h
ar933xreg.h
ar934x_chip.c Extend the Atheros SoC support to include a method to enable/disable 2014-03-18 12:19:39 +00:00
ar934x_chip.h
ar934x_nfcreg.h Add the AR934x NAND flash controller register definitions. 2014-03-18 12:18:35 +00:00
ar934xreg.h
files.ar71xx
if_arge.c Mechanically convert to if_inc_counter(). 2014-09-19 09:19:49 +00:00
if_argevar.h
pcf2123_rtc.c
pcf2123reg.h
std.ar71xx
uart_bus_ar71xx.c
uart_bus_ar933x.c
uart_cpu_ar71xx.c
uart_cpu_ar933x.c
uart_dev_ar933x.c Commit some sins in the name of "oh god oh god I don't really want to 2014-07-27 05:44:42 +00:00
uart_dev_ar933x.h