Commit Graph
24363 Commits
Author SHA1 Message Date
Sebastian Huber 466cf31d81 score: Statically initialize user extensions
The initial extensions remain now in a read-only table and will not be
copied to work space memory.  The extension chains are statically
initialized.  This makes it possible to call _User_extensions_Iterate()
independent of the system state.  It is now guaranteed that the fatal
callout of the initial extensions will be called provided the stack
pointer, the read-only data, and code memory are valid.
2012-11-13 09:20:57 +01:00
Sebastian Huber e5ae7c927c score: Add and use _User_extensions_Iterate()
Replace the separate user extension iterations with a single iteration
function.  This reduces code size and improves maintainability since the
iteration logic is only in one function.  The runtime overhead is
insignificant.
2012-11-13 09:20:57 +01:00
Sebastian Huber 9ed2befb6b score: Add and use RTEMS_ARRAY_SIZE() 2012-11-13 09:20:57 +01:00
Joel Sherrill 602a18440a rtems-message_queue.adb: Formatting 2012-11-07 10:18:47 -06:00
Sebastian Huber 15aaea9769 doc/user: Fix scheduler configuration 2012-11-07 17:09:01 +01:00
Sebastian Huber 2195fd27a7 sapi: Make initial user extensions table read-only 2012-11-07 15:19:21 +01:00
Sebastian Huber b59675438e sapi: Fix user scheduler configuration
The comment in confdefs.h shows how to do it:

An application can define its own scheduling policy by defining
CONFIGURE_SCHEDULER_USER and the following:
   - CONFIGURE_SCHEDULER_ENTRY_POINTS
   - CONFIGURE_MEMORY_FOR_SCHEDULER - base memory
   - CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER - per task memory
2012-11-07 15:19:20 +01:00
Sebastian Huber 3cd79b0a9b libtests/devfs03: Initialize nodes 2012-11-07 15:19:20 +01:00
Sebastian Huber ae4f125e86 sapi: Make Configuration read-only
The Configuration is now read-only and must be statically initialized
via confdefs.h or similar.
2012-11-07 15:08:46 +01:00
Sebastian Huber ed8be1aeea monitor: Add const qualifier 2012-11-07 15:08:46 +01:00
Sebastian Huber 682b819e96 monitor: Avoid unused function 2012-11-07 15:08:45 +01:00
Sebastian Huber 9186fa8dea bsps/sparc: Delete unused symbol declaration 2012-11-07 15:08:45 +01:00
Sebastian Huber ef5f3598ad sapi: Delete duplicate declarations 2012-11-07 15:08:45 +01:00
Sebastian Huber e39fa07cec sapi: Delete unused macros
Delete rtems_configuration_get_table(),
rtems_configuration_set_stack_space_size(),
rtems_configuration_set_work_space_size(), and
rtems_configuration_set_microseconds_per_tick().
2012-11-07 15:08:45 +01:00
Sebastian Huber c4794975e9 sapi: Use rtems_configuration_get_work_space_size 2012-11-07 15:08:45 +01:00
Sebastian Huber f536e127be sapi: Use rtems_*_get_user_multiprocessing_table 2012-11-07 15:08:45 +01:00
Sebastian Huber 39547679b3 sapi: Use rtems_configuration_get_idle_task 2012-11-07 15:08:44 +01:00
Sebastian Huber 0da4ecddb4 sapi: Use rtems_*_get_number_of_initial_extensions 2012-11-07 15:08:44 +01:00
Sebastian Huber e8814e19f3 sapi: Use rtems_config*_get_user_extension_table 2012-11-07 15:08:44 +01:00
Sebastian Huber 8a331a5e4c sapi: Use rtems_config*_get_idle_task_stack_size 2012-11-07 15:08:44 +01:00
Sebastian Huber 2b875ff55b sapi: Use rtems_config*_get_maximum_extensions 2012-11-07 15:08:44 +01:00
Sebastian Huber ec8b6c4e9f sapi: Use rtems_config*_get_device_driver_table 2012-11-07 15:08:43 +01:00
Sebastian Huber 1a75b4b336 sapi: Use rtems_conf*_get_number_of_device_drivers 2012-11-07 15:08:43 +01:00
Sebastian Huber c53b330c94 sapi: Use rtems_configuration_get_maximum_drivers 2012-11-07 15:08:43 +01:00
Sebastian Huber 75524a5e13 sapi: Use rtems_config*_get_interrupt_stack_size 2012-11-07 15:08:43 +01:00
Sebastian Huber 5e86086f1e sapi: Use rtems_config*_get_microseconds_per_tick 2012-11-07 15:08:43 +01:00
Sebastian Huber dd40e1438b sptests/spfatal08: Simplify 2012-11-07 15:08:43 +01:00
Sebastian Huber 3dd120f003 sptests/spfatal07: Use confdefs.h to trigger test 2012-11-07 15:08:42 +01:00
Sebastian Huber 524473fde4 bsp/nds: Do not change configuration 2012-11-07 15:08:42 +01:00
Sebastian Huber c082e633e5 bsp/mvme167: Do not provide user extensions table
The application should use confdefs.h to set up the initial user
extensions.  The bsp_fatal_error_occurred() handler is available via
<fatal.h>.
2012-11-07 15:08:42 +01:00
Sebastian Huber e85476b5a2 bsp/mvme167: Remove unused parameter 2012-11-07 15:08:42 +01:00
Sebastian Huber a9e5e747f0 bsps: Use allocator mutex for generic IRQ support
Since the allocator mutex allows nesting now we can use it for the
generic IRQ support (recursive obtain in a potential malloc()).  This
simplifies the code and reduces memory usage.
2012-11-06 10:20:56 +01:00
Sebastian Huber e278f8b7d9 score: Support static_assert and _Static_assert 2012-11-06 10:20:42 +01:00
Ralf Corsépius 0f06a0e540 Remove rtems-rfs-bitmaps-ut.c. 2012-11-06 04:59:40 +01:00
Sebastian Huber 8cbd90c51c libnetworking: Disconnect after mbuf shortage
The missing disconnect left the socket in an unusable state.  Each send
request resulted in an EISCONN error.
2012-11-05 11:01:41 +01:00
Sebastian Huber d2cf254485 rtems: Transient event documentation 2012-11-05 10:37:18 +01:00
Sebastian Huber b3cee28a51 libnetworking: Avoid deadlock during starvation 2012-11-02 16:06:57 +01:00
Sebastian Huber 7a1e92a17a monitor: Support for system events 2012-11-02 16:06:40 +01:00
Sebastian Huber eb93595b4c libblock: Documentation 2012-11-02 09:40:58 +01:00
Sebastian Huber 9f0a68ce5a libblock: Block device transfer request API change
Add and use rtems_blkdev_request_done().  Block device transfer requests
must signal the completion status now with rtems_blkdev_request_done().
The return value of the block device IO control will be ignored for
transfer requests.

The first parameter of rtems_blkdev_request_cb is now the transfer
request structure.

Renamed rtems_blkdev_request::req_done to rtems_blkdev_request::done to
break third party drivers at compile time, otherwise this API change
would result in runtime errors.
2012-11-02 09:40:58 +01:00
Sebastian Huber 20e1e769f8 bsp/mpc55xx: SMSC9218i avoid mbuf migration
The receive task will only hand over a mbuf if it gets a new one
immediately.  This avoids mbuf migration out of the receive task in case
of overload.
2012-11-02 09:34:39 +01:00
Sebastian Huber 26e90fb1c6 libnetworking: Use system events
Add reserved system events RTEMS_EVENT_SYSTEM_NETWORK_SBWAIT and
RTEMS_EVENT_SYSTEM_NETWORK_SOSLEEP.

Add and use rtems_bsdnet_event_send().
2012-11-02 09:34:35 +01:00
Sebastian Huber f7ceeacfb0 rtems: Use event 31 for the transient event
This avoids conflicts with the netisr events of the network stack.
2012-11-02 09:34:34 +01:00
Sebastian Huber 736b8d2714 rtems: Use correct sync state for system events 2012-10-31 17:03:44 +01:00
Sebastian Huber 93b29f08f0 Filesystem: Use transient event 2012-10-30 18:03:29 +01:00
Sebastian Huber ee82825dec libblock: Use transient event 2012-10-30 18:03:29 +01:00
Sebastian Huber 0edf263139 rtems: Add system events
System events are similar to normal events.  They offer a second set of
events.  These events are intended for internal RTEMS use and should not
be used by applications (with the exception of the transient system
event).
2012-10-30 18:03:02 +01:00
Sebastian Huber 990575c57f rtems: Reusable event implementation
Change event implementation to enable reuse for system events.
2012-10-30 18:00:33 +01:00
Sebastian Huber f8657bbd31 rtems: Remove unused event_condition member 2012-10-30 18:00:33 +01:00
Sebastian Huber f33873ba8e bsp/pc386: Typo 2012-10-29 21:14:23 +01:00