Commit Graph
36004 Commits
Author SHA1 Message Date
Karel Gardas 56d21a7acc bsps/stm32h7: disable MPU alignment for M4-based BSP variants
There is no point in wasting precious memory space on enforced section
alignment for the purpose of MPU which is not implemented on M4 core
anyway.
2023-06-29 22:46:13 +02:00
Sebastian Huber ca0a11e443 build: Remove superfluous attributes 2023-06-28 10:28:04 +02:00
Aaron Nyholm 4b209a322e cpukit/flash: Correct erase ioctl address
Previously, the erase ioctl call would ignore flash regions and erase at
the absolute address passed in. This adds a check for if the region is
set and adds the region offset accordingly.
2023-06-27 07:50:40 +10:00
Kinsey Moore 333fd02631 bsps/xqspipsu: Handle SMP systems properly
The NOR driver was not written with SMP systems and caching in mind.
This makes the IsBusy flag volatile for updates across cores and
introduces cache flushing and invalidation where necessary for data
manipulated by the DMA engine in the QSPI peripheral.
2023-06-22 10:46:33 -05:00
Sebastian Huber 65b0ba4d8a bsps/sparc: Deprecate BSP-specific interrupt API
Update #3269.
2023-06-16 07:30:50 +02:00
Sebastian Huber 4e3e9df1b4 bsps: Remove uses of BSP-specific interrupt API
Update #3269.
2023-06-16 07:30:50 +02:00
Sebastian Huber 83305f5050 pci: Do not use BSP-specific interrupt API
Update #3269.
2023-06-16 06:35:22 +02:00
Sebastian Huber bbc9f7ef13 build: Remove unused file 2023-06-16 06:35:22 +02:00
Sebastian Huber 97a4b306f4 bsp/leon2: Include missing header file
Update #4458.
2023-06-15 20:04:22 +02:00
Sebastian Huber 32c14694db build: Format with yapf 2023-06-14 14:19:39 +02:00
Sebastian Huber c9665ff1a1 build: Do not install removed files 2023-06-12 21:01:06 +02:00
Sebastian Huber 8383b56e48 Update company name
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
2023-06-12 07:46:23 +02:00
Sebastian Huber a799809213 score: Remove CPU port atomic operations API
Use the C/C++ standard API directly.
2023-06-12 07:46:23 +02:00
Sebastian Huber 0613593148 score: Remove CPU port specific cpuatomic.h
All CPU ports used the same <rtems/score/cpustdatomic.h> header file to
provide the atomic operations.  Remove the header file indirection.
2023-06-12 07:46:23 +02:00
Sebastian Huber e58f25a924 xilinx-zynqmp: Include <rtems/termiostypes.h>
Include <rtems/termiostypes.h> for the Termios device driver support.
2023-06-12 07:45:12 +02:00
Kinsey Moore ea27adaa0d testsuites/flashdev01: Use correct page_size type
The page size ioctl requires an int pointer to retrieve the page size.
The test currently uses a size_t which mostly works fine for systems
where size_t and int are the same size, but can leave junk data in the
upper bits when they differ in size causing an assert in the test to
fail in some cases. This updates the variable to the correct type.
2023-06-10 11:02:29 -05:00
Kinsey Moore 09fd5dd353 bsps/xqspipsu: Use device information from the FCT
Instead of statically defining the device parameters, use the device
information available via the NOR device layer's Flash Configuration
Table.
2023-06-08 09:48:44 -05:00
Kinsey Moore 7a14c3df8b bsps/xqspipsu: Calculate erase sectors correctly
When given the exact bounds of a sector, the current algorithm
calculates that 3 sectors need to be erased. This corrects the
calculation such that only 1 sector needs to be erased for erasures that
exactly match sector boundaries.
2023-06-08 09:48:44 -05:00
Kinsey Moore 4ca4311036 bsps/xqspipsu: Correct s25fl512s flash definition
The definition for the s25fl512s flash chip is incorrect. This updates
the sector size and page size values to match the datasheet.
2023-06-08 09:48:44 -05:00
Kinsey Moore a67aab6cd4 bsps/xqspipsu: Ensure NOR writes align
This change causes NOR writes to be broken according to page boundaries.
Writes across page boundaries cause the writes beyond the boundary to
fail silently. This also introduces a new function that will explicitly
write pages.
2023-06-08 09:48:44 -05:00
Joel Sherrill b2967081e5 xilinx-zynqmp: Include <rtems/libio.h> for rtems_termios_initialize() 2023-06-06 17:34:43 -05:00
Joel Sherrill bb5dbff74a Move various compression libraries into single subdirectory
This improves the organization of the cpukit.

Closes #4912.
2023-06-06 09:09:44 -05:00
Chris Johns a83dc4a469 termios: Install <rtems/termiosdevice.h> 2023-06-05 11:49:30 +10:00
Sebastian Huber 0c3d6f58f1 termios: Add <rtems/termiosdevice.h>
Add <rtems/termiosdevice.h> which does not depend on <rtems/libio.h> to
provide rtems_termios_device_context and rtems_termios_device_handler.
For polled serial device drivers, this removes a header file dependency
to the full file system support.
2023-05-31 10:07:17 +02:00
Joel Sherrill 63415655e3 score/src/pheap*: Remove unreferenced methods
* _Protected_heap_Get_block_size
  * _Protected_heap_Iterate
  * _Protected_heap_Resize_block

Closes #4909.
2023-05-26 10:12:51 -05:00
Sebastian Huber bdb4bc436f arm: Use RTEMS_XCONCAT()
Prefer macros with a proper namespace.
2023-05-26 06:56:11 +02:00
Sebastian Huber 5da3ff47df arm/xilinx-zynq: Initialize debug console once 2023-05-26 06:56:11 +02:00
Sebastian Huber bc31fb65d2 arm/xilinx-zynq: Do not provide legacy API
The header file <rtems/irq.h> provides a legacy API.  Do not provide it
by default through <bsp/irq.h>.
2023-05-26 06:56:11 +02:00
Sebastian Huber da2b49e7b7 bsps/arm: Use interrupt entry for IPI
Avoid a dynamic memory allocation for the inter-processor interrupt.
2023-05-26 06:56:11 +02:00
Sebastian Huber eff408b64f bsps/arm: Use interrupt entry for clock driver
Avoid a dynamic memory allocation for the clock driver interrupt.
2023-05-26 06:56:11 +02:00
Sebastian Huber 363fafb780 bsps/arm: Use interrupt entry for <tm27.h>
Avoid a dynamic memory allocation for the <tm27.h> interrupts.  Replace
assert() with _Assert().
2023-05-26 06:56:11 +02:00
Sebastian Huber 49720a90d8 arm/xilinx-zynq: Improve Doxygen file comments 2023-05-26 06:56:11 +02:00
Sebastian Huber ebe4224dce bsps/arm: Improve Doxygen groups 2023-05-26 06:56:11 +02:00
Sebastian Huber f69326d0c2 bsps: Improve Doxygen file comments 2023-05-26 06:56:11 +02:00
Sebastian Huber 991919da3b arm: Improve Doxygen file comments 2023-05-26 06:56:11 +02:00
Sebastian Huber eb299786c6 rtems: Document scheduler configuration API 2023-05-24 14:58:59 +02:00
Sebastian Huber 3c1e264db6 smptests: Print proper end of test message
Make sure that the end of test message is not mixed up with other test
output.
2023-05-23 14:19:13 +02:00
Kinsey Moore 6bc3ad3ed4 libdl: Add support for LDST128_ABS_LO12_NC 2023-05-22 08:55:47 -05:00
Christian Mauderer 6f034c18e8 imx_iomux: Don't set reserved bits in PAD_CTL
On most i.MX* the upper bits in SW_PAD_CTL are reserved. On some chips,
like the i.MXRT1166, they are a domain write protection. Setting them to
1 can have unexpected side effects.

The device tree uses these bits for some flags. Make sure that they are
not accidentally written to some value.
2023-05-22 09:45:42 +02:00
Christian Mauderer 2fdd1d0246 bsps/imxrt: Make the OCRAM address configurable
Depending on the chip variant, the OCRAM can have different addresses.
Make it configurable.
2023-05-22 09:45:42 +02:00
Christian Mauderer 97819b8a31 bsps/imxrt: Move board specific files
Move the files that are board specific and not specific to the chip
family into a separate folder.
2023-05-22 09:45:42 +02:00
Christian Mauderer c1a949745f bsps/imxrt: Make chip start code chip specific
Some parts of the startup code don't apply for all chips. Make that part
chip specific.
2023-05-22 09:45:42 +02:00
Christian Mauderer dd68ed6075 bsps/imxrt: Support more chip variants in header
The different variants of the i.MXRT have some minimal differences in
the fsl_flexspi_nor_config.h. Make sure that the header supports the
different chips.
2023-05-22 09:45:42 +02:00
Christian Mauderer d941dd0dad bsps/imxrt: Remove unmaintained defines
The defines for the different clock frequencies in the
fsl_clock_config.h do not represent the clock frequencies that have been
set up in the registers. Remove them to avoid someone trusting in
correct values.
2023-05-22 09:45:42 +02:00
Christian Mauderer bb2e2d0c30 bsps/shared: Fix header for fsl-edma
If a different chip variant is used in the i.mxrt BSP, a different
header would have to be included. Make sure that the fsl-edma driver
uses a header that doesn't have to be adapted.
2023-05-22 09:45:42 +02:00
Christian Mauderer 5e78c76c79 bsps/imxrt: Get clock for IMXRT11xx in drivers
The mcux_sdk has a different interface for getting the clock for
IMXRT11xx than for getting it in IMXRT10xx. Adapt simple drivers to
support that interface.
2023-05-22 09:45:42 +02:00
Christian Mauderer f3df09352c bsps/imxrt1052: PLL config based on speed grade 2023-05-22 09:45:42 +02:00
Christian Mauderer f467635161 bsps/imxrt: Adapt to new mcux-sdk version
Remove the old NXP MCUXpresso SDK and adapt the BSP so that it uses the
new mcux-sdk.
2023-05-22 09:45:36 +02:00
Christian Mauderer 4cb2b07402 bsps/imxrt: (Re-)Apply RTEMS patches to new lib
Reapply patches used in the old version of the NXP library and apply
patches necessary for the new version of the library.
2023-05-22 09:43:48 +02:00
Christian Mauderer 38ad41ecce bsp/imxrt: Update support library from mcux-sdk
This imports new files from the mcux-sdk support library. NXP now offers
the library as a git repository instead of a zip package. The git
repository supports multiple CPUs from the i.MXRT family:

  https://github.com/nxp-mcuxpresso/mcux-sdk.git

The imported files are from revision

  2b9354539e6e4f722749e87b0bdc22966dc080d9

This revision is the same as MCUXpresso 2.13.0 with small bug fixes.

For importing the files, a script has been used, that parses the
mcux-sdk cmake files and creates the yaml files for RTEMS:

https://raw.githubusercontent.com/c-mauderer/nxp-mcux-sdk/d21c3e61eb8602b2cf8f45fed0afa50c6aee932f/export_to_RTEMS.py
2023-05-22 09:43:48 +02:00