Lines Matching refs:master

142 	struct spi_master	*master;
319 static int pic32_sqi_prepare_hardware(struct spi_master *master)
321 struct pic32_sqi *sqi = spi_master_get_devdata(master);
331 static bool pic32_sqi_can_dma(struct spi_master *master,
339 static int pic32_sqi_one_message(struct spi_master *master,
350 sqi = spi_master_get_devdata(master);
415 dev_err(&sqi->master->dev, "wait timedout/interrupted\n");
437 spi_finalize_current_message(spi->master);
442 static int pic32_sqi_unprepare_hardware(struct spi_master *master)
444 struct pic32_sqi *sqi = spi_master_get_devdata(master);
461 sqi->bd = dma_alloc_coherent(&sqi->master->dev,
465 dev_err(&sqi->master->dev, "failed allocating dma buffer\n");
472 dma_free_coherent(&sqi->master->dev,
501 dma_free_coherent(&sqi->master->dev,
571 struct spi_master *master;
575 master = spi_alloc_master(&pdev->dev, sizeof(*sqi));
576 if (!master)
579 sqi = spi_master_get_devdata(master);
580 sqi->master = master;
643 /* register master */
644 master->num_chipselect = 2;
645 master->max_speed_hz = clk_get_rate(sqi->base_clk);
646 master->dma_alignment = 32;
647 master->max_dma_len = PESQI_BD_BUF_LEN_MAX;
648 master->dev.of_node = pdev->dev.of_node;
649 master->mode_bits = SPI_MODE_3 | SPI_MODE_0 | SPI_TX_DUAL |
651 master->flags = SPI_MASTER_HALF_DUPLEX;
652 master->can_dma = pic32_sqi_can_dma;
653 master->bits_per_word_mask = SPI_BPW_RANGE_MASK(8, 32);
654 master->transfer_one_message = pic32_sqi_one_message;
655 master->prepare_transfer_hardware = pic32_sqi_prepare_hardware;
656 master->unprepare_transfer_hardware = pic32_sqi_unprepare_hardware;
658 ret = devm_spi_register_master(&pdev->dev, master);
660 dev_err(&master->dev, "failed registering spi master\n");
677 spi_master_put(master);