TODO:
-- E1000 Driver (stubbed)
- > Find specs
- http://download.intel.com/design/network/manuals/8254x_GBe_SDM.pdf
- > Use bochs/qemu only as a backup
+=== Hardware ===
- Cirrus 64-bit VisualMedia Accelerator
PCI 1013:00B8 (Cirrus CLGD5446)
> Specs avail?
- UniChrome Driver
-- Init Scripts
- > With an argument to init passed from the kernel?
+- Sound Stack
+ > Intel 82801AA AC97 Audio (qemu)
+
+=== General Features ===
- #!
> Pass as argument? or pass pointer like ld-acess?
> argc/argv - Definitely
- Signals
> Add return value to mutexs and semaphores, and add warn_unused_ret
+- Restructure build system into:
+ "ARCH=armv7-tegra2", "EDITION=smp"
+ > While you're at it, clean up the build system filenames and ARCH=native/ARCH=host-*
+
+=== Kernel Core ===
- Virtual PCI bus for system configuration
> Hook in drv_pci.c, with an arch-defined array of devices
> Allow hooks on PCI config accesses (to emulate power management etc)
- VFS Path caching
+ > Is it needed?
> Use a trie of path elements
+ - Trie on path content (with '/' included)
+ - Prefixed to reduce load
+ - Able to split
> Maintain backwards cache of elements
> Support symlink caching too
- USB Stack
> Check validity
- > Rework HC API to support structure used by OHCI/ECHI
+ > (DONE) Rework HC API to support structure used by OHCI/ECHI
- LVM Usablity
> /Devices/LVM/by-id/ and /Devices/LVM/by-label
+=== Userland ===
- AxWin3
> Text editor (with a GP formatted text field?)
> Maybe a basic web browser using the surface support?
> Port freetype for nice font support
+ > Configuration (via lib/server)
- Omnispeak
> Debug speed issues (tracing agian)
> Port to AxWin3
-
-- Port dropbear!
+ > (DONE) Trace memory corruption