Skip to content

[RTL] Make lc_ctrl RAW unlock token a caliptra_ss_top input signal#782

Merged
ekarabu merged 6 commits intomainfrom
lowrisc_raw_unlock_token
Oct 3, 2025
Merged

[RTL] Make lc_ctrl RAW unlock token a caliptra_ss_top input signal#782
ekarabu merged 6 commits intomainfrom
lowrisc_raw_unlock_token

Conversation

@andreaskurth
Copy link
Contributor

@andreaskurth andreaskurth commented Oct 2, 2025

Before this change, lc_ctrl's RAW unlock token was defined in
lc_ctrl_state_pkg, which lives in the caliptra-rtl submodule
repository. This is problematic as integrators need to be able to
change the RAW unlock token but should not change the caliptra-rtl
repository.

This change makes the (hashed) RAW unlock token an input signal of
caliptra_ss_top and propagates the signal down to lc_ctrl.
Integrators can thus simply define the value of the RAW unlock token by
assigning a signal (which can be driven by a constant) to
caliptra_ss_top's cptra_ss_raw_unlock_token_hashed_i input.

The second commit removes the unused otp_ctrl_token_const module.

This doesn't yet change the RAW unlock token value and add guidance for integrators on how to do that. That will be done in a follow-up PR or commit, depending on the timeline.

This contributes to the resolution of Issue #687.

@ekarabu
Copy link
Collaborator

ekarabu commented Oct 2, 2025

There is a compile.yml error

@andreaskurth
Copy link
Contributor Author

andreaskurth commented Oct 2, 2025

There is a compile.yml error

Thx; let me resolve that. Actually, the way I understand the check it's OK if a MSFT contributor does it -- are you happy if I add myself to the list (Andi and Pascal are also on the list)? --> Done.

@andreaskurth andreaskurth force-pushed the lowrisc_raw_unlock_token branch from c740e04 to 35dbfa9 Compare October 2, 2025 17:37
@andreaskurth andreaskurth marked this pull request as ready for review October 2, 2025 17:51
moidx
moidx previously approved these changes Oct 2, 2025
This is required so that CI doesn't fail for the next two commits.
@martin-velay martin-velay force-pushed the lowrisc_raw_unlock_token branch 2 times, most recently from de87a4e to 430682b Compare October 3, 2025 12:13
Before this change, lc_ctrl's RAW unlock token was defined in
`lc_ctrl_state_pkg`, which lives in the `caliptra-rtl` submodule
repository.  This is problematic as integrators need to be able to
change the RAW unlock token but should not change the `caliptra-rtl`
repository.

This change makes the (hashed) RAW unlock token an input signal of
`caliptra_ss_top` and propagates the signal down to `lc_ctrl`.
Integrators can thus simply define the value of the RAW unlock token by
assigning a signal (which can be driven by a constant) to
`caliptra_ss_top`'s `cptra_ss_raw_unlock_token_hashed_i` input.
@ekarabu ekarabu merged commit ecd5cf2 into main Oct 3, 2025
8 checks passed
@ekarabu ekarabu deleted the lowrisc_raw_unlock_token branch October 3, 2025 19:40
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