aboutsummaryrefslogtreecommitdiff
path: root/docs/reference/asm_thumb2_stack.rst
diff options
context:
space:
mode:
authorDamien George2019-07-03 00:50:32 +1000
committerDamien George2019-07-03 01:27:33 +1000
commit8da39fd182aee0f357c34d8e17f54601c078f6e0 (patch)
treeb76279f842805429f7b0942ba4393bbc952ffd1c /docs/reference/asm_thumb2_stack.rst
parenteca4115f666f8b5e1e0155ce930353b698dcd7ef (diff)
stm32/qspi: Use MPU to allow access to valid memory-mapped QSPI region.
The Cortex-M7 CPU will do speculative loads from any memory location that is not explicitly forbidden. This includes the QSPI memory-mapped region starting at 0x90000000 and with size 256MiB. Speculative loads to this QSPI region may 1) interfere with the QSPI peripheral registers (eg the address register) if the QSPI is not in memory-mapped mode; 2) attempt to access data outside the configured size of the QSPI flash when it is in memory-mapped mode. Both of these scenarios will lead to issues with the QSPI peripheral (eg Cortex bus lock up in scenario 2). To prevent such speculative loads from interfering with the peripheral the MPU is configured in this commit to restrict access to the QSPI mapped region: when not memory mapped the entire region is forbidden; when memory mapped only accesses to the valid flash size are permitted.
Diffstat (limited to 'docs/reference/asm_thumb2_stack.rst')
0 files changed, 0 insertions, 0 deletions