tag | line | file | source code |
dmap | 488 | drivers/sound/dev_table.h | int sound_alloc_dmap (int dev, struct dma_buffparms *dmap, int chan); |
dmap | 489 | drivers/sound/dev_table.h | void sound_free_dmap (int dev, struct dma_buffparms *dmap); |
dmap | 490 | drivers/sound/dev_table.h | extern int soud_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc *info); |
dmap | 65 | drivers/sound/dmabuf.c | reorganize_buffers (int dev, struct dma_buffparms *dmap) |
dmap | 76 | drivers/sound/dmabuf.c | if (dmap->fragment_size == 0) |
dmap | 84 | drivers/sound/dmabuf.c | dmap->neutral_byte = 0x80; |
dmap | 86 | drivers/sound/dmabuf.c | dmap->neutral_byte = 0x00; |
dmap | 114 | drivers/sound/dmabuf.c | if (dmap->subdivision == 0) /* Not already set */ |
dmap | 115 | drivers/sound/dmabuf.c | dmap->subdivision = 1; /* Init to default value */ |
dmap | 117 | drivers/sound/dmabuf.c | bsz /= dmap->subdivision; |
dmap | 122 | drivers/sound/dmabuf.c | dmap->fragment_size = bsz; |
dmap | 130 | drivers/sound/dmabuf.c | if (dmap->fragment_size > (audio_devs[dev]->buffsize / 2)) |
dmap | 131 | drivers/sound/dmabuf.c | dmap->fragment_size = (audio_devs[dev]->buffsize / 2); |
dmap | 132 | drivers/sound/dmabuf.c | bsz = dmap->fragment_size; |
dmap | 140 | drivers/sound/dmabuf.c | if (n > dmap->max_fragments) |
dmap | 141 | drivers/sound/dmabuf.c | n = dmap->max_fragments; |
dmap | 142 | drivers/sound/dmabuf.c | dmap->nbufs = n; |
dmap | 143 | drivers/sound/dmabuf.c | dmap->bytes_in_use = n * bsz; |
dmap | 145 | drivers/sound/dmabuf.c | for (i = 0; i < dmap->nbufs; i++) |
dmap | 147 | drivers/sound/dmabuf.c | dmap->counts[i] = 0; |
dmap | 150 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ALLOC_DONE; |
dmap | 154 | drivers/sound/dmabuf.c | dma_init_buffers (int dev, struct dma_buffparms *dmap) |
dmap | 156 | drivers/sound/dmabuf.c | if (dmap == audio_devs[dev]->dmap_out) |
dmap | 169 | drivers/sound/dmabuf.c | dmap->flags = DMA_BUSY; /* Other flags off */ |
dmap | 170 | drivers/sound/dmabuf.c | dmap->qlen = dmap->qhead = dmap->qtail = 0; |
dmap | 171 | drivers/sound/dmabuf.c | dmap->nbufs = 1; |
dmap | 172 | drivers/sound/dmabuf.c | dmap->bytes_in_use = audio_devs[dev]->buffsize; |
dmap | 174 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_NONE; |
dmap | 175 | drivers/sound/dmabuf.c | dmap->mapping_flags = 0; |
dmap | 176 | drivers/sound/dmabuf.c | dmap->neutral_byte = 0x00; |
dmap | 180 | drivers/sound/dmabuf.c | open_dmap (int dev, int mode, struct dma_buffparms *dmap, int chan) |
dmap | 182 | drivers/sound/dmabuf.c | if (dmap->flags & DMA_BUSY) |
dmap | 188 | drivers/sound/dmabuf.c | if ((err = sound_alloc_dmap (dev, dmap, chan)) < 0) |
dmap | 192 | drivers/sound/dmabuf.c | if (dmap->raw_buf == NULL) |
dmap | 201 | drivers/sound/dmabuf.c | dmap->open_mode = mode; |
dmap | 202 | drivers/sound/dmabuf.c | dmap->subdivision = dmap->underrun_count = 0; |
dmap | 203 | drivers/sound/dmabuf.c | dmap->fragment_size = 0; |
dmap | 204 | drivers/sound/dmabuf.c | dmap->max_fragments = 65536; /* Just a large value */ |
dmap | 205 | drivers/sound/dmabuf.c | dmap->byte_counter = 0; |
dmap | 207 | drivers/sound/dmabuf.c | dma_init_buffers (dev, dmap); |
dmap | 213 | drivers/sound/dmabuf.c | close_dmap (int dev, struct dma_buffparms *dmap, int chan) |
dmap | 217 | drivers/sound/dmabuf.c | if (dmap->flags & DMA_BUSY) |
dmap | 218 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_NONE; |
dmap | 219 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_BUSY; |
dmap | 221 | drivers/sound/dmabuf.c | sound_free_dmap (dev, dmap); |
dmap | 441 | drivers/sound/dmabuf.c | activate_recording (int dev, struct dma_buffparms *dmap) |
dmap | 446 | drivers/sound/dmabuf.c | if (dmap->flags & DMA_RESTART) |
dmap | 449 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 452 | drivers/sound/dmabuf.c | if (dmap->dma_mode == DMODE_OUTPUT) /* Direction change */ |
dmap | 456 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_NONE; |
dmap | 459 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ALLOC_DONE)) |
dmap | 460 | drivers/sound/dmabuf.c | reorganize_buffers (dev, dmap); |
dmap | 462 | drivers/sound/dmabuf.c | if (!dmap->dma_mode) |
dmap | 467 | drivers/sound/dmabuf.c | dmap->fragment_size, dmap->nbufs)) < 0) |
dmap | 471 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_INPUT; |
dmap | 474 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ACTIVE)) |
dmap | 476 | drivers/sound/dmabuf.c | audio_devs[dev]->start_input (dev, dmap->raw_buf_phys + |
dmap | 477 | drivers/sound/dmabuf.c | dmap->qtail * dmap->fragment_size, |
dmap | 478 | drivers/sound/dmabuf.c | dmap->fragment_size, 0, |
dmap | 480 | drivers/sound/dmabuf.c | !(dmap->flags & DMA_STARTED)); |
dmap | 481 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE | DMA_STARTED; |
dmap | 494 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_in; |
dmap | 503 | drivers/sound/dmabuf.c | else if (!dmap->qlen) |
dmap | 507 | drivers/sound/dmabuf.c | if ((err = activate_recording (dev, dmap)) < 0) |
dmap | 563 | drivers/sound/dmabuf.c | if (!dmap->qlen) |
dmap | 566 | drivers/sound/dmabuf.c | *buf = &dmap->raw_buf[dmap->qhead * dmap->fragment_size + dmap->counts[dmap->qhead]]; |
dmap | 567 | drivers/sound/dmabuf.c | *len = dmap->fragment_size - dmap->counts[dmap->qhead]; |
dmap | 569 | drivers/sound/dmabuf.c | return dmap->qhead; |
dmap | 575 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_in; |
dmap | 577 | drivers/sound/dmabuf.c | int p = dmap->counts[dmap->qhead] + c; |
dmap | 584 | drivers/sound/dmabuf.c | else if (p >= dmap->fragment_size) |
dmap | 586 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead] = 0; |
dmap | 587 | drivers/sound/dmabuf.c | if (dmap->qlen <= 0 || dmap->qlen > dmap->nbufs) |
dmap | 589 | drivers/sound/dmabuf.c | dev, dmap->qlen, dmap->nbufs); |
dmap | 590 | drivers/sound/dmabuf.c | dmap->qlen--; |
dmap | 591 | drivers/sound/dmabuf.c | dmap->qhead = (dmap->qhead + 1) % dmap->nbufs; |
dmap | 594 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead] = p; |
dmap | 600 | drivers/sound/dmabuf.c | dma_subdivide (int dev, struct dma_buffparms *dmap, ioctl_arg arg, int fact) |
dmap | 604 | drivers/sound/dmabuf.c | fact = dmap->subdivision; |
dmap | 610 | drivers/sound/dmabuf.c | if (dmap->subdivision != 0 || |
dmap | 611 | drivers/sound/dmabuf.c | dmap->fragment_size) /* Loo late to change */ |
dmap | 620 | drivers/sound/dmabuf.c | dmap->subdivision = fact; |
dmap | 625 | drivers/sound/dmabuf.c | dma_set_fragment (int dev, struct dma_buffparms *dmap, ioctl_arg arg, int fact) |
dmap | 632 | drivers/sound/dmabuf.c | if (dmap->subdivision != 0 || |
dmap | 633 | drivers/sound/dmabuf.c | dmap->fragment_size) /* Loo late to change */ |
dmap | 648 | drivers/sound/dmabuf.c | dmap->fragment_size = (1 << bytes); |
dmap | 649 | drivers/sound/dmabuf.c | dmap->max_fragments = count; |
dmap | 651 | drivers/sound/dmabuf.c | if (dmap->fragment_size > audio_devs[dev]->buffsize) |
dmap | 652 | drivers/sound/dmabuf.c | dmap->fragment_size = audio_devs[dev]->buffsize; |
dmap | 654 | drivers/sound/dmabuf.c | if (dmap->fragment_size == audio_devs[dev]->buffsize && |
dmap | 656 | drivers/sound/dmabuf.c | dmap->fragment_size /= 2; /* Needs at least 2 buffers */ |
dmap | 658 | drivers/sound/dmabuf.c | dmap->subdivision = 1; /* Disable SNDCTL_DSP_SUBDIVIDE */ |
dmap | 663 | drivers/sound/dmabuf.c | get_buffer_pointer (int dev, int chan, struct dma_buffparms *dmap) |
dmap | 670 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ACTIVE)) |
dmap | 683 | drivers/sound/dmabuf.c | return dmap->bytes_in_use - pos; |
dmap | 686 | drivers/sound/dmabuf.c | pos = dmap->fragment_size - pos; |
dmap | 757 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = dmap_out; |
dmap | 762 | drivers/sound/dmabuf.c | dmap = dmap_in; |
dmap | 764 | drivers/sound/dmabuf.c | if (dmap->mapping_flags & DMA_MAP_MAPPED) |
dmap | 767 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ALLOC_DONE)) |
dmap | 768 | drivers/sound/dmabuf.c | reorganize_buffers (dev, dmap); |
dmap | 770 | drivers/sound/dmabuf.c | info->fragstotal = dmap->nbufs; |
dmap | 773 | drivers/sound/dmabuf.c | info->fragments = dmap->qlen; |
dmap | 780 | drivers/sound/dmabuf.c | info->fragments = dmap->nbufs - dmap->qlen; |
dmap | 796 | drivers/sound/dmabuf.c | else if (info->fragments > dmap->nbufs) |
dmap | 797 | drivers/sound/dmabuf.c | info->fragments = dmap->nbufs; |
dmap | 799 | drivers/sound/dmabuf.c | info->fragsize = dmap->fragment_size; |
dmap | 800 | drivers/sound/dmabuf.c | info->bytes = info->fragments * dmap->fragment_size; |
dmap | 802 | drivers/sound/dmabuf.c | if (cmd == SNDCTL_DSP_GETISPACE && dmap->qlen) |
dmap | 803 | drivers/sound/dmabuf.c | info->bytes -= dmap->counts[dmap->qhead]; |
dmap | 927 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_out; |
dmap | 929 | drivers/sound/dmabuf.c | if (dmap->qlen >= dmap->nbufs) /* No space at all */ |
dmap | 937 | drivers/sound/dmabuf.c | max = dmap->max_fragments; |
dmap | 938 | drivers/sound/dmabuf.c | len = dmap->qlen; |
dmap | 960 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_out; |
dmap | 968 | drivers/sound/dmabuf.c | if (dmap->dma_mode == DMODE_INPUT) /* Direction change */ |
dmap | 971 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_NONE; |
dmap | 973 | drivers/sound/dmabuf.c | else if (dmap->flags & DMA_RESTART) /* Restart buffering */ |
dmap | 979 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 981 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ALLOC_DONE)) |
dmap | 982 | drivers/sound/dmabuf.c | reorganize_buffers (dev, dmap); |
dmap | 984 | drivers/sound/dmabuf.c | if (!dmap->dma_mode) |
dmap | 988 | drivers/sound/dmabuf.c | dmap->dma_mode = DMODE_OUTPUT; |
dmap | 990 | drivers/sound/dmabuf.c | dmap->fragment_size, dmap->nbufs)) < 0) |
dmap | 1063 | drivers/sound/dmabuf.c | *buf = dmap->raw_buf + dmap->qtail * dmap->fragment_size; |
dmap | 1064 | drivers/sound/dmabuf.c | *size = dmap->fragment_size; |
dmap | 1065 | drivers/sound/dmabuf.c | dmap->counts[dmap->qtail] = 0; |
dmap | 1067 | drivers/sound/dmabuf.c | return dmap->qtail; |
dmap | 1073 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_out; |
dmap | 1081 | drivers/sound/dmabuf.c | l = dmap->fragment_size; |
dmap | 1082 | drivers/sound/dmabuf.c | dmap->counts[dmap->qtail] = l; |
dmap | 1083 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 1084 | drivers/sound/dmabuf.c | dmap->qtail = (dmap->qtail + 1) % dmap->nbufs; |
dmap | 1089 | drivers/sound/dmabuf.c | if (buff_no != dmap->qtail) |
dmap | 1090 | drivers/sound/dmabuf.c | printk ("Sound warning: DMA buffers out of sync %d != %d\n", buff_no, dmap->qtail); |
dmap | 1092 | drivers/sound/dmabuf.c | dmap->qlen++; |
dmap | 1093 | drivers/sound/dmabuf.c | if (dmap->qlen <= 0 || dmap->qlen > dmap->nbufs) |
dmap | 1095 | drivers/sound/dmabuf.c | dev, dmap->qlen, dmap->nbufs); |
dmap | 1097 | drivers/sound/dmabuf.c | dmap->counts[dmap->qtail] = l; |
dmap | 1099 | drivers/sound/dmabuf.c | if ((l != dmap->fragment_size) && |
dmap | 1102 | drivers/sound/dmabuf.c | dmap->flags |= DMA_RESTART; |
dmap | 1104 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 1106 | drivers/sound/dmabuf.c | dmap->qtail = (dmap->qtail + 1) % dmap->nbufs; |
dmap | 1109 | drivers/sound/dmabuf.c | if (!(dmap->flags & DMA_ACTIVE)) |
dmap | 1111 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE; |
dmap | 1112 | drivers/sound/dmabuf.c | audio_devs[dev]->output_block (dev, dmap->raw_buf_phys + |
dmap | 1113 | drivers/sound/dmabuf.c | dmap->qhead * dmap->fragment_size, |
dmap | 1114 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead], 0, |
dmap | 1116 | drivers/sound/dmabuf.c | !(dmap->flags & DMA_STARTED)); |
dmap | 1117 | drivers/sound/dmabuf.c | dmap->flags |= DMA_STARTED; |
dmap | 1130 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap; |
dmap | 1136 | drivers/sound/dmabuf.c | dmap = audio_devs[dev]->dmap_out; |
dmap | 1141 | drivers/sound/dmabuf.c | dmap = audio_devs[dev]->dmap_in; |
dmap | 1159 | drivers/sound/dmabuf.c | set_dma_addr (chan, dmap->raw_buf_phys); |
dmap | 1160 | drivers/sound/dmabuf.c | set_dma_count (chan, dmap->bytes_in_use); |
dmap | 1218 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_out; |
dmap | 1220 | drivers/sound/dmabuf.c | dmap->byte_counter += dmap->counts[dmap->qhead]; |
dmap | 1223 | drivers/sound/dmabuf.c | if (dmap->mapping_flags & DMA_MAP_MAPPED) |
dmap | 1227 | drivers/sound/dmabuf.c | int p = dmap->fragment_size * dmap->qhead; |
dmap | 1229 | drivers/sound/dmabuf.c | memset (dmap->raw_buf + p, |
dmap | 1230 | drivers/sound/dmabuf.c | dmap->neutral_byte, |
dmap | 1231 | drivers/sound/dmabuf.c | dmap->fragment_size); |
dmap | 1233 | drivers/sound/dmabuf.c | dmap->qhead = (dmap->qhead + 1) % dmap->nbufs; |
dmap | 1234 | drivers/sound/dmabuf.c | dmap->qlen++; /* Yes increment it (don't decrement) */ |
dmap | 1235 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_ACTIVE; |
dmap | 1236 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead] = dmap->fragment_size; |
dmap | 1240 | drivers/sound/dmabuf.c | audio_devs[dev]->output_block (dev, dmap->raw_buf_phys + |
dmap | 1241 | drivers/sound/dmabuf.c | dmap->qhead * dmap->fragment_size, |
dmap | 1242 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead], 1, |
dmap | 1248 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE; |
dmap | 1252 | drivers/sound/dmabuf.c | if (dmap->qlen <= 0 || dmap->qlen > dmap->nbufs) |
dmap | 1255 | drivers/sound/dmabuf.c | dev, dmap->qlen, dmap->nbufs); |
dmap | 1259 | drivers/sound/dmabuf.c | dmap->qlen--; |
dmap | 1260 | drivers/sound/dmabuf.c | dmap->qhead = (dmap->qhead + 1) % dmap->nbufs; |
dmap | 1261 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_ACTIVE; |
dmap | 1263 | drivers/sound/dmabuf.c | if (dmap->qlen) |
dmap | 1267 | drivers/sound/dmabuf.c | audio_devs[dev]->output_block (dev, dmap->raw_buf_phys + |
dmap | 1268 | drivers/sound/dmabuf.c | dmap->qhead * dmap->fragment_size, |
dmap | 1269 | drivers/sound/dmabuf.c | dmap->counts[dmap->qhead], 1, |
dmap | 1275 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE; |
dmap | 1279 | drivers/sound/dmabuf.c | dmap->underrun_count++; |
dmap | 1288 | drivers/sound/dmabuf.c | dmap->flags |= DMA_RESTART; |
dmap | 1290 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 1310 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap = audio_devs[dev]->dmap_in; |
dmap | 1312 | drivers/sound/dmabuf.c | dmap->byte_counter += dmap->fragment_size; |
dmap | 1315 | drivers/sound/dmabuf.c | if (dmap->mapping_flags & DMA_MAP_MAPPED) |
dmap | 1317 | drivers/sound/dmabuf.c | dmap->qtail = (dmap->qtail + 1) % dmap->nbufs; |
dmap | 1318 | drivers/sound/dmabuf.c | dmap->qlen++; |
dmap | 1322 | drivers/sound/dmabuf.c | audio_devs[dev]->start_input (dev, dmap->raw_buf_phys + |
dmap | 1323 | drivers/sound/dmabuf.c | dmap->qtail * dmap->fragment_size, |
dmap | 1324 | drivers/sound/dmabuf.c | dmap->fragment_size, 1, |
dmap | 1331 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE; |
dmap | 1333 | drivers/sound/dmabuf.c | else if (dmap->qlen == (dmap->nbufs - 1)) |
dmap | 1336 | drivers/sound/dmabuf.c | dmap->underrun_count++; |
dmap | 1343 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_ACTIVE; |
dmap | 1345 | drivers/sound/dmabuf.c | dmap->flags |= DMA_RESTART; |
dmap | 1347 | drivers/sound/dmabuf.c | dmap->flags &= ~DMA_RESTART; |
dmap | 1351 | drivers/sound/dmabuf.c | dmap->qlen++; |
dmap | 1352 | drivers/sound/dmabuf.c | if (dmap->qlen <= 0 || dmap->qlen > dmap->nbufs) |
dmap | 1354 | drivers/sound/dmabuf.c | dev, dmap->qlen, dmap->nbufs); |
dmap | 1355 | drivers/sound/dmabuf.c | dmap->qtail = (dmap->qtail + 1) % dmap->nbufs; |
dmap | 1359 | drivers/sound/dmabuf.c | audio_devs[dev]->start_input (dev, dmap->raw_buf_phys + |
dmap | 1360 | drivers/sound/dmabuf.c | dmap->qtail * dmap->fragment_size, |
dmap | 1361 | drivers/sound/dmabuf.c | dmap->fragment_size, 1, |
dmap | 1368 | drivers/sound/dmabuf.c | dmap->flags |= DMA_ACTIVE; |
dmap | 1448 | drivers/sound/dmabuf.c | struct dma_buffparms *dmap; |
dmap | 1454 | drivers/sound/dmabuf.c | dmap = audio_devs[dev]->dmap_in; |
dmap | 1456 | drivers/sound/dmabuf.c | if (dmap->dma_mode != DMODE_INPUT) |
dmap | 1458 | drivers/sound/dmabuf.c | if ((audio_devs[dev]->flags & DMA_DUPLEX) && !dmap->qlen && |
dmap | 1466 | drivers/sound/dmabuf.c | activate_recording (dev, dmap); |
dmap | 1472 | drivers/sound/dmabuf.c | if (!dmap->qlen) |
dmap | 1485 | drivers/sound/dmabuf.c | dmap = audio_devs[dev]->dmap_out; |
dmap | 1486 | drivers/sound/dmabuf.c | if (dmap->dma_mode == DMODE_INPUT) |
dmap | 1491 | drivers/sound/dmabuf.c | if (dmap->dma_mode == DMODE_NONE) |
dmap | 249 | drivers/sound/soundcard.c | struct dma_buffparms *dmap = NULL; |
dmap | 271 | drivers/sound/soundcard.c | dmap = audio_devs[dev]->dmap_in; |
dmap | 275 | drivers/sound/soundcard.c | dmap = audio_devs[dev]->dmap_out; |
dmap | 283 | drivers/sound/soundcard.c | if (dmap == NULL) |
dmap | 289 | drivers/sound/soundcard.c | if (dmap->raw_buf == NULL) |
dmap | 295 | drivers/sound/soundcard.c | if (dmap->mapping_flags) |
dmap | 309 | drivers/sound/soundcard.c | if (size != dmap->bytes_in_use) |
dmap | 312 | drivers/sound/soundcard.c | size, dmap->bytes_in_use); |
dmap | 315 | drivers/sound/soundcard.c | if (remap_page_range (vma->vm_start, dmap->raw_buf_phys, vma->vm_end - vma->vm_start, vma->vm_page_prot)) |
dmap | 322 | drivers/sound/soundcard.c | dmap->mapping_flags |= DMA_MAP_MAPPED; |
dmap | 324 | drivers/sound/soundcard.c | memset (dmap->raw_buf, |
dmap | 325 | drivers/sound/soundcard.c | dmap->neutral_byte, |
dmap | 326 | drivers/sound/soundcard.c | dmap->bytes_in_use); |
dmap | 605 | drivers/sound/soundcard.c | sound_alloc_dmap (int dev, struct dma_buffparms *dmap, int chan) |
dmap | 610 | drivers/sound/soundcard.c | if (dmap->raw_buf != NULL) |
dmap | 621 | drivers/sound/soundcard.c | dmap->raw_buf = NULL; |
dmap | 679 | drivers/sound/soundcard.c | dmap->raw_buf = start_addr; |
dmap | 680 | drivers/sound/soundcard.c | dmap->raw_buf_phys = (unsigned long) start_addr; |
dmap | 695 | drivers/sound/soundcard.c | sound_free_dmap (int dev, struct dma_buffparms *dmap) |
dmap | 697 | drivers/sound/soundcard.c | if (dmap->raw_buf == NULL) |
dmap | 707 | drivers/sound/soundcard.c | start_addr = (unsigned long) dmap->raw_buf; |
dmap | 718 | drivers/sound/soundcard.c | free_pages ((unsigned long) dmap->raw_buf, sz); |
dmap | 720 | drivers/sound/soundcard.c | dmap->raw_buf = NULL; |
dmap | 724 | drivers/sound/soundcard.c | soud_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc * info) |