• Home
  • Raw
  • Download

Lines Matching refs:master

384 		for (i = 0; i < spi->master->num_chipselect; i++) {  in cs_activate()
444 static bool atmel_spi_can_dma(struct spi_master *master, in atmel_spi_can_dma() argument
448 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_can_dma()
457 struct spi_master *master = platform_get_drvdata(as->pdev); in atmel_spi_dma_slave_config() local
489 if (dmaengine_slave_config(master->dma_tx, slave_config)) { in atmel_spi_dma_slave_config()
504 if (dmaengine_slave_config(master->dma_rx, slave_config)) { in atmel_spi_dma_slave_config()
513 static int atmel_spi_configure_dma(struct spi_master *master, in atmel_spi_configure_dma() argument
524 master->dma_tx = dma_request_slave_channel_reason(dev, "tx"); in atmel_spi_configure_dma()
525 if (IS_ERR(master->dma_tx)) { in atmel_spi_configure_dma()
526 err = PTR_ERR(master->dma_tx); in atmel_spi_configure_dma()
541 master->dma_rx = dma_request_slave_channel(dev, "rx"); in atmel_spi_configure_dma()
543 if (!master->dma_rx) { in atmel_spi_configure_dma()
556 dma_chan_name(master->dma_tx), in atmel_spi_configure_dma()
557 dma_chan_name(master->dma_rx)); in atmel_spi_configure_dma()
561 if (master->dma_rx) in atmel_spi_configure_dma()
562 dma_release_channel(master->dma_rx); in atmel_spi_configure_dma()
563 if (!IS_ERR(master->dma_tx)) in atmel_spi_configure_dma()
564 dma_release_channel(master->dma_tx); in atmel_spi_configure_dma()
566 master->dma_tx = master->dma_rx = NULL; in atmel_spi_configure_dma()
570 static void atmel_spi_stop_dma(struct spi_master *master) in atmel_spi_stop_dma() argument
572 if (master->dma_rx) in atmel_spi_stop_dma()
573 dmaengine_terminate_all(master->dma_rx); in atmel_spi_stop_dma()
574 if (master->dma_tx) in atmel_spi_stop_dma()
575 dmaengine_terminate_all(master->dma_tx); in atmel_spi_stop_dma()
578 static void atmel_spi_release_dma(struct spi_master *master) in atmel_spi_release_dma() argument
580 if (master->dma_rx) { in atmel_spi_release_dma()
581 dma_release_channel(master->dma_rx); in atmel_spi_release_dma()
582 master->dma_rx = NULL; in atmel_spi_release_dma()
584 if (master->dma_tx) { in atmel_spi_release_dma()
585 dma_release_channel(master->dma_tx); in atmel_spi_release_dma()
586 master->dma_tx = NULL; in atmel_spi_release_dma()
593 struct spi_master *master = data; in dma_callback() local
594 struct atmel_spi *as = spi_master_get_devdata(master); in dma_callback()
602 static void atmel_spi_next_xfer_single(struct spi_master *master, in atmel_spi_next_xfer_single() argument
605 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_next_xfer_single()
608 dev_vdbg(master->dev.parent, "atmel_spi_next_xfer_pio\n"); in atmel_spi_next_xfer_single()
622 dev_dbg(master->dev.parent, in atmel_spi_next_xfer_single()
634 static void atmel_spi_next_xfer_fifo(struct spi_master *master, in atmel_spi_next_xfer_fifo() argument
637 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_next_xfer_fifo()
645 dev_vdbg(master->dev.parent, "atmel_spi_next_xfer_fifo\n"); in atmel_spi_next_xfer_fifo()
689 dev_dbg(master->dev.parent, in atmel_spi_next_xfer_fifo()
704 static void atmel_spi_next_xfer_pio(struct spi_master *master, in atmel_spi_next_xfer_pio() argument
707 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_next_xfer_pio()
710 atmel_spi_next_xfer_fifo(master, xfer); in atmel_spi_next_xfer_pio()
712 atmel_spi_next_xfer_single(master, xfer); in atmel_spi_next_xfer_pio()
718 static int atmel_spi_next_xfer_dma_submit(struct spi_master *master, in atmel_spi_next_xfer_dma_submit() argument
722 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_next_xfer_dma_submit()
723 struct dma_chan *rxchan = master->dma_rx; in atmel_spi_next_xfer_dma_submit()
724 struct dma_chan *txchan = master->dma_tx; in atmel_spi_next_xfer_dma_submit()
730 dev_vdbg(master->dev.parent, "atmel_spi_next_xfer_dma_submit\n"); in atmel_spi_next_xfer_dma_submit()
760 dev_dbg(master->dev.parent, in atmel_spi_next_xfer_dma_submit()
770 rxdesc->callback_param = master; in atmel_spi_next_xfer_dma_submit()
788 atmel_spi_stop_dma(master); in atmel_spi_next_xfer_dma_submit()
794 static void atmel_spi_next_xfer_data(struct spi_master *master, in atmel_spi_next_xfer_data() argument
802 if (*plen > master->max_dma_len) in atmel_spi_next_xfer_data()
803 *plen = master->max_dma_len; in atmel_spi_next_xfer_data()
851 static void atmel_spi_pdc_next_xfer(struct spi_master *master, in atmel_spi_pdc_next_xfer() argument
855 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_pdc_next_xfer()
862 atmel_spi_next_xfer_data(master, xfer, &tx_dma, &rx_dma, &len); in atmel_spi_pdc_next_xfer()
881 atmel_spi_next_xfer_data(master, xfer, &tx_dma, &rx_dma, &len); in atmel_spi_pdc_next_xfer()
952 static void atmel_spi_dma_unmap_xfer(struct spi_master *master, in atmel_spi_dma_unmap_xfer() argument
956 dma_unmap_single(master->dev.parent, xfer->tx_dma, in atmel_spi_dma_unmap_xfer()
959 dma_unmap_single(master->dev.parent, xfer->rx_dma, in atmel_spi_dma_unmap_xfer()
1049 struct spi_master *master = dev_id; in atmel_spi_pio_interrupt() local
1050 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_pio_interrupt()
1062 dev_warn(master->dev.parent, "overrun\n"); in atmel_spi_pio_interrupt()
1107 struct spi_master *master = dev_id; in atmel_spi_pdc_interrupt() local
1108 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_pdc_interrupt()
1149 as = spi_master_get_devdata(spi->master); in atmel_spi_setup()
1208 static int atmel_spi_one_transfer(struct spi_master *master, in atmel_spi_one_transfer() argument
1221 as = spi_master_get_devdata(master); in atmel_spi_one_transfer()
1255 atmel_spi_pdc_next_xfer(master, msg, xfer); in atmel_spi_one_transfer()
1258 ret = atmel_spi_next_xfer_dma_submit(master, in atmel_spi_one_transfer()
1263 atmel_spi_next_xfer_pio(master, xfer); in atmel_spi_one_transfer()
1270 atmel_spi_next_xfer_pio(master, xfer); in atmel_spi_one_transfer()
1289 dev_warn(master->dev.parent, in atmel_spi_one_transfer()
1305 dev_warn(master->dev.parent, in atmel_spi_one_transfer()
1314 atmel_spi_stop_dma(master); in atmel_spi_one_transfer()
1319 atmel_spi_dma_unmap_xfer(master, xfer); in atmel_spi_one_transfer()
1330 atmel_spi_dma_unmap_xfer(master, xfer); in atmel_spi_one_transfer()
1349 static int atmel_spi_transfer_one_message(struct spi_master *master, in atmel_spi_transfer_one_message() argument
1357 as = spi_master_get_devdata(master); in atmel_spi_transfer_one_message()
1371 ret = atmel_spi_one_transfer(master, msg, xfer); in atmel_spi_transfer_one_message()
1394 spi_finalize_current_message(spi->master); in atmel_spi_transfer_one_message()
1450 struct spi_master *master = platform_get_drvdata(pdev); in atmel_spi_gpio_cs() local
1451 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_gpio_cs()
1452 struct device_node *np = master->dev.of_node; in atmel_spi_gpio_cs()
1509 struct spi_master *master; in atmel_spi_probe() local
1529 master = spi_alloc_master(&pdev->dev, sizeof(*as)); in atmel_spi_probe()
1530 if (!master) in atmel_spi_probe()
1534 master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; in atmel_spi_probe()
1535 master->bits_per_word_mask = SPI_BPW_RANGE_MASK(8, 16); in atmel_spi_probe()
1536 master->dev.of_node = pdev->dev.of_node; in atmel_spi_probe()
1537 master->bus_num = pdev->id; in atmel_spi_probe()
1538 master->num_chipselect = master->dev.of_node ? 0 : 4; in atmel_spi_probe()
1539 master->setup = atmel_spi_setup; in atmel_spi_probe()
1540 master->flags = (SPI_MASTER_MUST_RX | SPI_MASTER_MUST_TX); in atmel_spi_probe()
1541 master->transfer_one_message = atmel_spi_transfer_one_message; in atmel_spi_probe()
1542 master->cleanup = atmel_spi_cleanup; in atmel_spi_probe()
1543 master->auto_runtime_pm = true; in atmel_spi_probe()
1544 master->max_dma_len = SPI_MAX_DMA_XFER; in atmel_spi_probe()
1545 master->can_dma = atmel_spi_can_dma; in atmel_spi_probe()
1546 platform_set_drvdata(pdev, master); in atmel_spi_probe()
1548 as = spi_master_get_devdata(master); in atmel_spi_probe()
1571 master->num_chipselect = 4; in atmel_spi_probe()
1581 ret = atmel_spi_configure_dma(master, as); in atmel_spi_probe()
1596 0, dev_name(&pdev->dev), master); in atmel_spi_probe()
1599 0, dev_name(&pdev->dev), master); in atmel_spi_probe()
1624 ret = devm_spi_register_master(&pdev->dev, master); in atmel_spi_probe()
1640 atmel_spi_release_dma(master); in atmel_spi_probe()
1648 spi_master_put(master); in atmel_spi_probe()
1654 struct spi_master *master = platform_get_drvdata(pdev); in atmel_spi_remove() local
1655 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_remove()
1661 atmel_spi_stop_dma(master); in atmel_spi_remove()
1662 atmel_spi_release_dma(master); in atmel_spi_remove()
1682 struct spi_master *master = dev_get_drvdata(dev); in atmel_spi_runtime_suspend() local
1683 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_runtime_suspend()
1693 struct spi_master *master = dev_get_drvdata(dev); in atmel_spi_runtime_resume() local
1694 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_runtime_resume()
1704 struct spi_master *master = dev_get_drvdata(dev); in atmel_spi_suspend() local
1708 ret = spi_master_suspend(master); in atmel_spi_suspend()
1722 struct spi_master *master = dev_get_drvdata(dev); in atmel_spi_resume() local
1723 struct atmel_spi *as = spi_master_get_devdata(master); in atmel_spi_resume()
1741 ret = spi_master_resume(master); in atmel_spi_resume()