Commit Graph

1405 Commits

Author SHA1 Message Date
Sebastian Huber
bcef89f236 Update company name
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
2023-05-20 11:05:26 +02:00
Alex White
9b7a1da804 bsps/microblaze: Add device tree support to GPIO 2023-05-19 12:32:18 -05:00
Alex White
59f9ed28d8 bsps/microblaze: Remove GPIO build system options
The number of GPIO devices along with each of their particular
configurations is application-specific. Encoding this information as
build options also introduced a lot of clutter.
2023-05-19 12:32:18 -05:00
Aaron Nyholm
94a7d17b09 aarch64/versal: Fix uart interrupt issues 2023-05-16 12:48:53 +10:00
Karel Gardas
bf53ff2de2 bsps/amd64: add a new EFI-based variant of AMD64 BSP
The new amd64efi BSP supports:
- multiboot2 boot format. Runs well with GRUB.
- console based on either EFI simple text output or GOP-based framebuffer
- clock based on EFI event/timer API
- early console using either hard-wired PC-AT serial or just memory buffer
- with EFI support disabled the BSP is more or less equivalent to amd64 BSP
  with multiboot2 support
2023-04-29 20:41:23 +02:00
Karel Gardas
8804422a48 bsps/shared: import FreeBSD libefi library
The library is imported in minimalist version just to support future
amd64efi BSP.

The FreeBSD tree commit id with imported libefi version is:
ce7b20e5129cf0f269951b313d336a9c7d54d790
2023-04-29 20:41:23 +02:00
Chris Johns
3e4fa73935 bsps/powerpc: Fix warnings with PPC_SPECIAL_PURPOSE_REGISTER 2023-04-24 09:13:45 +10:00
Maldonado, Sergio E. (GSFC-580.0)
fe6a5d0f7a bsps/microblaze: Fix UART transmit interrupt 2023-04-19 09:55:43 -05:00
Maldonado, Sergio E. (GSFC-580.0)
c627a13239 bsps/microblaze: Add support for multiple UARTs 2023-04-19 09:55:43 -05:00
Maldonado, Sergio E. (GSFC-580.0)
1fbfc4eeac bsps/microblaze: Allow copying FDT from U-Boot 2023-04-19 09:55:43 -05:00
Kinsey Moore
7e119562ae bsps/aarch64: Enable MMU during remaps
The MMU must be enabled during mapping changes and TLB invalidations.
When this is not the case, TLB updates do not occur correctly in all
cases. This is especially apparent when changing a block entry to a
table entry when remapping small memory ranges in an otherwise
contiguous block.
2023-04-18 08:28:35 -05:00
Chris Johns
407c87cd88 bsps/powerpc: Fix warnings with PPC_SPECIAL_PURPOSE_REGISTER 2023-04-11 14:55:02 +10:00
Chris Johns
25e1a11402 bsps/motorola_powerpc: Change defines from BSP names to avoid clash
- Change mvme2100 to mot_pcc_mvme2100 to avoid clashing with the
  RTEMS_BSP value for the BSP. You cannot have a define that is the
  BSP name.
2023-04-11 14:54:54 +10:00
Chris Johns
2138ce43c5 bsps/mvme2700: Add MVME2700 BSP 2023-04-06 08:41:16 +10:00
Sebastian Huber
675a741023 bsp/qoriq: Build VME Tundra Tsi148 driver 2023-04-05 14:24:39 +02:00
Sebastian Huber
e9127eeef4 bsps/vme: Remove quirk
printk() supports long long integers.
2023-04-05 14:21:49 +02:00
Sebastian Huber
64fe53cb51 bsps/vme: Include missing header file 2023-04-05 14:19:07 +02:00
Sebastian Huber
32fe5724a8 bsps: Mark argument as unused
Update #4862.
2023-04-05 14:18:12 +02:00
Alan Cudmore
26853a0624 bsps/riscv: add riscv/kendrytek210 BSP variant source changes
This patch adds support for the Kendryte K210 RISC-V BSP variant.
The SoC uses the existing Interrupt Controller, Timer, and console UART.
It only needs SoC specific initialization and an embedded device tree binary
similar to the polarfire SoC BSP.

Updates #4876
2023-03-28 14:04:04 -05:00
Alan Cudmore
ca1c4e70f5 bsps/riscv: add device tree source and device tree blob header for k210 bsp variant
This patch adds the k210 device tree source and the corresponding
device tree blob encoded in the header which is used for the
embedded device tree blob for the Kendryte K210 BSP variant.

Updates #4876
2023-03-28 14:04:04 -05:00
Kinsey Moore
7163014e3f bsps/xqspipsu: Add support for reading ECC
This adds a helper function to read the ECC status for an ECC unit in
SPI-attached NOR memory.
2023-03-22 13:30:08 -05:00
Kinsey Moore
ddafdfe9ba bsps/zynqmp: Use correct include path
The existing include path only works from inside the RTEMS build. This
fixes the include path to work both in the RTEMS build and with builds
of external apps since this file gets installed with the BSP.
2023-03-22 13:30:07 -05:00
Sebastian Huber
a60b816fa7 bsps/arm: Fix wording 2023-03-17 07:25:34 +01:00
Sebastian Huber
11cc51ef27 bsps/riscv: Use per-CPU mtimecmp in clock driver
Use the mtimecmp from the PLIC/CLINT initialization in the clock driver.  This
register is defined by the device tree and does not assume a fixed mapping.
2023-03-17 07:25:34 +01:00
Sebastian Huber
cbddf5decd bsps/riscv: Fix riscv_get_hart_index_by_phandle()
Take a non-zero RISCV_BOOT_HARTID into account.
2023-03-17 07:25:34 +01:00
Sebastian Huber
e5233057be bsps/riscv: Make SMP start more robust
In SMP configurations, check that we run on a configured processor.  If not,
then there is not much that can be done since we do not have a stack available
for this processor.  Just loop forever in this case.  Do this in assemlby to
ensure that no stack memory is used.
2023-03-17 07:25:23 +01:00
Karel Gardas
139bc390b5 score/arm: enhance ARMV7M MPU setup with capability to set control register
Due to API change, the patch also fixes affected BSPs and uses
value provided by MPU CTRL spec option there.

Sponsored-By:	Precidata
2023-03-16 15:40:22 +01:00
Kinsey Moore
caffdc4dab bsps/zynqmp: Add JFFS2 NAND adapter
This adds the glue code necessary to allow JFFS2 to operate on top of
NAND memory hosted by the XNandPsu peripheral/driver.
2023-03-15 13:29:12 -05:00
Kinsey Moore
10ff982834 bsps/xnandpsu: Allow use of both chip selects
By default, the Xilinx NAND driver does not probe the second chip
select. This alteration allows the second half of chips to be
detected when present.
2023-03-15 13:29:12 -05:00
Alex White
725e5ce27f bsps/microblaze: Add AXI GPIO driver 2023-03-14 09:29:16 -05:00
Karel Gardas
1a4e78b3a0 bsps/stm32h7: fix propagation of configured HSE freq. value into the code
Sponsored-By:	Precidata
2023-03-10 16:18:32 +01:00
Kinsey Moore
d08dfc3d63 bsps/aarch64: Disable interrupts during MMU remap
Interrupts must be disabled during MMU remapping since the majority of
RTEMS including interrupts expects normal memory mapping semantics such
as unaligned accesses.
2023-02-27 12:31:48 -06:00
Karel Gardas
673d7861e3 bsps/beagle: fix warning on possibly uninitialized clock control in pwmss. 2023-02-18 23:00:05 +01:00
Karel Gardas
4600dd1d2f bsps/beagle: fix warning on missing cast 2023-02-18 23:00:05 +01:00
Karel Gardas
14026f6b10 bsps/beagle: do not set values already set by spec file(s).
The patch fixes few symbol already defined warnings here.
2023-02-18 23:00:05 +01:00
Sebastian Huber
bb465c8548 doxygen: Add Doxygen files to a group
Update #3707.
2023-02-16 08:27:09 +01:00
Kinsey Moore
2a6aaf87bd bsps/aarch64: Fix off-by-one cache bug
The whole cache invalidation and flushing functions only ended up
flusing the first N-1 levels of cache due to an off by one error. This
resovles that issue and makes consistent the usage of levels as they
relate to caching.
2023-02-14 08:33:53 -06:00
Kinsey Moore
b44e26baa7 bsps/aarch64: Flush cache before disabling MMU
To ensure data consistency, the cache much be flushed before disabling
the MMU. When the MMU is disabled, all accesses are treated as
non-cachced and thus will bypass the cache.
2023-02-14 08:33:52 -06:00
Sebastian Huber
b993111594 bsp/leon3: Move SMP data to start.S
The LEON3_Boot_Cpu global object is only used by start.S.  Move the definition
of this object to start.S and use a local symbol .Lbootcpuindex for it.

Use a compare-and-swap instruction to assign the boot CPU.  This allows a
concurrent initialization.

Close #4845.
2023-02-10 16:15:52 +01:00
Sebastian Huber
519e288a96 bsps/irq: Clarify interrupt vector operations
Clarify that the presence of error conditions is
implementation-defined.

Close #4843.
2023-02-10 16:14:11 +01:00
Kinsey Moore
c0fad60c59 bsps/xil: Import full xil_exception.h
This imports the full xil_exception.h instead of an empty stub. This is
required for some Xilinx drivers. The imported files adhere to the
current VERSION file.
2023-02-08 14:11:47 -06:00
Kinsey Moore
d9f3dcba10 bsps/xil: Make sleep.h a stub
This makes xil/sleep.h a stub to prevent multiple differing definitions
of sleep functions from toolchain and local headers. The non-standard
sleep definitions were not in use and can be added later if needed.
2023-02-08 14:11:47 -06:00
Ryan Long
9d5354e897 bsps/microblaze: Add device tree support to UART Lite 2023-02-06 14:29:24 -06:00
Ryan Long
3fd8cf2d37 bsps/microblaze: Add device tree support to JFFS2 QSPI 2023-02-06 14:29:24 -06:00
Ryan Long
cbac78afa9 bsps/microblaze: Add device tree support to AXI interrupt controller 2023-02-06 14:29:24 -06:00
Alex White
eb94aaff1d bsps/microblaze: Add device tree support to timer 2023-02-06 14:29:24 -06:00
Alex White
63b21ad5e0 bsps/microblaze: Add device tree getter
This allows drivers to read configuration data from the device tree if
the BSP is built with device tree support.
2023-02-06 14:29:24 -06:00
Karel Gardas
f16b8fc32a bsps/stm32h7: allow config and usage of QSPI memory on stm32h757i-eval BSP
The QSPI memory is initialized and used only when the BSP configure file
sets QSPI memory size to non-zero value. Currently QSPI is run in memory
mapped mode which allows future RTEMS binary linkage and upload into QSPI
memory.

Sponsored-By:	Precidata
2023-02-05 20:42:24 +01:00
Karel Gardas
d068cdb384 bsps/stm32h7: import stm32h757i-eval QSPI memory high-level driver 2023-02-05 20:42:24 +01:00
Karel Gardas
f9169dca69 bsps/stm32h7: import MT25TL01G QSPI memory low-level driver 2023-02-05 20:42:24 +01:00