--- harmony.c 2001/08/19 15:21:11 1.13 +++ harmony.c 2001/09/05 23:07:13 @@ -680,6 +680,24 @@ harmony_set_rate(harmony_detect_rate(ival)); return put_user(ival, (int*) arg); + case SNDCTL_DSP_CHANNELS: + if (get_user(ival, (int *) arg)) + return -EFAULT; + + if (ival > 0) { + if (ival == 1) + harmony_set_stereo(HARMONY_SS_MONO); + else + harmony_set_stereo(HARMONY_SS_STEREO); + } + + if (harmony.stereo_select == HARMONY_SS_STEREO) + ival = 2; + else + ival = 1; + + return put_user(ival, (int *) arg); + case SNDCTL_DSP_STEREO: /* _SIOWR('P', 3, int) */ if (get_user(ival, (int *) arg)) return -EFAULT; @@ -693,6 +711,9 @@ return put_user(ival, (int *) arg); case SNDCTL_DSP_RESET: + return 0; + + case SNDCTL_DSP_SYNC: return 0; case SNDCTL_DSP_SETFMT: /* _SIOWR('P',5, int) */