ALSA: oss - volume control for CSWITCH and CROUTE
Added an else part to check
SNDRV_MIXER_OSS_PRESENT_CVOLUME for MIC (slot 7)
in commit 36c7b833e5
Similarly, checks and volume control is required for
SNDRV_MIXER_OSS_PRESENT_CSWITCH and SNDRV_MIXER_OSS_PRESENT_CROUTE
as well.
Signed-off-by: Deepika Makhija <deepika.makhija@einfochips.com>
Signed-off-by: Viral Mehta <viral.mehta@einfochips.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
7d2ac1036b
commit
d2e8e52976
1 changed files with 8 additions and 0 deletions
|
@ -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);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue