Home
last modified time | relevance | path

Searched refs:period_len (Results 1 – 25 of 39) sorted by relevance

12

/linux-6.1.9/drivers/dma/
Dbcm2835-dma.c225 size_t period_len, in bcm2835_dma_create_cb_set_length() argument
235 if (!period_len) in bcm2835_dma_create_cb_set_length()
247 if (*total_len + control_block->length < period_len) { in bcm2835_dma_create_cb_set_length()
254 control_block->length = period_len - *total_len; in bcm2835_dma_create_cb_set_length()
304 size_t period_len, gfp_t gfp) in bcm2835_dma_create_cb_chain() argument
348 len, period_len, &total_len, in bcm2835_dma_create_cb_chain()
694 size_t period_len, enum dma_transfer_direction direction, in bcm2835_dma_prep_dma_cyclic() argument
721 period_len = buf_len; in bcm2835_dma_prep_dma_cyclic()
727 if (buf_len % period_len) in bcm2835_dma_prep_dma_cyclic()
730 __func__, buf_len, period_len); in bcm2835_dma_prep_dma_cyclic()
[all …]
Dmmp_tdma.c123 size_t period_len; member
424 size_t period_len, enum dma_transfer_direction direction, in mmp_tdma_prep_dma_cyclic() argument
429 int num_periods = buf_len / period_len; in mmp_tdma_prep_dma_cyclic()
442 if (period_len > TDMA_MAX_XFER_BYTES) { in mmp_tdma_prep_dma_cyclic()
445 period_len, TDMA_MAX_XFER_BYTES); in mmp_tdma_prep_dma_cyclic()
474 desc->byte_cnt = period_len; in mmp_tdma_prep_dma_cyclic()
475 dma_addr += period_len; in mmp_tdma_prep_dma_cyclic()
476 buf += period_len; in mmp_tdma_prep_dma_cyclic()
485 tdmac->period_len = period_len; in mmp_tdma_prep_dma_cyclic()
Dapple-admac.c138 size_t period_len; member
248 size_t period_len, enum dma_transfer_direction direction, in admac_prep_dma_cyclic() argument
266 adtx->period_len = period_len; in admac_prep_dma_cyclic()
289 WARN_ON_ONCE(addr + tx->period_len > tx->buf_end); in admac_cyclic_write_one_desc()
292 channo, &addr, tx->period_len, FLAG_DESC_NOTIFY); in admac_cyclic_write_one_desc()
296 writel_relaxed(tx->period_len, ad->base + REG_DESC_WRITE(channo)); in admac_cyclic_write_one_desc()
299 tx->submitted_pos += tx->period_len; in admac_cyclic_write_one_desc()
363 pos = adtx->reclaimed_pos + adtx->period_len * (nreports + 1) - residue2; in admac_cyclic_read_residue()
652 tx->reclaimed_pos += nreports * tx->period_len; in admac_handle_status_desc_done()
Dtegra210-adma.c120 size_t period_len; member
401 return desc->buf_len - (periods_remaining * desc->period_len); in tegra_adma_get_residue()
621 ch_regs->tc = desc->period_len & ADMA_CH_TC_COUNT_MASK; in tegra_adma_set_xfer_params()
628 size_t period_len, enum dma_transfer_direction direction, in tegra_adma_prep_dma_cyclic() argument
634 if (!buf_len || !period_len || period_len > ADMA_CH_TC_COUNT_MASK) { in tegra_adma_prep_dma_cyclic()
639 if (buf_len % period_len) { in tegra_adma_prep_dma_cyclic()
654 desc->period_len = period_len; in tegra_adma_prep_dma_cyclic()
655 desc->num_periods = buf_len / period_len; in tegra_adma_prep_dma_cyclic()
Ddma-axi-dmac.c498 unsigned int num_periods, unsigned int period_len, in axi_dmac_fill_linear_sg() argument
506 num_segments = DIV_ROUND_UP(period_len, chan->max_length); in axi_dmac_fill_linear_sg()
507 segment_size = DIV_ROUND_UP(period_len, num_segments); in axi_dmac_fill_linear_sg()
512 len = period_len; in axi_dmac_fill_linear_sg()
582 size_t period_len, enum dma_transfer_direction direction, in axi_dmac_prep_dma_cyclic() argument
596 if (period_len == 0 || buf_len % period_len) in axi_dmac_prep_dma_cyclic()
599 num_periods = buf_len / period_len; in axi_dmac_prep_dma_cyclic()
600 num_segments = DIV_ROUND_UP(period_len, chan->max_length); in axi_dmac_prep_dma_cyclic()
607 period_len, desc->sg); in axi_dmac_prep_dma_cyclic()
Dmxs-dma.c576 size_t period_len, enum dma_transfer_direction direction, in mxs_dma_prep_dma_cyclic() argument
581 u32 num_periods = buf_len / period_len; in mxs_dma_prep_dma_cyclic()
598 if (period_len > MAX_XFER_BYTES) { in mxs_dma_prep_dma_cyclic()
601 period_len, MAX_XFER_BYTES); in mxs_dma_prep_dma_cyclic()
614 ccw->xfer_bytes = period_len; in mxs_dma_prep_dma_cyclic()
625 dma_addr += period_len; in mxs_dma_prep_dma_cyclic()
626 buf += period_len; in mxs_dma_prep_dma_cyclic()
Dat_hdmac.c1195 size_t period_len) in atc_dma_cyclic_check_values() argument
1197 if (period_len > (ATC_BTSIZE_MAX << reg_width)) in atc_dma_cyclic_check_values()
1199 if (unlikely(period_len & ((1 << reg_width) - 1))) in atc_dma_cyclic_check_values()
1216 unsigned int reg_width, size_t period_len, in atc_dma_cyclic_fill_desc() argument
1228 | period_len >> reg_width; in atc_dma_cyclic_fill_desc()
1232 desc->lli.saddr = buf_addr + (period_len * period_index); in atc_dma_cyclic_fill_desc()
1240 desc->len = period_len; in atc_dma_cyclic_fill_desc()
1245 desc->lli.daddr = buf_addr + (period_len * period_index); in atc_dma_cyclic_fill_desc()
1252 desc->len = period_len; in atc_dma_cyclic_fill_desc()
1273 size_t period_len, enum dma_transfer_direction direction, in atc_prep_dma_cyclic() argument
[all …]
Dst_fdma.c449 size_t period_len, enum dma_transfer_direction direction, in st_fdma_prep_dma_cyclic() argument
460 if (!period_len) in st_fdma_prep_dma_cyclic()
469 if (len % period_len != 0) { in st_fdma_prep_dma_cyclic()
474 sg_len = len / period_len; in st_fdma_prep_dma_cyclic()
495 hw_node->saddr = buf_addr + (i * period_len); in st_fdma_prep_dma_cyclic()
497 hw_node->daddr = buf_addr + (i * period_len); in st_fdma_prep_dma_cyclic()
499 hw_node->nbytes = period_len; in st_fdma_prep_dma_cyclic()
500 hw_node->generic.length = period_len; in st_fdma_prep_dma_cyclic()
Dstm32-dma.c1157 size_t period_len, enum dma_transfer_direction direction, in stm32_dma_prep_dma_cyclic() argument
1166 if (!buf_len || !period_len) { in stm32_dma_prep_dma_cyclic()
1176 if (buf_len % period_len) { in stm32_dma_prep_dma_cyclic()
1192 ret = stm32_dma_set_xfer_param(chan, direction, &buswidth, period_len, in stm32_dma_prep_dma_cyclic()
1197 nb_data_items = period_len / buswidth; in stm32_dma_prep_dma_cyclic()
1204 if (buf_len == period_len) { in stm32_dma_prep_dma_cyclic()
1214 num_periods = buf_len / period_len; in stm32_dma_prep_dma_cyclic()
1221 desc->sg_req[i].len = period_len; in stm32_dma_prep_dma_cyclic()
1230 desc->sg_req[i].chan_reg.dma_sm1ar += period_len; in stm32_dma_prep_dma_cyclic()
1233 buf_addr += period_len; in stm32_dma_prep_dma_cyclic()
[all …]
Dmmp_pdma.c606 dma_addr_t buf_addr, size_t len, size_t period_len, in mmp_pdma_prep_dma_cyclic() argument
614 if (!dchan || !len || !period_len) in mmp_pdma_prep_dma_cyclic()
618 if (len % period_len != 0) in mmp_pdma_prep_dma_cyclic()
621 if (period_len > PDMA_MAX_DESC_BYTES) in mmp_pdma_prep_dma_cyclic()
652 (DCMD_LENGTH & period_len)); in mmp_pdma_prep_dma_cyclic()
665 len -= period_len; in mmp_pdma_prep_dma_cyclic()
668 dma_src += period_len; in mmp_pdma_prep_dma_cyclic()
670 dma_dst += period_len; in mmp_pdma_prep_dma_cyclic()
Dpxa_dma.c1013 dma_addr_t buf_addr, size_t len, size_t period_len, in pxad_prep_dma_cyclic() argument
1023 if (!dchan || !len || !period_len) in pxad_prep_dma_cyclic()
1031 if (len % period_len != 0 || period_len > PDMA_MAX_DESC_BYTES || in pxad_prep_dma_cyclic()
1032 !IS_ALIGNED(period_len, 1 << PDMA_ALIGNMENT)) in pxad_prep_dma_cyclic()
1036 dcmd |= PXA_DCMD_ENDIRQEN | (PXA_DCMD_LENGTH & period_len); in pxad_prep_dma_cyclic()
1039 __func__, (unsigned long)buf_addr, len, period_len, dir, flags); in pxad_prep_dma_cyclic()
1041 nb_desc = DIV_ROUND_UP(period_len, PDMA_MAX_DESC_BYTES); in pxad_prep_dma_cyclic()
1042 nb_desc *= DIV_ROUND_UP(len, period_len); in pxad_prep_dma_cyclic()
1056 dma += period_len; in pxad_prep_dma_cyclic()
1057 len -= period_len; in pxad_prep_dma_cyclic()
Dimx-sdma.c391 unsigned int period_len; member
882 bd->mode.count = desc->period_len; in sdma_update_channel_loop()
1676 size_t period_len, enum dma_transfer_direction direction, in sdma_prep_dma_cyclic() argument
1681 int num_periods = buf_len / period_len; in sdma_prep_dma_cyclic()
1694 desc->period_len = period_len; in sdma_prep_dma_cyclic()
1698 if (period_len > SDMA_BD_MAX_CNT) { in sdma_prep_dma_cyclic()
1700 channel, period_len, SDMA_BD_MAX_CNT); in sdma_prep_dma_cyclic()
1710 bd->mode.count = period_len; in sdma_prep_dma_cyclic()
1724 i, period_len, (u64)dma_addr, in sdma_prep_dma_cyclic()
1730 dma_addr += period_len; in sdma_prep_dma_cyclic()
[all …]
Dstm32-mdma.c846 size_t buf_len, size_t period_len, in stm32_mdma_prep_dma_cyclic() argument
870 if (!buf_len || !period_len || period_len > STM32_MDMA_MAX_BLOCK_LEN) { in stm32_mdma_prep_dma_cyclic()
875 if (buf_len % period_len) { in stm32_mdma_prep_dma_cyclic()
880 count = buf_len / period_len; in stm32_mdma_prep_dma_cyclic()
890 &ctbr, src_addr, period_len); in stm32_mdma_prep_dma_cyclic()
896 &ctbr, dst_addr, period_len); in stm32_mdma_prep_dma_cyclic()
912 src_addr = buf_addr + i * period_len; in stm32_mdma_prep_dma_cyclic()
915 dst_addr += period_len; in stm32_mdma_prep_dma_cyclic()
919 src_addr += period_len; in stm32_mdma_prep_dma_cyclic()
920 dst_addr = buf_addr + i * period_len; in stm32_mdma_prep_dma_cyclic()
[all …]
Dsun4i-dma.c673 size_t period_len, enum dma_transfer_direction dir, in sun4i_dma_prep_dma_cyclic() argument
754 if (vchan->is_dedicated || period_len <= SUN4I_NDMA_MAX_SEG_SIZE / 2) { in sun4i_dma_prep_dma_cyclic()
755 period_len *= 2; in sun4i_dma_prep_dma_cyclic()
759 nr_periods = DIV_ROUND_UP(len, period_len); in sun4i_dma_prep_dma_cyclic()
762 offset = i * period_len; in sun4i_dma_prep_dma_cyclic()
763 plength = min((len - offset), period_len); in sun4i_dma_prep_dma_cyclic()
Dk3dma.c589 size_t buf_len, size_t period_len, in k3_dma_prep_dma_cyclic() argument
603 buf_len, period_len, (int)dir); in k3_dma_prep_dma_cyclic()
620 if (period_len < modulo) in k3_dma_prep_dma_cyclic()
621 modulo = period_len; in k3_dma_prep_dma_cyclic()
634 if (since >= period_len) { in k3_dma_prep_dma_cyclic()
637 since -= period_len; in k3_dma_prep_dma_cyclic()
Ddma-jz4780.c409 size_t period_len, enum dma_transfer_direction direction, in jz4780_dma_prep_dma_cyclic() argument
417 if (buf_len % period_len) in jz4780_dma_prep_dma_cyclic()
420 periods = buf_len / period_len; in jz4780_dma_prep_dma_cyclic()
428 period_len, direction); in jz4780_dma_prep_dma_cyclic()
434 buf_addr += period_len; in jz4780_dma_prep_dma_cyclic()
Dep93xx_dma.c1118 size_t buf_len, size_t period_len, in ep93xx_dma_prep_dma_cyclic() argument
1137 if (period_len > DMA_MAX_CHAN_BYTES) { in ep93xx_dma_prep_dma_cyclic()
1139 period_len); in ep93xx_dma_prep_dma_cyclic()
1147 for (offset = 0; offset < buf_len; offset += period_len) { in ep93xx_dma_prep_dma_cyclic()
1162 desc->size = period_len; in ep93xx_dma_prep_dma_cyclic()
Dowl-dma.c982 size_t period_len, in owl_prep_dma_cyclic() argument
992 unsigned int periods = buf_len / period_len; in owl_prep_dma_cyclic()
1010 src = buf_addr + (period_len * i); in owl_prep_dma_cyclic()
1014 dst = buf_addr + (period_len * i); in owl_prep_dma_cyclic()
1017 ret = owl_dma_cfg_lli(vchan, lli, src, dst, period_len, in owl_prep_dma_cyclic()
Dfsl-edma-common.c458 size_t period_len, enum dma_transfer_direction direction, in fsl_edma_prep_dma_cyclic() argument
474 sg_len = buf_len / period_len; in fsl_edma_prep_dma_cyclic()
494 iter = period_len / nbytes; in fsl_edma_prep_dma_cyclic()
518 dma_buf_next += period_len; in fsl_edma_prep_dma_cyclic()
Dimx-dma.c850 size_t period_len, enum dma_transfer_direction direction, in imxdma_prep_dma_cyclic() argument
857 unsigned int periods = buf_len / period_len; in imxdma_prep_dma_cyclic()
860 __func__, imxdmac->channel, buf_len, period_len); in imxdma_prep_dma_cyclic()
881 sg_dma_len(&imxdmac->sg_list[i]) = period_len; in imxdma_prep_dma_cyclic()
882 dma_addr += period_len; in imxdma_prep_dma_cyclic()
/linux-6.1.9/drivers/dma/sh/
Dshdma-base.c693 size_t period_len, enum dma_transfer_direction direction, in shdma_prep_dma_cyclic() argument
700 unsigned int sg_len = buf_len / period_len; in shdma_prep_dma_cyclic()
718 if (slave_id < 0 || (buf_len < period_len)) { in shdma_prep_dma_cyclic()
721 __func__, buf_len, period_len, slave_id); in shdma_prep_dma_cyclic()
738 dma_addr_t src = buf_addr + (period_len * i); in shdma_prep_dma_cyclic()
740 sg_set_page(&sgl[i], pfn_to_page(PFN_DOWN(src)), period_len, in shdma_prep_dma_cyclic()
743 sg_dma_len(&sgl[i]) = period_len; in shdma_prep_dma_cyclic()
Drcar-dmac.c1225 size_t buf_len, size_t period_len, in rcar_dmac_prep_dma_cyclic() argument
1235 if (rchan->mid_rid < 0 || buf_len < period_len) { in rcar_dmac_prep_dma_cyclic()
1238 __func__, buf_len, period_len, rchan->mid_rid); in rcar_dmac_prep_dma_cyclic()
1245 sg_len = buf_len / period_len; in rcar_dmac_prep_dma_cyclic()
1264 dma_addr_t src = buf_addr + (period_len * i); in rcar_dmac_prep_dma_cyclic()
1266 sg_set_page(&sgl[i], pfn_to_page(PFN_DOWN(src)), period_len, in rcar_dmac_prep_dma_cyclic()
1269 sg_dma_len(&sgl[i]) = period_len; in rcar_dmac_prep_dma_cyclic()
/linux-6.1.9/drivers/dma/ti/
Dedma.c1307 size_t period_len, enum dma_transfer_direction direction, in edma_prep_dma_cyclic() argument
1319 if (unlikely(!echan || !buf_len || !period_len)) in edma_prep_dma_cyclic()
1342 if (unlikely(buf_len % period_len)) { in edma_prep_dma_cyclic()
1347 nslots = (buf_len / period_len) + 1; in edma_prep_dma_cyclic()
1364 if (burst == period_len) { in edma_prep_dma_cyclic()
1365 period_len = buf_len; in edma_prep_dma_cyclic()
1384 __func__, echan->ch_num, nslots, period_len, buf_len); in edma_prep_dma_cyclic()
1406 dst_addr, burst, dev_width, period_len, in edma_prep_dma_cyclic()
1414 dst_addr += period_len; in edma_prep_dma_cyclic()
1416 src_addr += period_len; in edma_prep_dma_cyclic()
/linux-6.1.9/drivers/dma/xilinx/
Dxilinx_dma.c603 size_t period_len) in xilinx_axidma_buf() argument
606 hw->buf_addr = lower_32_bits(buf_addr + sg_used + period_len); in xilinx_axidma_buf()
608 period_len); in xilinx_axidma_buf()
610 hw->buf_addr = buf_addr + sg_used + period_len; in xilinx_axidma_buf()
2242 size_t period_len, enum dma_transfer_direction direction, in xilinx_dma_prep_dma_cyclic() argument
2253 if (!period_len) in xilinx_dma_prep_dma_cyclic()
2256 num_periods = buf_len / period_len; in xilinx_dma_prep_dma_cyclic()
2276 while (sg_used < period_len) { in xilinx_dma_prep_dma_cyclic()
2288 copy = xilinx_dma_calc_copysize(chan, period_len, in xilinx_dma_prep_dma_cyclic()
2292 period_len * i); in xilinx_dma_prep_dma_cyclic()
/linux-6.1.9/drivers/dma/dw-axi-dmac/
Ddw-axi-dmac-platform.c714 size_t buf_len, size_t period_len, in dw_axi_dma_chan_prep_cyclic() argument
731 num_periods = buf_len / period_len; in dw_axi_dma_chan_prep_cyclic()
737 num_segments = DIV_ROUND_UP(period_len, axi_block_len); in dw_axi_dma_chan_prep_cyclic()
738 segment_len = DIV_ROUND_UP(period_len, num_segments); in dw_axi_dma_chan_prep_cyclic()
750 desc->period_len = period_len; in dw_axi_dma_chan_prep_cyclic()
1080 if (((hw_desc->len * (i + 1)) % desc->period_len) == 0) in axi_chan_block_xfer_complete()

12