SIS | Emulate the GR740 interrupt map, adopt waf and REUSE (!13)
Sebastian Huber (@sebhub)
gitlab at rtems.org
Sat Sep 26 13:30:01 UTC 2026
Sebastian Huber created a merge request: https://gitlab.rtems.org/rtems/tools/rtems-sis/-/merge_requests/13
Project:Branches: sebhub/rtems-sis:up/gr740-irqmap to rtems/tools/rtems-sis:main
Author: Sebastian Huber
## Summary
The RTEMS GR740 BSP translates every interrupt through the interrupt map
registers of the IRQ(A)MP at offset 0x300. SIS decoded the IRQ(A)MP offset
with `addr & 0xff` and had no map registers. The BSP thus built its map from
zero or from other registers, and no clock tick reached it.
| Commit | Change |
| --- | --- |
| build: Replace autotools with waf | waf 2.1.9 replaces the generated autotools files and `build-aux/`. The readline check also tests the header. |
| tap: Rewrite the TUN device setup | removes a copy of the example of the Linux TUN/TAP document, which is GPL-2.0 only |
| Adopt the REUSE licensing conventions | adds SPDX tags, `LICENSES/` and `REUSE.toml`. `reuse lint` passes. |
| gr740: Map the full IRQMP register block | decodes the full 4 KiB block of the IRQ(A)MP |
| grlib: Emulate the IRQ(A)MP interrupt map | adds the eight map registers of GR740-UM-DS section 21.3.19, enabled for the GR740 only |
The REUSE commit names the origin of each imported file and of each file
which received a new header. `sparc.c` and `sparc.h` come from binutils-gdb
`sim/erc32/exec.c`. `br_add_interface()` in `tap.c` comes from bridge-utils
v1.6. Files without a comment header receive GPL-3.0-or-later, the license
of the project. Their holders come from `git blame`.
## Test
- Each commit builds with `./waf`. `reuse lint` passes from the REUSE commit on.
- The five GR740 reference binaries produce byte identical output under the
autotools build and the waf build.
- The RTEMS test suite of the GR740 BSP, RTEMS `e9d427c097d`, uni and SMP,
passes on SIS with this series. The one exception is
`ts-validation-intr.exe`. It fails because the BSP accepts vectors up to 63,
and the GR740 has only 32 bus interrupt lines. This is a defect of the BSP,
not of SIS.
**BSP** sparc/gr740 · **Simulator** SIS
## AI Details
<!-- Make sure you have read our statement at https://www.rtems.org/generative-ai/ -->
### Prompt used
None as a single prompt. The work was done in interactive Claude Code
sessions on the SIS tree. The tasks were to find why the GR740 BSP received
no clock tick on SIS, to replace the autotools build, and to make the
licensing of every file machine readable. Each change was directed and
reviewed.
### AI model used
Claude Opus 5.5 (claude-opus-5-5), through Claude Code.
### How AI was used for the contribution
- ( ) Formatting
- ( ) Test creation.
- (x) Code comments.
- ( ) The entire contribution was generated using AI
- ( ) AI code completion such as Copilot in VSCode.
The diagnosis, the implementation and the licensing research were produced
in those sessions under my direction, and the commit messages were drafted
there.
### Access
I have not used a product which claims copyright in its output, and I have
legitimate access to the one I used.
--
View it on GitLab: https://gitlab.rtems.org/rtems/tools/rtems-sis/-/merge_requests/13
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/namespace/15/sent_notifications/5-95dig1rseojeodmcyu8rfqqyz-f/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/20260926/de4d5733/attachment.htm>
More information about the bugs
mailing list