[PATCH] ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520
Hui Wang
hui.wang at canonical.com
Mon Sep 14 10:21:44 CEST 2020
On 2020/9/14 下午4:07, Kai-Heng Feng wrote:
> Hi Hui,
>
>> On Sep 14, 2020, at 16:04, Hui Wang <hui.wang at canonical.com> wrote:
>>
>> Thanks Kaiheng, and we just had one P520 in the Beijing office and I also worked on this issue happenly. Does the led change according to jack plugging in or plugging out with your patch?
> No, the LED won't reflect the jack plugging status.
>
> The LED is always on under Windows, so we are doing the same here.
Weird, the bug's title is "The backlight for a headset connector didn't
light up after connecting a headset" and the QA in Beijing office also
requires the led could change according to plugging or no plugging.
>
> Kai-Heng
>
>> I also prepared a patchset but my patchset has more code than yours, please take a look. :-)
>>
>> Thanks.
>>
>> Hui.
>>
>> On 2020/9/14 下午3:02, Kai-Heng Feng wrote:
>>> On Lenovo P520, the front panel headset LED isn't lit up right now.
>>>
>>> Realtek states that the LED needs to be enabled by ALC233's GPIO2, so
>>> let's do it accordingly to light the LED up.
>>>
>>> Signed-off-by: Kai-Heng Feng <kai.heng.feng at canonical.com>
>>> ---
>>> sound/pci/hda/patch_realtek.c | 7 +++++++
>>> 1 file changed, 7 insertions(+)
>>>
>>> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
>>> index c521a1f17096..ba941bd0b792 100644
>>> --- a/sound/pci/hda/patch_realtek.c
>>> +++ b/sound/pci/hda/patch_realtek.c
>>> @@ -6017,6 +6017,7 @@ static void alc_fixup_thinkpad_acpi(struct hda_codec *codec,
>>> #include "hp_x360_helper.c"
>>> enum {
>>> + ALC269_FIXUP_GPIO2,
>>> ALC269_FIXUP_SONY_VAIO,
>>> ALC275_FIXUP_SONY_VAIO_GPIO2,
>>> ALC269_FIXUP_DELL_M101Z,
>>> @@ -6194,6 +6195,10 @@ enum {
>>> };
>>> static const struct hda_fixup alc269_fixups[] = {
>>> + [ALC269_FIXUP_GPIO2] = {
>>> + .type = HDA_FIXUP_FUNC,
>>> + .v.func = alc_fixup_gpio2,
>>> + },
>>> [ALC269_FIXUP_SONY_VAIO] = {
>>> .type = HDA_FIXUP_PINCTLS,
>>> .v.pins = (const struct hda_pintbl[]) {
>>> @@ -7013,6 +7018,8 @@ static const struct hda_fixup alc269_fixups[] = {
>>> [ALC233_FIXUP_LENOVO_MULTI_CODECS] = {
>>> .type = HDA_FIXUP_FUNC,
>>> .v.func = alc233_alc662_fixup_lenovo_dual_codecs,
>>> + .chained = true,
>>> + .chain_id = ALC269_FIXUP_GPIO2
>>> },
>>> [ALC233_FIXUP_ACER_HEADSET_MIC] = {
>>> .type = HDA_FIXUP_VERBS,
More information about the Alsa-devel
mailing list