From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH 2/8] ALSA: VIA HDA: Fix stereo mixer recording no sound issue Date: Tue, 22 Mar 2011 08:17:05 +0100 Message-ID: References: <4D8841B5.6050908@viatech.com.cn> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx1.suse.de (cantor.suse.de [195.135.220.2]) by alsa0.perex.cz (Postfix) with ESMTP id 190D6103826 for ; Tue, 22 Mar 2011 08:17:08 +0100 (CET) In-Reply-To: <4D8841B5.6050908@viatech.com.cn> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: alsa-devel-bounces@alsa-project.org Errors-To: alsa-devel-bounces@alsa-project.org To: Lydia Wang Cc: alsa-devel@alsa-project.org, HaraldWelte@viatech.com List-Id: alsa-devel@alsa-project.org At Tue, 22 Mar 2011 14:29:09 +0800, Lydia Wang wrote: > > From: Lydia Wang > 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 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, >