Commit Graph
28437 Commits
Author SHA1 Message Date
Sebastian Huber f60b4f9344 dosfs: Fix warning fix 2015-04-27 09:10:49 +02:00
Hesham ALMatary 3dead51edd Fix or1k C++ build failure
Closes #2329
2015-04-26 12:44:12 -05:00
Sebastian Huber d83127e9bd posix: Use right thread dispatch disable function 2015-04-24 08:36:52 +02:00
Sebastian Huber f32935335a score: Fix POSIX thread join
A thread join is twofold.  There is one thread that exists and an
arbitrary number of threads that wait for the thread exit (one-to-many
relation).  The exiting thread may want to wait for a thread that wants
to join its exit (STATES_WAITING_FOR_JOIN_AT_EXIT in
_POSIX_Thread_Exit()).  On the other side we need a thread queue for all
the threads that wait for the exit of one particular thread
(STATES_WAITING_FOR_JOIN in pthread_join()).

Update #2035.
2015-04-23 21:42:13 +02:00
Joel Sherrill 694f155589 sp13/system.h: Account for all message buffers
There may be a way to reduce the memory requirements but it
will require time to ensure the math is right and it passes
on all targets. At the current time, it fails on 22 BSPs which
run on simulators.
2015-04-23 12:48:04 -05:00
Joel Sherrill 5a8cd17d3c simsh*.tcfg: Add iostream 2015-04-23 12:48:04 -05:00
Joel Sherrill d9ef7ebe11 gensh2-testsuite.tcfg: Add iostream 2015-04-23 12:48:04 -05:00
Joel Sherrill 07d9954b61 gensh1-testsuite.tcfg: Add iostream 2015-04-23 12:48:03 -05:00
Joel Sherrill ba885bde9f mbx8xx/include/bsp.h: Add include of <rtems/irq.h> 2015-04-23 12:48:03 -05:00
Joel Sherrill 9a9614e5c9 ods68302-testsuite.tcfg: Add iosteam 2015-04-23 12:48:03 -05:00
Joel Sherrill f620ac7a0e mrm332-testsuite.tcfg: Add iostream and sptls02 2015-04-23 12:48:03 -05:00
Joel Sherrill 0c87234fa9 mcf5225x-testsuite.tcfg: Add iostream 2015-04-23 12:48:02 -05:00
Joel Sherrill e38fdc22e8 lpc1768_mbed_ahb_ram_eth-testsuite.tcfg: Add sptls02 2015-04-23 12:48:02 -05:00
Joel Sherrill 2e9baac047 lm3s3749-testsuite.tcfg: Add cdtest 2015-04-23 12:48:02 -05:00
Sebastian Huber 9cac9c5105 score: Delete _Thread_queue_Dequeue_priority() 2015-04-23 13:09:56 +02:00
Sebastian Huber be6c4611ac score: _CORE_mutex_Seize_interrupt_blocking()
Move some code into _CORE_mutex_Seize_interrupt_blocking() so that the
thread queue handling is in one place.
2015-04-23 10:28:52 +02:00
Sebastian Huber 9f10911d2b score: Delete Thread_queue_Control::state
Use a parameter for _Thread_queue_Enqueue() instead to reduce memory
usage.
2015-04-23 08:55:43 +02:00
Sebastian Huber d349e8a439 score: Fix priority message queue insert
Move the linear search into a critical section to avoid corruption due
to higher priority interrupts.  The interrupt disable time depends now
on the count of pending messages.

Close #2328.
2015-04-23 08:54:09 +02:00
Sebastian Huber b0686b473d score: Delete _CORE_RWLock_Timeout()
This function was identical to _Thread_queue_Timeout().  This makes
_Thread_queue_Enqueue_with_handler() obsolete.
2015-04-22 13:58:32 +02:00
Sebastian Huber 49d436497e score: Delete bogus THREAD_QUEUE_WAIT_FOREVER
It makes no sense to use this indirection since the type for timeout
values is Watchdog_Interval.
2015-04-22 11:38:57 +02:00
Daniel Cederman 3641320161 smptests/smpcache01: Enable interrupts before waiting for other CPUs
Otherwise there is a risk that a CPU misses a cache manager message
from another CPU and the test hangs.
2015-04-22 09:29:56 +02:00
Sebastian Huber d3802bb5d7 score: Delete object control block ISR lock
The Objects_Control::Lock was a software layer violation.  It worked
only for the threads since they are somewhat special.

Update #2273.
2015-04-21 08:25:32 +02:00
Sebastian Huber 1041de1ab0 score: Add _Thread_Get_interrupt_disable()
Remove _Thread_Acquire() and _Thread_Acquire_for_executing().  Add
utility functions for the default thread lock.   Use the default thread
lock for the RTEMS events.  There is no need to disable thread
dispatching and a Giant acquire in _Event_Timeout() since this was
already done by the caller.

Update #2273.
2015-04-21 08:25:32 +02:00
Sebastian Huber 413b9e286d score: Modify _Thread_Dispatch_disable_critical()
Return the current processor to be in line with
_Thread_Disable_dispatch().
2015-04-21 08:25:31 +02:00
Sebastian Huber 3bf4a9fac4 score: _Objects_Get_isr_disable()
Do not disable thread dispatching and do not acquire the Giant lock.
This makes it possible to use this object get variant for fine grained
locking.

Update #2273.
2015-04-21 08:25:31 +02:00
Sebastian Huber 4db0ae8e07 score: _Objects_Get_isr_disable()
Use ISR_lock_Context instead of ISR_Level to allow use of ISR locks for
low-level locking.

Update #2273.
2015-04-21 08:25:31 +02:00
Sebastian Huber 1981b4697e score: Add _ISR_lock_ISR_disable/enable() 2015-04-20 08:23:26 +02:00
Sebastian Huber 26c142e5ad score: Refactor SMP cache manager support 2015-04-20 08:23:25 +02:00
Hesham ALMatary 3d597c04ed Rename or1ksim BSP to generic_or1k
or1ksim BSP was initially named after or1ksim simulator, and it was
intented to only run there. But now it can also run on QEMU, jor1k and
real FPGA boards without modifications. It makes more sense to give
it a new generic name like generic_or1k.
2015-04-19 06:26:36 -04:00
Joel Sherrill 491434cd7c sp13: Document message buffer usage and adjust configuration 2015-04-17 09:49:45 -05:00
Joel Sherrill 3985e75803 user/libpci.t: Make it build and clean up 2015-04-17 09:46:08 -05:00
Joel Sherrill c5d86ec0c9 or1k-utility.h: Add missing end of C++ header pattern
closes 2326.
2015-04-17 09:45:05 -05:00
Martin Galvan 41b37e0073 score: Improve assert
While cpu_self->thread_dispatch_disable_level shouldn't ever be zero, it
would be better to check it before doing the decrement.
2015-04-17 11:03:02 +02:00
Sebastian Huber b8cdc38b2f sptests/sp52: Reduce clock tick interval
This helps on slow simulators.
2015-04-17 10:47:21 +02:00
Sebastian Huber c7a65085d2 Fix build for non-SPARC targets 2015-04-17 09:19:03 +02:00
Sebastian Huber 8d6fd40592 sapi: Avoid declaration in source, fix type 2015-04-17 08:46:33 +02:00
Sebastian Huber a211a732fd score: Fix _TOD_Set_with_timestamp()
Update the current time before the watchdog adjust so that timer
routines observe the new time.
2015-04-17 08:38:09 +02:00
Daniel Hellstrom c77e3cb1b0 LEON3: gptimer drvmgr init simplified wrt boot 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 9fe249d032 LEON3: move timer variable to where initialized 2015-04-17 01:10:30 +02:00
Daniel Hellstrom efd43ad162 LEON3: simplify amba initialization 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 628e739368 LEON3: clock irq always same as timer instance
The leon.h already contains the definition of LEON3_CLOCK_INDEX
and irq must always follow that when separate IRQ is supported by
the HW. The definitions are resued from leon.h.
2015-04-17 01:10:30 +02:00
Daniel Hellstrom 291c53917d DRVMGR: remove struct driver registration func 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 4c9c46df76 DRVMGR: clean-up DRV_OPS_NUM 2015-04-17 01:10:30 +02:00
Daniel Hellstrom bef5e23ef6 DRVMGR: renamed RES_EMPTY to DRVMGR_RES_EMPTY 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 4d3e70f4a6 DRVMGR: KEY_TYPE now a enum drvmgr_kt 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 14d55debf1 DRVMGR: renamed info_dev to get_info_dev 2015-04-17 01:10:30 +02:00
Daniel Hellstrom 246fe225f1 DRVMGR: change name of freq_get to get_freq 2015-04-17 01:10:29 +02:00
Daniel Hellstrom bb2f2200aa DRVMGR: renamed private drv_mgr and its struct name 2015-04-17 01:10:29 +02:00
Daniel Hellstrom bf2c3f8baf DRVMGR: updated README 2015-04-17 01:10:29 +02:00
Daniel Hellstrom 4f0906080d DRVMGR: only build on SPARC platform 2015-04-17 01:10:28 +02:00