PERFORCE change 100119 for review
Ryan Beasley
ryanb at FreeBSD.org
Tue Jun 27 06:44:00 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=100119
Change 100119 by ryanb at ryanb_yuki on 2006/06/27 06:43:43
Install stub ioctls for
SNDCTL_DSP_GET_PLAYTGT_NAMES
SNDCTL_DSP_GET_PLAYTGT
SNDCTL_DSP_SET_PLAYTGT
Affected files ...
.. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#7 edit
Differences ...
==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#7 (text+ko) ====
@@ -408,6 +408,7 @@
int kill;
int ret = 0, *arg_i = (int *)arg, tmp;
#ifdef OSSV4_EXPERIMENT
+ oss_mixer_enuminfo *ei;
int xcmd;
xcmd = 0;
@@ -1082,6 +1083,42 @@
/** @todo verify error correctness */
ret = EINVAL;
break;
+
+ /*
+ * The following 3 ioctls aren't very useful at the moment. For
+ * now, only a single channel is associated with a cdev (/dev/dspN
+ * instance), so there's only a single output routing to use (i.e.,
+ * the wrch bound to this cdev).
+ */
+ case SNDCTL_DSP_GET_PLAYTGT_NAMES:
+ ei = (oss_mixer_enuminfo *)arg;
+ ei->dev = 0;
+ ei->ctrl = 0;
+ ei->version = 0; /* static for now */
+ ei->strindex[0] = 0;
+
+ if (wrch != NULL) {
+ ei->nvalues = 1;
+ strlcpy(ei->strings, wrch->name, sizeof(ei->strings));
+ } else {
+ ei->nvalues = 0;
+ ei->strings[0] = '\0';
+ }
+ break;
+ case SNDCTL_DSP_GET_PLAYTGT:
+ case SNDCTL_DSP_SET_PLAYTGT: /* yes, they are the same for now */
+ /*
+ * Re: SET_PLAYTGT
+ * OSSv4: "The value that was accepted by the device will
+ * be returned back in the variable pointed by the
+ * argument."
+ */
+ if (wrch != NULL)
+ *arg_i = 0;
+ else
+ ret = EINVAL;
+ break;
+
#endif /* !OSSV4_EXPERIMENT */
case SNDCTL_DSP_MAPINBUF:
case SNDCTL_DSP_MAPOUTBUF:
More information about the p4-projects
mailing list