2019-03-12 02:12 AM
Hello,
When using external NOR is it reasonable to configure its memory addresses as cacheable or should it always be configured as NON-cacheable?
If it is cacheable it means that when executing a programming nor command, it is not yet written into device.
Only if PROGRAM_TIMEOUT is large enough then validation works (write, read and compare)
HAL_NOR_Program(&norHandle, (uint32_t *)(NOR_DEVICE_ADDR + uwStartAddress), pData);
if(HAL_NOR_GetStatus(&norHandle, NOR_DEVICE_ADDR, PROGRAM_TIMEOUT) != HAL_NOR_STATUS_SUCCESS)
....
Shouldn't it be always configured as non cahceable also in examples ?
Thank you for any comment,
ranran
Solved! Go to Solution.
2019-03-12 06:04 AM
The magic write sequences and status reads are incompatible with caching.
2019-03-12 06:04 AM
The magic write sequences and status reads are incompatible with caching.
2019-03-12 06:45 AM
That's interesting.
Probably in examples ST forgot to add NOR into MPU region as non cacheable.
Thanks