summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/shared (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shared/console-polled.c: Use standard fatal error codesJoel Sherrill2016-07-051-3/+3
|
* libchip: Simplify RTC driverSebastian Huber2016-07-041-14/+13
|
* bsps: Do not use fast idle clock for SMPSebastian Huber2016-06-301-13/+15
| | | | | We may have more than one idle thread. Thus, the clock driver fast idle logic would be a bit more complicated.
* bsps: Include missing <rtems/bspIo.h>Sebastian Huber2016-06-241-0/+2
|
* Move printer initialization to separate headerSebastian Huber2016-06-222-1/+2
| | | | | | The RTEMS print user need to know nothing about a particular printer implementation. In particular get rid of the <stdio.h> include which would be visible via <rtems.h>.
* Make rtems/print.h independent of rtems/bspIo.hSebastian Huber2016-06-221-1/+1
|
* bsp/leon3: Add up counter timecounterSebastian Huber2016-06-211-1/+2
|
* bsps: Add CLOCK_DRIVER_USE_ONLY_BOOT_PROCESSORSebastian Huber2016-06-141-5/+24
| | | | | | | | | Add CLOCK_DRIVER_USE_ONLY_BOOT_PROCESSOR clock driver option. If defined, then do the clock tick processing on the boot processor on behalf of all other processors. Currently, this is intended as a workaround for a Qemu shortcoming on ARM. Update #2737.
* bsp/irq-server: Fix install/removeSebastian Huber2016-06-131-135/+173
| | | | | | | | Do not wait for the interrupt server while owning the allocator lock. This could lead to deadlock in case one of interrupt service routines or user extensions want to obtain the allocator mutex as well. Instead let the interrupt server do the install/remove job entirely on behalf of the requesting task.
* bsp/shared: Fix printk warnings.Chris Johns2016-05-251-2/+4
|
* cpukit, testsuite: Add rtems_printf and rtems_printer support.Chris Johns2016-05-253-18/+20
| | | | | | | | | | | | | | | | | | | This change adds rtems_printf and related functions and wraps the RTEMS print plugin support into a user API. All references to the plugin are removed and replaced with the rtems_printer interface. Printk and related functions are made to return a valid number of characters formatted and output. The function attribute to check printf functions has been added to rtems_printf and printk. No changes to remove warrnings are part of this patch set. The testsuite has been moved over to the rtems_printer. The testsuite has a mix of rtems_printer access and direct print control via the tmacros.h header file. The support for begink/endk has been removed as it served no purpose and only confused the code base. The testsuite has not been refactored to use rtems_printf. This is future work.
* bsp/shared: Print the exception stack frame before the shut down message.Chris Johns2016-05-111-7/+7
| | | | | | | This lets you see the exception otherwise the key press clears the screen on the reboot on a PC BSP. Also state there has been a fatal error.
* bsp/shared: Add bsp_interrupt_handler_is_empty.Chris Johns2016-05-112-1/+33
|
* i386/pc386: Add support for the gdb stub to use available console drivers.Chris Johns2016-05-112-3/+53
| | | | | | | | | | | Move the gdb stub from the i386 UART code to use the libchip drivers. Use any ports discovered during the probes. Add gdb control to the boot command line. Change the device naming to the full device path, not a partial path. For example /dev/com1.
* bsp/qoriq: Add bsp_restart()Sebastian Huber2016-04-221-1/+4
|
* bsps: Copy FDT only if source != destinationSebastian Huber2016-04-221-7/+10
|
* shared/console-polled.c: Add include of <rtems/console.h> to fix warningJoel Sherrill2016-03-291-0/+1
|
* bspgetworkarea.c: File header now uses DoxygenJoel Sherrill2016-03-171-10/+14
|
* pc386: Add --disable-com1-com4 boot argumentJoel Sherrill2016-03-101-2/+2
|
* libbsp/shared/console.c: Clean up memory allocation for per device dataJoel Sherrill2016-03-101-13/+36
|
* console_private.h: Improve comment for vt_ioctl()Joel Sherrill2016-03-101-3/+6
|
* console_private.h: Remove prototypes for non-existent methods bsp_com_inch() ↵Joel Sherrill2016-03-101-20/+0
| | | | and bsp_com_outch()
* pc386: Improve boot command arguments for console/printk device selectionJoel Sherrill2016-03-102-5/+15
| | | | | | | | This patch adds the "--printk=" boot command line argument to specify the printk() device. It also enhances the "--console=" boot command line argument to match any device configured in the console device table. The arguments are parsed as early as possible so they take effect early. Currently, this is immediately after PCI initialization.
* Add shared PCI support and enhance pc386 to support non-legacy PCI ↵Joel Sherrill2016-03-102-0/+341
| | | | | | | | | | | | | | | configuration space This patch fundamentally results from enhancements to the pc386 BSP to support systems which do **NOT** have the legacy PCI BIOS. The patch adds support for detecting when legacy PCI BIOS is not present and then using IO space to access to PCI Configuration Space. This resulted in dynamically selected between two implementations of PCI and refactoring out the shared methods. This patch adds shared implementations of pci_bus_count() and pci_find_device(). Subsequent patches will remove implementations of these methods in other BSPs where possible.
* bsps: Avoid Giant lock in simulator clock driverSebastian Huber2016-03-041-3/+3
| | | | Update #2555.
* score: Distribute clock tick to all online CPUsSebastian Huber2016-03-042-0/+13
| | | | Update #2554.
* bsps: Delete empty Clock_driver_support_at_tick()Sebastian Huber2016-03-031-2/+0
|
* U-Boot: Flush data cache after bdinfo copySebastian Huber2016-03-031-12/+7
|
* Use linker set for libio initializationSebastian Huber2016-02-034-57/+0
| | | | Update #2408.
* drvmgr: Remove dupl bsp_driver_level_hook() declSebastian Huber2016-01-262-3/+1
|
* bsp/irq-server: Support shared interruptsSebastian Huber2016-01-203-79/+188
|
* score: Fix simple timecounter supportSebastian Huber2016-01-191-1/+15
| | | | Update #2502.
* score: Introduce Thread_Entry_informationSebastian Huber2016-01-112-3/+3
| | | | | | | This avoids potential dead code in _Thread_Handler(). It gets rid of the dangerous function pointer casts. Update #2514.
* Use linker set for system initializationSebastian Huber2015-12-112-92/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make rtems_initialize_data_structures(), rtems_initialize_before_drivers() and rtems_initialize_device_drivers() static. Rename rtems_initialize_start_multitasking() to rtems_initialize_executive() and call the registered system initialization handlers in this function. Add system initialization API available via #include <rtems/sysinit.h>. Update the documentation accordingly. This is no functional change, only the method to call the existing initialization routines changes. Instead of direct function calls a table of function pointers contained in the new RTEMS system initialization linker set is used. This table looks like this (the actual addresses depend on the target). nm *.exe | grep _Linker | sort 0201a2d0 D _Linker_set__Sysinit_begin 0201a2d0 D _Linker_set__Sysinit_bsp_work_area_initialize 0201a2d4 D _Linker_set__Sysinit_bsp_start 0201a2d8 D _Linker_set__Sysinit_rtems_initialize_data_structures 0201a2dc D _Linker_set__Sysinit_bsp_libc_init 0201a2e0 D _Linker_set__Sysinit_rtems_initialize_before_drivers 0201a2e4 D _Linker_set__Sysinit_bsp_predriver_hook 0201a2e8 D _Linker_set__Sysinit_rtems_initialize_device_drivers 0201a2ec D _Linker_set__Sysinit_bsp_postdriver_hook 0201a2f0 D _Linker_set__Sysinit_end Add test sptests/spsysinit01. Update #2408.
* bsps: Delete superfluous bsp_pretasking_hook()Sebastian Huber2015-12-103-31/+0
| | | | | | Use the bsp_predriver_hook() instead. Update #2408.
* bsps: Call bsp_work_area_initialize() earlySebastian Huber2015-12-102-5/+5
| | | | | | | | Call bsp_work_area_initialize() before bsp_start(). This allows bsp_start() to use malloc() etc. which is beneficial for systems with a plug-and-play hardware enumeration. Update #2408.
* Remove <rtems/debug.h>Sebastian Huber2015-12-072-15/+0
| | | | Close #2477.
* Delete empty libc_init()Sebastian Huber2015-11-271-5/+0
|
* irq-server: Fix race condition on SMP systemsSebastian Huber2015-11-121-4/+5
|
* Introduce general purpose system server eventSebastian Huber2015-11-121-5/+3
| | | | | Use this event for the interrupt server to avoid conflicts with application events used by interrupt handlers.
* gpio: free memory in error pathGedare Bloom2015-11-091-11/+8
| | | | Updates #2462.
* bsp/irq-server: Use proper chain APISebastian Huber2015-11-051-5/+9
|
* basedefs.h: Add and use RTEMS_NO_RETURNSebastian Huber2015-10-262-2/+2
|
* Fixes GPIO APIs Naming Convention and CommentsSudarshan Rajagopalan2015-10-212-11/+15
| | | | Closes #2435.
* bsp/qoriq: Use U-Boot provided FDTSebastian Huber2015-10-193-1/+93
|
* various .h files: Add missing C++ extern wrappersMartin Galvan2015-09-031-0/+4
| | | | Updates #2405.
* Closes ticket #2390, and also updates the RPI implementation.Andre Marques2015-08-182-14/+22
| | | | | makes rtems_gpio_bsp_get_value return uint32_t. Motivation: simplify beagle gpio implementation for common gpio apio.
* RTEMS GPIO API definition and implementation.Andre Marques2015-08-062-0/+2925
| | | | | | | | | | | Changes relative to the previous patch set: - Moved GPIO pin interrupts to rtems chains, instead of a local linked list; - Restructured the pin tracking structure, separating the interrupt information for each pin meaning that a pin without any interrupt enabled only requires 8 bytes, while keeping interrupt information (handling information, handler chain control, ...) requires 24 additional bytes (total of 32 bytes per pin with interrupts enabled); - Added support for 'parallel' pin function assignment, allowing the function assignment to be set for multiple pins in a single GPIO hardware call. If a BSP does not support this feature it becomes a sequence of individual calls per pin. Also added support for GPIO pin groupings, allowing to write and read byte data to a series of pins which behave as a single entity; - Added bank tracking structure to maintain the bank lock and bank level interrupt information (threaded/normal handling, interrupt counter); - Changed GPIO settings to BSP defined constants, reducing dynamic memory allocation; - Switched interrupt tasks for a rtems interrupt server, with the possibility of using normal interrupts (user handlers being called within ISR context).
* score: Simplify <rtems/system.h>Sebastian Huber2015-06-261-0/+1
| | | | | Drop the <rtems/score/percpu.h> include since this file exposes a lot of implementation details.
* rtems: Add rtems_interrupt_local_disable|enable()Sebastian Huber2015-06-221-1/+1
| | | | | | | | Add rtems_interrupt_local_disable|enable() as suggested by Pavel Pisa to emphasize that interrupts are only disabled on the current processor. Do not define the rtems_interrupt_disable|enable|flash() macros and functions on SMP configurations since they don't ensure system wide mutual exclusion.