Commit Graph
575 Commits
Author SHA1 Message Date
Sebastian Huber 4d9c9c52ae bsp/tms570: Conditionalize TMS570LS3137 errata
Update #4982.
2024-01-15 10:33:31 +01:00
Sebastian Huber eeaa318dc6 bsp/tms570: Simplify expression
Update #4982.
2024-01-15 10:33:29 +01:00
Tyler Miller c14efe493b bsp/tms570: Add TMS570LC4357 power support
Update #4982.
2024-01-15 10:33:28 +01:00
Tyler Miller 4f6fa9746d bsp/tms570: Add TMS570LC4357 pin config support
Update #4982.
2024-01-15 10:33:26 +01:00
Tyler Miller 39fd4b142e bsp/tms570: Remove double pin configuration
Do not set pins to the default function before the actual setting is
applied.  If a pin setting needs to be done in a certain order, then
this should be done explicitly through multiple calls to
tms570_bsp_pinmmr_config().

Update #4982.
2024-01-15 10:33:24 +01:00
Tyler Miller b995211907 bsp/tms570: Add tms570_pbist_run_and_check()
Update #4982.
2024-01-15 10:33:22 +01:00
Tyler Miller 048d81a076 bsp/tms570: Add TMS570LC4357 PBIST support
Update #4982.
2024-01-15 10:33:19 +01:00
Sebastian Huber 36192165e2 bsp/tms570: Fix PBIST clock enable
Bit 1 of the PACT is reserved (writes have no effect).

Update #4982.
2024-01-15 10:33:17 +01:00
Sebastian Huber eb97cd148c bsp/tms570: Add TMS570LC4357 BSP variants
Update #4982.
2024-01-15 10:33:15 +01:00
Sebastian Huber 437da01f80 bsp/tms570: Add linkcmds.memory
Remove obsolete tms570ls3137_hdk_with_loader BSP variant.  With the new
memory origin/size build options this variant is no longer required.

Update #4982.
2024-01-15 10:33:13 +01:00
Sebastian Huber 285d1a4056 bsp/tms570: Avoid vector overlay memory region
Reserve the space in a section.  This makes it possible to use a common
memory region definition.

Update #4982.
2024-01-15 10:33:09 +01:00
Sebastian Huber df067e5b69 bsp/tms570: Add TM27 support
Update #4982.
2024-01-15 10:33:06 +01:00
Sebastian Huber cf01329e24 bsp/tms570: Avoid spurious interrupts
Update #4982.
2024-01-15 10:33:05 +01:00
Sebastian Huber 8753604ed5 bsp/tms570: Implement interrupt is enabled/pending
Update #4982.
2024-01-15 10:33:03 +01:00
Sebastian Huber a6482ebfaa bsp/tms570: Implement set/get interrupt priority
Update #4982.
2024-01-15 10:33:01 +01:00
Sebastian Huber 27e0abbdb5 bsp/tms570: Avoid errno for debug console
Update #4982.
2024-01-15 10:33:00 +01:00
Sebastian Huber 849210fff6 bsp/tms570: Fix bsp_reset()
Update #4982.
2024-01-15 10:32:58 +01:00
Sebastian Huber 8240caecc8 bsp/tms570: Rename tms570_initialize_and_clear()
Rename tms570_initialize_and_clear() in
tms570_pom_initialize_and_clear().

Update #4982.
2024-01-15 10:32:56 +01:00
Sebastian Huber 2110125f7c bsp/tms570: Add bsp_restart()
Update #4982.
2024-01-15 10:32:54 +01:00
Sebastian Huber 600bd56543 bsp/tms570: Use new pin define
Update #4982.
2024-01-15 10:32:52 +01:00
Sebastian Huber 8e8b9bc0b7 bsp/tms570: Relicense to BSD-2-Clause
Change license to BSD-2-Clause according to file history and contributor
agreements.  Add Doxygen file comments.

Update #3053.
Update #3707.
Update #4982.
2024-01-15 10:32:45 +01:00
Sebastian Huber 58521f15f3 bsp/tms570: Remove empty <bsp/tms570-vim.h>
Update #4982.
2024-01-15 10:32:44 +01:00
Sebastian Huber 72ec63e7d8 bsp/tms570: Remove empty <bsp/tms570-sci.h>
Update #4982.
2024-01-15 10:32:42 +01:00
Sebastian Huber 222c98903f bsp/tms570: Remove empty <bsp/tms570-rti.h>
Update #4982.
2024-01-15 10:32:41 +01:00
Sebastian Huber 7427caa1ae bsps/arm: Use shared empty bsp_start_hook_0()
Update #4982.
2024-01-15 10:32:23 +01:00
Kinsey Moore 150dcf5e47 libio: Clean up usage of rtems_termios_device_mode
This cleans up outputUsesInterrupts usage with rtems_termios_device_mode
enum values. The outputUsesInterrupts member was typed as an int, named
as if it were a boolean value, and used as if it were a
rtems_termios_device_mode enum. In this patch, values assigned to
outputUsesInterrupts have been converted to the corresponding
rtems_termios_device_mode enum value, conversions from
deviceOutputUsesInterrupts have been made explicit, and uses of
rtems_termios_device_mode enum values with deviceOutputUsesInterrupts
have been converted to booleans.
2024-01-10 14:43:53 -06:00
Jacob Killelea 0883f7ec58 bsps/arm/stm32f4: Enable USART RX interrupts
Hi all, this is my first email patch submission and my first contribution to RTEMS, so please give any
feedback you have!

This patch enables interrupt driven data reception on USART ports on
STM32F4 series chips. This feature is gated behind the config flag
BSP_CONSOLE_USE_INTERRUPTS. If this flag is not set to True, the older
polling implementation will be used. I tested this feature on STM32F401CE
(blackpill) and STM32 Nucleo F411RE boards, with both capable of keeping
up with a 115200 baud continous data stream. With the older polling
implementation, both would drop bytes at 9600 baud. In addition, I
updated the implementation of usart_set_attributes to support changing
the baud rate of the USART port based on the input speed.
2023-12-14 13:40:03 -06:00
Sebastian Huber 2286a2ec19 bsp/tms570: Do not use POM for internal flash 2023-12-06 17:04:46 +01:00
Sebastian Huber 05a4c70aa9 bsp/tms570: Improve POM handling
Place the vector table in the start section so that the overlay can be
avoided if we execute from internal flash.  The problem is that when the
POM is enabled, the ECC cannot be enabled for the internal flash.
2023-12-06 14:27:48 +01:00
Sebastian Huber c374727c63 bsp/tms570: Adjust BSP_OSCILATOR_CLOCK 2023-12-06 13:35:40 +01:00
Sebastian Huber c65466929f bsp/tms570: Fix debug console baud setting 2023-12-06 13:35:40 +01:00
Sebastian Huber 232180a502 bsp/tms570: Use internal RAM for fast data 2023-12-06 13:35:40 +01:00
Sebastian Huber 47c4093ad3 bsp/tms570: Add TMS570LC4357 support 2023-12-06 13:35:40 +01:00
Sebastian Huber e13b7340fe bsp/tms570: Use 0x for hex constants 2023-12-06 13:35:40 +01:00
Sebastian Huber 3a0dcd5ee9 bsp/tms570: Replace TMS570_MMR_SELECT_GMII_SEL
Replace TMS570_MMR_SELECT_GMII_SEL with TMS570_MMR_SELECT_MII_MODE and
TMS570_MMR_SELECT_RMII_MODE.
2023-12-06 13:35:40 +01:00
Sebastian Huber da35b37f92 bsp/tms570: Add pin configuration variants
Rearrange pin function bit fields to allow the clearing of all function
bits through TMS570_PIN_AND_FNC().

Move implementation details to source file.
2023-12-06 13:35:40 +01:00
Sebastian Huber ba89aae89d bsps/arm: BSP_START_VECTOR_ADDRESS_TABLE_ALIGNMENT
Add the BSP option BSP_START_VECTOR_ADDRESS_TABLE_ALIGNMENT to
optionally define an alignment of the vector address table begin.
2023-12-06 13:35:37 +01:00
Bernd Moessner fe35c8d5ee ZYNQ7000: Add support PYNQ, PicoZed, MicroZed, ZYBO and ZYBO Z7
This patch adds basic support for the following boards:

xilinx_zynq_pynq - PYNQ Z1 / Z2
xilinx_zynq_microzed - MicroZed 7010 / 7020
xilinx_zynq_picozed - PicoZed 7010 / 7015 / 7020 / 7030
xilinx_zynq_zybo - ZYBO
xilinx_zynq_zybo_z7 - ZYBO Z7-10 / Z7-20

N.b. Arty Z7-20 is basically a PYNQ Z1 - different board
color and updated Eth PHY.
2023-11-28 12:51:34 -06:00
Christian Mauderer ac0b4ae5c4 bsps/imxrt1166: Disable video_mux
The pinctrl-0 of the video_mux might overwrite pin settings done by
other peripherals. Disabling it by default prevents unexpected pin
settings.
2023-11-28 13:36:41 +01:00
Christian Mauderer 02f2316be7 bsp/imxrt1166: Support GPIO CS pins in LPSPI
With this, it is possible to use GPIOs as CS pins in the LPSPI. To avoid
additional complexity, the GPIOs will have the same limitations as the
native (hardware) CS pins.

The GPIO CS feature adds a number of extra code when starting SPI
transfers on this controller. Therefore it is possible to disable the
additional code by just setting the IMXRT_LPSPI_MAX_CS option to 0. In
that case only native CS pins are supported.

At the moment, this feature is only enabled on i.MXRT1166 by default
because it is not tested on i.MXRT1050. But it should work there too.
2023-11-28 13:36:41 +01:00
Christian Mauderer a38f9c57f9 bsps/imx*: imx_gpio from pointer to fdt property
Device trees allow mixing different kinds of GPIOs in one property. For
that it is usefull to only provide a pointer to an arbitrary location in
the property and initialize a GPIO from that.
2023-11-28 13:36:41 +01:00
Philip Kirkpatrick 793c0f4671 bsps/arm: Add BSP for ZynqMP RPU 2023-11-20 10:43:55 -06:00
Christian Mauderer 094355d4f1 bsps/arm/imxrt: Optimize nocache memory settings
The nocache-memory was set as device memory. It's not necessary to be
that strict. Set it to normal non-cacheable non-shareable memory
instead.
2023-08-21 09:13:16 +02:00
Christian Mauderer 685f193280 bsps/arm/imxrt1166: Enable USB
Enable the USB modules in the FDT.
2023-08-21 09:13:16 +02:00
Christian Mauderer 91b1c7b0a6 bsps/imxrt: Fix enabling USBPHY in fsl_clock
The mcux-sdk tries to enable the USBPHY. But it uses the wrong register
for that. This patch fixes the bug.
2023-08-21 09:13:16 +02:00
Sebastian Huber ffec9f96fc arm: Fix cache support for ARM926EJ-S
The ARM926EJ-S is an ARMv5T architecture processor and lacks some
features of ARMv6 processors such as the ARM1176JZF-S.

Close #4940.
2023-08-10 08:34:34 +02:00
Sebastian Huber a96f5df50b bsp/lpc32xx: Fix lpc32xx_magic_zero_size 2023-08-09 07:22:10 +02:00
Sebastian Huber 6cef96b1ab bsp/lpc32xx: Increase SDRAM size to 64MiB
Increase stage 2 bootloader size to 16MiB.
2023-08-09 07:22:10 +02:00
Sebastian Huber b0285e5c9a bsp/lpc32xx: Remove hard to maintain comments
These comments duplicate the memory and region definitions of the linker
command file.
2023-08-09 07:22:10 +02:00
Sebastian Huber 573a7202e6 bsp/lpc32xx: Restore lpc32xx_set_translation_table_entries()
This implementation disables the MMU during the modification of the
translation table.  This behaviour is required by boot loaders for these
boards.
2023-08-09 07:22:10 +02:00