4f885fe6bf
## Summary To control the Data/Command Pin on ST7789 SPI Display, the SPI Driver flips the MISO Pin as though it was a GPIO. To implement this on BL602, we reconfigure MISO from SPI Pin to GPIO Pin on the fly inside `bl602_spi_cmddata()`. When the SPI Port is deselected (after the SPI operation), we revert MISO back from GPIO Pin to SPI Pin. We implement this inside `bl602_spi_select()`. [More Details Here](https://github.com/lupyuen/st7789-nuttx#spi-cmddata) ## Impact This change impacts 3 LCD drivers that call `SPI_CMDDATA()`: ST7735, ST7789, GC9A01. Previously the BL602 SPI Driver would fail with "SPI cmddata not supported" when the above drivers are used. After the change, the above drivers will set the LCD Data/Command Pin correctly. ## Testing We tested this implementation of SPI Cmd/Data with NuttX ST7789 Driver and a Logic Analyser on PineCone BL602: - [Testing with Logic Analyser](https://github.com/lupyuen/st7789-nuttx#spi-cmddata) We also tested LVGL with ST7789 on PineCone BL602: - [Testing with LVGL](https://github.com/lupyuen/st7789-nuttx#run-lvgl-demo) As for regular SPI Devices that don't require SPI Cmd/Data, we tested `CONFIG_SPI_CMDDATA=y` with Semtech SX1262 SPI Transceiver on PineCone BL602: - [Testing Cmd/Data](https://github.com/lupyuen/incubator-nuttx/releases/tag/release-2022-03-29) |
||
---|---|---|
.. | ||
include | ||
src | ||
Kconfig |