Lines Matching refs:ldma_sg

197 	struct ls2x_dma_sg *ldma_sg;  in ls2x_dma_start_transfer()  local
210 ldma_sg = &lchan->desc->sg[0]; in ls2x_dma_start_transfer()
214 val = (ldma_sg->llp & ~LDMA_CONFIG_MASK) | LDMA_64BIT_EN | LDMA_START; in ls2x_dma_start_transfer()
242 struct ls2x_dma_sg *ldma_sg = &desc->sg[sg_index]; in ls2x_dma_fill_desc() local
246 ldma_sg->hw->cmd = LDMA_INT | LDMA_DATA_DIRECTION; in ls2x_dma_fill_desc()
247 ldma_sg->hw->apb_addr = lchan->sconfig.dst_addr; in ls2x_dma_fill_desc()
249 ldma_sg->hw->cmd = LDMA_INT; in ls2x_dma_fill_desc()
250 ldma_sg->hw->apb_addr = lchan->sconfig.src_addr; in ls2x_dma_fill_desc()
253 ldma_sg->hw->mem_addr = lower_32_bits(ldma_sg->phys); in ls2x_dma_fill_desc()
254 ldma_sg->hw->high_mem_addr = upper_32_bits(ldma_sg->phys); in ls2x_dma_fill_desc()
257 num_segments = DIV_ROUND_UP((ldma_sg->len + 3) >> 2, desc->burst_size); in ls2x_dma_fill_desc()
258 segment_size = DIV_ROUND_UP((ldma_sg->len + 3) >> 2, num_segments); in ls2x_dma_fill_desc()
261 ldma_sg->hw->len = segment_size; in ls2x_dma_fill_desc()
262 ldma_sg->hw->step_times = num_segments; in ls2x_dma_fill_desc()
263 ldma_sg->hw->step_len = 0; in ls2x_dma_fill_desc()
267 desc->sg[sg_index - 1].hw->ndesc_addr = ldma_sg->llp | LDMA_DESC_EN; in ls2x_dma_fill_desc()
268 desc->sg[sg_index - 1].hw->high_ndesc_addr = upper_32_bits(ldma_sg->llp); in ls2x_dma_fill_desc()
347 struct ls2x_dma_sg *ldma_sg = &desc->sg[i]; in ls2x_dma_prep_slave_sg() local
350 ldma_sg->hw = dma_pool_alloc(lchan->pool, GFP_NOWAIT, &ldma_sg->llp); in ls2x_dma_prep_slave_sg()
351 if (!ldma_sg->hw) { in ls2x_dma_prep_slave_sg()
357 ldma_sg->phys = sg_dma_address(sg); in ls2x_dma_prep_slave_sg()
358 ldma_sg->len = sg_dma_len(sg); in ls2x_dma_prep_slave_sg()
413 struct ls2x_dma_sg *ldma_sg = &desc->sg[i]; in ls2x_dma_prep_dma_cyclic() local
416 ldma_sg->hw = dma_pool_alloc(lchan->pool, GFP_NOWAIT, &ldma_sg->llp); in ls2x_dma_prep_dma_cyclic()
417 if (!ldma_sg->hw) { in ls2x_dma_prep_dma_cyclic()
423 ldma_sg->phys = buf_addr + period_len * i; in ls2x_dma_prep_dma_cyclic()
424 ldma_sg->len = period_len; in ls2x_dma_prep_dma_cyclic()