Notes about the WL-700gE Hardware
The WL-700gE is built around the Broadcom BCM4780 NASoC (Network Appliance System on a Chip). Another device built around the same chip is the Maxtor Shared Storage, for which there is already an open firmware project. We might be able to leverage some of that work.
The bootloader used by this device is CFE, version 1.0.37.
A lot of information is available at http://www.linux-mips.org/ and is worth a couple of good looks.
Some people have reverse-engineered a bunch of specs for Broadcom devices, and put documentation at http://bcm-specs.sipsolutions.net/. This may be too old to be useful for us.
See also: MIPS Linux kernel information.
Project Thoughts
See HighLevelPlan for the current view of the project.
There are two basic paths we can take.
- we can start with the Asus-provided "GPL source" bundle and modify it until we have what we want. (abandoned)
- Does it make sense to spend a lot of effort? (no)
- How much effort makes sense? (none)
- we can throw away the Asus bundle and build a completely new OS distribution from source (in progress)
- possibly springboarding off of OpenWRT, use it as our basis for the flash image: OpenWrtBootImage. (in progress)
- is this really possible at all?
- The possible problem is that there may be critically important I/O devices in the system for which we cannot obtain free drivers.
- In that case, pursuing the second path would require that we implement new drivers for those devices.
- If programming specifications are not available without an NDA, we would have to embark on a difficult reverse-engineering exercise;
- We have never written any device drivers before and are not really sure how to.
- In that case, pursuing the second path would require that we implement new drivers for those devices.
- (If worst comes to Leonard Cohen, we can continue to use the Asus toolchain and kernel sources to build just the Linux kernel and proprietary modules, I guess.)
- There is some discussion of this potential problem on the OpenWRT forum: http://forum.openwrt.org/viewtopic.php?pid=24037
- The possible problem is that there may be critically important I/O devices in the system for which we cannot obtain free drivers.
- we might build a simple flash image file containing a built-from-source kernel, install it on a router, and then inspect the boot messages printed on the serial console to see whether it boots at all. (That's the only approach that Brett can think of, so that's the one he's going to explore.) Details on this effort really belong on a separate page, so see TrxImageFromSource for details.
