RTEMS | bsps/riscv: Update NOEL BSPs (!1471)
Matteo Concas (@matteo.concas)
gitlab at rtems.org
Fri Sep 4 14:19:22 UTC 2026
Matteo Concas created a merge request: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1471
Project:Branches: matteo.concas/rtems-gaisler:matteo/new-noel-bsp to rtems/rtos/rtems:main
Author: Matteo Concas
## Summary
Update the NOEL BSPs
The initial NOEL BSPs used DTBs and as such could not support the driver manager or the GRLIB drivers.
This new BSP uses PnP scanning to discover devices present in the system. It can use the driver manager and all GRLIB drivers.
The new BSPs are the following:
* Four generic BSPs corresponding to the standard NOEL-V configurations which can be found in the [GRLIB IP Core User Manual](https://download.gaisler.com/products/GRLIB/doc/grip.pdf#G114.1184991), section 116.1.1: noelgp32 & noelgp64 (CFG=0x30x), noelmcl32 & noelmcl64 (CFG=0x28x)
* A GR765 BSP that corresponds to the Gaisler GR765 SoC (Octa-core 64bit RISC-V). For more information on the GR765, see https://www.gaisler.com/products/gr765
* A GR801 BSP that corresponds to the Gaisler GR801 SoC (Unicore 64bit RISC-V with a neuromorphic processing engine). For more information on the GR801, see https://www.gaisler.com/products/gr801
## Test results
The RTEMS testsuite was run on [TSIM GR765](https://www.gaisler.com/products/tsim3-gr765) with the UC and SMP configurations:
```ini
[DEFAULT]
RTEMS_POSIX_API = True
RTEMS_DRVMGR_STARTUP = True
```
Most of the test failures are explained by a higher TLS size than expected. I believe the TLS comes from the driver manager
<details>
<summary>GR765 UC Test Results</summary>
```
Passed: 644
Failed: 12
User Input: 4
Expected Fail: 25
Indeterminate: 0
Benchmark: 3
Timeout: 5
Test too long: 1
Invalid: 1
Wrong Version: 0
Wrong Build: 0
Wrong Tools: 0
Wrong Header: 0
------------------
Total: 695
Failures:
psx09.exe -> Asking for CPU 1 in UC configuration
sp01.exe -> TLS due to driver manager
sptls01.exe -> TLS due to driver manager
sptls03.exe -> TLS due to driver manager
ts-fatal-idle-thread-create-failed.exe -> INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALL
ts-fatal-init-task-construct-failed.exe ->INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALL
ts-performance-no-clock-0.exe -> RTEMS_INVALID_SIZE
ts-fatal-extension.exe -> False positive
ts-validation-1.exe -> INTERNAL_ERROR_TOO_LARGE_TLS_SIZE
ts-validation-acfg-0.exe -> INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALL
ts-validation-acfg-1.exe -> INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALL
ts-validation-one-cpu-1.exe -> INTERNAL_ERROR_TOO_LARGE_TLS_SIZE
User Input:
dl10.exe
monitor.exe
termios.exe
top.exe
Expected Fail:
dl06.exe
fatfs_fsrenameexisting.exe
fatfs_fsrenamemaxlinks.exe
imfs_fsrenameexisting.exe
imfs_fsrenamepermexisting.exe
imfs_fssymlink.exe
jffs2_fsrenameexisting.exe
jffs2_fsrenamemaxlinks.exe
jffs2_fsrenamepermexisting.exe
jffs2_fssymlink.exe
jffs2nand_fsrenameexisting.exe
jffs2nand_fsrenamemaxlinks.exe
jffs2nand_fsrenamepermexisting.exe
jffs2nand_fssymlink.exe
mdosfs_fsrenameexisting.exe
mdosfs_fsrenamemaxlinks.exe
mimfs_fsrenameexisting.exe
mimfs_fsrenamemaxlinks.exe
mimfs_fsrenamepermexisting.exe
mimfs_fssymlink.exe
mrfs_fsrenameexisting.exe
mrfs_fsrenamelongname.exe
mrfs_fsrenamemaxlinks.exe
mrfs_fsrenamepermexisting.exe
mrfs_fssymlink.exe
Benchmark:
dhrystone.exe
linpack.exe
whetstone.exe
Timeouts:
crypt01.exe
fsdosfsformat01.exe
sp54.exe
spconsole01.exe
tmtimer01.exe
Test too long:
spcontext01.exe
Invalid:
spstkalloc02.exe
Average test time: 0:00:02.092791
Testing time : 0:24:14.489730
```
</details>
<details>
<summary>GR765 SMP Test Results</summary>
```
Passed: 707
Failed: 13
User Input: 4
Expected Fail: 25
Indeterminate: 0
Benchmark: 3
Timeout: 12
Test too long: 1
Invalid: 1
Wrong Version: 0
Wrong Build: 0
Wrong Tools: 0
Wrong Header: 0
------------------
Total: 766
Failures:
sp01.exe
sptls01.exe
sptls03.exe
ts-fatal-idle-thread-create-failed.exe
ts-fatal-init-task-construct-failed.exe
ts-fatal-start-on-not-online-processor.exe
ts-performance-no-clock-0.exe
ts-fatal-extension.exe
ts-validation-1.exe
ts-validation-acfg-0.exe
ts-validation-acfg-1.exe
ts-validation-one-cpu-1.exe
ts-validation-smp-only-2.exe
User Input:
dl10.exe
monitor.exe
termios.exe
top.exe
Expected Fail:
dl06.exe
fatfs_fsrenameexisting.exe
fatfs_fsrenamemaxlinks.exe
imfs_fsrenameexisting.exe
imfs_fsrenamepermexisting.exe
imfs_fssymlink.exe
jffs2_fsrenameexisting.exe
jffs2_fsrenamemaxlinks.exe
jffs2_fsrenamepermexisting.exe
jffs2_fssymlink.exe
jffs2nand_fsrenameexisting.exe
jffs2nand_fsrenamemaxlinks.exe
jffs2nand_fsrenamepermexisting.exe
jffs2nand_fssymlink.exe
mdosfs_fsrenameexisting.exe
mdosfs_fsrenamemaxlinks.exe
mimfs_fsrenameexisting.exe
mimfs_fsrenamemaxlinks.exe
mimfs_fsrenamepermexisting.exe
mimfs_fssymlink.exe
mrfs_fsrenameexisting.exe
mrfs_fsrenamelongname.exe
mrfs_fsrenamemaxlinks.exe
mrfs_fsrenamepermexisting.exe
mrfs_fssymlink.exe
Benchmark:
dhrystone.exe
linpack.exe
whetstone.exe
Timeouts:
crypt01.exe
fsdosfsformat01.exe
smpload01.exe
smpmigration01.exe
smpmigration02.exe
smpmrsp01.exe
smpswitchextension01.exe
sp54.exe
spconsole01.exe
tmtimer01.exe
ts-fatal-smp.exe
ts-validation-no-clock-0.exe
Test too long:
smplock01.exe
Invalid:
spstkalloc02.exe
```
</details>
## Generative AI
Claude Sonnet 5.1 was used to review my changes, prompt:
> Review the seven commits on the `matteo/new-noel-bsp` branch
<!-- Default settings, if it is a dropdown it will set after submission -->
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1471
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/sent_notifications/5-2ug3ep4dl66igbs0xeyi2u8f7-1d/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20260904/d35c8e70/attachment-0001.htm>
More information about the bugs
mailing list