Fix Dell ALC256 headphone Mic recording issue. Default is pcbeep path for 0x1a input.
> -----Original Message----- > From: Takashi Iwai [mailto:<email address hidden>] > Sent: Tuesday, April 21, 2015 6:03 PM > To: David Henningsson > Cc: <email address hidden>; Kailang; <email address hidden>; > <email address hidden>; <email address hidden> > Subject: Re: [PATCH] ALSA: hda - fix "num_steps = 0" error on ALC256 > > At Tue, 21 Apr 2015 10:48:46 +0200, > David Henningsson wrote: > > > > The ALC256 does not have a mixer nid at 0x0b, and there's > no loopback > > path (the output pins are directly connected to the DACs). > > > > This commit fixes an "num_steps = 0 for NID=0xb (ctl = Beep > Playback Volume)" > > error (and as a result, problems with amixer/alsamixer). > > > > If there's pcbeep functionality, it certainly isn't controlled by > > setting an amp on 0x0b, so disable beep functionality (at > least for now). > > > > Cc: <email address hidden> > > BugLink: > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1446517 > > Signed-off-by: David Henningsson <email address hidden> > > Applied, thanks. > > > Takashi > > > --- > > sound/pci/hda/patch_realtek.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/sound/pci/hda/patch_realtek.c > > b/sound/pci/hda/patch_realtek.c index 231d0e4..03975d03 100644 > > --- a/sound/pci/hda/patch_realtek.c > > +++ b/sound/pci/hda/patch_realtek.c > > @@ -5664,6 +5664,7 @@ static int patch_alc269(struct > hda_codec *codec) > > break; > > case 0x10ec0256: > > spec->codec_variant = ALC269_TYPE_ALC256; > > + spec->gen.mixer_nid = 0; /* ALC256 does not > have any loopback mixer > > +path */ > > break; > > } > > > > @@ -5677,8 +5678,8 @@ static int patch_alc269(struct > hda_codec *codec) > > if (err < 0) > > goto error; > > > > - if (!spec->gen.no_analog && spec->gen.beep_nid) > > - set_beep_amp(spec, 0x0b, 0x04, HDA_INPUT); > > + if (!spec->gen.no_analog && spec->gen.beep_nid && > spec->gen.mixer_nid) > > + set_beep_amp(spec, spec->gen.mixer_nid, 0x04, > HDA_INPUT); > > > > codec->patch_ops = alc_patch_ops; > > codec->patch_ops.stream_pm = snd_hda_gen_stream_pm; > > -- > > 1.9.1 > > > > ------Please consider the environment before printing this e-mail. >
Fix Dell ALC256 headphone Mic recording issue.
Default is pcbeep path for 0x1a input.
> -----Original Message----- /bugs.launchpad .net/ubuntu/ +source/ linux/+ bug/1446517 hda/patch_ realtek. c | 5 +++-- pci/hda/ patch_realtek. c pci/hda/ patch_realtek. c index 231d0e4..03975d03 100644 pci/hda/ patch_realtek. c pci/hda/ patch_realtek. c >gen.no_ analog && spec->gen.beep_nid) >gen.no_ analog && spec->gen.beep_nid && mixer_nid) mixer_nid, 0x04, patch_ops. stream_ pm = snd_hda_ gen_stream_ pm;
> From: Takashi Iwai [mailto:<email address hidden>]
> Sent: Tuesday, April 21, 2015 6:03 PM
> To: David Henningsson
> Cc: <email address hidden>; Kailang; <email address hidden>;
> <email address hidden>; <email address hidden>
> Subject: Re: [PATCH] ALSA: hda - fix "num_steps = 0" error on ALC256
>
> At Tue, 21 Apr 2015 10:48:46 +0200,
> David Henningsson wrote:
> >
> > The ALC256 does not have a mixer nid at 0x0b, and there's
> no loopback
> > path (the output pins are directly connected to the DACs).
> >
> > This commit fixes an "num_steps = 0 for NID=0xb (ctl = Beep
> Playback Volume)"
> > error (and as a result, problems with amixer/alsamixer).
> >
> > If there's pcbeep functionality, it certainly isn't controlled by
> > setting an amp on 0x0b, so disable beep functionality (at
> least for now).
> >
> > Cc: <email address hidden>
> > BugLink:
> https:/
> > Signed-off-by: David Henningsson <email address hidden>
>
> Applied, thanks.
>
>
> Takashi
>
> > ---
> > sound/pci/
> > 1 file changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/sound/
> > b/sound/
> > --- a/sound/
> > +++ b/sound/
> > @@ -5664,6 +5664,7 @@ static int patch_alc269(struct
> hda_codec *codec)
> > break;
> > case 0x10ec0256:
> > spec->codec_variant = ALC269_TYPE_ALC256;
> > + spec->gen.mixer_nid = 0; /* ALC256 does not
> have any loopback mixer
> > +path */
> > break;
> > }
> >
> > @@ -5677,8 +5678,8 @@ static int patch_alc269(struct
> hda_codec *codec)
> > if (err < 0)
> > goto error;
> >
> > - if (!spec-
> > - set_beep_amp(spec, 0x0b, 0x04, HDA_INPUT);
> > + if (!spec-
> spec->gen.
> > + set_beep_amp(spec, spec->gen.
> HDA_INPUT);
> >
> > codec->patch_ops = alc_patch_ops;
> > codec->
> > --
> > 1.9.1
> >
>
> ------Please consider the environment before printing this e-mail.
>