SPID6 BDMA memory on STM32H743
Posted: Sat Sep 12, 2026 6:39 pm
Hi,
ChibiOS_21.11.5 running on a H743 chip.
I've enabled SPI6, using the BDMA peripheral. From the RM Sec 2.1 Figure 1, you can see the BDMA can only access SRAM4. This means that when you try to use spiSend() (and I suppose spiReceive()) you get a segfault as it points the BDMA at spip->rxsink (or txsource) which is in SPID6.
I see there is an optional SPI_SPID6_MEMORY macro, but I'm not quite sure how to use it. I searched for an example in testhal/demos but don't find one.
Any advice is appreciated.
ChibiOS_21.11.5 running on a H743 chip.
I've enabled SPI6, using the BDMA peripheral. From the RM Sec 2.1 Figure 1, you can see the BDMA can only access SRAM4. This means that when you try to use spiSend() (and I suppose spiReceive()) you get a segfault as it points the BDMA at spip->rxsink (or txsource) which is in SPID6.
I see there is an optional SPI_SPID6_MEMORY macro, but I'm not quite sure how to use it. I searched for an example in testhal/demos but don't find one.
Any advice is appreciated.