Commit Graph

461 Commits

Author SHA1 Message Date
Sebastian Huber
e3be691598 score: Remove idle field of Per_CPU_Control
This field is unused except for special case simulator clock drivers.
In these places use an alternative.  Add and use
_Thread_Set_global_exit_status() and _Thread_Get_global_exit_status().
2013-05-31 15:20:31 +02:00
Sebastian Huber
e071c18322 smp: Move secondary CPU initialization request
Do not assume that the scheduler selects the main processor for the
initialization thread.
2013-05-29 11:06:08 +02:00
Sebastian Huber
baf8f4dabc smp: Simplify main CPU initialization
Call _SMP_Handler_initialize() later and move bsp_smp_initialize() into
_SMP_Handler_initialize().  Change bsp_smp_initialize() prototype to
match integer types of calling context.
2013-05-29 11:06:07 +02:00
Sebastian Huber
6c2eedc7dd smp: Add maximum_processors field to config
Delete rtems_configuration_get_smp_maximum_processors().  Delete
rtems_configuration_smp_maximum_processors variable.  Add
maximum_processors field to rtems_configuration_table if RTEMS_SMP is
defined.  Add rtems_configuration_get_maximum_processors().
2013-05-16 11:44:12 +02:00
Sebastian Huber
b7cf1ff717 libcsupport: Delete libc_wrapup()
Add and use rtems_libio_exit_helper.  Add rtems_libio_exit().

The fclose(stdin) etc. makes no sense during exit.  This would use the
_REENT structure of the thread calling _exit().
2013-04-26 10:57:08 +02:00
Sebastian Huber
5fa0e5c5ec libcsupport: Rename open_dev_console()
Rename open_dev_console() to rtems_libio_post_driver().  Rename
rtems_libio_supp_helper to rtems_libio_post_driver_helper.
2013-04-26 10:57:08 +02:00
Sebastian Huber
a290fbe946 libcsupport: Make LibIO helper const
Add and use rtems_libio_helper function type.  Add and use
rtems_libio_helper_null() instead of NULL pointer.
2013-04-26 10:57:08 +02:00
Sebastian Huber
10e348ab7d sapi: Fix warnings 2013-04-23 09:59:57 +02:00
Sebastian Huber
dc76d98a53 sapi: Fix unified workspace option 2013-04-11 13:57:10 +02:00
Joel Sherrill
6784547afd confdefs.h: Only one clock or timer configuration parameter can be defined
Only one of the following can be defined.

+ CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+ CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
+ CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER

Otherwise it is a configuration error which can be detected at
compilation time.
2013-04-09 13:15:40 -05:00
Joel Sherrill
92b33b8d09 confdefs.h: Eliminate BSP_DEFAULT_UNIFIED_WORK_AREAS
This was not used by any BSP and obsolete now that unified memory
is an option for all BSPs.
2013-04-09 13:15:39 -05:00
Andreas Heinig
5f745464fc Fixed 2 compiler warnings 2013-03-19 15:13:54 +01:00
Sebastian Huber
7571a235c5 sapi: PR1911: Add CONFIGURE_DISABLE_BSP_SETTINGS 2013-02-12 09:31:27 +01:00
Sebastian Huber
68f36d144a score: Add and use rtems_assert_context 2013-02-12 09:31:27 +01:00
Joel Sherrill
e858f7049c cpukit: Fix many Doxygen warnings 2013-01-10 17:06:47 -06:00
Joel Sherrill
b697bc6a44 cpukit: Use Consistent Beginning of Doxygen Group Notation
This is the result of a sed script which converts all uses
of @{ into a consistent form.
2013-01-10 17:06:47 -06:00
Joel Sherrill
a15eaaf9fd cpukit: Doxygen group fixes and many warnings addressed
The output of the modules.html is much improved. Most
filesystem and POSIX API related groups are properly nested.
Some formatting issues were addressed as were multiple
inconsistencies.
2013-01-10 17:06:47 -06:00
Sebastian Huber
e82fcb44d5 sapi: Documentation 2013-01-09 20:42:58 +01:00
Alex Ivanov
27f071cd88 sapi: Doxygen Clean Up Task #1 2013-01-08 07:13:41 -06:00
Sebastian Huber
f2f39b62a2 sapi: Add rtems_fatal_source_description() 2013-01-07 16:08:19 +01:00
Sebastian Huber
0ca6172722 score: Add const qualifier 2013-01-02 16:31:54 +01:00
Alex Ivanov
3cf4031c19 Header File Doxygen Enhancement Task #1 2012-12-28 17:48:12 -06:00
Mathew Kallada
c5782a26b3 Header File Doxygen Enhancement Task #7 2012-12-28 11:17:49 -06:00
Mathew Kallada
9ab091e1e4 Header File Doxygen Enhancement Task #2 2012-12-28 10:36:55 -06:00
Sebastian Huber
cbd07e4ce0 score: Add rtems_chain_node_count_unprotected() 2012-12-21 15:40:27 +01:00
Alex Ivanov
11109ea227 libfs: Doxygen Enhancement Task #2
http://www.google-melange.com/gci/task/view/google/gci2012/8032207
2012-12-18 15:46:38 -05:00
Mathew Kallada
c2ae79e93c misc: Header File Doxygen Enhancement Task #3
http://www.google-melange.com/gci/task/view/google/gci2012/8006220
2012-12-12 15:57:49 -05:00
Sebastian Huber
e12f5acf23 sapi: Fix previous commit 2012-12-09 14:12:46 +01:00
Sebastian Huber
50dd75a4eb sapi: Revert documentation change 2012-12-09 14:06:56 +01:00
Christopher Kerl
4c98a3ea29 sapi misc: Clean up Doxygen GCI task #1
http://www.google-melange.com/gci/task/view/google/gci2012/8011204
2012-12-07 09:49:54 -05:00
Sebastian Huber
48bff53b3d score: rtems_initialize_start_multitasking()
Do not return from rtems_initialize_start_multitasking() and call
rtems_fatal() instead with a fatal source of RTEMS_FATAL_SOURCE_EXIT and
a fatal code with the exit status.

Remove all bsp_cleanup() functions.  The boot_card() is now a no return
function.
2012-12-07 09:38:41 +01:00
Sebastian Huber
f9340ed7f4 posix: Add and use <rtems/posix/psignalimpl.h>
This file contains the parts of <rtems/posix/psignal.h> that are only
necessary for the POSIX API implementation.
2012-12-05 18:07:05 +01:00
Sebastian Huber
815994fd17 score: Add CPU_Exception_frame
Add CPU port type CPU_Exception_frame and function
_CPU_Exception_frame_print().

The CPU ports of avr, bfin, h8300, lm32, m32c, m32r, m68k, nios2, sh,
sparc64, and v850 use an empty default implementation of
_CPU_Exception_frame_print().

Add rtems_exception_frame and rtems_exception_frame_print().

Add RTEMS_FATAL_SOURCE_EXCEPTION for CPU exceptions.  Use rtems_fatal()
with source RTEMS_FATAL_SOURCE_EXCEPTION in CPU ports of i386, powerpc,
and sparc for unexpected exceptions.

Add third parameter to RTEMS_BSP_CLEANUP_OPTIONS() which controls the
BSP_PRINT_EXCEPTION_CONTEXT define used in the default
bsp_fatal_extension().

Add test sptests/spfatal26.
2012-11-27 17:03:40 +01:00
Sebastian Huber
3be0c9afa3 score: Add and use <rtems/score/userextimpl.h>
This file contains the parts of <rtems/score/userext.h> that are only
necessary for the RTEMS implementation.
2012-11-22 16:35:07 +01:00
Sebastian Huber
e2e5b49215 score: Add rtems_fatal() 2012-11-15 15:33:12 +01:00
Sebastian Huber
b31a9603e0 score: Add INTERNAL_ERROR_CPU_ISR_INSTALL_VECTOR
Use INTERNAL_ERROR_CPU_ISR_INSTALL_VECTOR on PowerPC for
_CPU_ISR_install_vector().
2012-11-15 15:33:11 +01:00
Sebastian Huber
dc6e830c10 sapi: Add and use rtems_internal_error_description 2012-11-15 15:33:11 +01:00
Sebastian Huber
e4b40531f3 sapi: Add rtems_fatal_source and rtems_fatal_code 2012-11-15 15:33:11 +01:00
Sebastian Huber
228df42204 sapi: Add BSP_INITIAL_EXTENSION to confdefs.h
A BSP can supply an initial extension via the new optional
BSP_INITIAL_EXTENSION define.  It will be the last in the initial
extension table.
2012-11-13 09:38:02 +01:00
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
9ed2befb6b score: Add and use RTEMS_ARRAY_SIZE() 2012-11-13 09:20:57 +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
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
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
f536e127be sapi: Use rtems_*_get_user_multiprocessing_table 2012-11-07 15:08:45 +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