summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bsps/irq: Add rtems_interrupt_entry_install()Sebastian Huber2021-07-2617-541/+681
| | | | | | | | | | | | | | | | | | | Add rtems_interrupt_entry_remove(). Split up irq-generic.c into several files. In particular, place all functions which use dynamic memory into their own file. Add optional macros to let the BSP customize the vector installation after installing the first entry and the vector removal before removing the last entry: * bsp_interrupt_vector_install() * bsp_interrupt_vector_remove() Use these new customization options in the m68k/genmcf548x BSP so re-use the generic interrupt controller support. Update #3269.
* bsps/irq: Move bsp_interrupt_handler_is_empty()Sebastian Huber2021-07-263-30/+11
| | | | | | This function is only used by one BSP. Update #3269.
* bsps/irq: Add bsp_interrupt_check_and_lock()Sebastian Huber2021-07-263-63/+86
| | | | | | | | Return RTEMS_INCORRECT_STATE instead of RTEMS_INTERNAL_ERROR in case the interrupt support is not initialized. This is similar to rtems_timer_server_fire_after() for example. Update #3269.
* bsps/irq: Use rtems_interrupt_entrySebastian Huber2021-07-263-25/+16
| | | | Update #3269.
* rtems: Add rtems_interrupt_entry_install()Sebastian Huber2021-07-261-0/+237
| | | | | | | | | | Add RTEMS_INTERRUPT_ENTRY_INITIALIZER(), rtems_interrupt_entry_initialize(), and rtems_interrupt_entry_remove(). This allows to install interrupt handlers using user-provided storage as an alternative to rtems_interrupt_handler_install() which has to allocate memory. Update #3269.
* sparc/irq: Implement new interrupt directivesSebastian Huber2021-07-266-22/+162
| | | | Update #3269.
* bsps/irq: Implement new directives for GICv2/3Sebastian Huber2021-07-264-32/+189
| | | | Update #3269.
* bsps/irq: bsp_interrupt_set_affinity()Sebastian Huber2021-07-2614-18/+30
| | | | | | Return a status code for bsp_interrupt_set_affinity(). Update #3269.
* bsps/irq: bsp_interrupt_get_affinity()Sebastian Huber2021-07-2615-23/+38
| | | | | | Return a status code for bsp_interrupt_get_affinity(). Update #3269.
* bsps/irq: bsp_interrupt_vector_disable()Sebastian Huber2021-07-2637-45/+94
| | | | | | Return a status code for bsp_interrupt_vector_disable(). Update #3269.
* bsps/irq: bsp_interrupt_vector_enable()Sebastian Huber2021-07-2637-45/+94
| | | | | | Return a status code for bsp_interrupt_vector_enable(). Update #3269.
* bsps/irq: Add rtems_interrupt_is_pending()Sebastian Huber2021-07-2637-1/+438
| | | | | | Add a default implementation which just returns RTEMS_UNSATISFIED. Update #3269.
* bsps/irq: Add rtems_interrupt_get_attributes()Sebastian Huber2021-07-2637-2/+337
| | | | | | | Add a default implementation which clears the attributes to zero and just returns RTEMS_SUCCESSFUL for valid parameters. Update #3269.
* bsps/irq: Add rtems_interrupt_raise()Sebastian Huber2021-07-2644-0/+669
| | | | | | | | | Add rtems_interrupt_raise_on() and rtems_interrupt_clear(). Add a default implementation which just returns RTEMS_UNSATISFIED for valid parameters. Update #3269.
* bsps/irq: Add rtems_interrupt_vector_is_enabled()Sebastian Huber2021-07-2637-1/+437
| | | | | | | Add a default implementation which just returns RTEMS_UNSATISFIED for valid parameters. Update #3269.
* rtems: Add RTEMS_FATAL_SOURCE_SPURIOUS_INTERRUPTSebastian Huber2021-07-264-9/+15
| | | | | | | | Add RTEMS_FATAL_SOURCE_SPURIOUS_INTERRUPT as the fatal source for spurious interrupts. Use the interrupt vector number of the spurious interrupt for the fatal code. Update #3269.
* rtems: Add rtems_interrupt_is_pending()Sebastian Huber2021-07-261-0/+54
| | | | Update #3269.
* rtems: Add rtems_interrupt_vector_is_enabled()Sebastian Huber2021-07-261-0/+50
| | | | Update #3269.
* rtems: Add rtems_interrupt_vector_enable()Sebastian Huber2021-07-269-0/+154
| | | | | | Add rtems_interrupt_vector_disable(). Update #3269.
* rtems: Add rtems_interrupt_get_attributes()Sebastian Huber2021-07-261-0/+207
| | | | | | | Add a directive to query the attributes of an interrupt vector. This can be used for generic tests and system diagnostics. Update #3269.
* rtems: Generate <rtems/irq-extension.h>Sebastian Huber2021-07-261-476/+1354
| | | | | | | | | | | | | Use <rtems/score/chain.h> which just provides the data types and avoid a dependency on <rtems/chain.h> which contains the full chain implementation. Change license to BSD-2-Clause according to file histories and documentation re-licensing agreement. Update #3269. Update #3899. Update #3993.
* rtems: Add rtems_interrupt_raise()Sebastian Huber2021-07-261-37/+125
| | | | | | | | Add rtems_interrupt_raise_on(). Document the currently not implemented rtems_interrupt_clear(). Remove the not implemented and badly named rtems_interrupt_cause() directive. Update #3269.
* bsps/irq: Move handler iterate to separate fileSebastian Huber2021-07-2610-82/+164
| | | | Update #3269.
* bsps/irq: Canonicalize get/set affinity errorsSebastian Huber2021-07-261-2/+10
| | | | | | | Bring the error conditions and status in line with rtems_task_get_affinity() and rtems_task_set_affinity(). Update #3269.
* bsps/irq: Move get/set affinity to separate fileSebastian Huber2021-07-269-52/+97
| | | | Update #3269.
* build: Bring Item.link() in line with waf linkSebastian Huber2021-07-261-1/+1
| | | | | The LDFLAGS are placed after the static libraries in the standard waf link command, see "waflib/Tools/c.py" in the waf sources.
* build: Remove superfluous library from rcxx01Sebastian Huber2021-07-261-1/+0
|
* bsps: Fix bsp_fatal_extension()Sebastian Huber2021-07-231-0/+3
| | | | The heap protection is conditional.
* bsp: Remove fatal from exit(0). Add extended heap error outputChris Johns2021-07-231-13/+70
|
* build: Add "bsps/" prefix to BSP family enableSebastian Huber2021-07-221-1/+1
| | | | | BSP family and BSP variant names may be equal. This prefix avoids ambiguity in the enabled-by expressions.
* Fixes for TMS570 BSPRobin Mueller2021-07-202-4/+4
| | | | | | | | | When compiling the lwIP port for the TMS570, there were issues with the BSP. Headers are expected in a folder named ti_herc which did not exist. This fixes the issue. Furthermore, there were multiple warnings about define redefinitions. This was fixed as well.
* STM32H7 ethernet pin correctionsRobin Mueller2021-07-204-1/+65
| | | | | | | | | | These patches were submitted a few months ago, but it was found out that the default-by-family: [] were missing in the GPIO .yml lines. This was fixed in this patch. This patch accounts for different pins for the ETH peripheral on STM32H7 devices. For example, the Nucleo H743ZI has slightly different pins than other STM32H7 boards.
* bsp/leon3: Remove <leon.h> include form <bsp.h>Sebastian Huber2021-07-197-3/+9
| | | | | The <leon.h> header file contains a lot of implementation details. Hide them from <bsp.h>.
* cpukit: occured -> occurredSebastian Huber2021-07-1623-64/+64
|
* sparc: Prefer RTEMS_FATAL_SOURCE_EXCEPTIONSebastian Huber2021-07-153-31/+55
| | | | | | Prefer RTEMS_FATAL_SOURCE_EXCEPTION over INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT since the fatal code (rtems_exception_frame) provides more context.
* build: Use objects of build context for programsSebastian Huber2021-07-151-1/+1
|
* rtems: Fix Doxygen commentSebastian Huber2021-07-151-2/+2
|
* build: Add the BSP family to the enable setSebastian Huber2021-07-151-1/+6
| | | | | This makes it possible to use the BSP family in expressions of the enabled-by attribute.
* build: Fix formatSebastian Huber2021-07-151-1/+1
|
* build: Prefer variant default value over familySebastian Huber2021-07-151-4/+4
| | | | Update #4468.
* build: Fix bsp_defaults commandSebastian Huber2021-07-151-6/+8
| | | | Update #4468.
* build: Add missing default-by-familySebastian Huber2021-07-152-0/+2
| | | | Update #4468.
* spcoverage: Remove test programSebastian Huber2021-07-157-106/+0
| | | | | This program contained an optional test case. It was enabled by the RTEMS_COVERAGE define. The functions under test are not implemented by RTEMS.
* build: Fix the motorola_powerpc default baudrateChris Johns2021-07-151-2/+4
|
* build: Use BSP family for optionsChris Johns2021-07-15772-13/+792
| | | | | | | - Optionally add support for 'default-by-family' to allow option to be set by a family and so all related BSPs Close #4468
* bsps/sparc: Improve interrupt affinity supportSebastian Huber2021-07-094-62/+138
| | | | | | | | Fully support the interrupt extension API to set/get the interrupt affinity. Remove LEON3_irq_to_cpu which defined the interrupt to processor mapping in a BSP-specific way. Update #3269.
* bsp/imx: Fix SMP startSebastian Huber2021-07-091-0/+12
| | | | | Flush imx_gic_dist_base so that secondary processors can use the right address.
* bsps/arm: Fix SMP startSebastian Huber2021-07-091-0/+6
| | | | | | | | Skip the data cache initialization if we are a secondary processor. The bug was introduced by e164df5e33608576443b4cd5923a9046358ee773 and did not show up in tests using Qemu since the data cache behaviour is not emulated.
* bsps/imxrt: Fix undefined symbolChristian Mauderer2021-07-081-1/+1
|
* bsps/arm: Add start up support for ARMv6 RPi ModelsPranav Dangi2021-07-071-1/+7
|