Fix alignment for DMA on STM32H7 in function mmcsd_read_csd()
This function (mmcsd_read_csd()) gets called during init of an MMC card. STM32H7 DMA expects 32 byte alignment, so the call to SDIO_DMAPREFLIGHT() fails.
Summary
Issue https://github.com/PX4/NuttX/issues/346
Impact
Testing
Tested with PX4? which PX4 you are testing this with?
We have a custom PX4 board based on V6X, and we have a custom fork of PX4 1.15. I tested it only on that. If someone has a standard PX4 drone with a microSD, it can be tested if they also have an EMMC adapter card. We are planning on moving from the removable SD to a soldered-on EMMC so that's why I am testing with the EMMC adapter card. Once I made the changes, the EMMC card mounts fine and works 100% like a normal SD as far as PX4 is concerned, storing data, logs, etc.
Tested with PX4? which PX4 you are testing this with?
We have a custom PX4 board based on V6X, and we have a custom fork of PX4 1.15. I tested it only on that. If someone has a standard PX4 drone with a microSD, it can be tested if they also have an EMMC adapter card. We are planning on moving from the removable SD to a soldered-on EMMC so that's why I am testing with the EMMC adapter card. Once I made the changes, the EMMC card mounts fine and works 100% like a normal SD as far as PX4 is concerned, storing data, logs, etc.
is this the Firelfy board with microSD on it? I can test it maybe.
Tested with PX4? which PX4 you are testing this with?
We have a custom PX4 board based on V6X, and we have a custom fork of PX4 1.15. I tested it only on that. If someone has a standard PX4 drone with a microSD, it can be tested if they also have an EMMC adapter card. We are planning on moving from the removable SD to a soldered-on EMMC so that's why I am testing with the EMMC adapter card. Once I made the changes, the EMMC card mounts fine and works 100% like a normal SD as far as PX4 is concerned, storing data, logs, etc.
is this the Firelfy board with microSD on it? I can test it maybe.
It is for Firefly Drone Shows, not Freefly or whatever the similar one is. Only we have these boards. But it should be testable with any PX4 compatible board with STM32H7 and a micro SD. I did search for PX4 with EMMC and there are not many hits so I don't think many or any boards are using EMMC yet. We are switching because we have so many drones and SD cards and we don't really remove them ever, just pull logs from QGC.
Tested with PX4? which PX4 you are testing this with?
We have a custom PX4 board based on V6X, and we have a custom fork of PX4 1.15. I tested it only on that. If someone has a standard PX4 drone with a microSD, it can be tested if they also have an EMMC adapter card. We are planning on moving from the removable SD to a soldered-on EMMC so that's why I am testing with the EMMC adapter card. Once I made the changes, the EMMC card mounts fine and works 100% like a normal SD as far as PX4 is concerned, storing data, logs, etc.
is this the Firelfy board with microSD on it? I can test it maybe.
It is for Firefly Drone Shows, not Freefly or whatever the similar one is. Only we have these boards. But it should be testable with any PX4 compatible board with STM32H7 and a micro SD. I did search for PX4 with EMMC and there are not many hits so I don't think many or any boards are using EMMC yet. We are switching because we have so many drones and SD cards and we don't really remove them ever, just pull logs from QGC.
Yup, I also mentioned Firefly! 🙂 I can test it maybe.
@MattKow-Firefly
What SDMMC are you using 1 or 2 on your HW?
CONFIG_STM32H7_SDMMC2