1. We are not making a new clcd service container, as we dont want to keep
separate container for each device, ultimately we will have one
container managing all devices.
2. CLCD driver needs to be added.
Important points:
----------------
1. Works fine for pb926 + qemu.
2. Scan code logic for kryboard is not complete.
We just have generic keys and shift working.
3. Mouse scancodes are collected but not decoded.
4. Right now we are doing enable_irq(), just before we go for waiting
again for new irqs. This is not correct but we had latency issues.
This needs to be fixed immediately.
5. Also it seems like the notify_clot count should be an atomic
variable. Needs to be discussed.
Irqs can now touch runqueues and do async wakeups. This necessitated
that we implement all wake up wait and runqueue locking work with irqs.
All this, assumes that in an SMP setup we may have cross-cpu wake ups,
runqueue manipulation. If we later decide that we only wake up threads
in the current container, (and lock containers to cpus) we won't really
need spinlocks, or irq disabling anymore. The current set up might be
trivially less responsive, but is more flexible.