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
d85ccdb3fe
Fixed few more anomalies with threaded irqs.
...
There is a bug that causes the sleeping irq
thread to never wake up. Investigating.
2009-12-13 20:35:04 +02:00
Bahadir Balban
0c4bd69357
Reimplemented atomic destructive read. Revised irq control capabilities.
2009-12-13 18:49:35 +02:00
Bahadir Balban
c7069a8e8e
Fixed minor issues on capability list sharing.
2009-12-13 18:02:47 +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
41b7176a58
2 posix containers tested with changes. Inline assemblers fixed.
...
Inline assembler for irq disabling had no output variables defined.
2009-12-12 01:54:39 +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
54301e8026
Test container working, but logic seems wrong
2009-12-09 15:56:21 +05:30
Amit Mahajan
57f157c4a5
And now we have working thread demo container.
2009-12-09 12:05:06 +05:30
Amit Mahajan
b106aa902f
test and thread_demo container compiling, but crashing at runtime
2009-12-08 14:01:06 +05:30
Amit Mahajan
8d2571cd1f
Capability print functions shifted to l4lib and various capability.h
...
cleaned
2009-12-08 13:02:48 +05:30
Amit Mahajan
2d4a785231
Deleted misplaced baremetal containers present in bahadir's repo.
2009-12-08 11:21:50 +05:30
Bahadir Balban
2908c40816
Undefined instruction handling/ipc revised, tests added, cleaned up.
2009-12-04 15:22:56 +02:00
Bahadir Balban
93dc1ed49e
Merge branch 'undeftest' of git://git.l4dev.org/~prem/codezero into prem
2009-12-04 14:11:06 +02:00
Bahadir Balban
21545152c8
Fixed false positive mmap return value error checks.
...
Normally a pointer with its topmost bits set may cause false errors
due to the fact that such pointers result in negative integer casts.
The remedy is to use IS_ERR() macro that accepts only down to -1000
as error and any values below as valid.
2009-12-04 13:34:14 +02:00
Bahadir Balban
2b89fed572
Merge branch 'rebase' of git://git.l4dev.org/~amit/codezero into devel
...
Conflicts:
config/cml/examples/posix/two_posix.cml
2009-12-04 13:18:14 +02:00
Amit Mahajan
a185985fe5
Example cml files updated for new default memory region assignments
2009-12-04 11:08:54 +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
3d2b87d488
CLCD added as new capability, code note added yet
2009-12-04 00:54:23 +05:30
Bahadir Balban
2c93de65bf
Removed 2 arguments from l4_capability_control
...
l4_capability_control works well for almost all system calls
using a buffer pointer to the capability that it operates on.
Only for sharing/granting of capability lists, it is yet to be
decided how to provide a grant target id.
2009-12-02 16:47:05 +02:00
Bahadir Balban
b12349f2e4
Moved all threading functions to libl4/include/l4lib/thread/*
2009-12-02 16:15:47 +02:00
Bahadir Balban
c9fc6d9341
Reorganized a few header file comments
2009-12-02 15:31:02 +02:00
Amit Mahajan
fcc1e52bea
Test and Threads_demo containers interchanged by mistake earlier.
...
Corrected
2009-12-02 00:14:32 +05:30
Amit Mahajan
cf9f3aab5b
Timer service enhanced for sleep
2009-12-01 23:31:23 +05:30
Bahadir Balban
26c5b4f0b0
Added standard capability.h to all pre-defined projects
2009-12-01 15:51:41 +02:00
Bahadir Balban
0bd2b78215
Updated two_posix example cml
2009-12-01 14:36:50 +02:00
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
Bahadir Balban
e82d62f64b
Merge branch 'rebase' of git://git.l4dev.org/~amit/codezero into devel
...
Conflicts:
conts/baremetal/baremetal5/main.c
2009-11-30 15:36:36 +02:00
Amit Mahajan
9eb5515641
Timer container sleep ipc definition added
2009-11-30 18:36:29 +05:30
Amit Mahajan
438fd780f8
MR register handling added in UART service
2009-11-30 18:26:05 +05:30
Bahadir Balban
7518cbf5ba
Corrected mis-copied capability print function.
2009-11-30 13:19:53 +02:00
Amit Mahajan
b9362985e0
Typos' in Bahadir's repo corrected, we are in good shape now and in sync
...
with bahadir's latest devel branch
2009-11-30 16:07:36 +05:30
Bahadir Balban
1c2e33c929
Updated capability print function
2009-11-30 00:42:24 +02:00
Bahadir Balban
f4989ab2d2
Style fixes to uart service sources
2009-11-29 23:38:38 +02:00
Amit Mahajan
41c87d9c8c
Errors due to rebasing corrected. Still not done, ahve some problem in
...
IRQ patches added.
2009-11-29 12:16:51 +05:30
Amit Mahajan
16b984510f
PBA8 platform removed
2009-11-29 11:50:02 +05:30
Amit Mahajan
41a64fcd23
Independent compilation of libl4 and libmem working fine.
2009-11-29 11:45:48 +05:30
Amit Mahajan
88da7c2f36
Timer devices removed, based on PAGE granularity mappings.
2009-11-29 11:45:48 +05:30
Amit Mahajan
1080c9e122
Issues due to capability uattr updation resolved
2009-11-29 11:45:48 +05:30
Amit Mahajan
b48f817bd8
Timer Code tested
2009-11-29 11:45:48 +05:30
Amit Mahajan
d18751fbe8
UART service tested.
2009-11-29 11:45:48 +05:30
Amit Mahajan
26268a30d2
Testing UART service
2009-11-29 11:45:47 +05:30
Amit Mahajan
9f57cb7c67
Timer capability added, Baremetal5 added as Timer Sevice, Code not
...
tested yet.
2009-11-29 11:45:47 +05:30
Amit Mahajan
b53cc73747
Testing Inter container IPC for UART service
2009-11-29 11:45:47 +05:30
Amit Mahajan
a10a77a0a0
Added UART service as baremetal4 container
2009-11-29 11:44:06 +05:30
Bahadir Balban
b5e6c66426
UTCB update
...
Added 8 notify slots of 1 byte each. These will be notification
slots for irqs and other threads.
Also now userspace refers to kernel's utcb definition, so they're
in sync.
2009-11-24 14:45:43 +02:00
Bahadir Balban
e0c40ece5d
Added a new irq_control system call
...
This is currently an empty call. It will be used for registering,
receiving and releasing irqs.
2009-11-23 16:46:51 +02:00
Bahadir Balban
328040e98a
Renamed all thread symbols in l4lib with l4lib_ prefix. They were clasing with mm0
...
The threading work will be revised and prefixes changed to a more meaningful name
later on.
2009-11-23 13:18:58 +02:00
Bahadir Balban
e690949b3b
tcb_alloc_init of l4lib was clashing with mm0 definitions.
2009-11-23 12:59:33 +02:00