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. src/
  2. tools/
  3. vgasrc/
  4. .gitignore
  5. COPYING
  6. COPYING.LESSER
  7. Makefile
  8. README
  9. TODO