Commit Graph

756 Commits

Author SHA1 Message Date
Kinsey Moore
f80cee565b spec/libtests: Exclude Thumb-only BSPs from building dl13
This test requires ARM instruction support and causes build failures on
Thumb-only BSPs.
2024-10-03 02:03:09 +00:00
Sebastian Huber
410436b800 arm/xilinx-zynqmp-rpu: Use UART 0 by default
This simplifies the setup for sequential test runs of the APU and RPU
BSPs.
2024-10-02 05:36:00 +02:00
Sebastian Huber
95649a0aca arm/xilinx-zynqmp-rpu: Add section for the OCM 2024-10-02 05:36:00 +02:00
Sebastian Huber
75062c2dbf arm/xilinx-zynqmp-rpu: Simplify MPU configuration
Use the PMSAv7 support from <rtems/score/armv7-pmsa.h> instead of the
one from the Xilinx support.
2024-10-02 05:36:00 +02:00
Sebastian Huber
dddbdf4d9a arm/xilinx-zynqmp-rpu: Add split mode BSP variants
Rename xilinx_zynqmp_rpu BSP variant to zynqmp_rpu_lock_step to
emphasize that this BSP is for the lock-step mode RPU configuration.
Add BSP variants zynqmp_rpu_split_0 and zynqmp_rpu_split_1 for the split
mode RPU configuration for core 0 and 1 respectively.
2024-10-02 05:35:47 +02:00
Sebastian Huber
08f27b35aa arm/xilinx-zynqmp-rpu: Remove superfluous option 2024-10-02 05:24:30 +02:00
Sebastian Huber
c91b26ef76 arm/xilinx-zynqmp-rpu: Add cache manager support 2024-10-02 05:24:30 +02:00
Sebastian Huber
4515a7b593 arm/xilinx-zynqmp-rpu: Remove superfluous object 2024-10-02 05:24:30 +02:00
Sebastian Huber
7d9914b90e arm/xilinx-zynqmp-rpu: Use -O2 2024-10-02 05:24:30 +02:00
Sebastian Huber
11b772c867 arm: Add support for PMSAv7 2024-10-02 05:24:30 +02:00
Sebastian Huber
9a5f00965b arm: Install missing header files 2024-10-02 05:24:30 +02:00
Sebastian Huber
4ca49fc200 score: Remove _Per_CPU_State_wait_for_non_initial_state()
This function is unused.
2024-09-29 23:13:32 +00:00
Alex White
38bafce42d Add aarch64 cpukit paravirtualization support 2024-09-27 20:01:34 +00:00
Kinsey Moore
81930e2638 testsuites: Add dl13 test for Thumb to ARM transitions 2024-09-24 20:57:56 -05:00
Gedare Bloom
7cda579524 spec/build: make minimum sample norun 2024-09-24 14:53:02 -06:00
Sebastian Huber
6003ea9d94 aarch64: Add _AArch64_Get_current_processor_for_system_start()
This allows BSPs to customize how the current processor index is
determined during system start.

Update #5064.
2024-09-20 06:17:09 +02:00
Kinsey Moore
3ec16d5f9d spec/aarch64: Add missing symbols to ILP32 linker script 2024-09-20 04:10:11 +00:00
Ning Yang
1b5cd007e7 spec: Refactor arm-pl011 build options
Close #5026
2024-09-19 05:42:16 +00:00
Sebastian Huber
6482c5cc56 bsps/arm: Fix BSP_START_VECTOR_RESERVED_SLOT
The option value is a string.
2024-09-19 04:57:35 +02:00
Utkarsh Verma
0f42153959 dev/serial: Refactor the pl011 driver
- Refactor the pl011 driver to be extensible.
- Add IRQ support and baudrate configuration support for pl011 driver.
- Modify related BSP.
- Add doxygen comments for arm-pl011.

Close #5026

Co-authored-by: Ning Yang <yangn0@qq.com>
2024-09-18 19:30:21 +00:00
Sebastian Huber
d304a817db dev/serial: Move zynq_uart_input_clock()
This allows to wrap this function using the linker.
2024-09-17 01:53:58 +00:00
alessandronardin
31c91be2ea posix/aio: updated documentation after changes to lio_listio()
updated the doxygen comment in aio.h
updated the description in spec/build/cpukit/optposix.yml
2024-09-13 21:30:02 +00:00
Joel Sherrill
9d6f171039 bsps/i386/include/bsp/irq.h is pc386 specific
The IRQ list in this file are specific to PC hardware and should be
part of the BSP. Further, there are paravirtualized environments which
do not follow the PC hardware IRQ list. Moving this avoids collisions.
2024-09-12 04:58:14 +00:00
Joel Sherrill
3aa1f1faee poll.h and sys/poll.h were in both RTEMS and Newlib
Remove the copies in RTEMS. Most POSIX headers are in Newlib.

CLoses #5126
2024-09-12 04:57:43 +00:00
Kinsey Moore
6dee307542 bsps/stm32h7: Add SPI support
This adds support for the 6 SPI interfaces on the STM32H7 series chips
with an initial example for the stm32h750b discovery kit development
board. Configuration is similar to existing peripherals. Chip select
lines are software-controlled since the SPI peripheral only supports a
single hardware-controlled chip select line. This implementation does
not use interrupts.
2024-09-06 01:15:21 +00:00
Karel Gardas
f61086a404 Revert "bsps/stm32h7: Workaround STM32 H7 errata by enforcing aligned access only"
This reverts commit d81bf04501.

The commit is reverted as this is only partial solution and remaining part
to fix properly is extremely hard and usually done in completely diffetrent
way. Hence let's not enforce compiler but rather enforce RTEMS/H7 users.
2024-09-03 00:39:54 +00:00
alessandronardin
1b6684ee2b cpukit/posix/aio*: Added support for lio_listio()
This commit adds support for lio_listio().
psxaio05 has been added to test the new method.
To avoid code duplication, the body of aio_read and aio_write has been
moved in two helper methods. In this way i can use it also in lio_listio().

In addition to that, a limit on the number of total aio operation enqueued
has been added.

Updates rtems/programs/gsoc#29
2024-09-02 18:16:30 +02:00
Sebastian Huber
2598428809 arm: Add _CPU_Exception_resume() 2024-08-28 04:19:39 +02:00
Sebastian Huber
5d86677dfe bsps/arm: Add BSP_START_VECTOR_RESERVED_SLOT
Allow BSPs to customize the reserved vector table slot.  By default, use
an undefined instruction.
2024-08-28 04:19:39 +02:00
Sebastian Huber
0f55591fd6 bsps: Option BSP_ARM_GIC_ENABLE_FIQ_FOR_GROUP_0
Add BSP option BSP_ARM_GIC_ENABLE_FIQ_FOR_GROUP_0 to customize the ARM
GIC support.  Enable this option for arm/altera-cyclone-v and
arm/xilinx-zynq BSPs by default.
2024-08-28 04:19:39 +02:00
Sebastian Huber
4bcfe04e27 build: Use shared object item for ARM GIC
BSPs which do not use the ARM GIC no longer install the related header
files.
2024-08-28 04:19:38 +02:00
Christian Mauderer
3b053f6919 bsps/shared: Add Abracom EOZ9 RTC driver
The EOZ9 RTC has a similar register interface like the MCP7940M (and
quite some other I2C RTCs). This commit:

* Extracts the generic parts from MCP7940M and moves it into a generic
  i2c-rtc driver.
* Uses the new i2c-rtc for the MCP7940M.
* Uses the new i2c-rtc for the new Abracom EOZ9.
2024-08-27 21:54:43 +00:00
Matheus Pecoraro
e93bbe6534 x86_64/amd64: Add SMP support
Adds SMP support for the x86_64 amd64 BSP.
2024-08-27 21:16:58 +00:00
Kinsey Moore
43a581c712 spec/zynqmp: Install ECC header definitions
This needs to be installed for applications to make use of ECC
functionality.
2024-08-27 14:09:56 -05:00
Chris Johns
94443d497b bsp/aarch64/zynqmp: Add support for more than 2G of DDR memory
Add support to configure the second region of DDR memory if the
BSP configured RAM size is greater than 2G.

Add the second region's memory to the heap.
2024-08-27 15:00:09 +10:00
Loris Nardo
b5767d2c60 jffs2: Add checks for long file name
Add filename length checks to prevent the creation of files and folders
that cannot be listed, unlinked or renamed by subsequent calls.
These changes are sufficient to make the jffs2fsrenamelongname and
jffs2nandfsrenamelongname testcases pass.

Updates #5073
2024-08-23 20:28:23 +00:00
Sebastian Huber
e81a5db70e score: Remove unused _CPU_Fatal_halt()
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
e80883b406 score: Simplify _Terminate()
In _Terminate(), everything after invoking the fatal extensions is essentially
dead code.  Simplify this code block and provide a reasonable safe fall-back
for badly configured applications.  Just disable masked interrupts and execute
an idle loop.

Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
5cc04d5419 bsps: Simplify build
All BSPs use the default fatal extension.

Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
2128201616 bsp/niagara: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
2bb8ce9741 bsps/sparc: Use default fatal extension
Provide bsp_reset() through the sparc CPU port.

Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
ca96857962 bsp/virtex5: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
c88feda145 bsp/virtex4: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
5ea022ff12 bsps/riscv: Provide bsp_reset()
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
002c6067ba bsps: Add fatal source/code to bsp_reset()
Mark bsp_reset() as no-return.  Use default BSP fatal handler in lm32 and m68k
BSPs.  Remove empty bsp_reset() implementation.

Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
aeae283541 bsp/mvme5500: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
be9f339420 bsp/beatnik: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
755474b78a bsp/altera-cyclone-v: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Karel Gardas
d81bf04501 bsps/stm32h7: Workaround STM32 H7 errata by enforcing aligned access only
The patch changes compiler ABI flags option and adds -mno-unaligned-access
there. Usage of this option is also officially recommended way
by the errata document how to work around the issue. For more details
about the errata please see referenced issue number.

Closes #5110.
2024-08-11 22:43:39 +00:00
Matheus Pecoraro
7440264601 amd64: Move APIC implementation out of clock.c
- Move the APIC implementation to its on file instead of having it in clock.c;
- Use the MADT for retrieving the Local APIC base address;
- Initialize the APIC during interrupt initialization.
2024-08-11 07:38:35 +00:00