Main Page
Jump to navigation
Jump to search
Welcome to the XINU for Routers Main Page. This is for developing documentation for our development process that began in the summer of 2006. As this is a wiki, you can sign up and begin adding and editing content, uploading images, and generating the needed documentation for our efforts.
Project Outline
- Goals
- Infect WRT54GL Routers with a XINU kernel
- Develop XINU to a point where it can control the router's basic functions
- Use this platform for a course in embedded systems and/or networking
- Hardware (Mod that LinkSys!)
- Why we add serial ports
- How we add serial ports
- Pictures of building
- Wiring Diagrams
- Chip Diagrams
- Software
- How to connect to a modified router
- Our Project's Directory Structure
- And then there was light: the Common Firmware Environment
- Interacting with the CFE Command Line Interface
- Fun freebies in the CFE API
- How code can Interface with CFE
- OpenWRT (When all else fails, steal it from Linux!)
- Important OpenWRT places of interest
- XINU (an O/S of our own)
Guides
How to...
More Research
- TODO: (concrete tasks)
- Lab Setup Tasks
- Complete three more backend conversions when additional parts arrive.
- Securely epoxy transceivers into front casing.
- XINU Tasks
- Complete wired NIC driver.
- Start on wireless NIC driver and "RoboSwitch".
- Integrate XINU TCP/IP stack.
- Lab Setup Tasks
- TOTHINK: (abstract goals and wishlists)
- Learn more about the memory structure and underlying hardware.
- How should the loader discover hardware parameters if CFE does not implement device enumeration?
- How do we safely access flash memory without bricking the router?
Useful Links
- http://www.openwrt.org
- http://linux.junsun.net/porting-howto/ - Linux MIPS Porting Guide
- http://www.version6.net/gallery/WRT54GL - WRT54GL Internals Pics Gallery
- http://en.wikipedia.org/wiki/WRT54G - WRT54G Wiki
- http://en.wikipedia.org/wiki/MIPS_architecture - MIPS Architecture
- http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/gnu-linker/ - How To Write Linker Scripts
- http://www.embedded.com/shared/printableArticle.jhtml;jsessionid=0LLEHS3YT5KWUQSNDBCSKHSCJUMEIJVN?articleID=9900048 - Linux Porting Guide
- http://courses.cs.vt.edu/~cs2504/spring2006/MIPSDocs/MD00090-2B-MIPS32PRA-AFP-02.50.pdf - MIPS32 Architecture For Programmers