summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/shared (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Shared MMU initialization for ARM BSPs and RaspberryPi MMU supportHesham AL-Matary2013-10-031-0/+25
| | | | | | | Add support for MMU initialization for RaspberryPi. Introduce new shared MMU configuration table that can be used by other BSPs that call the arm_cp15_start_setup_translation_table_and_enable_mmu_and_cache function. Demonstrate the use of the generic table with RaspberryPi.
* libbsp/shared/bspinit.c: Fix missing prototype warningsJoel Sherrill2013-09-221-3/+7
|
* bsps: Fix header includesSebastian Huber2013-08-272-9/+5
|
* bsps: Add and use CLOCK_DRIVER_ISRS_PER_TICK_VALUEJoel Sherrill2013-08-261-1/+1
| | | | | | | pc386 set CLOCK_DRIVER_ISRS_PER_TICK to a string rather than a numeric value. Add CLOCK_DRIVER_ISRS_PER_TICK_VALUE and other clean up on the clock driver.
* bsps: Fix clock driver definesSebastian Huber2013-08-141-1/+1
|
* bsp: Fix CLOCK_DRIVER_USE_FAST_IDLE and CLOCK_DRIVER_ISRS_PER_TICK.Chris Johns2013-08-141-6/+6
| | | | | Use the value rather than being defined. This allows inverted logic to be used.
* bsps: Include missing <rtems/score/heapimpl.h>Sebastian Huber2013-07-261-1/+2
|
* score: Create object implementation headerSebastian Huber2013-07-261-0/+1
| | | | | | Move implementation specific parts of object.h and object.inl into new header file objectimpl.h. The object.h contains now only the application visible API.
* Include missing <rtems/score/threaddispatch.h>Sebastian Huber2013-07-261-2/+2
|
* score: Merge sysstate API into one fileSebastian Huber2013-07-242-0/+2
|
* smp: Add and use _CPU_SMP_Send_interrupt()Sebastian Huber2013-07-171-3/+1
| | | | Delete bsp_smp_interrupt_cpu().
* smp: Add and use _CPU_SMP_Get_current_processor()Sebastian Huber2013-07-171-2/+3
| | | | | | | | | | Add and use _SMP_Get_current_processor() and rtems_smp_get_current_processor(). Delete bsp_smp_interrupt_cpu(). Change type of current processor index from int to uint32_t to match _SMP_Processor_count type.
* bsps/serial: Move bsp_console_select() declarationSebastian Huber2013-07-172-9/+1
|
* bsps: Use rtems_task_self()Sebastian Huber2013-07-161-1/+1
|
* bsps: Simplify bsp_generic_fatal() declarationSebastian Huber2013-07-111-8/+2
|
* libbsp/shared/generic-fatal.h: Add RTEMS_COMPILER_NO_RETURN_ATTRIBUTE to bsp_fJoel Sherrill2013-07-101-0/+7
|
* mouse: Add shared bsp_get_serial_mouse_device()Sebastian Huber2013-07-071-0/+26
|
* bsps: Delete bspreset_fatal.cSebastian Huber2013-06-241-15/+0
| | | | Use bspreset_loop.c instead. This avoids infinite recursion.
* bsps: Use CONSOLE_DEVICE_NAMESebastian Huber2013-06-211-1/+2
|
* bsps: Remove debug output in shared console driverSebastian Huber2013-06-211-4/+0
|
* bsps: Do not use printk() in shared console driverSebastian Huber2013-06-211-4/+0
|
* bsps: Add fatal errors for shared console driverSebastian Huber2013-06-213-16/+19
|
* bsps: Move bsp_generic_fatal_code to new fileSebastian Huber2013-06-213-16/+46
| | | | Add bsp_generic_fatal().
* bsps: Provide simple console selectionSebastian Huber2013-06-171-0/+22
|
* bsps: Add missing includeSebastian Huber2013-06-171-0/+2
|
* score: Remove idle field of Per_CPU_ControlSebastian Huber2013-05-311-2/+5
| | | | | | 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().
* bsps: Use _Objects_Information_tableSebastian Huber2013-05-311-203/+134
| | | | | | Eliminate copy and paste. Use the _Objects_Information_table since this will take into account that more than one internal thread may exist, e.g. MPCI thread or idle threads of secondary processors.
* smp: Simplify SMP initialization sequenceSebastian Huber2013-05-291-28/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Delete bsp_smp_wait_for(). Other parts of the system work without timeout, e.g. the spinlocks. Using a timeout here does not make the system more robust. Delete bsp_smp_cpu_state and replace it with Per_CPU_State. The Per_CPU_State follows the Score naming conventions. Add _Per_CPU_Change_state() and _Per_CPU_Wait_for_state() functions to change and observe states. Use Per_CPU_State in Per_CPU_Control instead of the anonymous integer. Add _CPU_Processor_event_broadcast() and _CPU_Processor_event_receive() functions provided by the CPU port. Use these functions in _Per_CPU_Change_state() and _Per_CPU_Wait_for_state(). Add prototype for _SMP_Send_message(). Delete RTEMS_BSP_SMP_FIRST_TASK message. The first context switch is now performed in rtems_smp_secondary_cpu_initialize(). Issuing the first context switch in the context of the inter-processor interrupt is not possible on systems with a modern interrupt controller. Such an interrupt controler usually requires a handshake protocol with interrupt acknowledge and end of interrupt signals. A direct context switch in an interrupt handler circumvents the interrupt processing epilogue and may leave the system in an inconsistent state. Release lock in rtems_smp_process_interrupt() even if no message was delivered. This prevents deadlock of the system. Simplify and format _SMP_Send_message(), _SMP_Request_other_cores_to_perform_first_context_switch(), _SMP_Request_other_cores_to_dispatch() and _SMP_Request_other_cores_to_shutdown().
* smp: Delete bsp_smp_secondary_cpu_initialize()Sebastian Huber2013-05-291-4/+0
| | | | | | | Do not call bsp_smp_secondary_cpu_initialize() in rtems_smp_secondary_cpu_initialize(). This allows more flexibilty in the BSP low-level code. Specify context requirements for a call to rtems_smp_secondary_cpu_initialize().
* smp: Simplify main CPU initializationSebastian Huber2013-05-291-3/+1
| | | | | | 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.
* Add c++ guard to header.Daron Chabot2013-05-161-0/+8
|
* libcsupport: Rename open_dev_console()Sebastian Huber2013-04-261-1/+1
| | | | | Rename open_dev_console() to rtems_libio_post_driver(). Rename rtems_libio_supp_helper to rtems_libio_post_driver_helper.
* libcsupport: Make LibIO helper constSebastian Huber2013-04-262-9/+2
| | | | | Add and use rtems_libio_helper function type. Add and use rtems_libio_helper_null() instead of NULL pointer.
* bsps: Fix warningsSebastian Huber2013-04-082-0/+2
|
* RTEMS: Delete ChangeLog files.Gedare Bloom2013-03-081-1091/+0
| | | | | | | | | This commit deletes all RTEMS ChangeLog files. These files have been abandoned since converting to git version control. The historical data may be recovered by checking out any commit before this one. Most of the contents of these ChangeLog files can also be found in the git log. Two external ChangeLog files, ChangeLog.slac and ChangeLog.zlib, remain.
* libchip/serial: Add const qualifierSebastian Huber2013-02-111-1/+1
|
* bsps: Fix rtems_interrupt_server_handler_remove()Sebastian Huber2013-01-071-2/+2
|
* score: rtems_initialize_start_multitasking()Sebastian Huber2012-12-073-32/+7
| | | | | | | | | 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.
* bsps: Add BSP_GENERIC_FATAL_SPURIOUS_INTERRUPTSebastian Huber2012-12-071-1/+2
| | | | Use rtems_fatal() instead of bsp_cleanup().
* score: Add CPU_Exception_frameSebastian Huber2012-11-271-1/+7
| | | | | | | | | | | | | | | | | | | | | 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.
* bsps/powerpc: Exception initialization error is fatalSebastian Huber2012-11-151-0/+1
|
* bsps: Interrupt initialization error is fatalSebastian Huber2012-11-153-30/+35
|
* score: Add RTEMS_FATAL_SOURCE_EXITSebastian Huber2012-11-151-2/+9
| | | | | | | Include <bsp/default-initial-extension.h> in all BSPs. Call rtems_fatal() with RTEMS_FATAL_SOURCE_EXIT as source and the exit() status code as fatal code in every bsp_cleanup(). Move previous bsp_cleanup() code into bsp_fatal_extension().
* sapi: Add rtems_fatal_source and rtems_fatal_codeSebastian Huber2012-11-151-2/+2
|
* bsps: Include <bsp/bootcard.h>Sebastian Huber2012-11-141-3/+1
| | | | | Use <bsp/bootcard.h> to get prototype for bsp_cleanup(). Fix bsp_cleanup() definition if necessary.
* bsps: New file <bsp/default-initial-extension.h>Sebastian Huber2012-11-131-0/+37
|
* sapi: Use rtems_config*_get_interrupt_stack_sizeSebastian Huber2012-11-071-1/+1
|
* bsps: Use allocator mutex for generic IRQ supportSebastian Huber2012-11-061-89/+16
| | | | | | 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.
* bsps: Add bsp_work_area_initialize_with_table()Sebastian Huber2012-10-251-0/+9
|
* score: Work area initialization API changeSebastian Huber2012-10-254-236/+119
| | | | | | | | | | | | The work areas (RTEMS work space and C program heap) will be initialized now in a separate step and are no longer part of rtems_initialize_data_structures(). Initialization is performed with tables of Heap_Area entries. This allows usage of scattered memory areas present on various small scale micro-controllers. The sbrk() support API changes also. The bsp_sbrk_init() must now deal with a minimum size for the first memory chunk to take the configured work space size into account.