Lines Matching refs:ctrl

57 	volatile snd_pcm_shm_ctrl_t *ctrl;
66 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
74 if (ctrl->cmd) {
78 return ctrl->result;
95 shm->ctrl->cmd = &pcm->hw == rbptr ? SND_PCM_IOCTL_HW_PTR_FD : SND_PCM_IOCTL_APPL_PTR_FD;
118 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
120 if (ctrl->hw.changed || ctrl->appl.changed)
128 if (ctrl->cmd) {
132 result = ctrl->result;
133 if (ctrl->hw.changed) {
134 err = snd_pcm_shm_new_rbptr(pcm, shm, &pcm->hw, &ctrl->hw);
137 ctrl->hw.changed = 0;
139 if (ctrl->appl.changed) {
140 err = snd_pcm_shm_new_rbptr(pcm, shm, &pcm->appl, &ctrl->appl);
143 ctrl->appl.changed = 0;
153 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
155 if (ctrl->hw.changed || ctrl->appl.changed)
163 if (ctrl->cmd) {
167 if (ctrl->hw.changed) {
168 err = snd_pcm_shm_new_rbptr(pcm, shm, &pcm->hw, &ctrl->hw);
171 ctrl->hw.changed = 0;
173 if (ctrl->appl.changed) {
174 err = snd_pcm_shm_new_rbptr(pcm, shm, &pcm->appl, &ctrl->appl);
177 ctrl->appl.changed = 0;
179 return ctrl->result;
190 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
191 ctrl->cmd = SND_PCM_IOCTL_ASYNC;
192 ctrl->u.async.sig = sig;
193 ctrl->u.async.pid = pid;
200 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
202 // ctrl->u.info = *info;
203 ctrl->cmd = SNDRV_PCM_IOCTL_INFO;
207 *info = ctrl->u.info;
267 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
269 ctrl->u.hw_refine = *params;
270 ctrl->cmd = SNDRV_PCM_IOCTL_HW_REFINE;
272 *params = ctrl->u.hw_refine;
290 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
293 ctrl->cmd = SNDRV_PCM_IOCTL_HW_PARAMS;
294 ctrl->u.hw_params = *params;
296 *params = ctrl->u.hw_params;
312 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
313 ctrl->cmd = SNDRV_PCM_IOCTL_HW_FREE;
320 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
322 ctrl->cmd = SNDRV_PCM_IOCTL_SW_PARAMS;
323 ctrl->u.sw_params = *params;
325 *params = ctrl->u.sw_params;
367 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
370 ctrl->cmd = SNDRV_PCM_IOCTL_CHANNEL_INFO;
371 ctrl->u.channel_info = *info;
375 *info = ctrl->u.channel_info;
393 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
395 ctrl->cmd = SNDRV_PCM_IOCTL_STATUS;
396 // ctrl->u.status = *status;
400 *status = ctrl->u.status;
407 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
408 ctrl->cmd = SND_PCM_IOCTL_STATE;
415 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
416 ctrl->cmd = SND_PCM_IOCTL_HWSYNC;
423 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
425 ctrl->cmd = SNDRV_PCM_IOCTL_DELAY;
429 *delayp = ctrl->u.delay.frames;
436 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
438 ctrl->cmd = SND_PCM_IOCTL_AVAIL_UPDATE;
455 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
456 ctrl->cmd = SNDRV_PCM_IOCTL_PREPARE;
463 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
464 ctrl->cmd = SNDRV_PCM_IOCTL_RESET;
471 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
472 ctrl->cmd = SNDRV_PCM_IOCTL_START;
479 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
480 ctrl->cmd = SNDRV_PCM_IOCTL_DROP;
487 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
490 ctrl->cmd = SNDRV_PCM_IOCTL_DRAIN;
506 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
507 ctrl->cmd = SNDRV_PCM_IOCTL_PAUSE;
508 ctrl->u.pause.enable = enable;
520 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
521 ctrl->cmd = SNDRV_PCM_IOCTL_REWIND;
522 ctrl->u.rewind.frames = frames;
534 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
535 ctrl->cmd = SND_PCM_IOCTL_FORWARD;
536 ctrl->u.forward.frames = frames;
543 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
544 ctrl->cmd = SNDRV_PCM_IOCTL_RESUME;
553 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
554 ctrl->cmd = SND_PCM_IOCTL_MMAP_COMMIT;
555 ctrl->u.mmap_commit.offset = offset;
556 ctrl->u.mmap_commit.frames = size;
563 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
565 ctrl->cmd = SND_PCM_IOCTL_POLL_DESCRIPTOR;
575 volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl;
577 ctrl->cmd = SND_PCM_IOCTL_CLOSE;
579 shmdt((void *)ctrl);
682 snd_pcm_shm_ctrl_t *ctrl = NULL;
729 ctrl = shmat(ans.cookie, 0, 0);
730 if (!ctrl) {
743 shm->ctrl = ctrl;
761 snd_pcm_set_hw_ptr(pcm, &ctrl->hw.ptr, -1, 0);
762 snd_pcm_set_appl_ptr(pcm, &ctrl->appl.ptr, -1, 0);
768 if (ctrl)
769 shmdt(ctrl);