Commit Graph

442 Commits

Author SHA1 Message Date
Chris Johns
cb52e37464 bsps/arm: MP core timer setting off by one 2022-06-15 13:15:15 +10:00
Karel Gardas
ae2367c505 bsps/stm32h7: remove external memory initialization from nucleo-h743zi BSP
Nucleo board does not provide any external memory so code does not have
any function here anyway.

Sponsored-By:	Precidata
2022-06-10 11:17:17 +02:00
Karel Gardas
e5e1c00491 bsps/stm32h7: move BSP start hooks into boards subdirectories
The idea here is to prepare for better per-board specialization
of the hooks function code.

Sponsored-By:	Precidata
2022-06-10 11:17:17 +02:00
Christian Mauderer
7ba1503661 bsps/imx: Enable clock of ETH2 2022-06-09 09:04:40 +02:00
Sebastian Huber
75af80a682 arm/lpc32xx: Implement new interrupt directives 2022-06-08 10:25:41 +02:00
Sebastian Huber
8d6190129a bsp/lpc32xx: bsp_interrupt_vector_enable()
The interrupt enables are used to implement a priority scheme in
bsp_interrupt_dispatch().  Enable interrupts through
bsp_interrupt_vector_enable() only if they are not already enabled to
not interfere with the priority scheme while
bsp_interrupt_vector_enable() is called during interrupt dispatching.
2022-06-08 10:25:41 +02:00
Sebastian Huber
4d0d7d5413 bsp/lpc32xx: bsp_interrupt_is_valid_vector()
Provide custom bsp_interrupt_is_valid_vector() implementation since
several interrupt vectors are reserved.
2022-06-08 10:25:41 +02:00
Sebastian Huber
88a53ca682 bsp/lpc32xx: Use standard timer 2 for tm27.h
This helps to run the validation tests of the Interrupt Manager
directives.
2022-06-08 10:25:37 +02:00
Sebastian Huber
5dc5ab5650 arm/lpc32xx: Hide MLC details 2022-06-08 09:33:20 +02:00
Sebastian Huber
bb29f8b5ff bsp/lpc32xx: Fix FIQ interrupt support
Do not sporadically service interrupts configured as FIQ by the IRQ
interrupt dispatch.
2022-06-08 09:33:20 +02:00
Karel Gardas
a5bde172fe bsps/stm32h7: add board C files for stm32h747i-disco BSP
Besides C files for the BSP variant the patch also provides license
clarification on system_stm32h7xx.c file which is provided
in boards/stm/stm32h747i-disco directory.
The files comes from STM32CubeH7 project and references "root directory"
in its license comment and it's not clear where this points out.
Let's add clarification comment about it and also based on it
and resulting license let's add SPDX license identifier.

Sponsored-By:	Precidata
2022-06-01 15:49:19 +02:00
Karel Gardas
7cb73a34d4 bsps/stm32h7: include CMSIS Cortex-M4 header when required by configuration
Sponsored-By:	Precidata
2022-06-01 11:20:59 +02:00
Karel Gardas
ec39a69529 bsps/stm32h7: enable cache and MPU only on Cortex-M7
Sponsored-By:	Precidata
2022-06-01 11:20:49 +02:00
Karel Gardas
ed814cd8bc bsps/arm: add CMSIS Cortex-M4 Core Peripheral Access Layer Header File 2022-05-30 01:34:24 +02:00
Karel Gardas
99f00b12dd bsps/stm32h7: enable SDRAM 2 MPU region
Sponsored-By:	Precidata
2022-05-27 20:17:32 +02:00
Karel Gardas
2fded8138d bsps/stm32h7: add board C files for stm32h757i-eval BSP
Besides C files for the BSP variant the patch also provides license
clarification on system_stm32h7xx.c file which is provided
in boards/stm/stm32h757i-eval directory.
The files comes from STM32CubeH7 project and references "root directory"
in its license comment and it's not clear where this points out.
Let's add clarification comment about it and also based on it
and resulting license let's add SPDX license identifier.

Sponsored-By:	Precidata
2022-05-27 20:17:32 +02:00
Karel Gardas
635cd68aa7 bsp/arm: allocate .rtemsstack on REGION_STACK instead of on REGION_WORK
REGION_WORK may be backed by external RAM which may not be initialized
in a time we need stack to work well. E.g. code loaded in flash,
stack allocated on in-cpu SRAM and data (REGION_WORK) on external SDRAM.

Sponsored-By:	Precidata
2022-05-23 08:36:41 +02:00
Karel Gardas
135d5274bd bsp/stm32h7: remove system files from start directory
The files are already presented in boards directories and are not needed
in start directory anymore.

Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
31f756b07c bsp/stm32h7: copy system files to nucleo-h743zi board directory
Also adjust BSP spec file to make it buildable with board files.

Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
f8a9a47de1 bsp/stm32h7: copy system files to stm32h743i-eval board directory
Also adjust BSP spec file to make it buildable with board files.

Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
6b051182a9 bsp/stm32h7: remove stm32h7b3i-dk related changes from start system files
Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
d8017f203e bsp/stm32h7: update stm32h7b3i-dk board system_stm32h7xx.c file
Updated content comes from STM32CubeIDE 1.9.0 generated for STM32H7B3I-DK
board and have RTEMS related changes merged in.

Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
63e327f9fb bsp/stm32h7: cleanup osc, clk, per files for stm32h7b3i-dk board
Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
7234516cc5 bsp/stm32h7: copy system files to stm32h7b3i-dk board directory
Also adjust BSP spec file to make it buildable with board files.

Sponsored-By:	Precidata
2022-05-16 10:23:27 +02:00
Karel Gardas
409b566571 bsp/stm32h7: update FMC configuration for SRAM and SDRAM usage
The patch merges differences in FMC configuration between system_stm32h7xx.c
file generated by STM32CubeIDE for 743i-eval2 board and the current RTEMS
ext-mem-ctl.c file.

Sponsored-By: Precidata
2022-04-07 08:04:19 +02:00
Sebastian Huber
2b54d2e8b8 bsp/stm32h7: Convert to UNIX line endings 2022-04-05 11:34:25 +02:00
Karel Gardas
ef2c5f70e7 bsp/stm32h7: bring all required changes into system_stm32h7xx for STM32H7B3I-DK BSP variant
The changes provided here are a result of a merge from various examples
system_stm32h7xx.c files provided by STMicroelectronics for the STM32H7B3I-DK
board with the original RTEMS file provided for the STM32H743I-EVAL2 board.
2022-04-05 10:35:31 +02:00
Karel Gardas
e2b673d410 bsp/stm32h7: properly ifdef all unsupported features in start -hal file while compiling for STM32H7B3I-DK BSP 2022-04-05 09:56:06 +02:00
Karel Gardas
2c4331a14d bsp/stm32h7: configure peripheral clocks for STM32H7B3xxQ (e.g. STM32H7B3I-DK BSP) 2022-04-05 09:56:06 +02:00
Karel Gardas
074cb1c61d bsp/stm32h7: configure oscillator for STM32H7B3xxQ (e.g. STM32H7B3I-DK BSP) 2022-04-05 09:56:06 +02:00
Karel Gardas
b50f3e88c2 bsp/stm32h7: configure AHB clock divider for STM32H7B3xxQ (e.g. STM32H7B3I-DK BSP) 2022-04-05 09:56:06 +02:00
Karel Gardas
27d1707f20 bsp/stm32h7: disable ethernet for STM32H7B3I-DK BSP variant
Note: the ethernet port is not presented on the board anyway.
2022-04-05 09:56:06 +02:00
Karel Gardas
c48bedd13a bsp/stm32h7: add flash latency configuration 2022-04-05 09:56:05 +02:00
Karel Gardas
0acc136039 bsp/stm32h7: add configuration for USART1 GPIO pins, registers and alternate function 2022-04-05 09:56:05 +02:00
Karel Gardas
044bc3ceab bsp/stm32h7: add power supply configuration 2022-04-05 09:56:05 +02:00
Joel Sherrill
753873e54b Update Eric Norum contact info and start to normalize file headers 2022-03-24 10:01:51 -05:00
Sebastian Huber
e7a2470d06 bsps/arm: Fix bsp_start_memcpy() for ARMv7-AR
Synchronize data and instruction streams.
2022-03-14 09:23:54 +01:00
Joel Sherrill
ba619b7f36 bsps/arm/: Scripted embedded brains header file clean up
Updates #4625.
2022-03-10 08:43:50 +01:00
Marcus Ritter
bafeff6095 bsp/altera-cyclone-v: fix the creation of reserved memory regions 2022-03-09 09:13:36 +01:00
Christian Mauderer
6fe6622489 bsp/imxrt: Enforce alignment for devicetree
A device tree binary has to be 8 byte aligned in memory. This is checked
since RTEMS commit 34052ef78c "libfdt: Add
FDT alignment check to fdt_check_header()".
2022-02-21 09:30:05 +01:00
Chris Johns
1e0a163388 bsp/arm/zynq: Cadence I2C has moved, update to the new path 2022-02-17 16:55:03 +11:00
Christian Mauderer
cff16379c9 bsp/atsam: Improve UART / USART tx performance
Put the next character into the send buffer if the buffer is empty and
not when the last character has been sent out to the line. This improves
the performance slightly.

Before that patch, the receive path was faster than the transmit path.
Therefore a simple echo could drop characters on a busy connection.
With this patch sending and receiving has about the same performance so
that no characters are lost.

Fixes #4610
2022-02-11 09:03:42 +01:00
Christian Mauderer
0074c9ecf3 bsp/atsam/i2c: Add error return and fix edge cases
The driver didn't return with an error on (for example) a NACK on the
bus. This adds the expected error return. Due to the new case that a
transfer can be interrupted on an error, there were some new edge cases.
This patch therefore also fixes these edge cases by removing the
transfer_state that more or less duplicated the interrupt states.

Fixes #4592
2022-02-10 09:08:03 +01:00
Christian Mauderer
974d24f8a8 bsp/atsam/i2c: Simplify driver
Do some clean ups. Remove superfluous variables. Eliminate some overly
complex logic (information about transfer and remaining bytes has been
tracked redundantly in multiple variables).

This patch doesn't change the behavior of the driver.

Update #4592
2022-02-10 09:07:46 +01:00
Christian Mauderer
aa95122c17 bsp/atsam: Optionally use DMA for UART Rx
If the system is busy with other interrupts and the UART is set to a
fast baud rate, it's possible to loose UART interrupts and therefore
characters. This allows to optionally enable a DMA for the UARTs so that
a number of lost interrupts can be tolerated.

The number of DMAs on this chip is limited and not not all applications
need that feature. Therefore the DMA is disabled by default.

Close #4578
2022-01-18 08:41:15 +01:00
Christian Mauderer
fbd18c09af bsp/atsam: Merge USART and UART driver
If no extended features of the USART are used and if the comparison
feature of the UART is not used, the two modules are compatible. The
drivers were nearly identical except for some names of the defines.

This patch merges the two drivers into one.

Update #4578
2022-01-18 08:41:11 +01:00
Joel Sherrill
dd70c81699 bsp_specs: Delete last remnants of these.
Updates #3937.
2021-11-29 08:50:03 -06:00
Christian Mauderer
1fc3f17127 bsp/imx: Add cs_change support to SPI 2021-10-06 10:24:03 +02:00
Sebastian Huber
db8f598d56 build: Remove old build system
Close #3250.
Close #4081.
2021-09-21 07:39:09 +02:00
Stephen Clark
73c182a5ed bsps/zynq: Moved general i2c files to shared directories
Certain files related to the Zynq BSP's I2C driver are useable by the ZynqMP BSP as well.
Moved these files to shared directory in anticipation of I2C support for ZynqMP.
2021-09-09 14:19:57 -05:00