Lines Matching defs:spi
8 // This code is based on spi-dw-core.c.
20 #include <linux/spi/spi.h>
24 #define HISI_SPI_CR 0x04 /* spi common control register */
25 #define HISI_SPI_ENR 0x08 /* spi enable register */
314 static u32 hisi_spi_prepare_cr(struct spi_device *spi)
318 cr |= FIELD_PREP(CR_CPHA_MASK, (spi->mode & SPI_CPHA) ? 1 : 0);
319 cr |= FIELD_PREP(CR_CPOL_MASK, (spi->mode & SPI_CPOL) ? 1 : 0);
320 cr |= FIELD_PREP(CR_LOOP_MASK, (spi->mode & SPI_LOOP) ? 1 : 0);
377 struct spi_device *spi, struct spi_transfer *transfer)
380 struct hisi_chip_data *chip = spi_get_ctldata(spi);
426 static int hisi_spi_setup(struct spi_device *spi)
431 chip = spi_get_ctldata(spi);
436 spi_set_ctldata(spi, chip);
439 chip->cr = hisi_spi_prepare_cr(spi);
444 static void hisi_spi_cleanup(struct spi_device *spi)
446 struct hisi_chip_data *chip = spi_get_ctldata(spi);
449 spi_set_ctldata(spi, NULL);
478 ret = device_property_read_u32(dev, "spi-max-frequency",
512 dev_err(dev, "failed to register spi host, ret=%d\n", ret);
545 .name = "hisi-kunpeng-spi",