...Wait it's still using the old terms. Should be renamed as "Controller" and "Peripheral", according to the guidelines:

oshwa.org/a-resolution-to-rede

Follow

SPI DMA ... Lets you specify a Linked List of Transmit / Receive operations ... That will be executed by the DMA Controller

github.com/lupyuen/bl_iot_sdk/

But if AliOS is really a complete Embedded Operating System ... Why does IoT SDK still need FreeRTOS? 🤔

github.com/alibaba/AliOS-Thing

Another trap! "vfs_spi_init_fullname" doesn't return the SPI Device ... It passes the SPI Device to AliOS! Let's create our own function to init the SPI Port without AliOS 🤔

github.com/lupyuen/bl_iot_sdk/

"hal_spi_dma_trans" hangs while doing SPI DMA transfer because it's waiting for a FreeRTOS Event Group ... Which is supposed to be signalled by the DMA Interrupt Handler. Let's comment out the waiting and see what happens...

github.com/lupyuen/bl_iot_sdk/

Commented out the waiting for SPI DMA ... Yep no more hanging ... But no SPI Data received. Interrupt Counters show that DMA Interrupts weren't triggered.

The plot thickens ... Just like my chicken soup 🤔

github.com/lupyuen/bl_iot_sdk/

Show newer

@aton Heh heh I'm in the wrong timezone ... GMT+8 (Singapore)

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.