Commit Graph

691 Commits

Author SHA1 Message Date
Joel Sherrill
69b72bb9df bsps/arm/stm32h7/dma/dma-allocator.c: Fix unused variable warning
Updates &20
2025-05-05 18:34:27 +00:00
Joel Sherrill
ae5655b88b bsps/arm/stm32h7/hal/*: Fix pointer and integer comparison warnings
The HAL code would compare to "0U" instead of NULL.

Updates &20
2025-05-05 18:34:27 +00:00
Joel Sherrill
64070bdf66 bsps/arm/stm32h7: Address missing prototype for SystemInit_ExtMemCtl
Updates &20
2025-05-05 18:34:27 +00:00
Joel Sherrill
d33aba4a8d bsps/arm/shared/cp15/arm920-mmu.c: Fix array overwrite
An extern for the linker symbol _ttbl_base was declared incorrectly
and gcc reported an overwrite of the four byte area by 16K. Switched
to using the standard linker symbol macros and the warning was
removed.
2025-02-10 15:47:10 +00:00
Joel Sherrill
a7dd196f01 csb337/umon/tfsDriver.c: Fix warning for possible string too long
GCC detected this.
2025-02-10 15:47:10 +00:00
Joel Sherrill
56c8d65b30 csb337/umon/tfsDriver.c: Fix warning for ioctl cmd parameter
The cmd parameter was uint32_t and should have been ioctl_command_t.
2025-02-10 15:47:10 +00:00
Gedare Bloom
8e6ded473c rtems: update licenses to 2BSD
This is an update of many lingering embedded brains GmbH licenses from
the RTEMS License to the 2-BSD license where possible depending on the
joint copyrights.

Updates #3053.
2025-02-10 15:44:09 +00:00
Kinsey Moore
b9c58102bb bsps/stm32h7/spi: Add DMA support 2025-02-07 00:07:42 +00:00
Kinsey Moore
4de9ddf4a7 bsps/stm32h7: Add DMA support
This patch adds a DMA allocator that can be used by any driver wrapping
a STM32 HAL driver that supports DMA.
2025-02-07 00:07:42 +00:00
Joel Sherrill
bffc250688 General: Update Eric Valette's email address
Changing Eric's email from valette@crf.canon.frto eric.valette@free.fr
2025-02-04 12:41:08 -06:00
Aaron Nyholm
9d6367fd4f bsps/xilinx-zynq: Fixed QSPI Flash sector erase
Erases of exactly the sector size only erase one sector instead of
two.

Closes #5161
2024-11-21 16:54:56 +11:00
Kinsey Moore
b3be636863 bsps/stm32h7/spi: Add IRQ support 2024-11-15 00:47:58 +00:00
Kinsey Moore
b1a350a18a bsps/stm32h7: Add full duplex support for SPI 2024-11-15 00:47:58 +00:00
Sebastian Huber
601e52f495 bsps: Fix Doxygen groups 2024-11-15 00:36:37 +00:00
Sebastian Huber
f208860981 dev/slcr: Fix warning 2024-11-12 16:18:20 +00:00
Aaron Nyholm
177a8c57ea bsps/xilinx-zynq: Add QSPI flash driver 2024-11-08 03:34:48 +00:00
Chris Johns
45308bcc32 bsp/xilinx-zynq: Change devcfg prints to printk
Updates #5142
2024-10-31 14:05:12 +11:00
Chris Johns
fbbbe04cf5 bsp/xilinx-zynq: Change devcfg locks to self-contained mutexes
Updates #5142
2024-10-31 13:56:41 +11:00
Chris Johns
558e0b3b89 bsp/xilinx-zynq: Move devcfg DMA alignment size to the install header
Fix the dev path spelling mistake.

Updates #5142
2024-10-31 13:28:37 +11:00
Chris Johns
d1e507e010 bsp/xilinx-zynq: Add SPDX to devcfg and slcr files
Updates #5142
2024-10-31 13:27:08 +11:00
Chris Johns
bc8ffae115 bsp/xilinx-zynq: Add devcfg and slcr drivers
The devfg driver loads the PL with a bitfile image. The driver can also
support scrubbing.

These drivers are from Patrick Gauvin <pggauvin at gmail.com> and a thread
on the devel list: https://lists.rtems.org/pipermail/devel/2017-May/017705.html
2024-10-30 23:04:42 +00:00
Kinsey Moore
1b5549ae69 bsps/arm/zynq: Make secondary core wait on QEMU
When using QEMU configurations that support SMP for Zynq7000 systems,
the second core is started at the same time as the first core instead of
waiting for an event to trigger a check for the value at 0xfffffff0
before jumping into RTEMS code. This makes the erroneously started core
wait as expected and prevents prefetch and data aborts from occurring
before the MMU has been properly configured. This was recently exposed
by cleanup done to the ARM GICv2 driver that removed some delays which
were allowing this to operate normally.
2024-10-30 18:56:36 +00:00
Kinsey Moore
1bba349478 bsps: Remove imported Xilinx headers
This removes the headers imported from the embeddedsw repository in
favor of a much thinner shim. This also removes the complicated build
system configuration necessary to support use of these headers. The
primary reason for removal is that certain external Xilinx libraries
also require use of these headers and this causes version mismatches and
header conflicts that can be avoided.
2024-10-28 19:23:49 +00:00
Sebastian Huber
f43042cd06 bsps: Move <bsp/linker-symbols.h> to shared
Move architecture-independent items to a shared <bsp/linker-symbols.h>.
Allow architectures to customize it through <bsp/linker-symbols-arch.h>.
2024-10-11 01:27:48 +02:00
Sebastian Huber
5a962e3bb7 arm/aarch64: Optimize _CPU_SMP_Send_interrupt()
Avoid superfluous error checks.
2024-10-11 01:27:48 +02:00
Christian Mauderer
98f2ae3449 bsps/arm/beagle: Remove README.md and old script
The information from the README.md have been merged into the
documentation.

The necessary tools for the sdcard.sh are quite tricky to build. All
necessary information to create an SD image are in the documentation
already. So the script isn't necessary any more.

Update #5088
2024-10-05 19:29:15 +00:00
Sebastian Huber
9624b31408 arm/xilinx-zynqmp-rpu: Implement bsp_reset() 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
5f1a9d3346 arm/xilinx-zynqmp-rpu: Simplify startup
There is no need to copy sections since the linker command file has no separate
runtime and load regions for the sections.
2024-10-02 05:24:30 +02:00
Sebastian Huber
1b2ebe1516 arm/xilinx-zynqmp-rpu: Remove superfluous defines 2024-10-02 05:24:30 +02:00
Sebastian Huber
a78d31de7f arm/xilinx-zynqmp-rpu: Fix file header and copyrights
Remove copyright from DornerWorks since the files contain not contributions
from this company.  Fix the copyright years of the embedded brains
contributions.
2024-10-02 05:24:30 +02:00
Sebastian Huber
c4a5dfeb5d arm/xilinx-zynqmp-rpu: Include standard header 2024-10-02 05:24:30 +02:00
Sebastian Huber
54c64352d5 bsps/arm: Add files to Doxygen group 2024-10-02 05:24:30 +02:00
Sebastian Huber
e2be5ac899 bsps/arm: Allow parallel start of processors
Do not wait in the individual _CPU_SMP_Start_processor() for the
secondary processor.  Wait for all of them in
_CPU_SMP_Finalize_initialization() before the L2 cache is enabled.
2024-09-29 23:13:32 +00:00
Sebastian Huber
276d2efb37 bsp/raspberrypi: Simplify SMP support
There is no need to wait for the secondary processor in
_CPU_SMP_Start_processor() since _CPU_SMP_Finalize_initialization() does
nothing.

The caller of _CPU_SMP_Start_processor() ensures that we do not start
the current processor.
2024-09-29 23:13:32 +00:00
Sebastian Huber
b0a688e69c bsps: Simplify _CPU_SMP_Finalize_initialization()
The processor count is always positive.
2024-09-29 23:13:32 +00: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
Christian Mauderer
3edf2bd579 bsps/arm/atsam: Remove README.md
Migrated to the rtems-docs repository.

Updates #5088
2024-09-13 20:55:15 +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
Kinsey Moore
243f88992f bsps/arm/irq: Avoid array comparison
This removes the array comparison warning by explicitly taking the
address of the arrays.
2024-09-06 01:15:21 +00:00
Kinsey Moore
5b13baf96a bsps/stm32h7: Resolve HAL const warning
HAL init functions take a non-const reference parameter. Explicitly cast
away the constness to remove the warning.
2024-09-06 01:15:21 +00:00
Kinsey Moore
31d2a2acb1 bsps/stm32h7: Resolve warning due to missing prototype 2024-09-06 01:15:21 +00: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
2174ec336a arm: Remove _ARMV4_Exception_reserved_default()
The default exception handler uses the Save Program Status Register
(SPSR), however, if _ARMV4_Exception_reserved_default() would get
called, the state of this register is unpredictable.  Replace potential
calls to _ARMV4_Exception_reserved_default() with 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
Kinsey Moore
c2b3a517f6 bsps/stm32h7: Honor the intent of the MPU alignment option
Currently, if a BSP is built without MPU alignment enforcement, the MPU
is still enabled and can produce a non-functional binary since code can
be mixed with data within a memory region and memory regions are marked
as read-only or no-execute based on section addresses and sizes leading
to overlapping regions being defined which causes the later-defined
region to take precedence. This change disables the MPU when alignment
is not enforced, allowing the binary to function.
2024-08-23 17:20:40 +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
755474b78a bsp/altera-cyclone-v: Use default fatal extension
Update #5067.
2024-08-23 14:54:37 +00:00
Karel Gardas
e8172c8651 bsps/stm32h7: Fix typo causing crash on USB 2 initialization
There is certainly no USB 20 TG while there is a known USB 2 OTG tech. The
crash caused by this is well observed from media01.exe from libbsd compiled
for H7 and run on the board.
2024-08-09 14:28:40 +00:00