mcfqspi            68 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qmr(struct mcfqspi *mcfqspi, u16 val)
mcfqspi            70 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QMR);
mcfqspi            73 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qdlyr(struct mcfqspi *mcfqspi, u16 val)
mcfqspi            75 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QDLYR);
mcfqspi            78 drivers/spi/spi-coldfire-qspi.c static u16 mcfqspi_rd_qdlyr(struct mcfqspi *mcfqspi)
mcfqspi            80 drivers/spi/spi-coldfire-qspi.c 	return readw(mcfqspi->iobase + MCFQSPI_QDLYR);
mcfqspi            83 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qwr(struct mcfqspi *mcfqspi, u16 val)
mcfqspi            85 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QWR);
mcfqspi            88 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qir(struct mcfqspi *mcfqspi, u16 val)
mcfqspi            90 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QIR);
mcfqspi            93 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qar(struct mcfqspi *mcfqspi, u16 val)
mcfqspi            95 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QAR);
mcfqspi            98 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_wr_qdr(struct mcfqspi *mcfqspi, u16 val)
mcfqspi           100 drivers/spi/spi-coldfire-qspi.c 	writew(val, mcfqspi->iobase + MCFQSPI_QDR);
mcfqspi           103 drivers/spi/spi-coldfire-qspi.c static u16 mcfqspi_rd_qdr(struct mcfqspi *mcfqspi)
mcfqspi           105 drivers/spi/spi-coldfire-qspi.c 	return readw(mcfqspi->iobase + MCFQSPI_QDR);
mcfqspi           108 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_cs_select(struct mcfqspi *mcfqspi, u8 chip_select,
mcfqspi           111 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->cs_control->select(mcfqspi->cs_control, chip_select, cs_high);
mcfqspi           114 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_cs_deselect(struct mcfqspi *mcfqspi, u8 chip_select,
mcfqspi           117 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->cs_control->deselect(mcfqspi->cs_control, chip_select, cs_high);
mcfqspi           120 drivers/spi/spi-coldfire-qspi.c static int mcfqspi_cs_setup(struct mcfqspi *mcfqspi)
mcfqspi           122 drivers/spi/spi-coldfire-qspi.c 	return (mcfqspi->cs_control->setup) ?
mcfqspi           123 drivers/spi/spi-coldfire-qspi.c 		mcfqspi->cs_control->setup(mcfqspi->cs_control) : 0;
mcfqspi           126 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_cs_teardown(struct mcfqspi *mcfqspi)
mcfqspi           128 drivers/spi/spi-coldfire-qspi.c 	if (mcfqspi->cs_control->teardown)
mcfqspi           129 drivers/spi/spi-coldfire-qspi.c 		mcfqspi->cs_control->teardown(mcfqspi->cs_control);
mcfqspi           137 drivers/spi/spi-coldfire-qspi.c static bool mcfqspi_qdlyr_spe(struct mcfqspi *mcfqspi)
mcfqspi           139 drivers/spi/spi-coldfire-qspi.c 	return mcfqspi_rd_qdlyr(mcfqspi) & MCFQSPI_QDLYR_SPE;
mcfqspi           144 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = dev_id;
mcfqspi           147 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qir(mcfqspi, MCFQSPI_QIR_SPIFE | MCFQSPI_QIR_SPIF);
mcfqspi           148 drivers/spi/spi-coldfire-qspi.c 	wake_up(&mcfqspi->waitq);
mcfqspi           153 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_transfer_msg8(struct mcfqspi *mcfqspi, unsigned count,
mcfqspi           160 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_CMDBUF);
mcfqspi           162 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdr(mcfqspi, MCFQSPI_QCR_BITSE);
mcfqspi           164 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_TXBUF);
mcfqspi           167 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdr(mcfqspi, *txbuf++);
mcfqspi           170 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdr(mcfqspi, 0);
mcfqspi           175 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, 0x700);
mcfqspi           176 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           179 drivers/spi/spi-coldfire-qspi.c 			wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           180 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qwr(mcfqspi, qwr);
mcfqspi           181 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           183 drivers/spi/spi-coldfire-qspi.c 				mcfqspi_wr_qar(mcfqspi,
mcfqspi           186 drivers/spi/spi-coldfire-qspi.c 					*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           190 drivers/spi/spi-coldfire-qspi.c 				mcfqspi_wr_qar(mcfqspi,
mcfqspi           193 drivers/spi/spi-coldfire-qspi.c 					mcfqspi_wr_qdr(mcfqspi, *txbuf++);
mcfqspi           199 drivers/spi/spi-coldfire-qspi.c 		wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           200 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, qwr);
mcfqspi           201 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           203 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_RXBUF + offset);
mcfqspi           205 drivers/spi/spi-coldfire-qspi.c 				*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           209 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, (n - 1) << 8);
mcfqspi           210 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           212 drivers/spi/spi-coldfire-qspi.c 	wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           214 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_RXBUF + offset);
mcfqspi           216 drivers/spi/spi-coldfire-qspi.c 			*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           220 drivers/spi/spi-coldfire-qspi.c static void mcfqspi_transfer_msg16(struct mcfqspi *mcfqspi, unsigned count,
mcfqspi           227 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_CMDBUF);
mcfqspi           229 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdr(mcfqspi, MCFQSPI_QCR_BITSE);
mcfqspi           231 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_TXBUF);
mcfqspi           234 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdr(mcfqspi, *txbuf++);
mcfqspi           237 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdr(mcfqspi, 0);
mcfqspi           242 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, 0x700);
mcfqspi           243 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           246 drivers/spi/spi-coldfire-qspi.c 			wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           247 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qwr(mcfqspi, qwr);
mcfqspi           248 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           250 drivers/spi/spi-coldfire-qspi.c 				mcfqspi_wr_qar(mcfqspi,
mcfqspi           253 drivers/spi/spi-coldfire-qspi.c 					*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           257 drivers/spi/spi-coldfire-qspi.c 				mcfqspi_wr_qar(mcfqspi,
mcfqspi           260 drivers/spi/spi-coldfire-qspi.c 					mcfqspi_wr_qdr(mcfqspi, *txbuf++);
mcfqspi           266 drivers/spi/spi-coldfire-qspi.c 		wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           267 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, qwr);
mcfqspi           268 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           270 drivers/spi/spi-coldfire-qspi.c 			mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_RXBUF + offset);
mcfqspi           272 drivers/spi/spi-coldfire-qspi.c 				*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           276 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qwr(mcfqspi, (n - 1) << 8);
mcfqspi           277 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qdlyr(mcfqspi, MCFQSPI_QDLYR_SPE);
mcfqspi           279 drivers/spi/spi-coldfire-qspi.c 	wait_event(mcfqspi->waitq, !mcfqspi_qdlyr_spe(mcfqspi));
mcfqspi           281 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_wr_qar(mcfqspi, MCFQSPI_QAR_RXBUF + offset);
mcfqspi           283 drivers/spi/spi-coldfire-qspi.c 			*rxbuf++ = mcfqspi_rd_qdr(mcfqspi);
mcfqspi           289 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(spi->master);
mcfqspi           293 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_cs_select(mcfqspi, spi->chip_select, cs_high);
mcfqspi           295 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_cs_deselect(mcfqspi, spi->chip_select, cs_high);
mcfqspi           302 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           311 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qmr(mcfqspi, qmr);
mcfqspi           313 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qir(mcfqspi, MCFQSPI_QIR_SPIFE);
mcfqspi           315 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_transfer_msg8(mcfqspi, t->len, t->tx_buf, t->rx_buf);
mcfqspi           317 drivers/spi/spi-coldfire-qspi.c 		mcfqspi_transfer_msg16(mcfqspi, t->len / 2, t->tx_buf,
mcfqspi           319 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qir(mcfqspi, 0);
mcfqspi           341 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi;
mcfqspi           356 drivers/spi/spi-coldfire-qspi.c 	master = spi_alloc_master(&pdev->dev, sizeof(*mcfqspi));
mcfqspi           362 drivers/spi/spi-coldfire-qspi.c 	mcfqspi = spi_master_get_devdata(master);
mcfqspi           364 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->iobase = devm_platform_ioremap_resource(pdev, 0);
mcfqspi           365 drivers/spi/spi-coldfire-qspi.c 	if (IS_ERR(mcfqspi->iobase)) {
mcfqspi           366 drivers/spi/spi-coldfire-qspi.c 		status = PTR_ERR(mcfqspi->iobase);
mcfqspi           370 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->irq = platform_get_irq(pdev, 0);
mcfqspi           371 drivers/spi/spi-coldfire-qspi.c 	if (mcfqspi->irq < 0) {
mcfqspi           377 drivers/spi/spi-coldfire-qspi.c 	status = devm_request_irq(&pdev->dev, mcfqspi->irq, mcfqspi_irq_handler,
mcfqspi           378 drivers/spi/spi-coldfire-qspi.c 				0, pdev->name, mcfqspi);
mcfqspi           384 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->clk = devm_clk_get(&pdev->dev, "qspi_clk");
mcfqspi           385 drivers/spi/spi-coldfire-qspi.c 	if (IS_ERR(mcfqspi->clk)) {
mcfqspi           387 drivers/spi/spi-coldfire-qspi.c 		status = PTR_ERR(mcfqspi->clk);
mcfqspi           390 drivers/spi/spi-coldfire-qspi.c 	clk_enable(mcfqspi->clk);
mcfqspi           395 drivers/spi/spi-coldfire-qspi.c 	mcfqspi->cs_control = pdata->cs_control;
mcfqspi           396 drivers/spi/spi-coldfire-qspi.c 	status = mcfqspi_cs_setup(mcfqspi);
mcfqspi           402 drivers/spi/spi-coldfire-qspi.c 	init_waitqueue_head(&mcfqspi->waitq);
mcfqspi           426 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_cs_teardown(mcfqspi);
mcfqspi           428 drivers/spi/spi-coldfire-qspi.c 	clk_disable(mcfqspi->clk);
mcfqspi           440 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           444 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_wr_qmr(mcfqspi, MCFQSPI_QMR_MSTR);
mcfqspi           446 drivers/spi/spi-coldfire-qspi.c 	mcfqspi_cs_teardown(mcfqspi);
mcfqspi           447 drivers/spi/spi-coldfire-qspi.c 	clk_disable(mcfqspi->clk);
mcfqspi           456 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           463 drivers/spi/spi-coldfire-qspi.c 	clk_disable(mcfqspi->clk);
mcfqspi           471 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           473 drivers/spi/spi-coldfire-qspi.c 	clk_enable(mcfqspi->clk);
mcfqspi           483 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           485 drivers/spi/spi-coldfire-qspi.c 	clk_disable(mcfqspi->clk);
mcfqspi           493 drivers/spi/spi-coldfire-qspi.c 	struct mcfqspi *mcfqspi = spi_master_get_devdata(master);
mcfqspi           495 drivers/spi/spi-coldfire-qspi.c 	clk_enable(mcfqspi->clk);