On Mon, 27 Jul 2015 12:34:31 +0200,
woodrow.s...@canonical.com wrote:
> 
> From: Woodrow Shen <woodrow.s...@canonical.com>
> 
> The new Dell laptop with codec 256 can't detect headset mic when headset was 
> inserted on the machine. From alsa-info, we check init_pin_configs and need to
> define the new register value for pin 0x1d & 0x1e because the original macro 
> ALC256_STANDARD_PINS can't match pin definition. Also, the macro 
> ALC256_STANDARD_PINS
> is simplified by removing them. This makes headset mic works on laptop.
> 
> Codec: Realtek ALC256
> Vendor Id: 0x10ec0256
> Subsystem Id: 0x102806f2
> 
> BugLink: https://bugs.launchpad.net/bugs/1478497
> Signed-off-by: Woodrow Shen <woodrow.s...@canonical.com>

I applied this as is now.  But the code there is already messy, and I
wonder whether we should treat all 0x4xxxxxxx equally.  So far, all
pincfgs are regarded as a kind of fingerprint.  But, judging from the
actual values, the difference of 0x4xxxxxxx might be just a leftover
of wastes by BIOS programmers.

I don't mind any other way, but a sane cleanup would be appreciated.


thanks,

Takashi

> ---
>  sound/pci/hda/patch_realtek.c | 15 +++++++++++----
>  1 file changed, 11 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index d94c0e3..4ae877c 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -5398,8 +5398,6 @@ static const struct hda_model_fixup 
> alc269_fixup_models[] = {
>       {0x19, 0x411111f0}, \
>       {0x1a, 0x411111f0}, \
>       {0x1b, 0x411111f0}, \
> -     {0x1d, 0x40700001}, \
> -     {0x1e, 0x411111f0}, \
>       {0x21, 0x02211020}
>  
>  #define ALC282_STANDARD_PINS \
> @@ -5556,10 +5554,19 @@ static const struct snd_hda_pin_quirk 
> alc269_pin_fixup_tbl[] = {
>               {0x21, 0x02211030}),
>       SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", 
> ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
>               ALC256_STANDARD_PINS,
> -             {0x13, 0x40000000}),
> +             {0x13, 0x40000000},
> +             {0x1d, 0x40700001},
> +             {0x1e, 0x411111f0}),
>       SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", 
> ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
>               ALC256_STANDARD_PINS,
> -             {0x13, 0x411111f0}),
> +             {0x13, 0x411111f0},
> +             {0x1d, 0x40700001},
> +             {0x1e, 0x411111f0}),
> +     SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", 
> ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
> +             ALC256_STANDARD_PINS,
> +             {0x13, 0x411111f0},
> +             {0x1d, 0x4077992d},
> +             {0x1e, 0x411111ff}),
>       SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4,
>               {0x12, 0x90a60130},
>               {0x13, 0x40000000},
> -- 
> 2.1.4
>

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1478497

Title:
  Headset mic support for a Dell laptop machine

Status in linux package in Ubuntu:
  In Progress

Bug description:
  When the headset was plugged in the Dell laptop, the mic of headset
  can't be detected and workable.

  Codec: Realtek ALC256
  Vendor Id: 0x10ec0256
  Subsystem Id: 0x102806f2

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1478497/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to