Add simple cooperative threading scheme to allow parallel hw init.

Enable system for running hardware initialization in parallel.
The yield() call can now round-robin between "threads".
Rework ata controller init to use a thread per controller.
Make sure internal drives are registered in a defined order.
Run keyboard initialization in a thread.
Rework usb init to use a thread per controller.
13 files changed
tree: b31a834be5abd9ccafa28fff0059267ea9710b65
  1. .gitignore
  2. COPYING
  3. COPYING.LESSER
  4. Makefile
  5. README
  6. TODO
  7. src/
  8. tools/
  9. vgasrc/