include: sd: revise the minimum alignment of card_buffer to 4-bytes
Since a85ffa81, `struct sd_card.card_buffer` has naturally fallen at an offset that is unaligned. This meant that on systems without support for unaligned access (e.g: Cortex-M0), a hard fault would present when executing code that casts the buffer to `uint32_t` (such as `sdmmc_spi_read_cxd()`, `card_query_written()`, etc...) Historically, it appears that the alignment of the `card_buffer` member was good and operational only by chance. Altering the default value of `CONFIG_SDHC_BUFFER_ALIGNMENT` was rejected, as this has wider implications. Fixes #62619 Signed-off-by:Attie Grande <attie.grande@argentum-systems.co.uk>
Loading
Please sign in to comment