Lines Matching defs:spi_controller

521 struct spi_controller {  struct
522 struct device dev;
524 struct list_head list;
533 s16 bus_num;
539 u16 num_chipselect;
544 u16 dma_alignment;
547 u32 mode_bits;
550 u32 buswidth_override_bits;
553 u32 bits_per_word_mask;
558 u32 min_speed_hz;
559 u32 max_speed_hz;
562 u16 flags;
572 bool devm_allocated;
574 union {
585 size_t (*max_transfer_size)(struct spi_device *spi);
586 size_t (*max_message_size)(struct spi_device *spi);
589 struct mutex io_mutex;
592 struct mutex add_lock;
595 spinlock_t bus_lock_spinlock;
596 struct mutex bus_lock_mutex;
599 bool bus_lock_flag;
608 int (*setup)(struct spi_device *spi);
618 int (*set_cs_timing)(struct spi_device *spi);
643 /* Called on release() to free memory provided by spi_controller */ argument
653 bool (*can_dma)(struct spi_controller *ctlr, argument
656 struct device *dma_map_dev;
657 struct device *cur_rx_dma_dev;
658 struct device *cur_tx_dma_dev;
686 int (*prepare_transfer_hardware)(struct spi_controller *ctlr); argument
687 int (*transfer_one_message)(struct spi_controller *ctlr, argument
689 int (*unprepare_transfer_hardware)(struct spi_controller *ctlr); argument
690 int (*prepare_message)(struct spi_controller *ctlr, argument
692 int (*unprepare_message)(struct spi_controller *ctlr, argument
695 int (*slave_abort)(struct spi_controller *ctlr); argument
704 int (*transfer_one)(struct spi_controller *ctlr, struct spi_device *spi, argument
706 void (*handle_err)(struct spi_controller *ctlr, argument
710 const struct spi_controller_mem_ops *mem_ops; argument
711 const struct spi_controller_mem_caps *mem_caps; argument
730 int (*fw_translate_cs)(struct spi_controller *ctlr, unsigned cs); argument
746 static inline void *spi_controller_get_devdata(struct spi_controller *ctlr) in spi_controller_get_devdata() argument