freebsd-nq/sys/mips/atheros
Adrian Chadd 72b9c70e36 Break out the arge MDIO bus code into an optional argemdio device.
This is only done if the ARGE_MDIO option is included.

* Shuffle the arge MDIO bus into a separate device, that needs to be
  probed early (use hint.argemdio.X.order=0)
* hint.arge.X.mdio now specifies which miiproxy to rendezvous with.
* Call MAC/MDIO bus init during MDIO attach, not arge attach.

This is done regardless:

* Shift the arge MAC and MDIO bus reset code into separate functions
  and call it early during MDIO bus attach.  It's required for
  correct MDIO bus IO to occur on AR71xx/AR91xx devices.

* Remove the AR71xx/AR91xx centric assumption that there's only one
  MDIO bus.  The initial code mapped miibus0(arge0) and miibus1(arge1)
  MII register operations to the MII0 (arge0) register space.  The
  AR724x (and later, upcoming chipsets) have two MDIO busses and
  the second is very much in use.

TODO:

* since the multiphy behaviour has changed (where now a phymask of >1
  PHY will still be enumerated), multiphy setups may be quite wrong.
  I'll go and fix these so they still have a chance of working, at least.
  until the switch PHY support appears in -HEAD.

Submitted by:	Stefan Bethke <stb@lassitu.de>
2012-05-01 06:18:30 +00:00
..
apb.c Move PMC hook invocation to cpu_intr. The idea is the same as with ast() 2012-03-22 17:47:52 +00:00
apbvar.h - Add intr counters for APB interrupts 2009-11-18 22:53:05 +00:00
ar71xx_bus_space_reversed.c - Handle byte-order issue for non-word accesses to memory mapped 2009-04-19 22:56:35 +00:00
ar71xx_bus_space_reversed.h - Handle byte-order issue for non-word accesses to memory mapped 2009-04-19 22:56:35 +00:00
ar71xx_chip.c The AR913x MII speed configuration matches the AR71xx MII configuration. 2012-04-15 22:34:22 +00:00
ar71xx_chip.h The AR913x MII speed configuration matches the AR71xx MII configuration. 2012-04-15 22:34:22 +00:00
ar71xx_cpudef.h Begin fleshing out MII clock rate configuration changes. 2012-03-17 07:25:23 +00:00
ar71xx_ehci.c Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
ar71xx_fixup.c Introduce the matching PCI ath(4) fixup code from ar71xx_pci into 2012-04-20 08:26:05 +00:00
ar71xx_fixup.h Introduce the matching PCI ath(4) fixup code from ar71xx_pci into 2012-04-20 08:26:05 +00:00
ar71xx_gpio.c Allow for a default GPIO pin "high", which is required for some boards 2012-04-20 22:44:00 +00:00
ar71xx_gpiovar.h Fix GPIO_MAXPINS calculation for the AR71xx, AR724x, AR913x SoC. 2011-05-06 02:45:02 +00:00
ar71xx_machdep.c Remove platform APIs which are not used by any code and which had only stub 2012-03-12 07:34:15 +00:00
ar71xx_ohci.c Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
ar71xx_pci_bus_space.c - Add pci bus space that translates byte order to little endian, 2009-05-15 21:36:50 +00:00
ar71xx_pci_bus_space.h - Add pci bus space that translates byte order to little endian, 2009-05-15 21:36:50 +00:00
ar71xx_pci.c Introduce the matching PCI ath(4) fixup code from ar71xx_pci into 2012-04-20 08:26:05 +00:00
ar71xx_setup.c Remove duplicate header includes 2011-06-26 10:07:48 +00:00
ar71xx_setup.h Preparation work for supporting the AR91xx and AR724x. 2010-08-19 02:03:12 +00:00
ar71xx_spi.c - Remove unnecessary register writes in activate_device 2010-01-21 00:15:59 +00:00
ar71xx_wdog.c Preparation work for supporting the AR91xx and AR724x. 2010-08-19 02:03:12 +00:00
ar71xxreg.h Break out the arge MDIO bus code into an optional argemdio device. 2012-05-01 06:18:30 +00:00
ar91xx_chip.c The AR913x MII speed configuration matches the AR71xx MII configuration. 2012-04-15 22:34:22 +00:00
ar91xx_chip.h Add initial Atheros AR91XX support. 2010-08-19 11:40:10 +00:00
ar91xxreg.h Fix GPIO_MAXPINS calculation for the AR71xx, AR724x, AR913x SoC. 2011-05-06 02:45:02 +00:00
ar724x_chip.c style(9) changes. 2012-03-17 07:29:11 +00:00
ar724x_chip.h Add some initial AR724X chipset support. 2010-08-19 11:53:55 +00:00
ar724x_pci.c Introduce the matching PCI ath(4) fixup code from ar71xx_pci into 2012-04-20 08:26:05 +00:00
ar724xreg.h Fix GPIO_MAXPINS calculation for the AR71xx, AR724x, AR913x SoC. 2011-05-06 02:45:02 +00:00
files.ar71xx Introduce the matching PCI ath(4) fixup code from ar71xx_pci into 2012-04-20 08:26:05 +00:00
if_arge.c Break out the arge MDIO bus code into an optional argemdio device. 2012-05-01 06:18:30 +00:00
if_argevar.h Break out the arge MDIO bus code into an optional argemdio device. 2012-05-01 06:18:30 +00:00
pcf2123_rtc.c - Add driver for PCF2123, SPI real time clock/calendar 2010-01-22 22:14:12 +00:00
pcf2123reg.h - Add driver for PCF2123, SPI real time clock/calendar 2010-01-22 22:14:12 +00:00
std.ar71xx Assume a big-endian default on MIPS and drop the "eb" suffix from MACHINE_ARCH. 2012-03-29 02:54:35 +00:00
uart_bus_ar71xx.c Preparation work for supporting the AR91xx and AR724x. 2010-08-19 02:03:12 +00:00
uart_cpu_ar71xx.c Preparation work for supporting the AR91xx and AR724x. 2010-08-19 02:03:12 +00:00