14 Commits

Author SHA1 Message Date
Bahadir Balban
6fa4884a5a Changes since April
Clean up of build directories.
Simplifications to capability model.
2010-06-01 15:08:13 +03:00
Bahadir Balban
403a038845 Changes between 16 March 2010 - 6 April 2010
Mutex system call fixed for multiple contenders
Userspace irq support extended to keyboard/mouse.
Scheduler modified for real-time irq tasks
2010-04-06 19:47:12 +03:00
Amit Mahajan
ab728dd1d5 Added separate toolchains for userspace and kernel. 2010-03-30 20:15:39 +05:30
Amit Mahajan
2b340c9f2f 1. Old pending files cleaned from public repo. 2. Thread_create routines removed from timer_service and kmi_service. 3. Sconstruct of libdev updated. 2010-03-30 16:17:22 +05:30
Amit Mahajan
92645be6ff KMI patch for devel branch on bahadir's repo.
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.
2010-03-30 16:17:15 +05:30
Bahadir Balban
74b5963fcb Kernel updates since December 2009 2010-03-25 01:12:40 +02:00
Bahadir Balban
27c0c34e3d Irqs are working. Scheduler modified to come back from no tasks.
- Userspace irq handling for timer.
- If no runnable task is left. scheduler busy loops in user context
  of last runnable task until a new task becomes runnable.
2009-12-14 11:48:40 +02:00
Bahadir Balban
8fe15ba811 Fixed all compilation errors with timer service 2009-12-12 15:31:01 +02:00
Bahadir Balban
8681c1d8c9 Updated the timer service to introduce irq handling. 2009-12-12 15:17:29 +02:00
Bahadir Balban
32c0bb3a76 Converted all wait/wakeup runqueue lock/unlock paths to irq versions.
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.
2009-12-12 01:20:14 +02:00
Amit Mahajan
8d2571cd1f Capability print functions shifted to l4lib and various capability.h
cleaned
2009-12-08 13:02:48 +05:30
Bahadir Balban
7628cc1e1d Merge branch 'rebase' of git://git.l4dev.org/~amit/codezero into amit
Conflicts:
	conts/baremetal/timer_service/main.c
2009-12-04 00:41:51 +02:00
Amit Mahajan
cf9f3aab5b Timer service enhanced for sleep 2009-12-01 23:31:23 +05:30
Amit Mahajan
3caa43d756 Restrictions on naming of baremetal containers removed and we have an
automation script for integrating containers in baremetal/
2009-11-30 19:22:27 +05:30