chore: bump lib/fprime-zephyr to fprime-zephyr#26 head (CI validation only, do not merge) - #506
Closed
Mikefly123 wants to merge 6 commits into
Closed
chore: bump lib/fprime-zephyr to fprime-zephyr#26 head (CI validation only, do not merge)#506Mikefly123 wants to merge 6 commits into
Mikefly123 wants to merge 6 commits into
Conversation
Temporarily re-pins the fprime-zephyr submodule to fix/uspradio-integration-c123 (fa2be9b, Open-Source-Space-Foundation/fprime-zephyr#26) to get a real build signal for the async-run-port + RX-reapply + comStatus-oneinflight fixes, since fprime-zephyr has no CI of its own. Not intended to merge as-is: fprime-zephyr#26 targets feat/usp-radio, not this repo's pin history. Revert this pin (or replace it with feat/usp-radio's post-merge head) once the fix lands and #439's pin is updated for real.
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
12 tasks
Follow-up to the previous pin bump: the initial validation run on this PR caught a real regression (rf_profile_matrix_test.py: BytesSent frozen on first TX after P0->P4/P5 -- the anomaly-B wedge signature). Root cause: the RX-reapply fix's rearmRx() call in deferredSetTxProfile clobbered the TX profile's modulation right after it was set, before any frame was sent. Fixed upstream in fprime-zephyr#26 by re-applying the TX profile immediately before every transmitPacket() call instead of relying on stale chip state. Re-running full CI to confirm.
Second follow-up: the previous fix (re-apply TX profile before every send) still reproduced the anomaly-B wedge on CI. Root cause: SET_TX_PROFILE was cycling the chip through TX->RX->TX config three times within milliseconds (its own eager TX apply, immediately overwritten by rearmRx()'s RX apply, then overwritten again by the per-TX apply moments later). fprime-zephyr#26 now drops the eager TX apply from SET_TX_PROFILE entirely -- it's redundant now that TX re-applies its own profile at send time -- cutting reconfiguration count from three back-to-back applies to two spread further apart. Re-running full CI to confirm.
Root cause of the prior two failing validation runs found: radio TX was permanently muted by a comStatus FAILURE parking Svc::ComQueue in WAITING, with the new one-in-flight guard suppressing the priming SUCCESS that used to recover it. fprime-zephyr#26 now never reports FAILURE (matching TxOutcomePolicy's existing rule) and never records a comStatus debt for one. Re-running full CI.
Run 4 result: integration-uart PASSED (incl. test_08 wedge kill recipe) -- the comStatus FAILURE-park fix worked. integration-radio still failed because applyProfile() logged ProfileChanged on the two per-frame call sites, producing two ACTIVITY_HI events per transmitted frame; at P0's 2.73 kbps that saturates the downlink and starves command acks. fprime-zephyr#26 now gates that logging to operator-visible changes only. Re-running full CI.
The new host UT harness caught a regression the HWIL suite could not: rearmRx() armed the COMMITTED RX profile instead of the pending one, making SET_RX_PROFILE a no-op on hardware (chip stayed on the old profile while telemetry reported the new one, and no frame could ever confirm the change). Fixed in fprime-zephyr#26. Re-running CI to confirm no HWIL regression.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
CI-validation-only PR — not intended to merge as-is.
Temporarily re-pins
lib/fprime-zephyrtofa2be9b(Open-Source-Space-Foundation/fprime-zephyr#26,fix/uspradio-integration-c123) to get a real build signal for three safety fixes toZephyr::UspRadio:runport (wassync, raced the component thread on RX-profile revert)FW_ASSERT/boot-loop via the documented TRANSMIT-DISABLED deaf-recovery lever)fprime-zephyrhas no CI of its own, so this repo's build is the only way to compile-check that stack before it's reviewed.Base:
feat/usp-radio(#439), currently pinned at9e3bedc.Do not merge
Once fprime-zephyr#26 is reviewed and merged into its own
feat/usp-radio, this pin should be replaced by re-pointing at that post-merge head (or this PR closed and superseded), not merged as a standalone bump.🤖 Generated with Claude Code