Commit Graph
444 Commits
Author SHA1 Message Date
Sebastian Huber c15842d99d bsps/xilinx-zynq: Init debug console only once
Initialize the debug console only once during early system initialization.
2022-07-01 06:50:16 +02:00
Sebastian Huber 00f39770ca bsp/lpc32xx: Optimize Ethernet transmit
The updated Ethernet interface driver in libbsd profits from more
transmit descriptors since it no longer uses transmit done interrupts.
2022-06-27 09:25:10 +02:00
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