Lines Matching refs:ldesc
191 static inline void mdc_set_read_width(struct mdc_hw_list_desc *ldesc, in mdc_set_read_width() argument
194 ldesc->gen_conf |= to_mdc_width(bytes) << in mdc_set_read_width()
198 static inline void mdc_set_write_width(struct mdc_hw_list_desc *ldesc, in mdc_set_write_width() argument
201 ldesc->gen_conf |= to_mdc_width(bytes) << in mdc_set_write_width()
206 struct mdc_hw_list_desc *ldesc, in mdc_list_desc_config() argument
213 ldesc->gen_conf = MDC_GENERAL_CONFIG_IEN | MDC_GENERAL_CONFIG_LIST_IEN | in mdc_list_desc_config()
216 ldesc->readport_conf = in mdc_list_desc_config()
220 ldesc->read_addr = src; in mdc_list_desc_config()
221 ldesc->write_addr = dst; in mdc_list_desc_config()
222 ldesc->xfer_size = len - 1; in mdc_list_desc_config()
223 ldesc->node_addr = 0; in mdc_list_desc_config()
224 ldesc->cmds_done = 0; in mdc_list_desc_config()
225 ldesc->ctrl_status = MDC_CONTROL_AND_STATUS_LIST_EN | in mdc_list_desc_config()
227 ldesc->next_desc = NULL; in mdc_list_desc_config()
236 ldesc->gen_conf |= MDC_GENERAL_CONFIG_INC_R; in mdc_list_desc_config()
237 ldesc->readport_conf |= MDC_READ_PORT_CONFIG_DREQ_ENABLE; in mdc_list_desc_config()
238 mdc_set_read_width(ldesc, mdma->bus_width); in mdc_list_desc_config()
239 mdc_set_write_width(ldesc, mchan->config.dst_addr_width); in mdc_list_desc_config()
243 ldesc->gen_conf |= MDC_GENERAL_CONFIG_INC_W; in mdc_list_desc_config()
244 ldesc->readport_conf |= MDC_READ_PORT_CONFIG_DREQ_ENABLE; in mdc_list_desc_config()
245 mdc_set_read_width(ldesc, mchan->config.src_addr_width); in mdc_list_desc_config()
246 mdc_set_write_width(ldesc, mdma->bus_width); in mdc_list_desc_config()
250 ldesc->gen_conf |= MDC_GENERAL_CONFIG_INC_R | in mdc_list_desc_config()
252 mdc_set_read_width(ldesc, mdma->bus_width); in mdc_list_desc_config()
253 mdc_set_write_width(ldesc, mdma->bus_width); in mdc_list_desc_config()
256 ldesc->readport_conf |= (burst_size - 1) << in mdc_list_desc_config()
594 struct mdc_hw_list_desc *ldesc; in mdc_tx_status() local
630 ldesc = mdesc->list; in mdc_tx_status()
632 bytes -= ldesc->xfer_size + 1; in mdc_tx_status()
633 ldesc = ldesc->next_desc; in mdc_tx_status()
635 if (ldesc) { in mdc_tx_status()
637 bytes -= ldesc->xfer_size - residue; in mdc_tx_status()
639 bytes -= ldesc->xfer_size + 1; in mdc_tx_status()