Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'spi-fix-v5.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi

Pull spi fixes from Mark Brown:
"A few more small driver specific fixes"

* tag 'spi-fix-v5.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
spi: spi-rspi: Fix PIO fallback on RZ platforms
spi: spi-cadence: Fix SPI NO Slave Select macro definition
spi: bcm2835: bcm2835_spi_handle_err(): fix NULL pointer deref for non DMA transfers

+13 -5
+8 -4
drivers/spi/spi-bcm2835.c
··· 1138 1138 struct bcm2835_spi *bs = spi_controller_get_devdata(ctlr); 1139 1139 1140 1140 /* if an error occurred and we have an active dma, then terminate */ 1141 - dmaengine_terminate_sync(ctlr->dma_tx); 1142 - bs->tx_dma_active = false; 1143 - dmaengine_terminate_sync(ctlr->dma_rx); 1144 - bs->rx_dma_active = false; 1141 + if (ctlr->dma_tx) { 1142 + dmaengine_terminate_sync(ctlr->dma_tx); 1143 + bs->tx_dma_active = false; 1144 + } 1145 + if (ctlr->dma_rx) { 1146 + dmaengine_terminate_sync(ctlr->dma_rx); 1147 + bs->rx_dma_active = false; 1148 + } 1145 1149 bcm2835_spi_undo_prologue(bs); 1146 1150 1147 1151 /* and reset */
+1 -1
drivers/spi/spi-cadence.c
··· 69 69 #define CDNS_SPI_BAUD_DIV_SHIFT 3 /* Baud rate divisor shift in CR */ 70 70 #define CDNS_SPI_SS_SHIFT 10 /* Slave Select field shift in CR */ 71 71 #define CDNS_SPI_SS0 0x1 /* Slave Select zero */ 72 - #define CDNS_SPI_NOSS 0x3C /* No Slave select */ 72 + #define CDNS_SPI_NOSS 0xF /* No Slave select */ 73 73 74 74 /* 75 75 * SPI Interrupt Registers bit Masks
+4
drivers/spi/spi-rspi.c
··· 613 613 rspi->dma_callbacked, HZ); 614 614 if (ret > 0 && rspi->dma_callbacked) { 615 615 ret = 0; 616 + if (tx) 617 + dmaengine_synchronize(rspi->ctlr->dma_tx); 618 + if (rx) 619 + dmaengine_synchronize(rspi->ctlr->dma_rx); 616 620 } else { 617 621 if (!ret) { 618 622 dev_err(&rspi->ctlr->dev, "DMA timeout\n");