Lines Matching refs:mpc8xxx_spi

93 	struct mpc8xxx_spi *mspi = spi_master_get_devdata(spi->master);  in fsl_espi_change_mode()
113 static u32 fsl_espi_tx_buf_lsb(struct mpc8xxx_spi *mpc8xxx_spi) in fsl_espi_tx_buf_lsb() argument
118 const u32 *tx = mpc8xxx_spi->tx; in fsl_espi_tx_buf_lsb()
123 data = *tx++ << mpc8xxx_spi->tx_shift; in fsl_espi_tx_buf_lsb()
130 mpc8xxx_spi->tx = tx; in fsl_espi_tx_buf_lsb()
137 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_setup_transfer() local
167 mpc8xxx_spi->rx_shift = cs->rx_shift; in fsl_espi_setup_transfer()
168 mpc8xxx_spi->tx_shift = cs->tx_shift; in fsl_espi_setup_transfer()
169 mpc8xxx_spi->get_rx = cs->get_rx; in fsl_espi_setup_transfer()
170 mpc8xxx_spi->get_tx = cs->get_tx; in fsl_espi_setup_transfer()
179 if ((mpc8xxx_spi->spibrg / hz) > 64) { in fsl_espi_setup_transfer()
181 pm = DIV_ROUND_UP(mpc8xxx_spi->spibrg, hz * 16 * 4); in fsl_espi_setup_transfer()
185 hz, mpc8xxx_spi->spibrg / (4 * 16 * (32 + 1))); in fsl_espi_setup_transfer()
189 pm = DIV_ROUND_UP(mpc8xxx_spi->spibrg, hz * 4); in fsl_espi_setup_transfer()
202 static int fsl_espi_cpu_bufs(struct mpc8xxx_spi *mspi, struct spi_transfer *t, in fsl_espi_cpu_bufs()
222 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_bufs() local
223 struct fsl_espi_reg *reg_base = mpc8xxx_spi->reg_base; in fsl_espi_bufs()
227 mpc8xxx_spi->len = t->len; in fsl_espi_bufs()
230 mpc8xxx_spi->tx = t->tx_buf; in fsl_espi_bufs()
231 mpc8xxx_spi->rx = t->rx_buf; in fsl_espi_bufs()
233 reinit_completion(&mpc8xxx_spi->done); in fsl_espi_bufs()
237 dev_err(mpc8xxx_spi->dev, "Transaction length (%d)" in fsl_espi_bufs()
244 ret = fsl_espi_cpu_bufs(mpc8xxx_spi, t, len); in fsl_espi_bufs()
248 wait_for_completion(&mpc8xxx_spi->done); in fsl_espi_bufs()
253 return mpc8xxx_spi->count; in fsl_espi_bufs()
277 struct mpc8xxx_spi *mspi = spi_master_get_devdata(spi->master); in fsl_espi_do_trans()
471 struct mpc8xxx_spi *mpc8xxx_spi; in fsl_espi_setup() local
488 mpc8xxx_spi = spi_master_get_devdata(spi->master); in fsl_espi_setup()
489 reg_base = mpc8xxx_spi->reg_base; in fsl_espi_setup()
491 pm_runtime_get_sync(mpc8xxx_spi->dev); in fsl_espi_setup()
516 pm_runtime_mark_last_busy(mpc8xxx_spi->dev); in fsl_espi_setup()
517 pm_runtime_put_autosuspend(mpc8xxx_spi->dev); in fsl_espi_setup()
534 void fsl_espi_cpu_irq(struct mpc8xxx_spi *mspi, u32 events) in fsl_espi_cpu_irq()
599 struct mpc8xxx_spi *mspi = context_data; in fsl_espi_irq()
620 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(master); in fsl_espi_runtime_suspend() local
621 struct fsl_espi_reg *reg_base = mpc8xxx_spi->reg_base; in fsl_espi_runtime_suspend()
634 struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(master); in fsl_espi_runtime_resume() local
635 struct fsl_espi_reg *reg_base = mpc8xxx_spi->reg_base; in fsl_espi_runtime_resume()
651 struct mpc8xxx_spi *mpc8xxx_spi; in fsl_espi_probe() local
658 master = spi_alloc_master(dev, sizeof(struct mpc8xxx_spi)); in fsl_espi_probe()
674 mpc8xxx_spi = spi_master_get_devdata(master); in fsl_espi_probe()
676 mpc8xxx_spi->reg_base = devm_ioremap_resource(dev, mem); in fsl_espi_probe()
677 if (IS_ERR(mpc8xxx_spi->reg_base)) { in fsl_espi_probe()
678 ret = PTR_ERR(mpc8xxx_spi->reg_base); in fsl_espi_probe()
682 reg_base = mpc8xxx_spi->reg_base; in fsl_espi_probe()
685 ret = devm_request_irq(dev, mpc8xxx_spi->irq, fsl_espi_irq, in fsl_espi_probe()
686 0, "fsl_espi", mpc8xxx_spi); in fsl_espi_probe()
690 if (mpc8xxx_spi->flags & SPI_QE_CPU_MODE) { in fsl_espi_probe()
691 mpc8xxx_spi->rx_shift = 16; in fsl_espi_probe()
692 mpc8xxx_spi->tx_shift = 24; in fsl_espi_probe()
744 dev_info(dev, "at 0x%p (irq = %d)\n", reg_base, mpc8xxx_spi->irq); in fsl_espi_probe()
849 struct mpc8xxx_spi *mpc8xxx_spi; in of_fsl_espi_resume() local
854 mpc8xxx_spi = spi_master_get_devdata(master); in of_fsl_espi_resume()
855 reg_base = mpc8xxx_spi->reg_base; in of_fsl_espi_resume()