Lines Matching defs:spi_controller
550 struct spi_controller { struct
551 struct device dev;
553 struct list_head list;
562 s16 bus_num;
568 u16 num_chipselect;
573 u16 dma_alignment;
576 u32 mode_bits;
579 u32 buswidth_override_bits;
582 u32 bits_per_word_mask;
587 u32 min_speed_hz;
588 u32 max_speed_hz;
591 u16 flags;
606 bool devm_allocated;
608 union {
619 size_t (*max_transfer_size)(struct spi_device *spi);
620 size_t (*max_message_size)(struct spi_device *spi);
623 struct mutex io_mutex;
626 struct mutex add_lock;
629 spinlock_t bus_lock_spinlock;
630 struct mutex bus_lock_mutex;
633 bool bus_lock_flag;
642 int (*setup)(struct spi_device *spi);
652 int (*set_cs_timing)(struct spi_device *spi);
677 /* Called on release() to free memory provided by spi_controller */ argument
687 bool (*can_dma)(struct spi_controller *ctlr, argument
690 struct device *dma_map_dev;
691 struct device *cur_rx_dma_dev;
692 struct device *cur_tx_dma_dev;
722 int (*prepare_transfer_hardware)(struct spi_controller *ctlr); argument
723 int (*transfer_one_message)(struct spi_controller *ctlr, argument
725 int (*unprepare_transfer_hardware)(struct spi_controller *ctlr); argument
726 int (*prepare_message)(struct spi_controller *ctlr, argument
728 int (*unprepare_message)(struct spi_controller *ctlr, argument
730 int (*target_abort)(struct spi_controller *ctlr); argument
737 int (*transfer_one)(struct spi_controller *ctlr, struct spi_device *spi, argument
739 void (*handle_err)(struct spi_controller *ctlr, argument
743 const struct spi_controller_mem_ops *mem_ops; argument
744 const struct spi_controller_mem_caps *mem_caps; argument
767 int (*fw_translate_cs)(struct spi_controller *ctlr, unsigned cs); argument
784 static inline void *spi_controller_get_devdata(struct spi_controller *ctlr) in spi_controller_get_devdata() argument