Home
last modified time | relevance | path

Searched refs:dma (Results 1 – 25 of 2157) sorted by relevance

12345678910>>...87

/openbmc/linux/drivers/tty/serial/8250/
H A D8250_dma.c17 struct uart_8250_dma *dma = p->dma; in __dma_tx_complete() local
22 dma_sync_single_for_cpu(dma->txchan->device->dev, dma->tx_addr, in __dma_tx_complete()
27 dma->tx_running = 0; in __dma_tx_complete()
29 uart_xmit_advance(&p->port, dma->tx_size); in __dma_tx_complete()
35 if (ret || !dma->tx_running) in __dma_tx_complete()
43 struct uart_8250_dma *dma = p->dma; in __dma_rx_complete() local
54 dma_status = dmaengine_tx_status(dma->rxchan, dma->rx_cookie, &state); in __dma_rx_complete()
58 count = dma->rx_size - state.residue; in __dma_rx_complete()
60 tty_insert_flip_string(tty_port, dma->rx_buf, count); in __dma_rx_complete()
62 dma->rx_running = 0; in __dma_rx_complete()
[all …]
/openbmc/linux/arch/arm/kernel/
H A Ddma.c36 int __init isa_dma_add(unsigned int chan, dma_t *dma) in isa_dma_add() argument
38 if (!dma->d_ops) in isa_dma_add()
41 sg_init_table(&dma->buf, 1); in isa_dma_add()
45 dma_chan[chan] = dma; in isa_dma_add()
56 dma_t *dma = dma_channel(chan); in request_dma() local
59 if (!dma) in request_dma()
62 if (xchg(&dma->lock, 1) != 0) in request_dma()
65 dma->device_id = device_id; in request_dma()
66 dma->active = 0; in request_dma()
67 dma->invalid = 1; in request_dma()
[all …]
/openbmc/linux/drivers/media/platform/xilinx/
H A Dxilinx-dma.c57 static int xvip_dma_verify_format(struct xvip_dma *dma) in xvip_dma_verify_format() argument
65 subdev = xvip_dma_remote_subdev(&dma->pad, &fmt.pad); in xvip_dma_verify_format()
73 if (dma->fmtinfo->code != fmt.format.code || in xvip_dma_verify_format()
74 dma->format.height != fmt.format.height || in xvip_dma_verify_format()
75 dma->format.width != fmt.format.width || in xvip_dma_verify_format()
76 dma->format.colorspace != fmt.format.colorspace) in xvip_dma_verify_format()
99 struct xvip_dma *dma = pipe->output; in xvip_pipeline_start_stop() local
105 entity = &dma->video.entity; in xvip_pipeline_start_stop()
184 struct xvip_dma *dma; in xvip_pipeline_validate() local
189 dma = to_xvip_dma(media_entity_to_video_device(pad->entity)); in xvip_pipeline_validate()
[all …]
/openbmc/linux/drivers/media/v4l2-core/
H A Dvideobuf-dma-sg.c141 return &mem->dma; in videobuf_to_dma()
145 static void videobuf_dma_init(struct videobuf_dmabuf *dma) in videobuf_dma_init() argument
147 memset(dma, 0, sizeof(*dma)); in videobuf_dma_init()
148 dma->magic = MAGIC_DMABUF; in videobuf_dma_init()
151 static int videobuf_dma_init_user_locked(struct videobuf_dmabuf *dma, in videobuf_dma_init_user_locked() argument
158 dma->direction = direction; in videobuf_dma_init_user_locked()
159 switch (dma->direction) { in videobuf_dma_init_user_locked()
171 dma->offset = data & ~PAGE_MASK; in videobuf_dma_init_user_locked()
172 dma->size = size; in videobuf_dma_init_user_locked()
173 dma->nr_pages = last-first+1; in videobuf_dma_init_user_locked()
[all …]
/openbmc/linux/drivers/i2c/busses/
H A Di2c-stm32.c17 struct stm32_i2c_dma *dma; in stm32_i2c_dma_request() local
21 dma = devm_kzalloc(dev, sizeof(*dma), GFP_KERNEL); in stm32_i2c_dma_request()
22 if (!dma) in stm32_i2c_dma_request()
26 dma->chan_tx = dma_request_chan(dev, "tx"); in stm32_i2c_dma_request()
27 if (IS_ERR(dma->chan_tx)) { in stm32_i2c_dma_request()
28 ret = PTR_ERR(dma->chan_tx); in stm32_i2c_dma_request()
40 ret = dmaengine_slave_config(dma->chan_tx, &dma_sconfig); in stm32_i2c_dma_request()
47 dma->chan_rx = dma_request_chan(dev, "rx"); in stm32_i2c_dma_request()
48 if (IS_ERR(dma->chan_rx)) { in stm32_i2c_dma_request()
49 ret = PTR_ERR(dma->chan_rx); in stm32_i2c_dma_request()
[all …]
/openbmc/u-boot/drivers/dma/
H A Ddma-uclass.c26 static int dma_of_xlate_default(struct dma *dma, in dma_of_xlate_default() argument
29 debug("%s(dma=%p)\n", __func__, dma); in dma_of_xlate_default()
37 dma->id = args->args[0]; in dma_of_xlate_default()
39 dma->id = 0; in dma_of_xlate_default()
44 int dma_get_by_index(struct udevice *dev, int index, struct dma *dma) in dma_get_by_index() argument
51 debug("%s(dev=%p, index=%d, dma=%p)\n", __func__, dev, index, dma); in dma_get_by_index()
53 assert(dma); in dma_get_by_index()
54 dma->dev = NULL; in dma_get_by_index()
71 dma->dev = dev_dma; in dma_get_by_index()
76 ret = ops->of_xlate(dma, &args); in dma_get_by_index()
[all …]
H A Dsandbox-dma-test.c47 static int sandbox_dma_of_xlate(struct dma *dma, in sandbox_dma_of_xlate() argument
50 struct sandbox_dma_dev *ud = dev_get_priv(dma->dev); in sandbox_dma_of_xlate()
58 dma->id = args->args[0]; in sandbox_dma_of_xlate()
60 uc = &ud->channels[dma->id]; in sandbox_dma_of_xlate()
62 if (dma->id == 1) in sandbox_dma_of_xlate()
64 else if (dma->id == 2) in sandbox_dma_of_xlate()
68 debug("%s(dma id=%lu dir=%d)\n", __func__, dma->id, uc->dir); in sandbox_dma_of_xlate()
73 static int sandbox_dma_request(struct dma *dma) in sandbox_dma_request() argument
75 struct sandbox_dma_dev *ud = dev_get_priv(dma->dev); in sandbox_dma_request()
78 if (dma->id >= SANDBOX_DMA_CH_CNT) in sandbox_dma_request()
[all …]
H A Dbcm6348-iudma.c183 static int bcm6348_iudma_disable(struct dma *dma) in bcm6348_iudma_disable() argument
185 struct bcm6348_iudma_priv *priv = dev_get_priv(dma->dev); in bcm6348_iudma_disable()
186 struct bcm6348_chan_priv *ch_priv = priv->ch_priv[dma->id]; in bcm6348_iudma_disable()
189 bcm6348_iudma_chan_stop(priv, dma->id); in bcm6348_iudma_disable()
192 if (bcm6348_iudma_chan_is_rx(dma->id)) in bcm6348_iudma_disable()
194 DMA_FLOWC_ALLOC_REG(dma->id)); in bcm6348_iudma_disable()
199 if (bcm6348_iudma_chan_is_rx(dma->id)) in bcm6348_iudma_disable()
207 static int bcm6348_iudma_enable(struct dma *dma) in bcm6348_iudma_enable() argument
209 const struct bcm6348_iudma_priv *priv = dev_get_priv(dma->dev); in bcm6348_iudma_enable()
210 struct bcm6348_chan_priv *ch_priv = priv->ch_priv[dma->id]; in bcm6348_iudma_enable()
[all …]
/openbmc/linux/drivers/misc/bcm-vk/
H A Dbcm_vk_sg.c27 struct bcm_vk_dma *dma,
30 static int bcm_vk_dma_free(struct device *dev, struct bcm_vk_dma *dma);
36 struct bcm_vk_dma *dma, in bcm_vk_dma_alloc() argument
60 dma->nr_pages = last - first + 1; in bcm_vk_dma_alloc()
63 dma->pages = kmalloc_array(dma->nr_pages, in bcm_vk_dma_alloc()
66 if (!dma->pages) in bcm_vk_dma_alloc()
70 data, vkdata->size, dma->nr_pages); in bcm_vk_dma_alloc()
72 dma->direction = direction; in bcm_vk_dma_alloc()
76 dma->nr_pages, in bcm_vk_dma_alloc()
78 dma->pages); in bcm_vk_dma_alloc()
[all …]
/openbmc/linux/drivers/soc/ti/
H A Dknav_dma.c109 struct knav_dma_device *dma; member
256 static void dma_hw_enable_all(struct knav_dma_device *dma) in dma_hw_enable_all() argument
260 for (i = 0; i < dma->max_tx_chan; i++) { in dma_hw_enable_all()
261 writel_relaxed(0, &dma->reg_tx_chan[i].mode); in dma_hw_enable_all()
262 writel_relaxed(DMA_ENABLE, &dma->reg_tx_chan[i].control); in dma_hw_enable_all()
267 static void knav_dma_hw_init(struct knav_dma_device *dma) in knav_dma_hw_init() argument
272 spin_lock(&dma->lock); in knav_dma_hw_init()
273 v = dma->loopback ? DMA_LOOPBACK : 0; in knav_dma_hw_init()
274 writel_relaxed(v, &dma->reg_global->emulation_control); in knav_dma_hw_init()
276 v = readl_relaxed(&dma->reg_global->perf_control); in knav_dma_hw_init()
[all …]
/openbmc/linux/drivers/media/pci/ivtv/
H A Divtv-udma.c25 int ivtv_udma_fill_sg_list (struct ivtv_user_dma *dma, struct ivtv_dma_page_info *dma_page, int map… in ivtv_udma_fill_sg_list() argument
40 if (PageHighMem(dma->map[map_offset])) { in ivtv_udma_fill_sg_list()
43 if (dma->bouncemap[map_offset] == NULL) in ivtv_udma_fill_sg_list()
44 dma->bouncemap[map_offset] = alloc_page(GFP_KERNEL); in ivtv_udma_fill_sg_list()
45 if (dma->bouncemap[map_offset] == NULL) in ivtv_udma_fill_sg_list()
48 src = kmap_atomic(dma->map[map_offset]) + offset; in ivtv_udma_fill_sg_list()
49 memcpy(page_address(dma->bouncemap[map_offset]) + offset, src, len); in ivtv_udma_fill_sg_list()
52 sg_set_page(&dma->SGlist[map_offset], dma->bouncemap[map_offset], len, offset); in ivtv_udma_fill_sg_list()
55 sg_set_page(&dma->SGlist[map_offset], dma->map[map_offset], len, offset); in ivtv_udma_fill_sg_list()
63 void ivtv_udma_fill_sg_array (struct ivtv_user_dma *dma, u32 buffer_offset, u32 buffer_offset_2, u3… in ivtv_udma_fill_sg_array() argument
[all …]
/openbmc/linux/drivers/media/pci/netup_unidvb/
H A Dnetup_unidvb_core.c112 static void netup_unidvb_queue_cleanup(struct netup_dma *dma);
145 struct netup_dma *dma = priv; in netup_unidvb_tuner_ctrl() local
150 ndev = dma->ndev; in netup_unidvb_tuner_ctrl()
152 __func__, dma->num, is_dvb_tc); in netup_unidvb_tuner_ctrl()
154 mask = (dma->num == 0) ? GPIO_RFA_CTL : GPIO_RFB_CTL; in netup_unidvb_tuner_ctrl()
189 static void netup_unidvb_dma_enable(struct netup_dma *dma, int enable) in netup_unidvb_dma_enable() argument
191 u32 irq_mask = (dma->num == 0 ? in netup_unidvb_dma_enable()
194 dev_dbg(&dma->ndev->pci_dev->dev, in netup_unidvb_dma_enable()
195 "%s(): DMA%d enable %d\n", __func__, dma->num, enable); in netup_unidvb_dma_enable()
197 writel(BIT_DMA_RUN, &dma->regs->ctrlstat_set); in netup_unidvb_dma_enable()
[all …]
/openbmc/linux/drivers/gpu/drm/
H A Ddrm_dma.c63 dev->dma = kzalloc(sizeof(*dev->dma), GFP_KERNEL); in drm_legacy_dma_setup()
64 if (!dev->dma) in drm_legacy_dma_setup()
68 memset(&dev->dma->bufs[i], 0, sizeof(dev->dma->bufs[0])); in drm_legacy_dma_setup()
83 struct drm_device_dma *dma = dev->dma; in drm_legacy_dma_takedown() local
91 if (!dma) in drm_legacy_dma_takedown()
96 if (dma->bufs[i].seg_count) { in drm_legacy_dma_takedown()
100 dma->bufs[i].buf_count, in drm_legacy_dma_takedown()
101 dma->bufs[i].seg_count); in drm_legacy_dma_takedown()
102 for (j = 0; j < dma->bufs[i].seg_count; j++) { in drm_legacy_dma_takedown()
103 if (dma->bufs[i].seglist[j]) { in drm_legacy_dma_takedown()
[all …]
/openbmc/u-boot/include/
H A Ddma.h156 struct dma { struct
181 int dma_get_by_index(struct udevice *dev, int index, struct dma *dma);
198 int dma_get_by_name(struct udevice *dev, const char *name, struct dma *dma);
201 struct dma *dma) in dma_get_by_index() argument
207 struct dma *dma) in dma_get_by_name() argument
227 int dma_request(struct udevice *dev, struct dma *dma);
236 int dma_free(struct dma *dma);
245 int dma_enable(struct dma *dma);
254 int dma_disable(struct dma *dma);
268 int dma_prepare_rcv_buf(struct dma *dma, void *dst, size_t size);
[all …]
H A Ddma-uclass.h44 int (*of_xlate)(struct dma *dma,
59 int (*request)(struct dma *dma);
68 int (*free)(struct dma *dma);
75 int (*enable)(struct dma *dma);
82 int (*disable)(struct dma *dma);
91 int (*prepare_rcv_buf)(struct dma *dma, void *dst, size_t size);
100 int (*receive)(struct dma *dma, void **dst, void *metadata);
110 int (*send)(struct dma *dma, void *src, size_t len, void *metadata);
/openbmc/linux/sound/core/
H A Disadma.c27 void snd_dma_program(unsigned long dma, in snd_dma_program() argument
34 disable_dma(dma); in snd_dma_program()
35 clear_dma_ff(dma); in snd_dma_program()
36 set_dma_mode(dma, mode); in snd_dma_program()
37 set_dma_addr(dma, addr); in snd_dma_program()
38 set_dma_count(dma, size); in snd_dma_program()
40 enable_dma(dma); in snd_dma_program()
51 void snd_dma_disable(unsigned long dma) in snd_dma_disable() argument
56 clear_dma_ff(dma); in snd_dma_disable()
57 disable_dma(dma); in snd_dma_disable()
[all …]
/openbmc/linux/arch/arm/mach-rpc/
H A Ddma.c26 struct dma_struct dma; member
58 if (idma->dma.sg) { in iomd_get_next_sg()
76 if (idma->dma.sgcount > 1) { in iomd_get_next_sg()
77 idma->dma.sg = sg_next(idma->dma.sg); in iomd_get_next_sg()
78 idma->dma_addr = idma->dma.sg->dma_address; in iomd_get_next_sg()
79 idma->dma_len = idma->dma.sg->length; in iomd_get_next_sg()
80 idma->dma.sgcount--; in iomd_get_next_sg()
82 idma->dma.sg = NULL; in iomd_get_next_sg()
134 static int iomd_request_dma(unsigned int chan, dma_t *dma) in iomd_request_dma() argument
136 struct iomd_dma *idma = container_of(dma, struct iomd_dma, dma); in iomd_request_dma()
[all …]
/openbmc/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_dma.c65 val > chan->push.addr + (chan->dma.max << 2)) in READ_GET()
77 int ip = (chan->dma.ib_put * 2) + chan->dma.ib_base; in nv50_dma_push()
79 BUG_ON(chan->dma.ib_free < 1); in nv50_dma_push()
86 chan->dma.ib_put = (chan->dma.ib_put + 1) & chan->dma.ib_max; in nv50_dma_push()
92 nvif_wr32(chan->userd, 0x8c, chan->dma.ib_put); in nv50_dma_push()
95 chan->dma.ib_free--; in nv50_dma_push()
103 while (chan->dma.ib_free < count) { in nv50_dma_push_wait()
116 chan->dma.ib_free = get - chan->dma.ib_put; in nv50_dma_push_wait()
117 if (chan->dma.ib_free <= 0) in nv50_dma_push_wait()
118 chan->dma.ib_free += chan->dma.ib_max; in nv50_dma_push_wait()
[all …]
/openbmc/u-boot/drivers/net/
H A Dbcm-sf2-eth-gmac.c34 static int gmac_disable_dma(struct eth_dma *dma, int dir);
35 static int gmac_enable_dma(struct eth_dma *dma, int dir);
94 static void dma_tx_dump(struct eth_dma *dma) in dma_tx_dump() argument
111 descp = (dma64dd_t *)(dma->tx_desc_aligned) + i; in dma_tx_dump()
120 bufp = (uint8_t *)(dma->tx_buf + i * TX_BUF_SIZE_ALIGNED); in dma_tx_dump()
126 static void dma_rx_dump(struct eth_dma *dma) in dma_rx_dump() argument
143 descp = (dma64dd_t *)(dma->rx_desc_aligned) + i; in dma_rx_dump()
151 bufp = dma->rx_buf + i * RX_BUF_SIZE_ALIGNED; in dma_rx_dump()
158 static int dma_tx_init(struct eth_dma *dma) in dma_tx_init() argument
168 memset((void *)(dma->tx_desc_aligned), 0, in dma_tx_init()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/powerpc/fsl/
H A Ddma.txt9 - compatible : must include "fsl,elo-dma"
18 - compatible : must include "fsl,elo-dma-channel"
29 dma@82a8 {
32 compatible = "fsl,mpc8349-dma", "fsl,elo-dma";
38 dma-channel@0 {
39 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
45 dma-channel@80 {
46 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
52 dma-channel@100 {
53 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
[all …]
/openbmc/linux/drivers/crypto/qce/
H A Ddma.c11 int qce_dma_request(struct device *dev, struct qce_dma_data *dma) in qce_dma_request() argument
15 dma->txchan = dma_request_chan(dev, "tx"); in qce_dma_request()
16 if (IS_ERR(dma->txchan)) in qce_dma_request()
17 return PTR_ERR(dma->txchan); in qce_dma_request()
19 dma->rxchan = dma_request_chan(dev, "rx"); in qce_dma_request()
20 if (IS_ERR(dma->rxchan)) { in qce_dma_request()
21 ret = PTR_ERR(dma->rxchan); in qce_dma_request()
25 dma->result_buf = kmalloc(QCE_RESULT_BUF_SZ + QCE_IGNORE_BUF_SZ, in qce_dma_request()
27 if (!dma->result_buf) { in qce_dma_request()
32 dma->ignore_buf = dma->result_buf + QCE_RESULT_BUF_SZ; in qce_dma_request()
[all …]
/openbmc/linux/drivers/thunderbolt/
H A Ddma_port.c203 struct tb_dma_port *dma; in dma_port_alloc() local
210 dma = kzalloc(sizeof(*dma), GFP_KERNEL); in dma_port_alloc()
211 if (!dma) in dma_port_alloc()
214 dma->buf = kmalloc_array(MAIL_DATA_DWORDS, sizeof(u32), GFP_KERNEL); in dma_port_alloc()
215 if (!dma->buf) { in dma_port_alloc()
216 kfree(dma); in dma_port_alloc()
220 dma->sw = sw; in dma_port_alloc()
221 dma->port = port; in dma_port_alloc()
222 dma->base = DMA_PORT_CAP; in dma_port_alloc()
224 return dma; in dma_port_alloc()
[all …]
/openbmc/linux/drivers/vfio/
H A Dvfio_iommu_type1.c171 struct vfio_dma *dma = rb_entry(node, struct vfio_dma, node); in vfio_find_dma() local
173 if (start + size <= dma->iova) in vfio_find_dma()
175 else if (start >= dma->iova + dma->size) in vfio_find_dma()
178 return dma; in vfio_find_dma()
192 struct vfio_dma *dma = rb_entry(node, struct vfio_dma, node); in vfio_find_dma_first_node() local
194 if (start < dma->iova + dma->size) { in vfio_find_dma_first_node()
196 dma_res = dma; in vfio_find_dma_first_node()
197 if (start >= dma->iova) in vfio_find_dma_first_node()
212 struct vfio_dma *dma; in vfio_link_dma() local
216 dma = rb_entry(parent, struct vfio_dma, node); in vfio_link_dma()
[all …]
/openbmc/linux/drivers/comedi/drivers/
H A Dcomedi_isadma.c98 unsigned int comedi_isadma_poll(struct comedi_isadma *dma) in comedi_isadma_poll() argument
100 struct comedi_isadma_desc *desc = &dma->desc[dma->cur_dma]; in comedi_isadma_poll()
156 struct comedi_isadma *dma = NULL; in comedi_isadma_alloc() local
164 dma = kzalloc(sizeof(*dma), GFP_KERNEL); in comedi_isadma_alloc()
165 if (!dma) in comedi_isadma_alloc()
171 dma->desc = desc; in comedi_isadma_alloc()
172 dma->n_desc = n_desc; in comedi_isadma_alloc()
174 dma->dev = dev->hw_dev; in comedi_isadma_alloc()
184 dma->dev = dev->class_dev; in comedi_isadma_alloc()
195 dma->chan = dma_chans[0]; in comedi_isadma_alloc()
[all …]
/openbmc/linux/drivers/net/ethernet/i825xx/
H A Dlib82596.c314 struct i596_dma *dma; member
369 return lp->dma_addr + ((unsigned long)v - (unsigned long)lp->dma); in virt_to_dma()
399 static inline int wait_istat(struct net_device *dev, struct i596_dma *dma, int delcnt, char *str) in wait_istat() argument
401 dma_sync_cpu(dev, &(dma->iscp), sizeof(struct i596_iscp)); in wait_istat()
402 while (--delcnt && dma->iscp.stat) { in wait_istat()
404 dma_sync_cpu(dev, &(dma->iscp), sizeof(struct i596_iscp)); in wait_istat()
408 dev->name, str, SWAP16(dma->iscp.stat)); in wait_istat()
415 static inline int wait_cmd(struct net_device *dev, struct i596_dma *dma, int delcnt, char *str) in wait_cmd() argument
417 dma_sync_cpu(dev, &(dma->scb), sizeof(struct i596_scb)); in wait_cmd()
418 while (--delcnt && dma->scb.command) { in wait_cmd()
[all …]

12345678910>>...87