Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[cherrypick, rom, rom_ext] Re-arrange retention RAM #21587

Merged
merged 2 commits into from
Feb 23, 2024

Conversation

cfrantz
Copy link
Contributor

@cfrantz cfrantz commented Feb 20, 2024

Re-arrange the retention RAM as discussed in the SW WG meeting on
2024-02-13:

Locate the boot_svc message first, followed by reserved space, followed
by the boot_log and last_shutdown_reason. This arrangement allows us
to grow the boot_svc message (growing "down" into the reserved space)
if needed and to add additional fields at the end (growing "up" into
the reserved space).

Also: name the ASCII code for boot log as BLOG instead of BOLG.

@cfrantz cfrantz requested a review from a team as a code owner February 20, 2024 18:30
@cfrantz cfrantz changed the title [rom, rom_ext] Re-arrange retention RAM [cherrypick, rom, rom_ext] Re-arrange retention RAM Feb 20, 2024
@moidx moidx removed the request for review from a team February 21, 2024 21:45
Re-arrange the RET-RAM to be more amenable to future expansions.

1. Expand the boot_log to 128 bytes.  Include the ROM_EXT version number
   and the nonce value required by owner-authenticated boot_svc commands.
2. Expand the boot_svc message size to 256 bytes.  Many of the future
   ownership transfer commands will be larger than the current size.
3. Re-order the retention-RAM layout.
   - Move the `last_shutdown_reason` immediately after the `reset_reason`.
   - Place `boot_log` after `last_shutdown_reason`.
   - Place the `boot_svc_msg` at the end of the creator portion of
     RET-RAM.

   This arrangement allows us to add additional items in the middle
   reserved portion of the struct and to optionally expand the
   boot_svc_msg to a larger size without disrupting the locations of any
   of the prior members.

Signed-off-by: Chris Frantz <cfrantz@google.com>
Re-arrange the retention RAM as discussed in the SW WG meeting on
2024-02-13:

Locate the boot_svc message first, followed by reserved space, followed
by the boot_log and last_shutdown_reason. This arrangement allows us
to grow the boot_svc message (growing "down" into the reserved space)
if needed and to add additional fields at the end (growing "up" into
the reserved space).

Also: name the ASCII code for boot log as `BLOG` instead of `BOLG`.

Signed-off-by: Chris Frantz <cfrantz@google.com>
@cfrantz cfrantz merged commit a87ae94 into lowRISC:master Feb 23, 2024
34 checks passed
cfrantz added a commit to cfrantz/opentitan that referenced this pull request Apr 2, 2024
A signing ceremony was performed to sign the following items:
- Personalization binaries.
- The ProdA, ProdC and SiVal ROM_EXTs.

The ROM_EXT contains the rescue protocol and the RET-RAM struct
re-arrangements from lowRISC#21587.

The binaries contained in this PR were built at git commit
39cf48b.

Signed-off-by: Chris Frantz <cfrantz@google.com>
cfrantz added a commit to cfrantz/opentitan that referenced this pull request Apr 2, 2024
A signing ceremony was performed to sign the following items:
- Personalization binaries.
- The ProdA, ProdC and SiVal ROM_EXTs.

The ROM_EXT contains the rescue protocol and the RET-RAM struct
re-arrangements from lowRISC#21587.

The binaries contained in this PR were built at git commit
39cf48b.

Signed-off-by: Chris Frantz <cfrantz@google.com>
timothytrippel pushed a commit that referenced this pull request Apr 3, 2024
A signing ceremony was performed to sign the following items:
- Personalization binaries.
- The ProdA, ProdC and SiVal ROM_EXTs.

The ROM_EXT contains the rescue protocol and the RET-RAM struct
re-arrangements from #21587.

The binaries contained in this PR were built at git commit
39cf48b.

Signed-off-by: Chris Frantz <cfrantz@google.com>
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.

None yet

5 participants