Home
last modified time | relevance | path

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

/drivers/dma/
Dlpc18xx-dmamux.c42 struct lpc18xx_dmamux_data *dmamux = dev_get_drvdata(dev); in lpc18xx_dmamux_free() local
46 spin_lock_irqsave(&dmamux->lock, flags); in lpc18xx_dmamux_free()
48 spin_unlock_irqrestore(&dmamux->lock, flags); in lpc18xx_dmamux_free()
55 struct lpc18xx_dmamux_data *dmamux = platform_get_drvdata(pdev); in lpc18xx_dmamux_reserve() local
65 if (mux >= dmamux->dma_master_requests) { in lpc18xx_dmamux_reserve()
84 spin_lock_irqsave(&dmamux->lock, flags); in lpc18xx_dmamux_reserve()
85 if (dmamux->muxes[mux].busy) { in lpc18xx_dmamux_reserve()
86 spin_unlock_irqrestore(&dmamux->lock, flags); in lpc18xx_dmamux_reserve()
88 mux, mux, dmamux->muxes[mux].value); in lpc18xx_dmamux_reserve()
93 dmamux->muxes[mux].busy = true; in lpc18xx_dmamux_reserve()
[all …]
Dstm32-dmamux.c62 struct stm32_dmamux_data *dmamux = dev_get_drvdata(dev); in stm32_dmamux_free() local
67 spin_lock_irqsave(&dmamux->lock, flags); in stm32_dmamux_free()
69 stm32_dmamux_write(dmamux->iomem, STM32_DMAMUX_CCR(mux->chan_id), 0); in stm32_dmamux_free()
70 clear_bit(mux->chan_id, dmamux->dma_inuse); in stm32_dmamux_free()
74 spin_unlock_irqrestore(&dmamux->lock, flags); in stm32_dmamux_free()
86 struct stm32_dmamux_data *dmamux = platform_get_drvdata(pdev); in stm32_dmamux_route_allocate() local
97 if (dma_spec->args[0] > dmamux->dmamux_requests) { in stm32_dmamux_route_allocate()
107 spin_lock_irqsave(&dmamux->lock, flags); in stm32_dmamux_route_allocate()
108 mux->chan_id = find_first_zero_bit(dmamux->dma_inuse, in stm32_dmamux_route_allocate()
109 dmamux->dma_requests); in stm32_dmamux_route_allocate()
[all …]
DMakefile47 obj-$(CONFIG_LPC18XX_DMAMUX) += lpc18xx-dmamux.o
66 obj-$(CONFIG_STM32_DMAMUX) += stm32-dmamux.o