embedded-hal icon indicating copy to clipboard operation
embedded-hal copied to clipboard

Multipin serial spi interface trait

Open kkoppul2 opened this issue 1 year ago • 1 comments

A lot of chips now support serial spi interfaces generally used for external memory like quad and octospi. There are also alternate protocols like Hyperbus that are defined on some supported peripherals, although it is not clear if that makes sense to support in a generic way here. The functionality doesn't fit strictly to the standard SPI traits, each transaction requiring more detail generally about the nature of each transaction. It may be helpful to define a standard interface for these types of peripherals. Opening a discussion about how best to support those types of buses.

kkoppul2 avatar Apr 25 '24 19:04 kkoppul2

I'd like to see more granular traits too. I've been writing a driver for the ST77903 LCD chip, which requires Quad-SPI to write pixel data. Specifically, it seems to want single-line SPI for commands and addresses, then quad for colors. Example from the datasheet:

Image

SpiDevice doesn't capture details like this as far as I can tell, requiring me to ship my own trait. Something along the lines of Spi: SpiDevice + QuadSpiDevice for now?

Anyway would be nice to only rely on common traits instead.

rosofo avatar Mar 11 '25 14:03 rosofo