| /linux-6.15/drivers/i3c/master/mipi-i3c-hci/ |
| H A D | dat.h | 19 int (*init)(struct i3c_hci *hci); 20 void (*cleanup)(struct i3c_hci *hci); 21 int (*alloc_entry)(struct i3c_hci *hci); 22 void (*free_entry)(struct i3c_hci *hci, unsigned int dat_idx); 23 void (*set_dynamic_addr)(struct i3c_hci *hci, unsigned int dat_idx, u8 addr); 24 void (*set_static_addr)(struct i3c_hci *hci, unsigned int dat_idx, u8 addr); 25 void (*set_flags)(struct i3c_hci *hci, unsigned int dat_idx, u32 w0, u32 w1); 26 void (*clear_flags)(struct i3c_hci *hci, unsigned int dat_idx, u32 w0, u32 w1); 27 int (*get_index)(struct i3c_hci *hci, u8 address);
|
| H A D | hci.h | 38 struct i3c_hci { struct 118 bool (*irq_handler)(struct i3c_hci *hci); 121 int (*request_ibi)(struct i3c_hci *hci, struct i3c_dev_desc *dev, 123 void (*free_ibi)(struct i3c_hci *hci, struct i3c_dev_desc *dev); 126 int (*init)(struct i3c_hci *hci); 127 void (*cleanup)(struct i3c_hci *hci); 149 void mipi_i3c_hci_resume(struct i3c_hci *hci); 150 void mipi_i3c_hci_pio_reset(struct i3c_hci *hci); 151 void mipi_i3c_hci_dct_index_reset(struct i3c_hci *hci); 152 void amd_set_od_pp_timing(struct i3c_hci *hci); [all …]
|
| H A D | ext_caps.c | 24 static int hci_extcap_hardware_id(struct i3c_hci *hci, void __iomem *base) in hci_extcap_hardware_id() 45 static int hci_extcap_master_config(struct i3c_hci *hci, void __iomem *base) in hci_extcap_master_config() 59 static int hci_extcap_multi_bus(struct i3c_hci *hci, void __iomem *base) in hci_extcap_multi_bus() 68 static int hci_extcap_xfer_modes(struct i3c_hci *hci, void __iomem *base) in hci_extcap_xfer_modes() 88 static int hci_extcap_xfer_rates(struct i3c_hci *hci, void __iomem *base) in hci_extcap_xfer_rates() 130 static int hci_extcap_debug(struct i3c_hci *hci, void __iomem *base) in hci_extcap_debug() 157 static int hci_extcap_global_DAT(struct i3c_hci *hci, void __iomem *base) in hci_extcap_global_DAT() 163 static int hci_extcap_multilane(struct i3c_hci *hci, void __iomem *base) in hci_extcap_multilane() 178 int (*parser)(struct i3c_hci *hci, void __iomem *base); 214 int (*parser)(struct i3c_hci *hci, void __iomem *base); [all …]
|
| H A D | dat_v1.c | 43 static int hci_dat_v1_init(struct i3c_hci *hci) in hci_dat_v1_init() 74 static void hci_dat_v1_cleanup(struct i3c_hci *hci) in hci_dat_v1_cleanup() 80 static int hci_dat_v1_alloc_entry(struct i3c_hci *hci) in hci_dat_v1_alloc_entry() 101 static void hci_dat_v1_free_entry(struct i3c_hci *hci, unsigned int dat_idx) in hci_dat_v1_free_entry() 109 static void hci_dat_v1_set_dynamic_addr(struct i3c_hci *hci, in hci_dat_v1_set_dynamic_addr() 121 static void hci_dat_v1_set_static_addr(struct i3c_hci *hci, in hci_dat_v1_set_static_addr() 132 static void hci_dat_v1_set_flags(struct i3c_hci *hci, unsigned int dat_idx, in hci_dat_v1_set_flags() 145 static void hci_dat_v1_clear_flags(struct i3c_hci *hci, unsigned int dat_idx, in hci_dat_v1_clear_flags() 158 static int hci_dat_v1_get_index(struct i3c_hci *hci, u8 dev_addr) in hci_dat_v1_get_index()
|
| H A D | core.c | 120 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_bus_init() 159 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_bus_cleanup() 191 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_send_ccc_cmd() 268 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_daa() 308 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_priv_xfers() 373 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_i2c_xfers() 422 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_attach_i3c_dev() 448 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_reattach_i3c_dev() 462 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_detach_i3c_dev() 588 struct i3c_hci *hci = dev_id; in i3c_hci_irq_handler() [all …]
|
| H A D | pio.c | 139 static int hci_pio_init(struct i3c_hci *hci) in hci_pio_init() 209 static void hci_pio_cleanup(struct i3c_hci *hci) in hci_pio_cleanup() 241 static bool hci_pio_do_rx(struct i3c_hci *hci, struct hci_pio_data *pio) in hci_pio_do_rx() 266 static void hci_pio_do_trailing_rx(struct i3c_hci *hci, in hci_pio_do_trailing_rx() 473 static void hci_pio_err(struct i3c_hci *hci, struct hci_pio_data *pio, 621 static bool hci_pio_dequeue_xfer_common(struct i3c_hci *hci, in hci_pio_dequeue_xfer_common() 699 static void hci_pio_err(struct i3c_hci *hci, struct hci_pio_data *pio, in hci_pio_err() 740 static void hci_pio_set_ibi_thresh(struct i3c_hci *hci, in hci_pio_set_ibi_thresh() 756 static bool hci_pio_get_ibi_segment(struct i3c_hci *hci, in hci_pio_get_ibi_segment() 972 static void hci_pio_recycle_ibi_slot(struct i3c_hci *hci, in hci_pio_recycle_ibi_slot() [all …]
|
| H A D | cmd.h | 54 int (*prep_ccc)(struct i3c_hci *hci, struct hci_xfer *xfer, 56 void (*prep_i3c_xfer)(struct i3c_hci *hci, struct i3c_dev_desc *dev, 58 void (*prep_i2c_xfer)(struct i3c_hci *hci, struct i2c_dev_desc *dev, 60 int (*perform_daa)(struct i3c_hci *hci);
|
| H A D | cmd_v2.c | 66 static unsigned int get_i3c_rate_idx(struct i3c_hci *hci) in get_i3c_rate_idx() 83 static unsigned int get_i2c_rate_idx(struct i3c_hci *hci) in get_i2c_rate_idx() 92 static void hci_cmd_v2_prep_private_xfer(struct i3c_hci *hci, in hci_cmd_v2_prep_private_xfer() 151 static int hci_cmd_v2_prep_ccc(struct i3c_hci *hci, struct hci_xfer *xfer, in hci_cmd_v2_prep_ccc() 217 static void hci_cmd_v2_prep_i3c_xfer(struct i3c_hci *hci, in hci_cmd_v2_prep_i3c_xfer() 228 static void hci_cmd_v2_prep_i2c_xfer(struct i3c_hci *hci, in hci_cmd_v2_prep_i2c_xfer() 239 static int hci_cmd_v2_daa(struct i3c_hci *hci) in hci_cmd_v2_daa()
|
| H A D | hci_quirks.c | 25 void amd_set_od_pp_timing(struct i3c_hci *hci) in amd_set_od_pp_timing() 37 void amd_set_resp_buf_thld(struct i3c_hci *hci) in amd_set_resp_buf_thld()
|
| H A D | cmd_v1.c | 122 static enum hci_cmd_mode get_i3c_mode(struct i3c_hci *hci) in get_i3c_mode() 137 static enum hci_cmd_mode get_i2c_mode(struct i3c_hci *hci) in get_i2c_mode() 170 static int hci_cmd_v1_prep_ccc(struct i3c_hci *hci, in hci_cmd_v1_prep_ccc() 220 static void hci_cmd_v1_prep_i3c_xfer(struct i3c_hci *hci, in hci_cmd_v1_prep_i3c_xfer() 255 static void hci_cmd_v1_prep_i2c_xfer(struct i3c_hci *hci, in hci_cmd_v1_prep_i2c_xfer() 290 static int hci_cmd_v1_daa(struct i3c_hci *hci) in hci_cmd_v1_daa()
|
| H A D | dma.c | 150 static void hci_dma_cleanup(struct i3c_hci *hci) in hci_dma_cleanup() 193 static int hci_dma_init(struct i3c_hci *hci) in hci_dma_init() 342 static void hci_dma_unmap_xfer(struct i3c_hci *hci, in hci_dma_unmap_xfer() 358 static int hci_dma_queue_xfer(struct i3c_hci *hci, in hci_dma_queue_xfer() 445 static bool hci_dma_dequeue_xfer(struct i3c_hci *hci, in hci_dma_dequeue_xfer() 500 static void hci_dma_xfer_done(struct i3c_hci *hci, struct hci_rh_data *rh) in hci_dma_xfer_done() 546 static int hci_dma_request_ibi(struct i3c_hci *hci, struct i3c_dev_desc *dev, in hci_dma_request_ibi() 567 static void hci_dma_free_ibi(struct i3c_hci *hci, struct i3c_dev_desc *dev) in hci_dma_free_ibi() 577 static void hci_dma_recycle_ibi_slot(struct i3c_hci *hci, in hci_dma_recycle_ibi_slot() 587 static void hci_dma_process_ibi(struct i3c_hci *hci, struct hci_rh_data *rh) in hci_dma_process_ibi() [all …]
|
| H A D | ext_caps.h | 17 int i3c_hci_parse_ext_caps(struct i3c_hci *hci);
|
| H A D | dct.h | 13 void i3c_hci_dct_get_val(struct i3c_hci *hci, unsigned int dct_idx,
|
| H A D | dct_v1.c | 20 void i3c_hci_dct_get_val(struct i3c_hci *hci, unsigned int dct_idx, in i3c_hci_dct_get_val()
|
| H A D | ibi.h | 30 i3c_hci_addr_to_dev(struct i3c_hci *hci, unsigned int addr) in i3c_hci_addr_to_dev()
|