Lines Matching refs:dma_dac
321 serdma_t dma_dac, dma_adc; member
342 s->dma_dac.ready = 1; in prog_dmabuf_dac()
681 init_serdma(&s->dma_dac)) in dma_init()
692 s->dma_dac.descrtab[i].descr_a = M_DMA_SERRX_SOP | V_DMA_DSCRA_A_SIZE(1) | in dma_init()
693 (s->dma_dac.dma_buf_phys + i*FRAME_BYTES); in dma_init()
694 s->dma_dac.descrtab[i].descr_b = V_DMA_DSCRB_PKT_SIZE(FRAME_BYTES); in dma_init()
708 __raw_writeq(s->dma_dac.descrtab_phys, SS_CSR(R_SER_DMA_DSCR_BASE_TX)); in dma_init()
738 serdma_t *d = &s->dma_dac; in serdma_reg_access()
753 oss_broken_sleep_on(&s->dma_dac.reg_wait, MAX_SCHEDULE_TIMEOUT); in serdma_reg_access()
840 if (!(s->ena & FMODE_WRITE) && (s->dma_dac.mapped || in start_dac()
841 (s->dma_dac.count > 0 in start_dac()
842 && s->dma_dac.ready))) { in start_dac()
1091 serdma_t *d = &s->dma_dac; in cs4297a_update_ptr()
1634 if (s->dma_dac.mapped) in drain_dac()
1638 add_wait_queue(&s->dma_dac.wait, &wait); in drain_dac()
1640 (s->dma_dac.count > 0)) { in drain_dac()
1653 s->dma_dac.descrtab_phys) / sizeof(serdma_descr_t)); in drain_dac()
1654 s->dma_dac.hwptr = s->dma_dac.swptr = hwptr; in drain_dac()
1656 remove_wait_queue(&s->dma_dac.wait, &wait); in drain_dac()
1802 if (s->dma_dac.mapped) in cs4297a_write()
1804 if (!s->dma_dac.ready && (ret = prog_dmabuf_dac(s))) in cs4297a_write()
1810 serdma_t *d = &s->dma_dac; in cs4297a_write()
1880 wake_up(&s->dma_dac.reg_wait); in cs4297a_write()
1920 if(!s->dma_dac.ready && prog_dmabuf_dac(s)) in cs4297a_poll()
1922 poll_wait(file, &s->dma_dac.wait, wait); in cs4297a_poll()
1928 if(!s->dma_dac.ready && prog_dmabuf_adc(s)) in cs4297a_poll()
1935 if (s->dma_dac.mapped) { in cs4297a_poll()
1936 if (s->dma_dac.count >= in cs4297a_poll()
1937 (signed) s->dma_dac.fragsize) { in cs4297a_poll()
1938 if (s->dma_dac.wakeup) in cs4297a_poll()
1942 s->dma_dac.wakeup = 0; in cs4297a_poll()
1945 if ((signed) (s->dma_dac.sbufsz/2) >= s->dma_dac.count) in cs4297a_poll()
1990 mapped = ((file->f_mode & FMODE_WRITE) && s->dma_dac.mapped) || in cs4297a_ioctl()
2022 s->dma_dac.count = s->dma_dac.total_bytes = in cs4297a_ioctl()
2023 s->dma_dac.blocks = s->dma_dac.wakeup = 0; in cs4297a_ioctl()
2024 s->dma_dac.swptr = s->dma_dac.hwptr = in cs4297a_ioctl()
2026 s->dma_dac.descrtab_phys) / sizeof(serdma_descr_t)); in cs4297a_ioctl()
2032 s->dma_adc.blocks = s->dma_dac.wakeup = 0; in cs4297a_ioctl()
2059 s->dma_dac.ready = 0; in cs4297a_ioctl()
2081 s->dma_dac.ready = 0; in cs4297a_ioctl()
2123 s->dma_dac.ready = 0; in cs4297a_ioctl()
2169 if (!s->dma_dac.ready in cs4297a_ioctl()
2181 if (!s->dma_dac.ready && (val = prog_dmabuf_dac(s))) in cs4297a_ioctl()
2185 abinfo.fragsize = s->dma_dac.fragsize; in cs4297a_ioctl()
2186 if (s->dma_dac.mapped) in cs4297a_ioctl()
2187 abinfo.bytes = s->dma_dac.sbufsz; in cs4297a_ioctl()
2190 s->dma_dac.sbufsz - s->dma_dac.count; in cs4297a_ioctl()
2191 abinfo.fragstotal = s->dma_dac.numfrag; in cs4297a_ioctl()
2192 abinfo.fragments = abinfo.bytes >> s->dma_dac.fragshift; in cs4297a_ioctl()
2234 if(!s->dma_dac.ready && prog_dmabuf_dac(s)) in cs4297a_ioctl()
2238 val = s->dma_dac.count; in cs4297a_ioctl()
2278 if(!s->dma_dac.ready && prog_dmabuf_dac(s)) in cs4297a_ioctl()
2282 cinfo.bytes = s->dma_dac.total_bytes; in cs4297a_ioctl()
2283 if (s->dma_dac.mapped) { in cs4297a_ioctl()
2285 (cinfo.bytes >> s->dma_dac.fragshift) - in cs4297a_ioctl()
2286 s->dma_dac.blocks; in cs4297a_ioctl()
2287 s->dma_dac.blocks = in cs4297a_ioctl()
2288 cinfo.bytes >> s->dma_dac.fragshift; in cs4297a_ioctl()
2291 s->dma_dac.count >> s->dma_dac.fragshift; in cs4297a_ioctl()
2293 cinfo.ptr = s->dma_dac.hwptr; in cs4297a_ioctl()
2294 if (s->dma_dac.mapped) in cs4297a_ioctl()
2295 s->dma_dac.count &= s->dma_dac.fragsize - 1; in cs4297a_ioctl()
2303 return put_user(s->dma_dac.fragsize, (int *) arg); in cs4297a_ioctl()
2321 && s->dma_dac.subdivision)) return -EINVAL; in cs4297a_ioctl()
2329 s->dma_dac.subdivision = val; in cs4297a_ioctl()
2391 dealloc_dmabuf(s, &s->dma_dac); in cs4297a_release()
2509 s->dma_dac.ossfragshift = s->dma_dac.ossmaxfrags = in cs4297a_locked_open()
2510 s->dma_dac.subdivision = 0; in cs4297a_locked_open()
2667 init_waitqueue_head(&s->dma_dac.wait); in cs4297a_init()
2669 init_waitqueue_head(&s->dma_dac.reg_wait); in cs4297a_init()