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

STM32WB: improve FLASH size #14692

Merged
merged 2 commits into from
Jun 7, 2021
Merged

STM32WB: improve FLASH size #14692

merged 2 commits into from
Jun 7, 2021

Conversation

jeromecoutant
Copy link
Collaborator

Summary of changes

STM32WB is a dual core MCU:

  • M4 core is dedicated to application (mbed-os)
  • M0 core is dedicated to BLE FW (binary provided in ST repo)

Default BLE FW in ST boards is stm32wb5x_BLE_Stack_full_fw.bin
and gives 808K available FLASH to application

stm32wb5x_BLE_HCILayer_fw.bin
gives 896K available FLASH to application

@ARMmbed/team-st-mcd

PS: note that baremetal is also supported, check ARMmbed/mbed-os-example-ble#375

Impact of changes

Migration actions required

Documentation

README file updated


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[x] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


Default BLE FW in ST boards is stm32wb5x_BLE_Stack_full_fw.bin
 and gives 808K available FLASH to application

stm32wb5x_BLE_HCILayer_fw.bin
 gives 896K available FLASH to application
@ciarmcom ciarmcom added the release-type: patch Indentifies a PR as containing just a patch label May 21, 2021
@ciarmcom ciarmcom requested a review from a team May 21, 2021 15:30
@ciarmcom
Copy link
Member

@jeromecoutant, thank you for your changes.
@ARMmbed/mbed-os-maintainers please review.

Copy link
Contributor

@LMESTM LMESTM left a comment

Choose a reason for hiding this comment

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

Juts one question

tr_info("WIRELESS COPROCESSOR FW STACK TYPE = %d", p_wireless_info->StackType);
tr_info("WIRELESS COPROCESSOR FW STACK TYPE = %d (ROM size 0x%x)", p_wireless_info->StackType, MBED_ROM_SIZE);

#if STM32WB55xx
Copy link
Contributor

Choose a reason for hiding this comment

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

why is this part of code limited to WB55xx (not applicable at other derivatives ? )

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

yes, for coming STM32WB15 for ex, only HCI FW will be supported, and FW size is different

@jeromecoutant
Copy link
Collaborator Author

@ARMmbed/mbed-os-maintainers let's start CI ?
Thx

@jeromecoutant
Copy link
Collaborator Author

@pan- FYI

@mergify mergify bot added needs: CI and removed needs: review labels Jun 1, 2021
@0xc0170
Copy link
Contributor

0xc0170 commented Jun 1, 2021

Ci started

@mergify mergify bot added needs: work and removed needs: CI labels Jun 1, 2021
@mbed-ci
Copy link

mbed-ci commented Jun 1, 2021

Jenkins CI Test : ❌ FAILED

Build Number: 1 | 🔒 Jenkins CI Job | 🌐 Logs & Artifacts

CLICK for Detailed Summary

jobs Status
jenkins-ci/mbed-os-ci_unittests ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-GCC_ARM
jenkins-ci/mbed-os-ci_build-greentea-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-ARM
jenkins-ci/mbed-os-ci_build-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-example-GCC_ARM ✔️

@jeromecoutant
Copy link
Collaborator Author

@0xc0170 Is CLI using the latest version of tools ?

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 1, 2021

@jeromecoutant What version is required? What did you test this with?

#if STM32WB55xx
switch (p_wireless_info->StackType) {
case INFO_STACK_TYPE_BLE_FULL:
if (MBED_ROM_SIZE > 0xCA000) {
Copy link
Member

Choose a reason for hiding this comment

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

This does not depends on the stack version ? The size in ROM is guaranteed to stay the same ?

Copy link
Collaborator Author

@jeromecoutant jeromecoutant Jun 1, 2021

Choose a reason for hiding this comment

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

Yes, if size is changing, test would need to add a version condition

@jeromecoutant
Copy link
Collaborator Author

@jeromecoutant What version is required? What did you test this with?

This needs
ARMmbed/mbed-tools#270

Tested OK with

$ mbedtools --version
7.12.0

@mbed-ci
Copy link

mbed-ci commented Jun 4, 2021

Jenkins CI Test : ✔️ SUCCESS

Build Number: 2 | 🔒 Jenkins CI Job | 🌐 Logs & Artifacts

CLICK for Detailed Summary

jobs Status
jenkins-ci/mbed-os-ci_unittests ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_greentea-test ✔️

@0xc0170 0xc0170 merged commit 9fbb89e into ARMmbed:master Jun 7, 2021
@mergify mergify bot removed the ready for merge label Jun 7, 2021
@jeromecoutant jeromecoutant deleted the PR_WB_HCI branch June 7, 2021 09:33
@mbedmain mbedmain added release-version: 6.12.0 Release-pending and removed release-type: patch Indentifies a PR as containing just a patch Release-pending labels Jun 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants