s->count++;
up(&open_sem);
- return nonseekable_open(inode, file);
+ return 0;
}
static int usb_audio_release_mixdev(struct inode *inode, struct file *file)
unsigned int ptr;
int cnt, err;
+ if (ppos != &file->f_pos)
+ return -ESPIPE;
if (as->usbin.dma.mapped)
return -ENXIO;
if (!as->usbin.dma.ready && (ret = prog_dmabuf_in(as)))
unsigned int start_thr;
int cnt, err;
+ if (ppos != &file->f_pos)
+ return -ESPIPE;
if (as->usbout.dma.mapped)
return -ENXIO;
if (!as->usbout.dma.ready && (ret = prog_dmabuf_out(as)))
as->open_mode |= file->f_mode & (FMODE_READ | FMODE_WRITE);
s->count++;
up(&open_sem);
- return nonseekable_open(inode, file);
+ return 0;
}
static int usb_audio_release(struct inode *inode, struct file *file)