WIP: AR91XX (and AR724X, maybe) support
Adrian Chadd
adrian.chadd at gmail.com
Tue Aug 17 16:21:09 UTC 2010
Hi everyone,
I've purchased a TP-LINK TL-WR1043ND which has an AR9132 SoC (+
on-chip AR9100 11n) in it.
I've begun porting AR91xx and AR724X support over from Linux. Sans USB
support, the kernel boots to mountroot>.
This (currently GPL-tainted, so don't commit it!) patch is against -head:
http://people.freebsd.org/~adrian/rspro/ar91xx-support.1.diff
The patch introduces a set of CPU operations which implement the main
per-chip differences.
The dmesg (without USB; so it doesn't panic early in startup):
http://people.freebsd.org/~adrian/rspro/dmesg-TL-WR1943ND.txt
USB panics shortly after probe:
ehci0: <AR71XX Integrated USB 2.0 controller> at mem
0x1b000000-0x1bffffff irq 1 on nexus0
ehci0: [ITHREAD]
usbus0: set host controller mode
usbus0: EHCI version 0.42
Trap cause = 5 (address error (store) - kernel mode)
[ thread pid 0 tid 100000 ]
Stopped at generic_bs_w_4+0x4: sw a3,0(a1)
I've tested this patch on my AR7161 (in the routerstation pro) and
have booted it to multi-user mode.
Platform stuff that needs doing:
* Need to finish porting the AR91xx related stubs
* Need to finish porting (but not test :/) the AR724X related stubs
* The USB code panics, figure out what is missing there
* Add stubs for USB DDR flushing (which aren't used at the moment, but
I'll get to it)
* Add a stub to control the peripherals currently controlled via GPIO
pins. At least USB differs between the two.
* Modify if_arge to use the cpu op struct to get and set the pll
* Add in the WMAC specifics for the AR91xx
* If I can find an AR724x, find the PCIe specifics
General stuff:
* Go digging through the rest of the Linux headers and figure out what
other differences there are; implement those
* Finish rewriting the GPL chunks that are left
Board stuff:
* Find the flash device details; modify the flash driver to support that
* Find out why arge0/arge1 aren't being correctly probed (arge0 has no
PHY; arge1 has a bogus MAC) and rectify the situation enough so one of
the interfaces is usable
Adrian
More information about the freebsd-mips
mailing list