hci_xfer
int (*prep_ccc)(struct i3c_hci *hci, struct hci_xfer *xfer,
struct hci_xfer *xfer);
struct hci_xfer *xfer);
static void fill_data_bytes(struct hci_xfer *xfer, u8 *data,
struct hci_xfer *xfer,
struct hci_xfer *xfer)
struct hci_xfer *xfer)
struct hci_xfer *xfer;
static int hci_cmd_v2_prep_ccc(struct i3c_hci *hci, struct hci_xfer *xfer,
struct hci_xfer *xfer)
struct hci_xfer *xfer)
struct hci_xfer *xfer;
struct hci_xfer *xfer,
int i3c_hci_process_xfer(struct i3c_hci *hci, struct hci_xfer *xfer, int n)
struct hci_xfer *xfer;
struct hci_xfer *xfer;
struct hci_xfer *xfer;
struct hci_xfer **src_xfers;
struct hci_xfer *xfer_list, unsigned int n)
struct hci_xfer *xfer;
static struct i3c_dma *hci_dma_map_xfer(struct device *dev, struct hci_xfer *xfer)
struct hci_xfer *xfer_list, int n)
struct hci_xfer *xfer = xfer_list + i;
struct hci_xfer *xfer_list, int n)
struct hci_xfer *xfer = xfer_list + i;
struct hci_xfer *xfer_list, int n)
struct hci_xfer *xfer = xfer_list + i;
static int hci_dma_handle_error(struct i3c_hci *hci, struct hci_xfer *xfer_list, int n)
struct hci_xfer *xfer;
static inline struct hci_xfer *hci_alloc_xfer(unsigned int n)
return kzalloc_objs(struct hci_xfer, n);
static inline void hci_free_xfer(struct hci_xfer *xfer, unsigned int n)
int (*queue_xfer)(struct i3c_hci *hci, struct hci_xfer *xfer, int n);
bool (*dequeue_xfer)(struct i3c_hci *hci, struct hci_xfer *xfer, int n);
int (*handle_error)(struct i3c_hci *hci, struct hci_xfer *xfer, int n);
int i3c_hci_process_xfer(struct i3c_hci *hci, struct hci_xfer *xfer, int n);
struct hci_xfer *next_xfer;
struct hci_xfer *next_data;
struct hci_xfer *next_resp;
struct hci_xfer *curr_xfer, *xfer_queue;
struct hci_xfer *curr_rx, *rx_queue;
struct hci_xfer *curr_tx, *tx_queue;
struct hci_xfer *curr_resp, *resp_queue;
static void hci_pio_write_cmd(struct i3c_hci *hci, struct hci_xfer *xfer)
struct hci_xfer *xfer = pio->curr_rx;
struct hci_xfer *xfer = pio->curr_rx;
struct hci_xfer *xfer = pio->curr_tx;
struct hci_xfer *xfer = pio->curr_xfer;
struct hci_xfer *prev_queue_tail;
static void hci_pio_push_to_next_rx(struct i3c_hci *hci, struct hci_xfer *xfer,
struct hci_xfer *xfer = pio->curr_resp;
struct hci_xfer *xfer = pio->curr_xfer;
struct hci_xfer *prev_queue_tail;
static int hci_pio_queue_xfer(struct i3c_hci *hci, struct hci_xfer *xfer, int n)
struct hci_xfer *prev_queue_tail;
struct hci_xfer *xfer, int n)
struct hci_xfer *p, **p_prev_next;
static bool hci_pio_dequeue_xfer(struct i3c_hci *hci, struct hci_xfer *xfer, int n)