Skip to content

Migrate renode test to new container#754

Merged
dgarske merged 4 commits intowolfSSL:masterfrom
danielinux:fix-renode-test
Apr 29, 2026
Merged

Migrate renode test to new container#754
dgarske merged 4 commits intowolfSSL:masterfrom
danielinux:fix-renode-test

Conversation

@danielinux
Copy link
Copy Markdown
Member

  • fix nRF52 UART

Copilot AI review requested due to automatic review settings April 16, 2026 19:17
@danielinux danielinux marked this pull request as ready for review April 16, 2026 19:25
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates Renode-based CI tests to a prebuilt GHCR container image and hardens the Renode update test harness, while also adjusting nRF52 UART TX handling.

Changes:

  • Switch Renode CI to pull/run a GHCR-hosted Renode image and add GHCR login/permissions in Renode workflows.
  • Improve Renode update test robustness with UART/renode startup timeouts and log capture.
  • Adjust nRF52 UART/UARTE initialization and TX buffer handling.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
tools/test-expect-version/test-expect-version.c Adjusts Linux-only includes used by the UART version probe tool.
tools/scripts/renode-test-update.sh Adds timeouts, readiness checks, and Renode logging for more reliable automated Renode update testing.
tools/renode/docker-test.sh Moves from building a local Docker image to pulling/running a GHCR image for Renode tests.
hal/nrf52.c Updates nRF52 UART/UARTE enable value and uses a static TX buffer for EasyDMA TX.
.github/workflows/test-x86-fsp-qemu.yml Adds apt mirror workaround + retry options to stabilize package installation.
.github/workflows/test-build-kontron-vx3060-s2.yml Adds apt mirror workaround + retry options to stabilize package installation.
.github/workflows/test-renode-smallstack.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-sha384.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-sha3.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-nrf52.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-noasm.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-noasm-smallstack.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-fastmath.yml Adds GHCR permissions + login for pulling the Renode container.
.github/workflows/test-renode-fastmath-smallstack.yml Adds GHCR permissions + login for pulling the Renode container.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/test-x86-fsp-qemu.yml Outdated
Comment thread .github/workflows/test-build-kontron-vx3060-s2.yml Outdated
Comment thread hal/nrf52.c
Comment thread tools/renode/docker-test.sh Outdated
Comment thread tools/renode/docker-test.sh Outdated
Comment thread tools/renode/docker-test.sh Outdated
@danielinux danielinux assigned danielinux and unassigned wolfSSL-Bot Apr 16, 2026
hal/nrf52.c:
- Use static volatile buffer for UARTE DMA source instead of stack
  variable address. GCC 15.2 with -Os optimized away the store to the
  stack slot, causing the DMA to read zeros.
- Set UART0_ENABLE to 4 (UARTE mode) per NRF52840 datasheet.

tools/test-expect-version/test-expect-version.c:
- Replace deprecated termio.h and linux/serial.h with sys/ioctl.h
  for compatibility with newer glibc.

tools/renode/docker-test.sh:
- Remove unused RENODE_CHECKOUT env var.

tools/scripts/renode-test-update.sh:
- Add robust UART wait functions with timeouts and liveness checks.
- Log Renode output to /tmp/renode.log for diagnostics on failure.
- Use run_expect_version helper with configurable timeout.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@dgarske dgarske merged commit e44e6b2 into wolfSSL:master Apr 29, 2026
371 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants