This is an old revision of the document!
Linux/OpenWrt on the AVM FRITZ!Box 3390
Since we have DSL-based Internet in the office and at home, I'm interested in capable WiFi routers with DSL modem. Finding such a device with OpenWrt support is not exactly easy. Basically, only Lantiq devices are supported, but WAVE300 WiFi is not. Thus, the options are very limited.
Based on the specs, I went for a FRITZ!Box 3390 in the hope it would be similar to the FRITZ!Box 3370 which is already supported by OpenWrt. A few days later, I received a used one for a few Euros.
I disassembled the device to find the hardware details. I was quite surprised to find next to a Lantiq SoC als an Atheros AR9342 SoC with additional 64MB RAM. This was unexpected, because two other Atheros-based WiFi chips are also present (AR9580 and AR9381). How the heck does this system work?
After some log-reading and adding serial support, I was quite convinced that a stage 1 firmware is loaded via MDIO to the Atheros target and then a stage 2 firmware is loaded using Ethernet. Using freetz, I could compile a firmware that dumps MDIO packets and got an MDIO trace.
Basically, I added MDIO support to the Lantiq switch driver, created a userspace stage 1 and stage 2 uploader and created a second OpenWrt instance for the Atheros target. So far, it works and I immediately went on to a FRITZ!Box 3490.
Support for both targets (i.e. Lantiq and ath79) will be added to OpenWrt via a series of Pull Requests: