Lines Matching refs:dma_chan
138 static struct omap_dma_lch *dma_chan; variable
504 p->dma_write(dma_chan[lch].enabled_irqs, CICR, lch); in omap_enable_channel_irq()
520 dma_chan[lch].enabled_irqs |= bits; in omap_enable_dma_irq()
526 dma_chan[lch].enabled_irqs &= ~bits; in omap_disable_dma_irq()
540 if (dma_chan[lch].next_lch != -1) in enable_lnk()
541 l = dma_chan[lch].next_lch | (1 << 15); in enable_lnk()
545 if (dma_chan[lch].next_linked_ch != -1) in enable_lnk()
546 l = dma_chan[lch].next_linked_ch | (1 << 15); in enable_lnk()
572 dma_chan[lch].flags &= ~OMAP_DMA_ACTIVE; in disable_lnk()
623 if (free_ch == -1 && dma_chan[ch].dev_id == -1) { in omap_request_dma()
633 chan = dma_chan + free_ch; in omap_request_dma()
694 if (dma_chan[lch].dev_id == -1) { in omap_free_dma()
715 dma_chan[lch].dev_id = -1; in omap_free_dma()
716 dma_chan[lch].next_lch = -1; in omap_free_dma()
717 dma_chan[lch].callback = NULL; in omap_free_dma()
813 if (!omap_dma_in_1510_mode() && dma_chan[lch].next_lch != -1) { in omap_start_dma()
823 cur_lch = dma_chan[lch].next_lch; in omap_start_dma()
825 next_lch = dma_chan[cur_lch].next_lch; in omap_start_dma()
858 dma_chan[lch].flags |= OMAP_DMA_ACTIVE; in omap_start_dma()
910 if (!omap_dma_in_1510_mode() && dma_chan[lch].next_lch != -1) { in omap_stop_dma()
924 next_lch = dma_chan[cur_lch].next_lch; in omap_stop_dma()
929 dma_chan[lch].flags &= ~OMAP_DMA_ACTIVE; in omap_stop_dma()
947 if (dma_chan[lch].dev_id == -1) { in omap_set_dma_callback()
952 dma_chan[lch].callback = callback; in omap_set_dma_callback()
953 dma_chan[lch].data = data; in omap_set_dma_callback()
1077 if ((dma_chan[lch_head].dev_id == -1) || in omap_dma_link_lch()
1078 (dma_chan[lch_queue].dev_id == -1)) { in omap_dma_link_lch()
1083 dma_chan[lch_head].next_lch = lch_queue; in omap_dma_link_lch()
1096 csr = dma_chan[ch].saved_csr; in omap1_dma_handle_ch()
1097 dma_chan[ch].saved_csr = 0; in omap1_dma_handle_ch()
1101 dma_chan[ch + 6].saved_csr = csr >> 7; in omap1_dma_handle_ch()
1106 if (unlikely(dma_chan[ch].dev_id == -1)) { in omap1_dma_handle_ch()
1112 pr_warn("DMA timeout with device %d\n", dma_chan[ch].dev_id); in omap1_dma_handle_ch()
1115 dma_chan[ch].dev_id); in omap1_dma_handle_ch()
1117 dma_chan[ch].flags &= ~OMAP_DMA_ACTIVE; in omap1_dma_handle_ch()
1118 if (likely(dma_chan[ch].callback != NULL)) in omap1_dma_handle_ch()
1119 dma_chan[ch].callback(ch, csr, dma_chan[ch].data); in omap1_dma_handle_ch()
1133 if (enable_1510_mode && dma_chan[ch + 6].saved_csr) in omap1_dma_irq_handler()
1159 if (unlikely(dma_chan[ch].dev_id == -1)) { in omap2_dma_handle_ch()
1167 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1170 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1177 dma_chan[ch].flags &= ~OMAP_DMA_ACTIVE; in omap2_dma_handle_ch()
1182 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1185 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1193 if (dma_chan[ch].chain_id != -1) { in omap2_dma_handle_ch()
1194 int chain_id = dma_chan[ch].chain_id; in omap2_dma_handle_ch()
1195 dma_chan[ch].state = DMA_CH_NOTSTARTED; in omap2_dma_handle_ch()
1197 dma_chan[dma_chan[ch].next_linked_ch].state = in omap2_dma_handle_ch()
1210 if (likely(dma_chan[ch].callback != NULL)) in omap2_dma_handle_ch()
1211 dma_chan[ch].callback(ch, status, dma_chan[ch].data); in omap2_dma_handle_ch()
1282 if (dma_chan[ch].dev_id != -1) in omap_dma_global_context_restore()
1318 dma_chan = devm_kcalloc(&pdev->dev, dma_lch_count, in omap_system_dma_probe()
1320 if (!dma_chan) { in omap_system_dma_probe()
1341 dma_chan[ch].dev_id = -1; in omap_system_dma_probe()
1342 dma_chan[ch].next_lch = -1; in omap_system_dma_probe()
1395 dma_chan[0].dev_id = 0; in omap_system_dma_probe()
1396 dma_chan[1].dev_id = 1; in omap_system_dma_probe()