|
@@ -703,19 +703,27 @@ static int snd_mixer_oss_put_volume1(struct snd_mixer_oss_file *fmixer,
|
|
|
if (left || right) {
|
|
|
if (slot->present & SNDRV_MIXER_OSS_PRESENT_PSWITCH)
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_PSWITCH], left, right, 0);
|
|
|
+ if (slot->present & SNDRV_MIXER_OSS_PRESENT_CSWITCH)
|
|
|
+ snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_CSWITCH], left, right, 0);
|
|
|
if (slot->present & SNDRV_MIXER_OSS_PRESENT_GSWITCH)
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_GSWITCH], left, right, 0);
|
|
|
if (slot->present & SNDRV_MIXER_OSS_PRESENT_PROUTE)
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_PROUTE], left, right, 1);
|
|
|
+ if (slot->present & SNDRV_MIXER_OSS_PRESENT_CROUTE)
|
|
|
+ snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_CROUTE], left, right, 1);
|
|
|
if (slot->present & SNDRV_MIXER_OSS_PRESENT_GROUTE)
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_GROUTE], left, right, 1);
|
|
|
} else {
|
|
|
if (slot->present & SNDRV_MIXER_OSS_PRESENT_PSWITCH) {
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_PSWITCH], left, right, 0);
|
|
|
+ } else if (slot->present & SNDRV_MIXER_OSS_PRESENT_CSWITCH) {
|
|
|
+ snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_CSWITCH], left, right, 0);
|
|
|
} else if (slot->present & SNDRV_MIXER_OSS_PRESENT_GSWITCH) {
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_GSWITCH], left, right, 0);
|
|
|
} else if (slot->present & SNDRV_MIXER_OSS_PRESENT_PROUTE) {
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_PROUTE], left, right, 1);
|
|
|
+ } else if (slot->present & SNDRV_MIXER_OSS_PRESENT_CROUTE) {
|
|
|
+ snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_CROUTE], left, right, 1);
|
|
|
} else if (slot->present & SNDRV_MIXER_OSS_PRESENT_GROUTE) {
|
|
|
snd_mixer_oss_put_volume1_sw(fmixer, pslot, slot->numid[SNDRV_MIXER_OSS_ITEM_GROUTE], left, right, 1);
|
|
|
}
|