summaryrefslogtreecommitdiffstats
path: root/bsps/include/bsp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsps/irq: Move handler iterate to separate fileSebastian Huber2021-07-261-0/+57
| | | | Update #3269.
* bsps: bsp_interrupt_handler_dispatch_unchecked()Sebastian Huber2021-06-241-19/+40
| | | | | | Add bsp_interrupt_handler_dispatch_unchecked() as an alternative to bsp_interrupt_handler_dispatch(). It may be used if the caller can ensure that the vector number is valid.
* bsps/irq: Default BSP_INTERRUPT_VECTOR_COUNT == 0Sebastian Huber2021-06-241-2/+5
| | | | | | | Change the default value of BSP_INTERRUPT_VECTOR_COUNT so that no interrupt vectors are supported and all related directives return RTEMS_INVALID_ID. Update #3269.
* bsps/irq: Remove BSP_INTERRUPT_VECTOR_MAXSebastian Huber2021-06-242-9/+0
| | | | | | This define is no longer used. Update #3269.
* bsps/irq: Use BSP_INTERRUPT_VECTOR_COUNTSebastian Huber2021-06-241-4/+4
| | | | | | Use BSP_INTERRUPT_VECTOR_COUNT instead of BSP_INTERRUPT_VECTOR_MAX. Update #3269.
* bsps/irq: Remove BSP_INTERRUPT_VECTOR_NUMBERSebastian Huber2021-06-241-3/+1
| | | | | | Replace it with BSP_INTERRUPT_VECTOR_COUNT. Update #3269.
* bsps/irq: Add BSP_INTERRUPT_VECTOR_COUNTSebastian Huber2021-06-242-0/+9
| | | | | | | | | | | | | Assert BSP_INTERRUPT_VECTOR_MAX + 1 == BSP_INTERRUPT_VECTOR_COUNT. After building all BSPs with this patch, BSP_INTERRUPT_VECTOR_MAX can be removed and replaced by BSP_INTERRUPT_VECTOR_COUNT. The BSP_INTERRUPT_VECTOR_COUNT allows a default implementation which supports no interrupt vector at all. Using COUNT instead of MAX may avoid some interpretation issues, for example is the maximum value a valid vector number or not. Update #3269.
* bsps/irq: Remove BSP_INTERRUPT_VECTOR_MINSebastian Huber2021-06-242-19/+8
| | | | | | | | | | Remove BSP_INTERRUPT_VECTOR_MIN and unconditionally let interrupt vector numbers start with zero. The BSP_INTERRUPT_VECTOR_MIN == 0 invariant was tested by the previous commit and building all BSPs. Update #3269.
* bsps/irq: Assert BSP_INTERRUPT_VECTOR_MIN == 0Sebastian Huber2021-06-241-0/+4
| | | | | | | After building all BSPs with this patch, this BSP-specific define can be removed to simplify the implementation. Update #3269.
* bsps/irq: Remove BSP_INTERRUPT_NO_HEAP_USAGESebastian Huber2021-06-241-8/+0
| | | | | | | Remove the support for BSP_INTERRUPT_NO_HEAP_USAGE. This was only used by one BSP and provides no real benefit. Update #3269.
* bsps/irq: Change license to BSD-2-ClauseSebastian Huber2021-06-173-26/+57
| | | | | | | Change license to BSD-2-Clause according to file history and re-licensing agreement. Update #3053.
* Remove superfluous <rtems/score/wkspace.h> includesSebastian Huber2021-04-201-1/+0
|
* bsps/riscv: Add per cpu clock interruptJan Sommer2021-03-231-0/+1
| | | | - Fixes failure of test smpclock01
* bsp/imxrt: Add new BSPChristian Mauderer2020-11-201-1/+16
| | | | Update #4180
* rtems: Improve RTEMS_NO_RETURN attributeSebastian Huber2020-10-101-1/+1
| | | | | | | | | | | Provide RTEMS_NO_RETURN also in case RTEMS_DEBUG is defined to prevent errors like this: error: no return statement in function returning non-void [-Werror=return-type] Use C11 and C++11 standard means to declare a no-return function. Close #4122.
* bsps/include/bsp/fatal.h: Add GRLIB specific fatal errorJoel Sherrill2020-10-081-1/+4
| | | | updates #4028.
* bsp/imx: Add a GPIO driverChristian Mauderer2020-07-311-0/+1
| | | | Update 3869
* bsps: Rework work area initializationSebastian Huber2020-02-041-61/+1
| | | | | | | | | | | | | | | | | | | | The work area initialization was done by the BSP through bsp_work_area_initialize(). This approach predated the system initialization through the system initialization linker set. The workspace and C program heap were unconditionally initialized. The aim is to support RTEMS application configurations which do not need the workspace and C program heap. In these configurations, the workspace and C prgram heap should not get initialized. Change all bsp_work_area_initialize() to implement _Memory_Get() instead. Move the dirty memory, sbrk(), per-CPU data, workspace, and malloc() heap initialization into separate system initialization steps. This makes it also easier to test the individual initialization steps. This change adds a dependency to _Heap_Extend() to all BSPs. This dependency will be removed in a follow up change. Update #3838.
* bsps: Remove uses of BSP_GET_WORK_AREA_DEBUGSebastian Huber2020-02-041-35/+0
| | | | | | | | | The code covered by BSP_GET_WORK_AREA_DEBUG was basically dead code since there was no normal way to activate it (e.g. via a BSP configuration option). A follow up patch will bring back this feature through a CONFIGURE_VERBOSE_SYSTEM_INITIALIZATION configuration option. Update #3838.
* riscv: add freedom E310 Arty A7 bspPragnesh Patel2019-10-231-1/+2
| | | | | | | Added support for Sifive Freedom FE310 soc on Arty A7 FPGA board. Update #3785. Signed-off-by: Pragnesh Patel <pragnesh.patel@sifive.com>
* bsps: Always build generic interrupt supportSebastian Huber2019-05-161-0/+63
| | | | | | | This makes it possible to write tests for the generic interrupt controller support. Update #3269.
* bsps: Adjust shared Doxygen groupsSebastian Huber2019-03-083-3/+3
| | | | Update #3706.
* bsps: Move VME header filesSebastian Huber2019-03-053-582/+0
| | | | They are only used by PowerPC BSPs.
* bsps: Adjust architecture Doxygen groupsSebastian Huber2019-03-043-7/+5
| | | | | | | | | | - Use CamelCase as it is not used in our C code. Enables simple search and replace. - Prefix with "RTEMS" to aid deployment and integration. It aids searching and sorting. Update #3706.
* Remove explicit file names from @fileSebastian Huber2019-02-281-1/+1
| | | | | | This makes the @file documentation independent of the actual file name. Update #3707.
* bsp/riscv: Use interrupt driven NS16550 driverSebastian Huber2018-07-251-1/+2
| | | | Update #3433.
* bsp/riscv: Add PLIC supportSebastian Huber2018-07-251-1/+5
| | | | Update #3433.
* bsp/riscv: Add basic SMP startupSebastian Huber2018-07-251-1/+3
| | | | Update #3433.
* bsp/riscv: Add and use riscv_fdt_get_address()Sebastian Huber2018-07-251-1/+2
| | | | Update #3433.
* riscv: Rework exception handlingSebastian Huber2018-07-251-1/+3
| | | | | | | | | | | Remove _CPU_ISR_install_raw_handler() and _CPU_ISR_install_vector() functions. Applications can install an exception handler via the fatal error handler to handle synchronous exceptions. Handle interrupt exceptions via _RISCV_Interrupt_dispatch() which must be provided by the BSP. Update #3433.
* bsps: bsp_start_on_secondary_processor()Sebastian Huber2018-07-251-1/+3
| | | | | | Pass current processor control as first parameter in bsp_start_on_secondary_processor() and qoriq_start_thread() to make dependency more explicit.
* bsps: Fix function declaration warningsSebastian Huber2018-07-241-1/+1
|
* bsp/riscv: Add console support for NS16550 devicesSebastian Huber2018-07-061-1/+3
| | | | Update #3433.
* bsp/riscv: Rework clock driverSebastian Huber2018-06-281-2/+5
| | | | | | | Use device tree provided timebase frequency. Do not write to read-only mtime register. Update #3433.
* bsps: Remove unused u-boot-generic-board-info.hSebastian Huber2018-04-251-5/+1
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps/arm: Move bsp_memory_management_initialize()Sebastian Huber2018-04-241-41/+0
| | | | | | | | This function is only used by the raspberrypi BSP. This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Convert all bsp_predriver_hook()Sebastian Huber2018-04-201-2/+0
| | | | | | Use RTEMS_SYSINIT_ITEM() instead. Update #2408.
* bsps: Move VME support to bspsSebastian Huber2018-04-095-2102/+0
| | | | | | | | The VME support is only used by powerpc BSPs. This patch is a part of the BSP source reorganization. Update #3285.
* Remove make preinstallChris Johns2018-01-2522-0/+5037
A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.