Commit Graph

871 Commits

Author SHA1 Message Date
Kinsey Moore
e8c5bba5bf arm/imxrt: Resolve missing prototype
This resolves a missing prototype by making a file used in the arm/imx
BSP family shared so that it can be used by the arm/imxrt BSP family to
provide the missing prototypes.
2025-08-06 14:58:49 +00:00
Joel Sherrill
b40fba2686 spec/build/*.yml: Add contrib/.../uuid and contrib/.../utf8proc
This addition is needed to account for utf8proc and uuid moving
from cpukit/include to contrib. Both include directories need
to stay globally available.
2025-08-05 13:42:49 +00:00
Joel Sherrill
56c5c935b3 spec/build/bsps/arm/lm3s69xx/tstlm4f120.yml: Add psxaio0[4-6]
These tests were too large for this BSP.
2025-08-05 13:20:19 +00:00
Amar Takhar
3fcf78156d cpukit: Remove utf8proc and add to build
This also moves the header from <utf8proc/utf8proc.h> to <utf8proc.h>  This
follows what the upstream project uses and keeps us from having to modify
upstream source to put it in a subdirectory.
2025-07-31 18:07:34 -05:00
Amar Takhar
e9870fa74f cpukit: Remove uuid and add to build
Did the best I could handling the location of uuid.h
2025-07-31 18:01:42 -05:00
Amar Takhar
3d8ad5c50c cpukit: Delete xz and add to build
No special instructions.
2025-07-31 17:51:28 -05:00
Amar Takhar
9ff0fd6f5b cpukit: Delete zlib and add to build
Includes had to be added to jffs2 and cpukit.
2025-07-31 17:51:28 -05:00
Amar Takhar
fb1ef66175 cpukit: Remove FastLZ and add to build.
This moves the files to contrib/cpukit/fastlz
2025-07-31 17:51:28 -05:00
Amar Takhar
d75cfcb52f bsps: Delete stm32u5xx HAL
Also add new build locations and include directories.

This renames 4 files to their original names that had no changes:

stm32u5xx_hal_msp.c ->
  stm32u5xx_hal_msp_template.c

stm32u5xx_hal_timebase_rtc_wakeup.c ->
  stm32u5xx_hal_timebase_rtc_wakeup_template.c

stm32u5xx_hal_timebase_tim.c ->
  stm32u5xx_hal_timebase_tim_template.c

stm32u5xx_hal_timebase_rtc_alarm.c ->
  stm32u5xx_hal_timebase_rtc_alarm_template.c

There is one file left behind that will be sorted out in the future:

stm32u5/hal/system_stm32u5xx.c

It comes from

07b6fedf4b/Projects/NUCLEO-U575ZI-Q/Applications/ThreadX/Tx_LowPower/Src/system_stm32u5xx.c

As per Christian on Discord.
2025-08-01 08:43:29 +10:00
Amar Takhar
1110ef4303 bsps: Remove stm32h7xx_hal
These have now moved to:

contrib/bsps/arm/stm32h7/cmsis-device-h7
contrib/bsps/arm/stm32h7/stm32h7xx_hal_driver

Also add include directories to the build.
2025-08-01 08:43:29 +10:00
Joel Sherrill
54f8249915 bsps/mvme5500: Remove the BSP
MVME5500 was deprecated in 6 and will not be present in 7.
The Beatnik is recommended.

Updates rtems/rtos/rtems#4160
2025-07-24 22:00:04 -04:00
Mazen Adel Elmessady
d1f34a45cc testsuites/libtests: Added quick_exit tests
Added the tests for quick_exit() and
at_quick_exit() in textsuits/libtests/exit04
2025-07-24 20:50:43 -05:00
Joel Sherrill
a1c30b7f71 mghttpd: Remove Mongoose httpd
Users should migrate to Civitweb.

Closes #5304.
2025-07-24 20:09:59 -05:00
Sunil-Hegde
ecab84ce29 bsps/m68k: removed set_vector() prototypes
removed all set_vector() function prototypes from
all the respective bsp.h header files and removed
bsps/shared/start/setvec.c from respective .yml files.
2025-07-24 17:29:55 -05:00
Jacob Killelea
47802e7eb3 arm/raspberrypi: Specify an initial baud rate during startup
* Fixes #5256.

* Specify an initial baud rate to use during startup.
  After the PL011 code refactor in
  0f42153959, an initial baud rate
  is required. arm_pl011_first_open is called from boot_card and
  will fail without a baud rate specified. This can cause certain
  future uses of /dev/console, such as opening a shell, to fail.
2025-07-22 18:06:44 -07:00
Kinsey Moore
4fb0632a4e spec/aarch64/xen: Reorder includes to fix link
The opto* include must come before the bspopts include or else the flags
from the opto* include get dropped which causes librtemscpu to build
without the function and data sections flag which causes link-time
errors because unused sections cannot be dropped. The mechanism here
should be better understood, but this fixes the build errors.
2025-07-16 15:34:26 +00:00
Kinsey Moore
d280e4c655 spec/aarch64/xen: Add missing SMP support file
This adds a file that didn't get pulled into the SMP commit.
2025-07-16 15:34:26 +00:00
Sunil-Hegde
a8869154b4 bsps/nios2/nios2_iss: removed implementation of set_vector()
Deleted start/setvec.c and updated .yml file accordingly.
2025-07-14 17:15:36 -05:00
Christian Mauderer
16c706bafc bsps/stm32u5: Exclude from building dl13
This test requires ARM instruction support and causes build failures on
Thumb-only BSPs.

Updates #5289
2025-07-14 08:52:52 -05:00
Kinsey Moore
97f1ae9017 bsps/aarch64/xen: Add SMP support 2025-07-11 11:36:51 -05:00
Kinsey Moore
ec6566dee9 bsps/aarch64: Add Xen BSP 2025-07-11 11:36:51 -05:00
Kinsey Moore
dc0d3149e5 cpukit/aarch64: Refactor exception handling
This refactors the AArch64 exception handling to remove the mutable code
sections that are generally flagged as a bad idea by code analysis
tools. This also removes any casting between data pointers and function
pointers to avoid the need to use pragmas to disable warnings about such
casting.
2025-07-11 11:36:51 -05:00
Kinsey Moore
ad5a2be4c1 bsps/aarch64/start: Add support for Image protocol
This adds support for a the Image header protocol similar to the zImage
protocol that Linux kernels use to describe their expectations of the
system configuration.
2025-07-11 11:36:51 -05:00
Kinsey Moore
726a659eb0 spec: Move timer interrupt unmasking option
This moves the timer interrupt unmasking configuration option to make it
more available to other BSPs that might need it.
2025-07-11 11:36:51 -05:00
Sebastian Huber
93958bde18 libtests/malloc*: Disable compiler builtins
GCC 15 performs some optimizations based on compiler builtins which
break the tests.  Use -fno-builtin to disable the optimizations.
2025-07-06 22:54:22 -04:00
Joel Sherrill
d53db6e8b2 spec/build/bsps/arm/lm3s69xx/tstlm3s3749.yml: Add tests that are too big
mdosfsfsrename, mdosfsfsrenameexisting, mdosfsfsrenamelongname,
mdosfsfsrenamemaxlinks, and mdosfsfsrmdirparent are recently
added tests.
2025-07-04 14:07:55 -04:00
Sunil-Hegde
a899cdd57d bsps/sparc: Remove set_vector() usage and implementation
Removed all uses and implementations of set_vector() function across ERC32,
LEON2, and LEON3 BSPs. Replaced with rtems_interrupt_handler_install() and
rtems_interrupt_entry_install().

- Added ERC32_Clear_and_unmask_interrupt() and LEON_Clear_and_unmask_interrupt()
  for unmasking logic previously in set_vector().
- Deleted set_vector() definitions and implementations in each BSP.
- Updated related obj.yml files.
- Replaced set_vector() with rtems_interrupt_catch() in shared/gnatcommon.c.
2025-07-04 09:52:35 +05:30
Joel Sherrill
3e1a73d634 spec/build/bsps/arm/lpc24xx/tstlpc23xx.yml: Add tests that are too big
mdosfsfsrename, mdosfsfsrenameexisting, mdosfsfsrenamelongname,
mdosfsfsrenamemaxlinks, and mdosfsfsrmdirparent are recently
added tests.
2025-07-03 21:28:45 -04:00
Joel Sherrill
0f505c2b2b spec/*/bsps/aarch64/*ilp32*: Add -Wno-deprecated
Without -Wno-deprecated, every file compiled gives a warning
for the ilp32 being deprecated.
2025-07-03 18:40:06 -05:00
Joel Sherrill
925405f3ad spec/build/cpukit/optsmp.yml: Update list of SMP BSPs
The list formerly included the erc32 and pc386 varants which do not
support multi-core. Added the pc386 variants which include the
support necessary for multi-core.
2025-07-03 09:32:14 -05:00
Matt Joyce
d735d4459c bsps/stm32u5-grisp-nano: New BSP
This BSP supports a custom STM32U5 based board. It uses a similar
structure like the existing STM32H7 BSP and therefore should be well
adaptable to other boards.

Co-authored-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-07-02 23:41:01 -04:00
Bhavya Shah
e618b20215 imfs/imfs_statvfs: Added the statvfs functionality to IMFS module
- Modified the psximfs01 test to validate the functionality
- Modified the IMFS_fs_info_t keeping the jnode counter
- Added imfs_statvfs.c which sets the statvfs struct fields for imfs
2025-07-01 09:16:31 -05:00
ShaunakKDatar
fb1d9c8aca bsp/aarch64/raspberrypi: Add I2C Support
- Implements polling-based I2C communication.
- Supports three independent I2C master controllers.
- Adds support for 10-bit addressing mode.
2025-06-25 23:42:14 +05:30
Shaunak Datar
d4755476bc bsp/aarch64/raspberrypi4: Add PWM peripheral support
This commit adds support for the PWM peripheral on the aarch64/raspberrypi BSP.
2025-06-20 20:53:28 +05:30
Joel Sherrill
734208a49b bsp/shared/atomics: New directory
Provide missing GCC atomics helpers as part of BSPs where GCC
does not know how to provide it since the CPU's ISA has no
atomic instructions. The implementation provided in
bsps/shared/atomics/__atomic_test_and_set.c should work
on any single core CPU.

The BSPs that need thie function tend to have older cores. This
is the list of BSPs:

arm - csb336, csb337, csb637, edb7312, gumstix, kit637_v6, lpc24xx_ea,
  lpc24xx_ncs_ram, lpc24xx_ncs_rom_ext, lpc24xx_ncs_rom_int,
  lpc24xx_plx800_ram, lpc24xx_plx800_rom_int, lpc32xx_mzx,
  lpc32xx_mzx_stage_1, lpc32xx_mzx_stage_2, lpc32xx_phycore,
  rtl22xx, rtl22xx_t, smdk2410
m68k - av5282, mcf5329
mips - jmr3904
moxie - moxiesim
nios2 - nios2_iss
riscv - grv32i, grv32im, niosvc10lp, noel32im, rv32i, rv32im,
sparc - ut699
2025-06-19 23:30:57 +00:00
Joel Sherrill
4106647891 bsps/arm/*: Add linker args to specify __sync_synchronize variant
GCCC 14 introduced a linking warning about not knowing which
__sync_synchronize implementation to use. The BSPs impacted
are updated in this commit. The suggested correction is to
use -specs to pick up a GCC specific specs file which changes
__sync_synchronize to the desired implementation
__sync_synchronize_MECHANISM. Using this solution ties
the code to GCC 14+ since the spec files are not in GCC 13.
This solution maps __sync_synchronize to a RTEMS specific
__sync_synchronize implementation which avoids using of a
GCC extension and requiring GCC 14+,

Closes #5268
2025-06-19 22:58:18 +00:00
Kinsey Moore
4848d7ab73 aarch64/raspberrypi4: Perform reset using watchdog
This updates the AArch64 Raspberry Pi BSP to use the watchdog to perform
the system reset instead of attempting to use the PSCI reset which isn't
present on the Raspberry Pi platform.
2025-06-10 21:25:35 -05:00
Kinsey Moore
ecaa780c85 spec/aarch64/raspberrypi: Rework linker script
This reworks the linker script configuration to be more comprehensible
and to remain within the 1GB guaranteed available on all Pi4 systems and
accounting for the memory dedicated to the GPU and the memory dedicated
to the low level firmware.
2025-06-10 21:25:35 -05:00
Mohd Noor Aman
7f30da6ec4 bsps/aarch64/raspberrypi: Add SMP Support 2025-06-10 21:25:35 -05:00
Amar Takhar
8bf1511496 yamlfmt: Format all yaml files
yamlfmt will become a hard error as our files are already clean except for these
minor issues.
2025-06-07 11:58:28 -04:00
Amar Takhar
c87906d13c m68k/uC5282: Fix typo in spcxx01
Introduced in !433

Refs #5259
2025-06-07 11:48:31 -04:00
Joel Sherrill
968a7af3c1 m68k/uC5282: Disable spcxx01
Disable this test until issue #5217 is resolved.

Updates #5230
2025-06-05 23:37:15 +00:00
mez3n
528095cd24 cpukit/rtems: add rtems_barrier_get_number_waiting()
Closes rtems/programs/gsoc#9
Added rtems_get_number_waiting according to the issue
rtems/programs/gsoc#9, including tests and documentation.
2025-05-12 17:00:14 +00:00
Jeremy Lorelli
0017330fc6 spec: Remove missing headers from m68k BSPs
These headers were removed in b30d88cb87
2025-05-09 15:37:47 -07:00
Matteo Concas
7205078179 spec: Install missing header files for GRLIB and SPARC
The following files will be installed during SPARC/GRLIB builds:
- bsps/include/grlib/apbuart-regs.h
- bsps/include/grlib/gptimer-regs.h
- bsps/include/grlib/irqamp-regs.h
- bsps/sparc/include/grlib/io.h

Fix issue #5231
2025-03-25 16:04:40 +01:00
Joel Sherrill
9e05cd72c5 mvme147s: Remove as obsoleted
Updates #5031
2025-03-13 06:12:15 +00:00
Joel Sherrill
807584adfd m68k/shared/fpsp: Remove obsolete m68040 FP Support Code
The Motorola MC68040 did not completely implement IEEE754 in hardware.
The FPSP code was required to complete the support. With no more
MC68040 BSPs in RTEMS, this code can be removed.

Updates #5031
2025-02-12 12:51:58 -06:00
Chris Johns
8d78a68ece Revert "build: Provide LDFLAGS for pkg-config"
This reverts commit 237570e605
2025-02-11 05:49:15 +00:00
Joel Sherrill
5a9484e6cb m68k/mvme147: Remove obsolete BSP family
Updates #5031
2025-02-10 08:49:24 -06:00
Sebastian Huber
237570e605 build: Provide LDFLAGS for pkg-config
Some pkg-config variants perform transformations on the --libs options.
This may lead to completely broken linker options.  Provide the LDFLAGS
as a variable.  Remove "Ldflags:" since this is an unsupported field.

Update #5169.
2025-02-07 12:13:18 -06:00