Lines Matching defs:spi

18 // Based on spi-stmp.c, which is:
39 #include <linux/spi/spi.h>
40 #include <linux/spi/mxs-spi.h>
41 #include <trace/events/spi.h>
43 #define DRIVER_NAME "mxs-spi"
66 struct mxs_spi *spi = spi_master_get_devdata(dev->master);
67 struct mxs_ssp *ssp = &spi->ssp;
75 if (hz != spi->sck) {
82 spi->sck = hz;
124 static int mxs_ssp_wait(struct mxs_spi *spi, int offset, int mask, bool set)
127 struct mxs_ssp *ssp = &spi->ssp;
147 struct mxs_spi *spi = param;
149 complete(&spi->c);
163 static int mxs_spi_txrx_dma(struct mxs_spi *spi,
167 struct mxs_ssp *ssp = &spi->ssp;
188 reinit_completion(&spi->c);
270 desc->callback_param = spi;
276 if (!wait_for_completion_timeout(&spi->c,
298 static int mxs_spi_txrx_pio(struct mxs_spi *spi,
302 struct mxs_ssp *ssp = &spi->ssp;
331 if (mxs_ssp_wait(spi, HW_SSP_CTRL0, BM_SSP_CTRL0_RUN, 1))
341 if (mxs_ssp_wait(spi, HW_SSP_STATUS(ssp),
348 if (mxs_ssp_wait(spi, HW_SSP_CTRL0, BM_SSP_CTRL0_RUN, 0))
363 struct mxs_spi *spi = spi_master_get_devdata(master);
364 struct mxs_ssp *ssp = &spi->ssp;
372 writel(mxs_spi_cs_to_reg(m->spi->chip_select),
379 status = mxs_spi_setup_transfer(m->spi, t);
402 status = mxs_spi_txrx_pio(spi,
406 status = mxs_spi_txrx_pio(spi,
415 status = mxs_spi_txrx_dma(spi,
419 status = mxs_spi_txrx_dma(spi,
443 struct mxs_spi *spi = spi_master_get_devdata(master);
444 struct mxs_ssp *ssp = &spi->ssp;
464 struct mxs_spi *spi = spi_master_get_devdata(master);
465 struct mxs_ssp *ssp = &spi->ssp;
520 { .compatible = "fsl,imx23-spi", .data = (void *) IMX23_SSP, },
521 { .compatible = "fsl,imx28-spi", .data = (void *) IMX28_SSP, },
532 struct mxs_spi *spi;
564 master = spi_alloc_master(&pdev->dev, sizeof(*spi));
578 spi = spi_master_get_devdata(master);
579 ssp = &spi->ssp;
585 init_completion(&spi->c);
645 struct mxs_spi *spi;
649 spi = spi_master_get_devdata(master);
650 ssp = &spi->ssp;
676 MODULE_ALIAS("platform:mxs-spi");