Lines Matching refs:ctlr

357 	struct spi_controller *ctlr = dev_id;
358 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
372 spi_finalize_current_transfer(ctlr);
398 spi_finalize_current_transfer(ctlr);
406 static int cdns_prepare_message(struct spi_controller *ctlr,
409 if (!spi_controller_is_target(ctlr))
416 * @ctlr: Pointer to spi_controller structure
427 static int cdns_transfer_one(struct spi_controller *ctlr,
431 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
438 if (!spi_controller_is_target(ctlr)) {
462 * @ctlr: Pointer to the spi_controller structure which provides
469 static int cdns_prepare_transfer_hardware(struct spi_controller *ctlr)
471 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
480 * @ctlr: Pointer to the spi_controller structure which provides
488 static int cdns_unprepare_transfer_hardware(struct spi_controller *ctlr)
490 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
494 if (spi_controller_is_target(ctlr)) {
502 if (ctrl_reg == CDNS_SPI_NOSS || spi_controller_is_target(ctlr))
530 * @ctlr: Pointer to the spi_controller structure
536 static int cdns_target_abort(struct spi_controller *ctlr)
538 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
544 spi_finalize_current_transfer(ctlr);
560 struct spi_controller *ctlr;
567 ctlr = spi_alloc_target(&pdev->dev, sizeof(*xspi));
569 ctlr = spi_alloc_host(&pdev->dev, sizeof(*xspi));
571 if (!ctlr)
574 xspi = spi_controller_get_devdata(ctlr);
575 ctlr->dev.of_node = pdev->dev.of_node;
576 platform_set_drvdata(pdev, ctlr);
597 if (!spi_controller_is_target(ctlr)) {
619 ctlr->num_chipselect = CDNS_SPI_DEFAULT_NUM_CS;
621 ctlr->num_chipselect = num_cs;
632 cdns_spi_init_hw(xspi, spi_controller_is_target(ctlr));
641 0, pdev->name, ctlr);
648 ctlr->use_gpio_descriptors = true;
649 ctlr->prepare_transfer_hardware = cdns_prepare_transfer_hardware;
650 ctlr->prepare_message = cdns_prepare_message;
651 ctlr->transfer_one = cdns_transfer_one;
652 ctlr->unprepare_transfer_hardware = cdns_unprepare_transfer_hardware;
653 ctlr->mode_bits = SPI_CPOL | SPI_CPHA;
654 ctlr->bits_per_word_mask = SPI_BPW_MASK(8);
656 if (!spi_controller_is_target(ctlr)) {
657 ctlr->mode_bits |= SPI_CS_HIGH;
658 ctlr->set_cs = cdns_spi_chipselect;
659 ctlr->auto_runtime_pm = true;
662 ctlr->max_speed_hz = xspi->clk_rate / 4;
663 xspi->speed_hz = ctlr->max_speed_hz;
667 ctlr->mode_bits |= SPI_NO_CS;
668 ctlr->target_abort = cdns_target_abort;
670 ret = spi_register_controller(ctlr);
679 if (!spi_controller_is_target(ctlr)) {
687 spi_controller_put(ctlr);
701 struct spi_controller *ctlr = platform_get_drvdata(pdev);
702 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
711 spi_unregister_controller(ctlr);
725 struct spi_controller *ctlr = dev_get_drvdata(dev);
727 return spi_controller_suspend(ctlr);
740 struct spi_controller *ctlr = dev_get_drvdata(dev);
741 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
743 cdns_spi_init_hw(xspi, spi_controller_is_target(ctlr));
744 return spi_controller_resume(ctlr);
757 struct spi_controller *ctlr = dev_get_drvdata(dev);
758 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);
786 struct spi_controller *ctlr = dev_get_drvdata(dev);
787 struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);