Skip to content

Conversation

@mlvisaya
Copy link
Collaborator

@mlvisaya mlvisaya commented Jan 2, 2026

  • Due to the reduced mailbox size, the Caliptra FW and manifest should use an external staging area instead of mailbox fifo. To do this, the mailbox driver now wraps all mailbox commands in an ExternalMailboxReq.

  • The mailbox driver will use, as much as possible, DMA to transfer data from the application buffer to the external staging area. For this, the DMA HIL is passed to the mailbox driver. DMA HIL file is now moved to the runtime code instead of emulator

  • The external staging area to be used is 0xb00c_0000 mapped to the same FPGA memory address for the staging memory.

  • Also fixed the unnecessary endianess swap when reading from the emulator's external test sram peripheral

  • Speed up MboxSram read/write in the emulator by using block read/write instead of word read/writes. Note that fw update integ test is using MboxSram1 to stage MCU FW (this is different from Mailbox payload staging area)

  • Due to upgrade in Caliptra-sw dependency, some of the crypto APIs have changed and also updated here. The example-app stack has been increased to accommodate increase certificate size.

@mlvisaya mlvisaya marked this pull request as ready for review January 5, 2026 18:33
@mlvisaya mlvisaya force-pushed the mlvisaya/fix-failing-fw-update-tests-2.1 branch from ad0f077 to ba97faf Compare January 7, 2026 18:52
@mlvisaya mlvisaya force-pushed the mlvisaya/fix-failing-fw-update-tests-2.1 branch 2 times, most recently from 10031de to 2788fb7 Compare January 9, 2026 00:37
- Due to the reduced mailbox size, the Caliptra FW and manifest should
use an external staging area instead of mailbox fifo. To do this, the
mailbox driver now wraps all mailbox commands in an ExternalMailboxReq.

- The mailbox driver will use, as much as possible, DMA to transfer data
from the application buffer to the external staging area. For this, the
DMA HIL is passed to the mailbox driver. DMA HIL file is now moved to
the runtime code instead of emulator

- The external staging area to be used is 0xb00c_0000 mapped to the same
FPGA memory address for the staging memory.

- Also fixed the unnecessary endianess swap when reading from the
emulator's external test sram peripheral

- Speed up MboxSram read/write in the emulator by using block read/write
instead of word read/writes. Note that fw update integ test is using
MboxSram1 to stage MCU FW (this is different from Mailbox payload
staging area)

- Due to upgrade in Caliptra-sw dependency, some of the crypto APIs have
changed and also updated here.
@mlvisaya mlvisaya force-pushed the mlvisaya/fix-failing-fw-update-tests-2.1 branch from 2788fb7 to 1e7db10 Compare January 9, 2026 00:47
Copy link
Collaborator

@helloxiling helloxiling left a comment

Choose a reason for hiding this comment

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

Looks good to me.

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.

3 participants