How to disable the M4 core on the STM32H745?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 12:15 AM
We have to write firmware for a STM32H745. It was not our decision to use a dual-core version and we are pretty sure that a single M7 core will easily do the trick, so the next iteration of the PCB will contain a single core variant. Now we would like to deactivate the M4 core completely. Is this possible and how can it be done?
Solved! Go to Solution.
- Labels:
-
STM32H7 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 2:28 AM
I think it can't be accessed through the firmware image, but STM32Cubeprogrammer can read and write option bits.
STM32_Programmer_CLI -c port=SWD -ob displ
[...]
BCM7 : 0x1 (CM7 boot enabled)
(I have a STM32H743 so there is no BCM4 bit)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 1:06 AM
Search for the BOOT_CM4 option bit in the reference manual.
Be careful not to disable the BOOT_CM7 bit (the bit right next to BOOT_CM4), because it might brick the MCU, or at least I don't know how to recover it then.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 1:36 AM
Thanks. Exactly what I need, but how can I modify the value?
Can I write directly to that location as part of the program download using SWD (and linker script) or do I have to modify it after the firmware has started?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 2:28 AM
I think it can't be accessed through the firmware image, but STM32Cubeprogrammer can read and write option bits.
STM32_Programmer_CLI -c port=SWD -ob displ
[...]
BCM7 : 0x1 (CM7 boot enabled)
(I have a STM32H743 so there is no BCM4 bit)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-15 4:57 AM
Works like a charm.
10^6 thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-06-16 7:29 AM
For reference, the effective command to disable the M4 is:
STM32_Programmer_CLI -c port=SWD -ob BCM4=0x0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-03 4:53 AM
Newbie here, so I mostly use CubeMX.
How to do this in CubeIDE/CubeMx?
I have H747i-disco..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-03 5:55 AM
Unfortunately you can not do this using CubeIDE nor CubeMX.
You need to download the STM32CubeProgrammer.
No fear though - it has an UI too where you can modify these option bits.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-03 8:37 AM
As I am not quite sure what would happen if I disable CM4 as shown below,
I have not done it yet.
I would like to know what would happen if I use CubeIDE/CubeMX after disabling CM4?
