Lines Matching defs:host
64 snprintf(name, 32, "dw_spi%d", dws->host->bus_num);
186 dev_err(&dws->host->dev, "RX FIFO overflow detected\n");
191 dev_err(&dws->host->dev, "RX FIFO underflow detected\n");
196 dev_err(&dws->host->dev, "TX FIFO overflow detected\n");
203 if (dws->host->cur_msg)
204 dws->host->cur_msg->status = ret;
216 spi_finalize_current_transfer(dws->host);
230 spi_finalize_current_transfer(dws->host);
251 struct spi_controller *host = dev_id;
252 struct dw_spi *dws = spi_controller_get_devdata(host);
258 if (!host->cur_msg) {
411 static int dw_spi_transfer_one(struct spi_controller *host,
415 struct dw_spi *dws = spi_controller_get_devdata(host);
443 if (host->can_dma && host->can_dma(host, spi, transfer))
444 dws->dma_mapped = host->cur_msg_mapped;
467 static void dw_spi_handle_err(struct spi_controller *host,
470 struct dw_spi *dws = spi_controller_get_devdata(host);
579 dev_err(&dws->host->dev, "CS de-assertion on Tx\n");
599 dev_err(&dws->host->dev, "FIFO overflow on Rx\n");
640 dev_err(&dws->host->dev, "Mem op hanged up\n");
887 struct spi_controller *host;
893 host = spi_alloc_host(dev, 0);
894 if (!host)
897 device_set_node(&host->dev, dev_fwnode(dev));
899 dws->host = host;
902 spi_controller_set_devdata(host, dws);
908 host);
916 host->use_gpio_descriptors = true;
917 host->mode_bits = SPI_CPOL | SPI_CPHA | SPI_LOOP;
919 host->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 32);
921 host->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 16);
922 host->bus_num = dws->bus_num;
923 host->num_chipselect = dws->num_cs;
924 host->setup = dw_spi_setup;
925 host->cleanup = dw_spi_cleanup;
927 host->set_cs = dws->set_cs;
929 host->set_cs = dw_spi_set_cs;
930 host->transfer_one = dw_spi_transfer_one;
931 host->handle_err = dw_spi_handle_err;
933 host->mem_ops = &dws->mem_ops;
934 host->max_speed_hz = dws->max_freq;
935 host->flags = SPI_CONTROLLER_GPIO_SS;
936 host->auto_runtime_pm = true;
949 host->can_dma = dws->dma_ops->can_dma;
950 host->flags |= SPI_CONTROLLER_MUST_TX;
954 ret = spi_register_controller(host);
956 dev_err_probe(dev, ret, "problem registering spi host\n");
968 free_irq(dws->irq, host);
970 spi_controller_put(host);
979 spi_unregister_controller(dws->host);
986 free_irq(dws->irq, dws->host);
994 ret = spi_controller_suspend(dws->host);
1005 dw_spi_hw_init(&dws->host->dev, dws);
1006 return spi_controller_resume(dws->host);