Lines Matching refs:spi

91 static void fsl_espi_change_mode(struct spi_device *spi)  in fsl_espi_change_mode()  argument
93 struct mpc8xxx_spi *mspi = spi_master_get_devdata(spi->master); in fsl_espi_change_mode()
94 struct spi_mpc8xxx_cs *cs = spi->controller_state; in fsl_espi_change_mode()
96 __be32 __iomem *mode = &reg_base->csmode[spi->chip_select]; in fsl_espi_change_mode()
134 static int fsl_espi_setup_transfer(struct spi_device *spi, in fsl_espi_setup_transfer() argument
137 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_setup_transfer()
141 struct spi_mpc8xxx_cs *cs = spi->controller_state; in fsl_espi_setup_transfer()
150 bits_per_word = spi->bits_per_word; in fsl_espi_setup_transfer()
153 hz = spi->max_speed_hz; in fsl_espi_setup_transfer()
163 if (spi->mode & SPI_LSB_FIRST) in fsl_espi_setup_transfer()
184 "Will use %d Hz instead.\n", dev_name(&spi->dev), in fsl_espi_setup_transfer()
198 fsl_espi_change_mode(spi); in fsl_espi_setup_transfer()
220 static int fsl_espi_bufs(struct spi_device *spi, struct spi_transfer *t) in fsl_espi_bufs() argument
222 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_bufs()
242 (SPCOM_CS(spi->chip_select) | SPCOM_TRANLEN(t->len - 1))); in fsl_espi_bufs()
276 struct spi_device *spi = m->spi; in fsl_espi_do_trans() local
277 struct mpc8xxx_spi *mspi = spi_master_get_devdata(spi->master); in fsl_espi_do_trans()
311 status = fsl_espi_setup_transfer(spi, t); in fsl_espi_do_trans()
317 status = fsl_espi_bufs(spi, t); in fsl_espi_do_trans()
329 fsl_espi_setup_transfer(spi, NULL); in fsl_espi_do_trans()
469 static int fsl_espi_setup(struct spi_device *spi) in fsl_espi_setup() argument
476 struct spi_mpc8xxx_cs *cs = spi_get_ctldata(spi); in fsl_espi_setup()
478 if (!spi->max_speed_hz) in fsl_espi_setup()
485 spi_set_ctldata(spi, cs); in fsl_espi_setup()
488 mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_setup()
495 &reg_base->csmode[spi->chip_select]); in fsl_espi_setup()
500 if (spi->mode & SPI_CPHA) in fsl_espi_setup()
502 if (spi->mode & SPI_CPOL) in fsl_espi_setup()
504 if (!(spi->mode & SPI_LSB_FIRST)) in fsl_espi_setup()
510 if (spi->mode & SPI_LOOP) in fsl_espi_setup()
514 retval = fsl_espi_setup_transfer(spi, NULL); in fsl_espi_setup()
526 static void fsl_espi_cleanup(struct spi_device *spi) in fsl_espi_cleanup() argument
528 struct spi_mpc8xxx_cs *cs = spi_get_ctldata(spi); in fsl_espi_cleanup()
531 spi_set_ctldata(spi, NULL); in fsl_espi_cleanup()