mirror of https://github.com/ARMmbed/mbed-os.git
Check cache before enabling it
The mbed_sdk_init can be called either during cold boot or during application boot after bootloader has been executed. In case the bootloader has already enabled the cache, is is needed to not enable it again.pull/5821/head
parent
43f4b679c7
commit
6edcc1eba2
|
@ -35,9 +35,16 @@ void mbed_sdk_init()
|
|||
HAL_Init();
|
||||
|
||||
#if TARGET_STM32F7
|
||||
// Enable CPU L1-Cache
|
||||
SCB_EnableICache();
|
||||
SCB_EnableDCache();
|
||||
// The mbed_sdk_init can be called either during cold boot or during
|
||||
// application boot after bootloader has been executed.
|
||||
// In case the bootloader has already enabled the cache,
|
||||
// is is needed to not enable it again.
|
||||
if (SCB->CCR & (uint32_t)SCB_CCR_IC_Msk == 0) { // If ICache is disabled
|
||||
SCB_EnableICache();
|
||||
}
|
||||
if (SCB->CCR & (uint32_t)SCB_CCR_DC_Msk == 0) { // If DCache is disabled
|
||||
SCB_EnableDCache();
|
||||
}
|
||||
#endif /* TARGET_STM32F7 */
|
||||
|
||||
/* Configure the System clock source, PLL Multiplier and Divider factors,
|
||||
|
|
Loading…
Reference in New Issue