forked from notro/spi-bcm2708
-
Notifications
You must be signed in to change notification settings - Fork 11
Home
msperl edited this page Feb 27, 2015
·
15 revisions
Welcome to the spi-bcm2835 wiki!
Observations on the situation with the current drivers (as of rpi-linux-690878e2)
Things to do
- import drivers from rpi-linux-690878e2
- instrument drivers with debugpins for analysis via a logic-analyzer (d5b7f99)
- implement LoSSI/9-bit mode in spi-bcm2835 (ab3f074)
- test with a device
- improvement of CS down to TX-delay due to interrupt latencies (edc58bd)
- improvement of TX/RX to the max amount that the device says it can handle (deviate from the documentation for interrupt-driven) - (acfceb0)
- implement Real Time priorities for spi-cbm2835
- span the transfer of bytes in different spi_xfers in interrupt without any wake-up of a thread and the corresponding scheduling delays
- fix inverse polarity issues - this may mean also arbitrary CS support and not only CS0/CS1/CS2!
- support arbitrary Clock dividers - not only power of 2 as stated in the official documentation
- implement DMA transfers for longer chunks (maybe >64 bytes)
- full blown pipelined DMA implementation using dma-fragments
- note to make this work efficiently we may need the "spi_optimize" in the core...
- upstream all of those
- get the official RPI kernel to support/use the spi-bcm2835 as their default SPI driver