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

Merge remote-tracking branches 'spi/fix/gqspi', 'spi/fix/imx', 'spi/fix/mg-spfi' and 'spi/fix/spidev' into spi-linus

+8 -3
+1 -1
drivers/spi/Kconfig
··· 612 612 613 613 config SPI_ZYNQMP_GQSPI 614 614 tristate "Xilinx ZynqMP GQSPI controller" 615 - depends on SPI_MASTER 615 + depends on SPI_MASTER && HAS_DMA 616 616 help 617 617 Enables Xilinx GQSPI controller driver for Zynq UltraScale+ MPSoC. 618 618
+2
drivers/spi/spi-img-spfi.c
··· 40 40 #define SPFI_CONTROL_SOFT_RESET BIT(11) 41 41 #define SPFI_CONTROL_SEND_DMA BIT(10) 42 42 #define SPFI_CONTROL_GET_DMA BIT(9) 43 + #define SPFI_CONTROL_SE BIT(8) 43 44 #define SPFI_CONTROL_TMODE_SHIFT 5 44 45 #define SPFI_CONTROL_TMODE_MASK 0x7 45 46 #define SPFI_CONTROL_TMODE_SINGLE 0 ··· 492 491 else if (xfer->tx_nbits == SPI_NBITS_QUAD && 493 492 xfer->rx_nbits == SPI_NBITS_QUAD) 494 493 val |= SPFI_CONTROL_TMODE_QUAD << SPFI_CONTROL_TMODE_SHIFT; 494 + val |= SPFI_CONTROL_SE; 495 495 spfi_writel(spfi, val, SPFI_CONTROL); 496 496 } 497 497
+3 -2
drivers/spi/spi-imx.c
··· 201 201 { 202 202 struct spi_imx_data *spi_imx = spi_master_get_devdata(master); 203 203 204 - if (spi_imx->dma_is_inited && (transfer->len > spi_imx->rx_wml) 205 - && (transfer->len > spi_imx->tx_wml)) 204 + if (spi_imx->dma_is_inited 205 + && transfer->len > spi_imx->rx_wml * sizeof(u32) 206 + && transfer->len > spi_imx->tx_wml * sizeof(u32)) 206 207 return true; 207 208 return false; 208 209 }
+1
drivers/spi/spi-zynqmp-gqspi.c
··· 214 214 case GQSPI_SELECT_FLASH_CS_BOTH: 215 215 instanceptr->genfifocs = GQSPI_GENFIFO_CS_LOWER | 216 216 GQSPI_GENFIFO_CS_UPPER; 217 + break; 217 218 case GQSPI_SELECT_FLASH_CS_UPPER: 218 219 instanceptr->genfifocs = GQSPI_GENFIFO_CS_UPPER; 219 220 break;
+1
drivers/spi/spidev.c
··· 693 693 #ifdef CONFIG_OF 694 694 static const struct of_device_id spidev_dt_ids[] = { 695 695 { .compatible = "rohm,dh2228fv" }, 696 + { .compatible = "lineartechnology,ltc2488" }, 696 697 {}, 697 698 }; 698 699 MODULE_DEVICE_TABLE(of, spidev_dt_ids);