Skip to content

Add STM32V8 (Cortex-M85) hardware crypto family support - #11296

Merged
aidangarske merged 1 commit into
wolfSSL:masterfrom
dgarske:stm32v8
Sep 10, 2026
Merged

aidangarske merged 1 commit into
wolfSSL:masterfrom
dgarske:stm32v8

Conversation

@dgarske

@dgarske dgarske commented Aug 26, 2026

Copy link
Copy Markdown
Member

Description

Adds WOLFSSL_STM32V8 for ST's STM32V8 family. First STM32 on Armv8.1-M (Cortex-M85).

Testing

Validated on a NUCLEO-V873XJ, device ID 0x499.

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

@wolfSSL-Bot

Copy link
Copy Markdown

Can one of the admins verify this patch?

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR adds initial hardware-crypto family support for ST’s STM32V8 (Cortex‑M85 / Armv8.1‑M) by introducing the WOLFSSL_STM32V8 family macro and wiring it into the existing STM32 acceleration infrastructure (settings selection, clock enable paths, and STM32Cube integration).

Changes:

  • Extend wolfssl/wolfcrypt/settings.h STM32 family detection to recognize WOLFSSL_STM32V8, include the correct CMSIS/HAL headers, and gate NO_AES_192 only when routing AES via SAES.
  • Add STM32V8 RCC clock-enable support and HASH context-save/restore gating improvements in the STM32 port (stm32.h / stm32.c) to avoid referencing SHA3CFGR on parts that don’t implement it.
  • Update STM32 port documentation and STM32Cube templates/macros to expose the new family macro and device define (STM32V873xx).

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
wolfssl/wolfcrypt/settings.h Adds WOLFSSL_STM32V8 to STM32 platform selection, header includes, and AES-192 gating when using SAES.
wolfssl/wolfcrypt/port/st/stm32.h Adds STM32V8 clock-enable macros and refines HASH context layout/feature gates for SHA3CFGR.
wolfcrypt/src/port/st/stm32.c Uses the new SHA3CFGR feature gate during HASH context save/restore.
wolfcrypt/src/port/st/README.md Documents STM32V8 as a supported family and summarizes its crypto IP set.
IDE/STM32Cube/README.md Documents the WOLFSSL_STM32V8 define for STM32Cube users.
IDE/STM32Cube/default_conf.ftl Adds STM32V873xx-to-WOLFSSL_STM32V8 mapping in the Cube template.
.wolfssl_known_macro_extras Registers STM32V873xx and WOLFSSL_STM32V8 in the known-macro list.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@dgarske
dgarske requested a lite review from Copilot August 27, 2026 20:46
@dgarske
dgarske marked this pull request as ready for review August 27, 2026 20:46
@github-actions

Copy link
Copy Markdown

retest this please

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.

@dgarske

dgarske commented Sep 2, 2026

Copy link
Copy Markdown
Member Author

Jenkins retest this please

@wolfSSL-Fenrir-bot wolfSSL-Fenrir-bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Fenrir Automated Review — PR #11296

Scan targets checked: wolfcrypt-bugs, wolfcrypt-port-bugs, wolfcrypt-rs-bugs, wolfcrypt-src, wolfssl-bugs, wolfssl-src

Fenrir result: Approved ✅

No new issues found in the changed files.

Advisory only — this automated result does not count as a GitHub approval.

@dgarske
dgarske requested a review from aidangarske September 2, 2026 18:51

@aidangarske aidangarske left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Skoll Code Review

Scan type: review

Overall recommendation: REQUEST_CHANGES
Findings: 4 total — 4 posted, 0 skipped
4 finding(s) posted as inline comments (see file-level comments below)

Posted findings

  • [High] Bare V8 builds select the incompatible TinyAES driverwolfssl/wolfcrypt/port/st/stm32.h:300-308
  • [High] Advertised V8 CCB support is rejected by the feature gatewolfssl/wolfcrypt/port/st/stm32.h:316-320
  • [Medium] Scope the V8 family claim to the supported V873 variantwolfcrypt/src/port/st/README.md:27
  • [Medium] Add regression coverage for the new platform configurationsIDE/STM32Cube/default_conf.ftl:255-263

Review generated by Skoll

Comment thread wolfssl/wolfcrypt/port/st/stm32.h
Comment thread wolfssl/wolfcrypt/port/st/stm32.h Outdated
Comment thread wolfcrypt/src/port/st/README.md Outdated
Comment thread IDE/STM32Cube/default_conf.ftl
@aidangarske

Copy link
Copy Markdown
Member

Jenkins retest this please
(logs lost)

aidangarske
aidangarske previously approved these changes Sep 9, 2026

@aidangarske aidangarske left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Skoll Code Review

Scan type: review-security

Overall recommendation: APPROVE
Findings: 0 total — 0 posted, 0 skipped

No issues found.

Review generated by Skoll

@dgarske

dgarske commented Sep 10, 2026

Copy link
Copy Markdown
Member Author

Jenkins retest this please

@aidangarske
aidangarske merged commit e38894e into wolfSSL:master Sep 10, 2026
407 of 408 checks passed
@aidangarske
aidangarske deleted the stm32v8 branch September 10, 2026 20:34
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.

5 participants