diff options
| -rw-r--r-- | sound/pci/hda/patch_realtek.c | 196 |
1 files changed, 171 insertions, 25 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 08bb06969a57..d82884b85fad 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
| @@ -4739,31 +4739,16 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { | |||
| 4739 | SND_PCI_QUIRK(0x1028, 0x0606, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4739 | SND_PCI_QUIRK(0x1028, 0x0606, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4740 | SND_PCI_QUIRK(0x1028, 0x0608, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4740 | SND_PCI_QUIRK(0x1028, 0x0608, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4741 | SND_PCI_QUIRK(0x1028, 0x0609, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4741 | SND_PCI_QUIRK(0x1028, 0x0609, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4742 | SND_PCI_QUIRK(0x1028, 0x060f, "Dell", ALC269_FIXUP_DELL3_MIC_NO_PRESENCE), | ||
| 4743 | SND_PCI_QUIRK(0x1028, 0x0610, "Dell", ALC269_FIXUP_DELL3_MIC_NO_PRESENCE), | ||
| 4744 | SND_PCI_QUIRK(0x1028, 0x0613, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4742 | SND_PCI_QUIRK(0x1028, 0x0613, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4745 | SND_PCI_QUIRK(0x1028, 0x0614, "Dell Inspiron 3135", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4743 | SND_PCI_QUIRK(0x1028, 0x0614, "Dell Inspiron 3135", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4746 | SND_PCI_QUIRK(0x1028, 0x0615, "Dell Vostro 5470", ALC290_FIXUP_SUBWOOFER_HSJACK), | 4744 | SND_PCI_QUIRK(0x1028, 0x0615, "Dell Vostro 5470", ALC290_FIXUP_SUBWOOFER_HSJACK), |
| 4747 | SND_PCI_QUIRK(0x1028, 0x0616, "Dell Vostro 5470", ALC290_FIXUP_SUBWOOFER_HSJACK), | 4745 | SND_PCI_QUIRK(0x1028, 0x0616, "Dell Vostro 5470", ALC290_FIXUP_SUBWOOFER_HSJACK), |
| 4748 | SND_PCI_QUIRK(0x1028, 0x061f, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4749 | SND_PCI_QUIRK(0x1028, 0x0629, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4750 | SND_PCI_QUIRK(0x1028, 0x062c, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | 4746 | SND_PCI_QUIRK(0x1028, 0x062c, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4751 | SND_PCI_QUIRK(0x1028, 0x0638, "Dell Inspiron 5439", ALC290_FIXUP_MONO_SPEAKERS_HSJACK), | 4747 | SND_PCI_QUIRK(0x1028, 0x0638, "Dell Inspiron 5439", ALC290_FIXUP_MONO_SPEAKERS_HSJACK), |
| 4752 | SND_PCI_QUIRK(0x1028, 0x063e, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4753 | SND_PCI_QUIRK(0x1028, 0x063f, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | 4748 | SND_PCI_QUIRK(0x1028, 0x063f, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4754 | SND_PCI_QUIRK(0x1028, 0x064a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), | 4749 | SND_PCI_QUIRK(0x1028, 0x064a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4755 | SND_PCI_QUIRK(0x1028, 0x064b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), | 4750 | SND_PCI_QUIRK(0x1028, 0x064b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4756 | SND_PCI_QUIRK(0x1028, 0x0640, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4757 | SND_PCI_QUIRK(0x1028, 0x064d, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | 4751 | SND_PCI_QUIRK(0x1028, 0x064d, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), |
| 4758 | SND_PCI_QUIRK(0x1028, 0x0651, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4759 | SND_PCI_QUIRK(0x1028, 0x0652, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4760 | SND_PCI_QUIRK(0x1028, 0x0653, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4761 | SND_PCI_QUIRK(0x1028, 0x0657, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4762 | SND_PCI_QUIRK(0x1028, 0x0658, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4763 | SND_PCI_QUIRK(0x1028, 0x065c, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4764 | SND_PCI_QUIRK(0x1028, 0x065f, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4765 | SND_PCI_QUIRK(0x1028, 0x0662, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4766 | SND_PCI_QUIRK(0x1028, 0x0667, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), | ||
| 4767 | SND_PCI_QUIRK(0x1028, 0x0668, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE), | 4752 | SND_PCI_QUIRK(0x1028, 0x0668, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE), |
| 4768 | SND_PCI_QUIRK(0x1028, 0x0669, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE), | 4753 | SND_PCI_QUIRK(0x1028, 0x0669, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE), |
| 4769 | SND_PCI_QUIRK(0x1028, 0x0674, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), | 4754 | SND_PCI_QUIRK(0x1028, 0x0674, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), |
| @@ -4947,25 +4932,24 @@ static const struct hda_model_fixup alc269_fixup_models[] = { | |||
| 4947 | 4932 | ||
| 4948 | static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | 4933 | static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { |
| 4949 | { | 4934 | { |
| 4950 | .codec = 0x10ec0293, | 4935 | .codec = 0x10ec0255, |
| 4951 | .subvendor = 0x1028, | 4936 | .subvendor = 0x1028, |
| 4952 | #ifdef CONFIG_SND_DEBUG_VERBOSE | 4937 | #ifdef CONFIG_SND_DEBUG_VERBOSE |
| 4953 | .name = "Dell", | 4938 | .name = "Dell", |
| 4954 | #endif | 4939 | #endif |
| 4955 | .pins = (const struct hda_pintbl[]) { | 4940 | .pins = (const struct hda_pintbl[]) { |
| 4956 | {0x12, 0x40000000}, | 4941 | {0x12, 0x90a60140}, |
| 4957 | {0x13, 0x90a60140}, | ||
| 4958 | {0x14, 0x90170110}, | 4942 | {0x14, 0x90170110}, |
| 4959 | {0x15, 0x0221401f}, | 4943 | {0x17, 0x40000000}, |
| 4960 | {0x16, 0x21014020}, | ||
| 4961 | {0x18, 0x411111f0}, | 4944 | {0x18, 0x411111f0}, |
| 4962 | {0x19, 0x21a19030}, | 4945 | {0x19, 0x411111f0}, |
| 4963 | {0x1a, 0x411111f0}, | 4946 | {0x1a, 0x411111f0}, |
| 4964 | {0x1b, 0x411111f0}, | 4947 | {0x1b, 0x411111f0}, |
| 4965 | {0x1d, 0x40700001}, | 4948 | {0x1d, 0x40700001}, |
| 4966 | {0x1e, 0x411111f0}, | 4949 | {0x1e, 0x411111f0}, |
| 4950 | {0x21, 0x02211020}, | ||
| 4967 | }, | 4951 | }, |
| 4968 | .value = ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, | 4952 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, |
| 4969 | }, | 4953 | }, |
| 4970 | { | 4954 | { |
| 4971 | .codec = 0x10ec0255, | 4955 | .codec = 0x10ec0255, |
| @@ -4974,8 +4958,8 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | |||
| 4974 | .name = "Dell", | 4958 | .name = "Dell", |
| 4975 | #endif | 4959 | #endif |
| 4976 | .pins = (const struct hda_pintbl[]) { | 4960 | .pins = (const struct hda_pintbl[]) { |
| 4977 | {0x12, 0x90a60140}, | 4961 | {0x12, 0x90a60160}, |
| 4978 | {0x14, 0x90170110}, | 4962 | {0x14, 0x90170120}, |
| 4979 | {0x17, 0x40000000}, | 4963 | {0x17, 0x40000000}, |
| 4980 | {0x18, 0x411111f0}, | 4964 | {0x18, 0x411111f0}, |
| 4981 | {0x19, 0x411111f0}, | 4965 | {0x19, 0x411111f0}, |
| @@ -4983,10 +4967,172 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | |||
| 4983 | {0x1b, 0x411111f0}, | 4967 | {0x1b, 0x411111f0}, |
| 4984 | {0x1d, 0x40700001}, | 4968 | {0x1d, 0x40700001}, |
| 4985 | {0x1e, 0x411111f0}, | 4969 | {0x1e, 0x411111f0}, |
| 4986 | {0x21, 0x02211020}, | 4970 | {0x21, 0x02211030}, |
| 4987 | }, | 4971 | }, |
| 4988 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | 4972 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, |
| 4989 | }, | 4973 | }, |
| 4974 | { | ||
| 4975 | .codec = 0x10ec0255, | ||
| 4976 | .subvendor = 0x1028, | ||
| 4977 | #ifdef CONFIG_SND_DEBUG_VERBOSE | ||
| 4978 | .name = "Dell", | ||
| 4979 | #endif | ||
| 4980 | .pins = (const struct hda_pintbl[]) { | ||
| 4981 | {0x12, 0x90a60160}, | ||
| 4982 | {0x14, 0x90170130}, | ||
| 4983 | {0x17, 0x40000000}, | ||
| 4984 | {0x18, 0x411111f0}, | ||
| 4985 | {0x19, 0x411111f0}, | ||
| 4986 | {0x1a, 0x411111f0}, | ||
| 4987 | {0x1b, 0x411111f0}, | ||
| 4988 | {0x1d, 0x40700001}, | ||
| 4989 | {0x1e, 0x411111f0}, | ||
| 4990 | {0x21, 0x02211040}, | ||
| 4991 | }, | ||
| 4992 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
| 4993 | }, | ||
| 4994 | { | ||
| 4995 | .codec = 0x10ec0255, | ||
| 4996 | .subvendor = 0x1028, | ||
| 4997 | #ifdef CONFIG_SND_DEBUG_VERBOSE | ||
| 4998 | .name = "Dell", | ||
| 4999 | #endif | ||
| 5000 | .pins = (const struct hda_pintbl[]) { | ||
| 5001 | {0x12, 0x90a60160}, | ||
| 5002 | {0x14, 0x90170140}, | ||
| 5003 | {0x17, 0x40000000}, | ||
| 5004 | {0x18, 0x411111f0}, | ||
| 5005 | {0x19, 0x411111f0}, | ||
| 5006 | {0x1a, 0x411111f0}, | ||
| 5007 | {0x1b, 0x411111f0}, | ||
| 5008 | {0x1d, 0x40700001}, | ||
| 5009 | {0x1e, 0x411111f0}, | ||
| 5010 | {0x21, 0x02211050}, | ||
| 5011 | }, | ||
| 5012 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
| 5013 | }, | ||
| 5014 | { | ||
| 5015 | .codec = 0x10ec0255, | ||
| 5016 | .subvendor = 0x1028, | ||
| 5017 | #ifdef CONFIG_SND_DEBUG_VERBOSE | ||
| 5018 | .name = "Dell", | ||
| 5019 | #endif | ||
| 5020 | .pins = (const struct hda_pintbl[]) { | ||
| 5021 | {0x12, 0x90a60170}, | ||
| 5022 | {0x14, 0x90170120}, | ||
| 5023 | {0x17, 0x40000000}, | ||
| 5024 | {0x18, 0x411111f0}, | ||
| 5025 | {0x19, 0x411111f0}, | ||
| 5026 | {0x1a, 0x411111f0}, | ||
| 5027 | {0x1b, 0x411111f0}, | ||
| 5028 | {0x1d, 0x40700001}, | ||
| 5029 | {0x1e, 0x411111f0}, | ||
| 5030 | {0x21, 0x02211030}, | ||
| 5031 | }, | ||
| 5032 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
| 5033 | }, | ||
| 5034 | { | ||
| 5035 | .codec = 0x10ec0255, | ||
| 5036 | .subvendor = 0x1028, | ||
| 5037 | #ifdef CONFIG_SND_DEBUG_VERBOSE | ||
| 5038 | .name = "Dell", | ||
| 5039 | #endif | ||
| 5040 | .pins = (const struct hda_pintbl[]) { | ||
| 5041 | {0x12, 0x90a60170}, | ||
| 5042 | {0x14, 0x90170130}, | ||
| 5043 | {0x17, 0x40000000}, | ||
| 5044 | {0x18, 0x411111f0}, | ||
| 5045 | {0x19, 0x411111f0}, | ||
| 5046 | {0x1a, 0x411111f0}, | ||
| 5047 | {0x1b, 0x411111f0}, | ||
| 5048 | {0x1d, 0x40700001}, | ||
| 5049 | {0x1e, 0x411111f0}, | ||
| 5050 | {0x21, 0x02211040}, | ||
| 5051 | }, | ||
| 5052 | .value = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
| 5053 | }, | ||
| 5054 | { | ||
