diff options
Diffstat (limited to 'sound/pci/hda/patch_cirrus.c')
| -rw-r--r-- | sound/pci/hda/patch_cirrus.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_cirrus.c b/sound/pci/hda/patch_cirrus.c index 0e99357e822..bc5a993d114 100644 --- a/sound/pci/hda/patch_cirrus.c +++ b/sound/pci/hda/patch_cirrus.c @@ -988,8 +988,10 @@ static void cs_automic(struct hda_codec *codec)  			change_cur_input(codec, !spec->automic_idx, 0);  	} else {  		if (present) { -			spec->last_input = spec->cur_input; -			spec->cur_input = spec->automic_idx; +			if (spec->cur_input != spec->automic_idx) { +				spec->last_input = spec->cur_input; +				spec->cur_input = spec->automic_idx; +			}  		} else  {  			spec->cur_input = spec->last_input;  		}  |