Lines Matching refs:spi
141 static void dw_spi_set_cs(struct spi_device *spi, bool enable) in dw_spi_set_cs() argument
143 struct dw_spi *dws = spi_master_get_devdata(spi->master); in dw_spi_set_cs()
144 struct chip_data *chip = spi_get_ctldata(spi); in dw_spi_set_cs()
151 dw_writel(dws, DW_SPI_SER, BIT(spi->chip_select)); in dw_spi_set_cs()
286 struct spi_device *spi, struct spi_transfer *transfer) in dw_spi_transfer_one() argument
289 struct chip_data *chip = spi_get_ctldata(spi); in dw_spi_transfer_one()
337 | (spi->mode << SPI_MODE_OFFSET) in dw_spi_transfer_one()
360 if (master->can_dma && master->can_dma(master, spi, transfer)) in dw_spi_transfer_one()
414 static int dw_spi_setup(struct spi_device *spi) in dw_spi_setup() argument
421 chip = spi_get_ctldata(spi); in dw_spi_setup()
426 spi_set_ctldata(spi, chip); in dw_spi_setup()
433 chip_info = spi->controller_data; in dw_spi_setup()
447 if (spi->bits_per_word == 8) { in dw_spi_setup()
450 } else if (spi->bits_per_word == 16) { in dw_spi_setup()
454 chip->bits_per_word = spi->bits_per_word; in dw_spi_setup()
456 if (!spi->max_speed_hz) { in dw_spi_setup()
457 dev_err(&spi->dev, "No max speed HZ parameter\n"); in dw_spi_setup()
465 | (spi->mode << SPI_MODE_OFFSET) in dw_spi_setup()
468 if (spi->mode & SPI_LOOP) in dw_spi_setup()
471 if (gpio_is_valid(spi->cs_gpio)) { in dw_spi_setup()
472 ret = gpio_direction_output(spi->cs_gpio, in dw_spi_setup()
473 !(spi->mode & SPI_CS_HIGH)); in dw_spi_setup()
481 static void dw_spi_cleanup(struct spi_device *spi) in dw_spi_cleanup() argument
483 struct chip_data *chip = spi_get_ctldata(spi); in dw_spi_cleanup()
486 spi_set_ctldata(spi, NULL); in dw_spi_cleanup()