Home
last modified time | relevance | path

Searched refs:dmamux (Results 1 – 9 of 9) sorted by relevance

/drivers/dma/
A Dlpc18xx-dmamux.c87 if (dmamux->muxes[mux].busy) { in lpc18xx_dmamux_reserve()
95 dmamux->muxes[mux].busy = true; in lpc18xx_dmamux_reserve()
109 return &dmamux->muxes[mux]; in lpc18xx_dmamux_reserve()
118 dmamux = devm_kzalloc(&pdev->dev, sizeof(*dmamux), GFP_KERNEL); in lpc18xx_dmamux_probe()
119 if (!dmamux) in lpc18xx_dmamux_probe()
123 if (IS_ERR(dmamux->reg)) { in lpc18xx_dmamux_probe()
125 return PTR_ERR(dmamux->reg); in lpc18xx_dmamux_probe()
149 dmamux->muxes = devm_kcalloc(&pdev->dev, dmamux->dma_master_requests, in lpc18xx_dmamux_probe()
152 if (!dmamux->muxes) in lpc18xx_dmamux_probe()
155 spin_lock_init(&dmamux->lock); in lpc18xx_dmamux_probe()
[all …]
A Dlpc32xx-dmamux.c85 guard(spinlock)(&dmamux->lock); in lpc32xx_dmamux_release()
130 spin_lock_irqsave(&dmamux->lock, flags); in lpc32xx_dmamux_reserve()
157 struct lpc32xx_dmamux_data *dmamux; in lpc32xx_dmamux_probe() local
159 dmamux = devm_kzalloc(&pdev->dev, sizeof(*dmamux), GFP_KERNEL); in lpc32xx_dmamux_probe()
160 if (!dmamux) in lpc32xx_dmamux_probe()
164 if (IS_ERR(dmamux->reg)) { in lpc32xx_dmamux_probe()
166 return PTR_ERR(dmamux->reg); in lpc32xx_dmamux_probe()
169 spin_lock_init(&dmamux->lock); in lpc32xx_dmamux_probe()
170 platform_set_drvdata(pdev, dmamux); in lpc32xx_dmamux_probe()
171 dmamux->dmarouter.dev = &pdev->dev; in lpc32xx_dmamux_probe()
[all …]
A Dcv1800b-dmamux.c81 guard(spinlock_irqsave)(&dmamux->lock); in cv1800_dmamux_free()
83 regmap_update_bits(dmamux->regmap, in cv1800_dmamux_free()
88 regmap_update_bits(dmamux->regmap, REG_DMA_INT_MUX, in cv1800_dmamux_free()
132 spin_lock_irqsave(&dmamux->lock, flags); in cv1800_dmamux_route_allocate()
134 if (test_bit(devid, dmamux->mapped_peripherals)) { in cv1800_dmamux_route_allocate()
143 node = llist_del_first(&dmamux->free_maps); in cv1800_dmamux_route_allocate()
150 llist_add(&map->node, &dmamux->reserve_maps); in cv1800_dmamux_route_allocate()
151 set_bit(devid, dmamux->mapped_peripherals); in cv1800_dmamux_route_allocate()
159 regmap_set_bits(dmamux->regmap, in cv1800_dmamux_route_allocate()
167 spin_unlock_irqrestore(&dmamux->lock, flags); in cv1800_dmamux_route_allocate()
[all …]
A DMakefile54 obj-$(CONFIG_LPC18XX_DMAMUX) += lpc18xx-dmamux.o
55 obj-$(CONFIG_LPC32XX_DMAMUX) += lpc32xx-dmamux.o
74 obj-$(CONFIG_SOPHGO_CV1800B_DMAMUX) += cv1800b-dmamux.o
/drivers/dma/stm32/
A Dstm32-dmamux.c71 spin_lock_irqsave(&dmamux->lock, flags); in stm32_dmamux_free()
74 clear_bit(mux->chan_id, dmamux->dma_inuse); in stm32_dmamux_free()
78 spin_unlock_irqrestore(&dmamux->lock, flags); in stm32_dmamux_free()
111 spin_lock_irqsave(&dmamux->lock, flags); in stm32_dmamux_route_allocate()
113 dmamux->dma_requests); in stm32_dmamux_route_allocate()
115 if (mux->chan_id == dmamux->dma_requests) { in stm32_dmamux_route_allocate()
121 set_bit(mux->chan_id, dmamux->dma_inuse); in stm32_dmamux_route_allocate()
126 i <= dmamux->dma_reqs[0]; in stm32_dmamux_route_allocate()
127 min += dmamux->dma_reqs[i], max += dmamux->dma_reqs[++i]) in stm32_dmamux_route_allocate()
141 spin_lock_irqsave(&dmamux->lock, flags); in stm32_dmamux_route_allocate()
[all …]
A DMakefile3 obj-$(CONFIG_STM32_DMAMUX) += stm32-dmamux.o
/drivers/dma/dw/
A Drzn1-dmamux.c31 struct rzn1_dmamux_data *dmamux = dev_get_drvdata(dev); in rzn1_dmamux_free() local
36 clear_bit(map->req_idx, dmamux->used_chans); in rzn1_dmamux_free()
87 if (test_and_set_bit(map->req_idx, dmamux->used_chans)) { in rzn1_dmamux_route_allocate()
100 clear_bit(map->req_idx, dmamux->used_chans); in rzn1_dmamux_route_allocate()
119 struct rzn1_dmamux_data *dmamux; in rzn1_dmamux_probe() local
121 dmamux = devm_kzalloc(&pdev->dev, sizeof(*dmamux), GFP_KERNEL); in rzn1_dmamux_probe()
122 if (!dmamux) in rzn1_dmamux_probe()
134 dmamux->dmarouter.dev = &pdev->dev; in rzn1_dmamux_probe()
135 dmamux->dmarouter.route_free = rzn1_dmamux_free; in rzn1_dmamux_probe()
137 platform_set_drvdata(pdev, dmamux); in rzn1_dmamux_probe()
[all …]
A DMakefile13 obj-$(CONFIG_RZN1_DMAMUX) += rzn1-dmamux.o
/drivers/clk/renesas/
A Dr9a06g032-clocks.c690 u32 dmamux; in r9a06g032_sysctrl_set_dmamux() local
697 dmamux = readl(sysctrl_priv->reg + R9A06G032_SYSCTRL_DMAMUX); in r9a06g032_sysctrl_set_dmamux()
698 dmamux &= ~mask; in r9a06g032_sysctrl_set_dmamux()
699 dmamux |= val & mask; in r9a06g032_sysctrl_set_dmamux()
700 writel(dmamux, sysctrl_priv->reg + R9A06G032_SYSCTRL_DMAMUX); in r9a06g032_sysctrl_set_dmamux()

Completed in 23 milliseconds