• Home
  • Raw
  • Download

Lines Matching refs:dma_chan

128 static struct omap_dma_lch *dma_chan;  variable
600 dma_write(dma_chan[lch].enabled_irqs, CICR(lch)); in omap_enable_channel_irq()
611 dma_chan[lch].enabled_irqs |= bits; in omap_enable_dma_irq()
617 dma_chan[lch].enabled_irqs &= ~bits; in omap_disable_dma_irq()
631 if (dma_chan[lch].next_lch != -1) in enable_lnk()
632 l = dma_chan[lch].next_lch | (1 << 15); in enable_lnk()
636 if (dma_chan[lch].next_linked_ch != -1) in enable_lnk()
637 l = dma_chan[lch].next_linked_ch | (1 << 15); in enable_lnk()
663 dma_chan[lch].flags &= ~OMAP_DMA_ACTIVE; in disable_lnk()
688 if (free_ch == -1 && dma_chan[ch].dev_id == -1) { in omap_request_dma()
698 chan = dma_chan + free_ch; in omap_request_dma()
763 if (dma_chan[lch].dev_id == -1) { in omap_free_dma()
770 dma_chan[lch].dev_id = -1; in omap_free_dma()
771 dma_chan[lch].next_lch = -1; in omap_free_dma()
772 dma_chan[lch].callback = NULL; in omap_free_dma()
901 if (!omap_dma_in_1510_mode() && dma_chan[lch].next_lch != -1) { in omap_start_dma()
910 cur_lch = dma_chan[lch].next_lch; in omap_start_dma()
912 next_lch = dma_chan[cur_lch].next_lch; in omap_start_dma()
944 dma_chan[lch].flags |= OMAP_DMA_ACTIVE; in omap_start_dma()
952 if (!omap_dma_in_1510_mode() && dma_chan[lch].next_lch != -1) { in omap_stop_dma()
966 next_lch = dma_chan[cur_lch].next_lch; in omap_stop_dma()
981 dma_chan[lch].flags &= ~OMAP_DMA_ACTIVE; in omap_stop_dma()
999 if (dma_chan[lch].dev_id == -1) { in omap_set_dma_callback()
1004 dma_chan[lch].callback = callback; in omap_set_dma_callback()
1005 dma_chan[lch].data = data; in omap_set_dma_callback()
1109 if ((dma_chan[lch_head].dev_id == -1) || in omap_dma_link_lch()
1110 (dma_chan[lch_queue].dev_id == -1)) { in omap_dma_link_lch()
1116 dma_chan[lch_head].next_lch = lch_queue; in omap_dma_link_lch()
1131 if (dma_chan[lch_head].next_lch != lch_queue || in omap_dma_unlink_lch()
1132 dma_chan[lch_head].next_lch == -1) { in omap_dma_unlink_lch()
1138 if ((dma_chan[lch_head].flags & OMAP_DMA_ACTIVE) || in omap_dma_unlink_lch()
1139 (dma_chan[lch_head].flags & OMAP_DMA_ACTIVE)) { in omap_dma_unlink_lch()
1145 dma_chan[lch_head].next_lch = -1; in omap_dma_unlink_lch()
1158 if (dma_chan[lch_head].next_linked_ch == -1) { in create_dma_lch_chain()
1159 dma_chan[lch_head].next_linked_ch = lch_queue; in create_dma_lch_chain()
1160 dma_chan[lch_head].prev_linked_ch = lch_queue; in create_dma_lch_chain()
1161 dma_chan[lch_queue].next_linked_ch = lch_head; in create_dma_lch_chain()
1162 dma_chan[lch_queue].prev_linked_ch = lch_head; in create_dma_lch_chain()
1167 dma_chan[lch_queue].next_linked_ch = in create_dma_lch_chain()
1168 dma_chan[lch_head].next_linked_ch; in create_dma_lch_chain()
1169 dma_chan[lch_queue].prev_linked_ch = lch_head; in create_dma_lch_chain()
1170 dma_chan[lch_head].next_linked_ch = lch_queue; in create_dma_lch_chain()
1171 dma_chan[dma_chan[lch_queue].next_linked_ch].prev_linked_ch = in create_dma_lch_chain()
1182 l |= (dma_chan[lch_queue].next_linked_ch); in create_dma_lch_chain()
1243 dma_chan[channels[i]].prev_linked_ch = -1; in omap_request_dma_chain()
1244 dma_chan[channels[i]].state = DMA_CH_NOTSTARTED; in omap_request_dma_chain()
1261 dma_chan[channels[i]].chain_id = *chain_id; in omap_request_dma_chain()
1348 dma_chan[channels[i]].next_linked_ch = -1; in omap_free_dma_chain()
1349 dma_chan[channels[i]].prev_linked_ch = -1; in omap_free_dma_chain()
1350 dma_chan[channels[i]].chain_id = -1; in omap_free_dma_chain()
1351 dma_chan[channels[i]].state = DMA_CH_NOTSTARTED; in omap_free_dma_chain()
1450 dma_chan[lch].data = callbk_data; in omap_dma_chain_a_transfer()
1478 if (dma_chan[dma_chan[lch].prev_linked_ch].state == in omap_dma_chain_a_transfer()
1480 enable_lnk(dma_chan[lch].prev_linked_ch); in omap_dma_chain_a_transfer()
1481 dma_chan[lch].state = DMA_CH_QUEUED; in omap_dma_chain_a_transfer()
1491 if (dma_chan[dma_chan[lch].prev_linked_ch].state == in omap_dma_chain_a_transfer()
1493 enable_lnk(dma_chan[lch].prev_linked_ch); in omap_dma_chain_a_transfer()
1494 dma_chan[lch].state = DMA_CH_QUEUED; in omap_dma_chain_a_transfer()
1497 CCR(dma_chan[lch].prev_linked_ch)))) { in omap_dma_chain_a_transfer()
1498 disable_lnk(dma_chan[lch]. in omap_dma_chain_a_transfer()
1505 else if (dma_chan[dma_chan[lch].prev_linked_ch].state in omap_dma_chain_a_transfer()
1507 enable_lnk(dma_chan[lch].prev_linked_ch); in omap_dma_chain_a_transfer()
1508 dma_chan[lch].state = DMA_CH_QUEUED; in omap_dma_chain_a_transfer()
1522 dma_chan[lch].state = DMA_CH_STARTED; in omap_dma_chain_a_transfer()
1531 dma_chan[lch].flags |= OMAP_DMA_ACTIVE; in omap_dma_chain_a_transfer()
1577 dma_chan[channels[0]].state = DMA_CH_STARTED; in omap_start_dma_chain_transfers()
1585 dma_chan[channels[0]].flags |= OMAP_DMA_ACTIVE; in omap_start_dma_chain_transfers()
1637 dma_chan[channels[i]].state = DMA_CH_NOTSTARTED; in omap_stop_dma_chain_transfers()
1774 csr = dma_chan[ch].saved_csr; in omap1_dma_handle_ch()
1775 dma_chan[ch].saved_csr = 0; in omap1_dma_handle_ch()
1779 dma_chan[ch + 6].saved_csr = csr >> 7; in omap1_dma_handle_ch()
1784 if (unlikely(dma_chan[ch].dev_id == -1)) { in omap1_dma_handle_ch()
1791 dma_chan[ch].dev_id); in omap1_dma_handle_ch()
1794 "with device %d\n", dma_chan[ch].dev_id); in omap1_dma_handle_ch()
1796 dma_chan[ch].flags &= ~OMAP_DMA_ACTIVE; in omap1_dma_handle_ch()
1797 if (likely(dma_chan[ch].callback != NULL)) in omap1_dma_handle_ch()
1798 dma_chan[ch].callback(ch, csr, dma_chan[ch].data); in omap1_dma_handle_ch()
1812 if (enable_1510_mode && dma_chan[ch + 6].saved_csr) in omap1_dma_irq_handler()
1839 if (unlikely(dma_chan[ch].dev_id == -1)) { in omap2_dma_handle_ch()
1848 "%d\n", dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1851 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1862 dma_chan[ch].flags &= ~OMAP_DMA_ACTIVE; in omap2_dma_handle_ch()
1867 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1870 dma_chan[ch].dev_id); in omap2_dma_handle_ch()
1876 if (dma_chan[ch].chain_id != -1) { in omap2_dma_handle_ch()
1877 int chain_id = dma_chan[ch].chain_id; in omap2_dma_handle_ch()
1878 dma_chan[ch].state = DMA_CH_NOTSTARTED; in omap2_dma_handle_ch()
1880 dma_chan[dma_chan[ch].next_linked_ch].state = in omap2_dma_handle_ch()
1894 if (likely(dma_chan[ch].callback != NULL)) in omap2_dma_handle_ch()
1895 dma_chan[ch].callback(ch, status, dma_chan[ch].data); in omap2_dma_handle_ch()
2324 dma_chan = kzalloc(sizeof(struct omap_dma_lch) * dma_lch_count, in omap_init_dma()
2326 if (!dma_chan) in omap_init_dma()
2333 kfree(dma_chan); in omap_init_dma()
2385 dma_chan[ch].dev_id = -1; in omap_init_dma()
2386 dma_chan[ch].next_lch = -1; in omap_init_dma()