| /linux/drivers/dma/ |
| H A D | ste_dma40_ll.c | 133 static int d40_phy_fill_lli(struct d40_phy_lli *lli, in d40_phy_fill_lli() argument 161 lli->reg_elt = (data_size / data_width) << D40_SREG_ELEM_PHY_ECNT_POS; in d40_phy_fill_lli() 168 lli->reg_elt |= data_width << D40_SREG_ELEM_PHY_EIDX_POS; in d40_phy_fill_lli() 171 lli->reg_ptr = data; in d40_phy_fill_lli() 172 lli->reg_cfg = reg_cfg; in d40_phy_fill_lli() 176 lli->reg_lnk = BIT(D40_SREG_LNK_PHY_TCP_POS); in d40_phy_fill_lli() 178 lli->reg_lnk = next_lli; in d40_phy_fill_lli() 182 lli->reg_cfg |= BIT(D40_SREG_CFG_TIM_POS); in d40_phy_fill_lli() 184 lli->reg_cfg &= ~BIT(D40_SREG_CFG_TIM_POS); in d40_phy_fill_lli() 213 d40_phy_buf_to_lli(struct d40_phy_lli *lli, dma_addr_t addr, u32 size, in d40_phy_buf_to_lli() argument [all …]
|
| H A D | loongson1-apb-dma.c | 193 struct ls1x_dma_lli *lli, *_lli; in ls1x_dma_free_desc() local 195 list_for_each_entry_safe(lli, _lli, &desc->lli_list, node) { in ls1x_dma_free_desc() 196 list_del(&lli->node); in ls1x_dma_free_desc() 197 dma_pool_free(chan->lli_pool, lli, lli->phys); in ls1x_dma_free_desc() 221 struct ls1x_dma_lli *lli, *prev = NULL, *first = NULL; in ls1x_dma_prep_lli() local 255 lli = dma_pool_zalloc(chan->lli_pool, GFP_NOWAIT, &phys); in ls1x_dma_prep_lli() 256 if (!lli) { in ls1x_dma_prep_lli() 262 lli->phys = phys; in ls1x_dma_prep_lli() 263 lli->hw[LS1X_DMADESC_SADDR] = buf_addr; in ls1x_dma_prep_lli() 264 lli->hw[LS1X_DMADESC_DADDR] = dev_addr; in ls1x_dma_prep_lli() [all …]
|
| H A D | at_hdmac.c | 216 struct at_lli *lli; member 413 static void atc_dump_lli(struct at_dma_chan *atchan, struct at_lli *lli) in atc_dump_lli() argument 417 &lli->saddr, &lli->daddr, in atc_dump_lli() 418 lli->ctrla, lli->ctrlb, &lli->dscr); in atc_dump_lli() 482 u32 ctrlb = desc->sg[i].lli->ctrlb; in set_lli_eol() 487 desc->sg[i].lli->ctrlb = ctrlb; in set_lli_eol() 488 desc->sg[i].lli->dscr = 0; in set_lli_eol() 551 desc->sg[i - 1].lli->dscr = atdma_sg->lli_phys; in atdma_lli_chain() 599 if (desc->sg[i].lli) in atdma_desc_free() 600 dma_pool_free(atdma->lli_pool, desc->sg[i].lli, in atdma_desc_free() [all …]
|
| H A D | k3dma.c | 61 u32 lli; member 163 writel_relaxed(hw->lli, phy->base + CX_LLI); in k3_dma_set_desc() 412 if (!ds->desc_hw[index].lli) in k3_dma_tx_status() 450 ds->desc_hw[num].lli = ds->desc_hw_lli + (num + 1) * in k3_dma_fill_desc() 453 ds->desc_hw[num].lli |= CX_LLI_CHAIN_EN; in k3_dma_fill_desc() 526 ds->desc_hw[num-1].lli = 0; /* end of link */ in k3_dma_prep_memcpy() 581 ds->desc_hw[num-1].lli = 0; /* end of link */ in k3_dma_prep_slave_sg() 647 ds->desc_hw[num - 1].lli |= ds->desc_hw_lli; in k3_dma_prep_dma_cyclic()
|
| H A D | amba-pl08x.c | 392 struct pl08x_phy_chan *phychan, const u32 *lli, u32 ccfg) in pl08x_write_lli() argument 398 phychan->id, lli[PL080_LLI_SRC], lli[PL080_LLI_DST], in pl08x_write_lli() 399 lli[PL080_LLI_LLI], lli[PL080_LLI_CCTL], in pl08x_write_lli() 400 lli[PL080S_LLI_CCTL2], ccfg); in pl08x_write_lli() 405 phychan->id, lli[PL080_LLI_SRC], lli[PL080_LLI_DST], in pl08x_write_lli() 406 lli[PL080_LLI_LLI], lli[PL080_LLI_CCTL], ccfg); in pl08x_write_lli() 408 writel_relaxed(lli[PL080_LLI_SRC], phychan->reg_src); in pl08x_write_lli() 409 writel_relaxed(lli[PL080_LLI_DST], phychan->reg_dst); in pl08x_write_lli() 410 writel_relaxed(lli[PL080_LLI_LLI], phychan->reg_lli); in pl08x_write_lli() 419 u32 llictl = lli[PL080_LLI_CCTL]; in pl08x_write_lli() [all …]
|
| H A D | idma64.h | 107 struct idma64_lli *lli; member
|
| H A D | ste_dma40_ll.h | 444 struct d40_phy_lli *lli,
|
| H A D | ste_dma40.c | 854 struct d40_log_lli_bidir *lli = &desc->lli_log; in d40_log_lli_to_lcxa() local 900 &lli->dst[lli_current], in d40_log_lli_to_lcxa() 901 &lli->src[lli_current], in d40_log_lli_to_lcxa() 928 &lli->dst[lli_current], in d40_log_lli_to_lcxa() 929 &lli->src[lli_current], in d40_log_lli_to_lcxa() 938 &lli->dst[lli_current], in d40_log_lli_to_lcxa() 939 &lli->src[lli_current], in d40_log_lli_to_lcxa()
|
| /linux/drivers/dma/dw-edma/ |
| H A D | dw-hdma-v0-core.c | 161 struct dw_hdma_v0_lli *lli = chunk->ll_region.vaddr.mem + ofs; in dw_hdma_v0_write_ll_data() local 163 lli->control = control; in dw_hdma_v0_write_ll_data() 164 lli->transfer_size = size; in dw_hdma_v0_write_ll_data() 165 lli->sar.reg = sar; in dw_hdma_v0_write_ll_data() 166 lli->dar.reg = dar; in dw_hdma_v0_write_ll_data() 168 struct dw_hdma_v0_lli __iomem *lli = chunk->ll_region.vaddr.io + ofs; in dw_hdma_v0_write_ll_data() local 170 writel(control, &lli->control); in dw_hdma_v0_write_ll_data() 171 writel(size, &lli->transfer_size); in dw_hdma_v0_write_ll_data() 172 writeq(sar, &lli->sar.reg); in dw_hdma_v0_write_ll_data() 173 writeq(dar, &lli->dar.reg); in dw_hdma_v0_write_ll_data()
|
| H A D | dw-edma-v0-core.c | 285 struct dw_edma_v0_lli *lli = chunk->ll_region.vaddr.mem + ofs; in dw_edma_v0_write_ll_data() local 287 lli->control = control; in dw_edma_v0_write_ll_data() 288 lli->transfer_size = size; in dw_edma_v0_write_ll_data() 289 lli->sar.reg = sar; in dw_edma_v0_write_ll_data() 290 lli->dar.reg = dar; in dw_edma_v0_write_ll_data() 292 struct dw_edma_v0_lli __iomem *lli = chunk->ll_region.vaddr.io + ofs; in dw_edma_v0_write_ll_data() local 294 writel(control, &lli->control); in dw_edma_v0_write_ll_data() 295 writel(size, &lli->transfer_size); in dw_edma_v0_write_ll_data() 296 writeq(sar, &lli->sar.reg); in dw_edma_v0_write_ll_data() 297 writeq(dar, &lli->dar.reg); in dw_edma_v0_write_ll_data()
|
| /linux/drivers/dma/dw/ |
| H A D | regs.h | 386 struct dw_lli lli; member 388 #define lli_set(d, reg, v) ((d)->lli.reg |= cpu_to_le32(v)) 389 #define lli_clear(d, reg, v) ((d)->lli.reg &= ~cpu_to_le32(v)) 390 #define lli_read(d, reg) le32_to_cpu((d)->lli.reg) 391 #define lli_write(d, reg, v) ((d)->lli.reg = cpu_to_le32(v))
|
| H A D | core.c | 602 prev->lli.llp = 0; in dwc_prep_dma_memcpy() 750 prev->lli.llp = 0; in dwc_prep_slave_sg()
|
| /linux/drivers/net/ethernet/chelsio/cxgb4/ |
| H A D | cxgb4_uld.c | 511 struct cxgb4_lld_info *lli) in uld_queue_init() argument 517 lli->rxq_ids = rxq_info->rspq_id; in uld_queue_init() 518 lli->nrxq = rxq_info->nrxq; in uld_queue_init() 519 lli->ciq_ids = rxq_info->rspq_id + rxq_info->nrxq; in uld_queue_init() 520 lli->nciq = rxq_info->nciq; in uld_queue_init() 521 lli->ntxq = txq_info->ntxq; in uld_queue_init() 646 struct cxgb4_lld_info lli; in uld_attach() local 649 uld_init(adap, &lli); in uld_attach() 650 uld_queue_init(adap, uld, &lli); in uld_attach() 652 handle = adap->uld[uld].add(&lli); in uld_attach()
|
| /linux/drivers/dma/stm32/ |
| H A D | stm32-dma3.c | 274 struct stm32_dma3_lli lli[] __counted_by(lli_size); 376 hwdesc = swdesc->lli[i].hwdesc; in stm32_dma3_chan_dump_hwdesc() 379 dev_dbg(chan2dev(chan), "[%d]@%pad\n", i, &swdesc->lli[i].hwdesc_addr); in stm32_dma3_chan_dump_hwdesc() 390 dev_dbg(chan2dev(chan), "-->[0]@%pad\n", &swdesc->lli[0].hwdesc_addr); in stm32_dma3_chan_dump_hwdesc() 412 swdesc = kzalloc(struct_size(swdesc, lli, count), GFP_NOWAIT); in stm32_dma3_chan_desc_alloc() 418 swdesc->lli[i].hwdesc = dma_pool_zalloc(chan->lli_pool, GFP_NOWAIT, in stm32_dma3_chan_desc_alloc() 419 &swdesc->lli[i].hwdesc_addr); in stm32_dma3_chan_desc_alloc() 420 if (!swdesc->lli[i].hwdesc) in stm32_dma3_chan_desc_alloc() 426 writel_relaxed(swdesc->lli[0].hwdesc_addr & CLBAR_LBA, in stm32_dma3_chan_desc_alloc() 437 dma_pool_free(chan->lli_pool, swdesc->lli[i].hwdesc, swdesc->lli[i].hwdesc_addr); in stm32_dma3_chan_desc_alloc() [all …]
|
| /linux/arch/arm/boot/dts/st/ |
| H A D | ste-nomadik-stn8815.dtsi | 862 lli-bus-interface-ahb1; 863 lli-bus-interface-ahb2; 876 lli-bus-interface-ahb1; 877 lli-bus-interface-ahb2;
|
| /linux/arch/arm/boot/dts/gemini/ |
| H A D | gemini.dtsi | 421 lli-bus-interface-ahb2;
|