-
Notifications
You must be signed in to change notification settings - Fork 8.3k
drivers: sdmmc: stm32: introduce cache flush & invalidation for DMA #100409
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
base: main
Are you sure you want to change the base?
drivers: sdmmc: stm32: introduce cache flush & invalidation for DMA #100409
Conversation
53f40b1 to
defc439
Compare
etienne-lms
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a nitpicking comment.
defc439 to
24a783d
Compare
24a783d to
f3f661a
Compare
|
In light of the discussion, and my brief investigation, I've opted to maintain the I have confirmed that things "work" when aligning |
f3f661a to
1e8fd88
Compare
1e8fd88 to
2aa1ec1
Compare
Introduce steps to maintain cache coherence around DMA accesses to the underlying SD / eMMC storage. Signed-off-by: Attie Grande <attie.grande@argentum-systems.co.uk>
2aa1ec1 to
496889d
Compare
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better than nothing. Hopefully large buffers are naturally aligned enough that the limitation isn't an issue anyways...



I encountered issues while mounting a FAT filesystem with D-Cache enabled on an STM32H753.
This patch introduces a call to
sys_cache_data_flush_and_invd_range()beforeHAL_*_ReadBlocks_DMA(), andsys_cache_data_flush_range()beforeHAL_*_WriteBlocks_DMA().Fixes #100377