ALSA: hda/sigmatel - Move w/a for HP Mini 110 LED to fixup table
authorTakashi Iwai <tiwai@suse.de>
Tue, 15 Jan 2013 10:20:50 +0000 (11:20 +0100)
committerTakashi Iwai <tiwai@suse.de>
Tue, 15 Jan 2013 10:22:36 +0000 (11:22 +0100)
Instead of checking the codec SSID in find_mute_led_cfg() for HP Mini
110, set the proper spec->default_polairty in the fixup table.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_sigmatel.c

index 3368f74811ce15b5c09befab84aca5014d143a2e..ccad9adae928311cf4336bd5bf7e246a81adb10c 100644 (file)
@@ -2343,6 +2343,8 @@ static const struct snd_pci_quirk stac92hd83xxx_fixup_tbl[] = {
                          "HP Mini", STAC_92HD83XXX_HP_LED),
        SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x144E,
                          "HP Pavilion dv5", STAC_92HD83XXX_HP_INV_LED),
+       SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x148a,
+                     "HP Mini", STAC_92HD83XXX_HP_LED),
        SND_PCI_QUIRK_VENDOR(PCI_VENDOR_ID_HP, "HP", STAC_92HD83XXX_HP),
        {} /* terminator */
 };
@@ -6241,14 +6243,10 @@ static int find_mute_led_cfg(struct hda_codec *codec, int default_polarity)
                /* BIOS bug: unfilled OEM string */
                if (strstr(dev->name, "HP_Mute_LED_P_G")) {
                        set_hp_led_gpio(codec);
-                       switch (codec->subsystem_id) {
-                       case 0x103c148a:
-                               spec->gpio_led_polarity = 0;
-                               break;
-                       default:
+                       if (default_polarity >= 0)
+                               spec->gpio_led_polarity = default_polarity;
+                       else
                                spec->gpio_led_polarity = 1;
-                               break;
-                       }
                        return 1;
                }
        }