[alsa-devel] [PATCH 2/8] ALSA: VIA HDA: Fix stereo mixer recording no sound issue
From: Lydia Wang lydiawang@viatech.com.cn Subject: ALSA: VIA HDA: Fix stereo mixer recording no sound issue.
Modify function via_mux_enum_put() to fix stereo mixer recording no sound issue.
Signed-off-by: Lydia Wang lydiawang@viatech.com.cn --- sound/pci/hda/patch_via.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
--- a/sound/pci/hda/patch_via.c +++ b/sound/pci/hda/patch_via.c @@ -633,6 +633,7 @@ struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct via_spec *spec = codec->spec; unsigned int adc_idx = snd_ctl_get_ioffidx(kcontrol, &ucontrol->id); + int ret;
if (!spec->mux_nids[adc_idx]) return -EINVAL; @@ -641,12 +642,14 @@ AC_VERB_GET_POWER_STATE, 0x00) != AC_PWRST_D0) snd_hda_codec_write(codec, spec->mux_nids[adc_idx], 0, AC_VERB_SET_POWER_STATE, AC_PWRST_D0); - /* update jack power state */ - set_widgets_power_state(codec);
- return snd_hda_input_mux_put(codec, spec->input_mux, ucontrol, + ret = snd_hda_input_mux_put(codec, spec->input_mux, ucontrol, spec->mux_nids[adc_idx], &spec->cur_mux[adc_idx]); + /* update jack power state */ + set_widgets_power_state(codec); + + return ret; }
static int via_independent_hp_info(struct snd_kcontrol *kcontrol,
At Tue, 22 Mar 2011 14:29:09 +0800, Lydia Wang wrote:
From: Lydia Wang lydiawang@viatech.com.cn Subject: ALSA: VIA HDA: Fix stereo mixer recording no sound issue.
Modify function via_mux_enum_put() to fix stereo mixer recording no sound issue.
Signed-off-by: Lydia Wang lydiawang@viatech.com.cn
Well, this kind of small but important fixes are basically independent from the previous power-management rewrite patch. So, these should be applied before the new pm patch, so that they can be picked up more easily for stable kernel. This is what I requested in the previous mail.
Of course, it assumes that the fix is applicable individually. For example, this patch can work even without pm-rewrite patch when you modify the patch content to fit with the old pm funciton call, right?
thanks,
Takashi
sound/pci/hda/patch_via.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
--- a/sound/pci/hda/patch_via.c +++ b/sound/pci/hda/patch_via.c @@ -633,6 +633,7 @@ struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct via_spec *spec = codec->spec; unsigned int adc_idx = snd_ctl_get_ioffidx(kcontrol, &ucontrol->id);
int ret;
if (!spec->mux_nids[adc_idx]) return -EINVAL;
@@ -641,12 +642,14 @@ AC_VERB_GET_POWER_STATE, 0x00) != AC_PWRST_D0) snd_hda_codec_write(codec, spec->mux_nids[adc_idx], 0, AC_VERB_SET_POWER_STATE, AC_PWRST_D0);
/* update jack power state */
set_widgets_power_state(codec);
return snd_hda_input_mux_put(codec, spec->input_mux, ucontrol,
- ret = snd_hda_input_mux_put(codec, spec->input_mux, ucontrol, spec->mux_nids[adc_idx], &spec->cur_mux[adc_idx]);
- /* update jack power state */
- set_widgets_power_state(codec);
- return ret;
}
static int via_independent_hp_info(struct snd_kcontrol *kcontrol,
At Tue, 22 Mar 2011 08:17:05 +0100, Takashi Iwai wrote:
At Tue, 22 Mar 2011 14:29:09 +0800, Lydia Wang wrote:
From: Lydia Wang lydiawang@viatech.com.cn Subject: ALSA: VIA HDA: Fix stereo mixer recording no sound issue.
Modify function via_mux_enum_put() to fix stereo mixer recording no sound issue.
Signed-off-by: Lydia Wang lydiawang@viatech.com.cn
Well, this kind of small but important fixes are basically independent from the previous power-management rewrite patch. So, these should be applied before the new pm patch, so that they can be picked up more easily for stable kernel. This is what I requested in the previous mail.
Of course, it assumes that the fix is applicable individually. For example, this patch can work even without pm-rewrite patch when you modify the patch content to fit with the old pm funciton call, right?
In other words, let's begin with the minimum patches for fixing known bugs for the already released kernels. Smaller is better in this case.
Then, on the top of that, apply more bigger patches including the code-refactoring.
thanks,
Takashi
participants (2)
-
Lydia Wang
-
Takashi Iwai