summaryrefslogtreecommitdiffstats
path: root/bsps (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Use RTEMS_SYSINIT_ORDER_LAST_BUT_5Sebastian Huber2020-02-0414-14/+14
| | | | | | | | Use RTEMS_SYSINIT_ORDER_LAST_BUT_5 instead of RTEMS_SYSINIT_ORDER_LAST to allow applications and support functions to place system initialization handlers behind the standard handlers. Update #3838.
* bsps: Rework work area initializationSebastian Huber2020-02-0413-197/+311
| | | | | | | | | | | | | | | | | | | | 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-043-65/+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.
* bsps: Add RTEMS_SYSINIT_BSP_EARLYSebastian Huber2020-02-045-38/+48
| | | | | | | Add new BSP system initialization step for work to be performed before the work areas are initialized. Update #3838.
* bsps: Add RamEnd to linker command filesSebastian Huber2020-02-0456-1/+56
| | | | Update #3838.
* bsps/arm/shared: Add GICv3 implementationKinsey Moore2020-01-174-9/+427
| | | | | | | | | This adds support for the GICv3 interrupt controller along with the redistributor to control SGIs and PPIs which wasn't present in GICv2 implementations. GICv3 implementations only optionally support memory-mapped GICC interface interaction and require system register access be implemented, so the GICC interface is accessed only through system registers.
* bsp/raspberrypi: Updated the console API.G S Niteesh2020-01-079-400/+196
| | | | | | Replaces the legacy termios API with new termios API (#3034) Replaces the custom PL011 serial driver with RTEMS arm-pl011. Update #3034
* bsp/raspberrypi: Enable FDT support.G S Niteesh2020-01-071-0/+4
| | | | This commit adds FDT support to the BSP.
* bsp/raspberrypi: Fix size of work area.Christian Mauderer2020-01-074-185/+80
| | | | | | | | | | The BSP tried to get the size of the SDRAM based on the revision code. Unfortunately the code had some bugs so that the default size has been used. Beneath that the MMU table hasn't been adapted. This patch queries the SDRAM size via a special VC Mailbox call instead. For the MMU adaption a simmilar method to the one in the imx BSP is used.
* bsps/arm: Define index of the workspace entry.Christian Mauderer2020-01-072-5/+6
| | | | | | The imx BSP contained a hack to change the workspace entry of the MMU table. This makes the used define visible for other BSPs too so that the same hack can be used for example in raspberry pi too.
* bsps/irq: fix resource leak in irq-server.cGedare Bloom2020-01-031-0/+1
| | | | | | Resource leak identified by Coverity (CID 1456675). The value of instances is leaked in case some but not all irq servers are created. It should be stored in bsp_interrupt_server_instances.
* bsps/powerpc: Fix warningSebastian Huber2020-01-021-3/+1
| | | | Update #3834.
* bsps/powerpc: Support constructors with prioritySebastian Huber2019-12-196-115/+59
| | | | Close #3339.
* bsps/arm: Export bsp_start_hook_0_doneSebastian Huber2019-12-191-5/+8
| | | | Close #3789.
* config: Add _MPCI_ConfigurationSebastian Huber2019-12-131-1/+1
| | | | | | | Replace the user MPCI configuration table with a system provided _MPCI_Configuration. Update #3735.
* rtems: Add and use rtems_object_get_local_node()Sebastian Huber2019-12-134-4/+4
| | | | Update #3841.
* mpci: Simplify MPCI configurationSebastian Huber2019-12-112-18/+26
| | | | Use watchdog for shared memory driver instead of a Classic API Timer.
* clock: Simplify driver initializationSebastian Huber2019-12-1119-187/+20
| | | | | | Use a system initialization handler instead of a legacy IO driver. Update #3834.
* clock: Remove Clock_exit() from APISebastian Huber2019-12-1116-38/+16
| | | | | | | This function is no longer supported by the standard clock driver implementation (clockimpl.h). Update #3436.
* bsp/xen: Use BSP options for all linkcmds varsSebastian Huber2019-12-051-3/+3
| | | | Update #3818.
* bsp/xen: Create BSPJeff Kubascik2019-12-0511-0/+521
| | | | Create the Xen BSP for Xen on ARM.
* bsps/arm: Unmask generic timer in interrupt handlerJeff Kubascik2019-12-051-0/+3
| | | | | Xen will mask the virtual timer before injecting the interrupt to the guest.
* bsps/arm: Add zImage boot headerJeff Kubascik2019-12-051-0/+11
| | | | | Xen currently only supports the zImage loader for 32 bit guests on ARM targets.
* Regenerate headers.amSebastian Huber2019-11-291-0/+1
|
* bsp/mpc55xxevb: Remove obsolete linker cmd fileSebastian Huber2019-11-251-1/+0
| | | | Update #3818.
* bsp/gen83xx: Remove obsolete linker command fileSebastian Huber2019-11-251-19/+0
| | | | Update #3818.
* bsp/lpc32xx: Fix linker command fileSebastian Huber2019-11-191-1/+4
|
* bsp/imx7: Rename linker command fileSebastian Huber2019-11-191-0/+0
| | | | | | | This BSP family uses only one linker command file. Use the standard name. Update #3818.
* bsp/altcycv_devkit: Rename linker command fileSebastian Huber2019-11-191-0/+0
| | | | | | | This BSP family uses only one linker command file. Use the standard name. Update #3818.
* bsp/atsamv: Fix warningSebastian Huber2019-11-181-1/+0
|
* bsp/t32mppc: Rename linker command fileSebastian Huber2019-11-141-0/+0
| | | | | | | This BSP family uses only one linker command file. Use the standard name. Update #3818.
* bsp/beagle: Rename linker command fileSebastian Huber2019-11-141-0/+0
| | | | | | | This BSP family uses only one linker command file. Use the standard name. Update #3818.
* bsp/riscv: Fix format and warningsSebastian Huber2019-11-142-45/+27
| | | | Update #3785.
* bsp/riscv: Fix use of uninitialized integerSebastian Huber2019-11-141-6/+1
|
* bsp/riscv: riscv_get_core_frequency()Sebastian Huber2019-11-142-43/+23
| | | | | | | Always provide this function. Return 0 by default. Fix formatting. Simplify function. Update #3785.
* bsp/gumstix: Fix warningSebastian Huber2019-11-141-0/+1
|
* bsps/arm: Add support for small pages MMUSebastian Huber2019-10-313-30/+101
| | | | | | | The small page MMU support reduces the granularity for memory settings through the MMU from 1MiB sections to 4KiB small pages. Enable it by default on the realview_pbx_a9_qemu BSP.
* bsps/riscv: UART - Read reg-shift from DTB to properly set/get registersHesham Almatary2019-10-301-2/+13
|
* riscv: Add new BSP cfg variants to be built with llvm/clangHesham Almatary2019-10-278-0/+112
|
* riscv: Add new offending input sections to the linker scriptHesham Almatary2019-10-271-0/+5
|
* riscv: Add NOLOAD directive to the .work sectionHesham Almatary2019-10-271-1/+1
| | | | ld.lld defaults .work to PROGBITS otherwise
* riscv: Address differences in the linkerscript between GNU LD and LLVM/LLDHesham Almatary2019-10-271-51/+51
| | | | | | | | | | LLVM/LLD does not support STARTUP and ALIGN_WITH_INPUT directives that GNU LD support. INPUT and ALIGN(8) are supported by LLVM/LLD and can replace the unsupported STARTUP/ALIGN_WITH_INPUT directives. The commit conditionally adds the supported directive that linkers can understand depending on the toolchain used to compile RTEMS i.e., clang or gcc. Clang is assumed to use LLD by default.
* riscv: Generate linkcmds.base from the shared linkcmds.base.inHesham Almatary2019-10-271-0/+0
| | | | | This commit moves the existing linkcmds.base to linkcmds.base.in in order to make it configurable by autotools.
* bsp/xilinx-zynq: Simplify linkcmds configSebastian Huber2019-10-231-3/+3
| | | | | | | Use NULL-pointer protection also for Qemu variant. Do all calculations in the linker command file. This is a preparation for the new build system.
* bsp/xilinx-zynqmp: Simplify linkcmds configSebastian Huber2019-10-231-3/+3
| | | | | Do all calculations in the linker command file. This is a preparation for the new build system.
* bsp/atsam: Use PIO for SC16IS752.Christian Mauderer2019-10-232-21/+26
| | | | This allows to mix SC16IS752 chips with other interrupts.
* bsp/atsam: Add additional PIO helper.Christian Mauderer2019-10-232-0/+59
|
* bsps/atsam: Improve case for level triggered IRQs.Christian Mauderer2019-10-231-11/+15
| | | | | | | | For level triggered interrupts currently the handler would have been called two times (assuming no one cleared the mask in a handler which would have been bad because the handler couldn't process all other that got cleared by accident). This patch allows the handler only to return if nothing is left to do.
* riscv: add freedom E310 Arty A7 bspPragnesh Patel2019-10-238-6/+314
| | | | | | | Added support for Sifive Freedom FE310 soc on Arty A7 FPGA board. Update #3785. Signed-off-by: Pragnesh Patel <pragnesh.patel@sifive.com>
* arm/beanglebone: Fix i2c build error.Chris Johns2019-10-191-1/+1
|