You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
cyhal_sdio_bulk_transfer function uses a temp buffer declared static. This buffer is located in .bss section and, by default, this section is located in DTCMRAM. On STM32H743 the SDIO DMA cannot access this memory so the buffer is never filled (but no error is reported).
This can be fixed by modifying the linker script :
/* Uninitialized data section */
. = ALIGN(4);
.bss :
{
/* This is used by the startup in order to initialize the .bss secion */
_sbss = .; /* define a global symbol at bss start */
__bss_start__ = _sbss;
*(.bss)
*(.bss*)
*(COMMON)
. = ALIGN(4);
_ebss = .; /* define a global symbol at bss end */
__bss_end__ = _ebss;
} >RAM_D1
But it will be overwritten when re-generating code.
Steps to Reproduce:
Generate a project for STM32H743 (or maybe other H7xx)
Expected Result:
wifi scan
Actual Result:
Chip id is 0 because DMA buffer is not filled
Description:
cyhal_sdio_bulk_transfer
function uses a temp buffer declared static. This buffer is located in .bss section and, by default, this section is located in DTCMRAM. On STM32H743 the SDIO DMA cannot access this memory so the buffer is never filled (but no error is reported).This can be fixed by modifying the linker script :
But it will be overwritten when re-generating code.
Steps to Reproduce:
Expected Result:
wifi scan
Actual Result:
Chip id is 0 because DMA buffer is not filled
Frequency (1/1, 1/50, 1/100):
1/1
Build/Commit:
1.6.0
Target:
STM32H743 and CYW55573
Host OS and Version:
Arch Linux
Compiler:
Environment
FreeRTOS, Nucleo H743ZI2, chip connected on SDMMC1 with Murata hat.
The text was updated successfully, but these errors were encountered: