snd_hda: add support for the Lenovo X1 20BS model.
This requires a patch to redirect the output to a separate DAC when the headphones are used. While there, add device strings for Intel Broadwell HDA controllers and Realtek ALC292 codecs. MFC after: 1 week
This commit is contained in:
parent
f6d3ccf1a3
commit
d5870c6142
@ -401,6 +401,13 @@ hdac_pin_patch(struct hdaa_widget *w)
|
||||
patch = "as=1 seq=15";
|
||||
break;
|
||||
}
|
||||
} else if (id == HDA_CODEC_ALC292 &&
|
||||
subid == LENOVO_X120BS_SUBVENDOR) {
|
||||
switch (nid) {
|
||||
case 21:
|
||||
patch = "as=1 seq=15";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (patch != NULL)
|
||||
|
@ -81,6 +81,8 @@ static const struct {
|
||||
{ HDA_INTEL_HSW1, "Intel Haswell", 0, 0 },
|
||||
{ HDA_INTEL_HSW2, "Intel Haswell", 0, 0 },
|
||||
{ HDA_INTEL_HSW3, "Intel Haswell", 0, 0 },
|
||||
{ HDA_INTEL_BDW1, "Intel Broadwell", 0, 0 },
|
||||
{ HDA_INTEL_BDW2, "Intel Broadwell", 0, 0 },
|
||||
{ HDA_INTEL_CPT, "Intel Cougar Point", 0, 0 },
|
||||
{ HDA_INTEL_PATSBURG,"Intel Patsburg", 0, 0 },
|
||||
{ HDA_INTEL_PPT1, "Intel Panther Point", 0, 0 },
|
||||
|
@ -46,6 +46,7 @@
|
||||
#define HDA_INTEL_HSW1 HDA_MODEL_CONSTRUCT(INTEL, 0x0a0c)
|
||||
#define HDA_INTEL_HSW2 HDA_MODEL_CONSTRUCT(INTEL, 0x0c0c)
|
||||
#define HDA_INTEL_HSW3 HDA_MODEL_CONSTRUCT(INTEL, 0x0d0c)
|
||||
#define HDA_INTEL_BDW1 HDA_MODEL_CONSTRUCT(INTEL, 0x160c)
|
||||
#define HDA_INTEL_CPT HDA_MODEL_CONSTRUCT(INTEL, 0x1c20)
|
||||
#define HDA_INTEL_PATSBURG HDA_MODEL_CONSTRUCT(INTEL, 0x1d20)
|
||||
#define HDA_INTEL_PPT1 HDA_MODEL_CONSTRUCT(INTEL, 0x1e20)
|
||||
@ -67,6 +68,7 @@
|
||||
#define HDA_INTEL_WELLS2 HDA_MODEL_CONSTRUCT(INTEL, 0x8d21)
|
||||
#define HDA_INTEL_LPTLP1 HDA_MODEL_CONSTRUCT(INTEL, 0x9c20)
|
||||
#define HDA_INTEL_LPTLP2 HDA_MODEL_CONSTRUCT(INTEL, 0x9c21)
|
||||
#define HDA_INTEL_BDW2 HDA_MODEL_CONSTRUCT(INTEL, 0x9ca0)
|
||||
#define HDA_INTEL_ALL HDA_MODEL_CONSTRUCT(INTEL, 0xffff)
|
||||
|
||||
/* Nvidia */
|
||||
@ -235,6 +237,7 @@
|
||||
#define LENOVO_TCA55_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x1015)
|
||||
#define LENOVO_X1_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21e8)
|
||||
#define LENOVO_X1CRBN_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21f9)
|
||||
#define LENOVO_X120BS_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x2227)
|
||||
#define LENOVO_X220_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21da)
|
||||
#define LENOVO_X300_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x20ac)
|
||||
#define LENOVO_T400_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x20f2)
|
||||
@ -338,6 +341,7 @@
|
||||
#define HDA_CODEC_ALC273 HDA_CODEC_CONSTRUCT(REALTEK, 0x0273)
|
||||
#define HDA_CODEC_ALC275 HDA_CODEC_CONSTRUCT(REALTEK, 0x0275)
|
||||
#define HDA_CODEC_ALC276 HDA_CODEC_CONSTRUCT(REALTEK, 0x0276)
|
||||
#define HDA_CODEC_ALC292 HDA_CODEC_CONSTRUCT(REALTEK, 0x0292)
|
||||
#define HDA_CODEC_ALC660 HDA_CODEC_CONSTRUCT(REALTEK, 0x0660)
|
||||
#define HDA_CODEC_ALC662 HDA_CODEC_CONSTRUCT(REALTEK, 0x0662)
|
||||
#define HDA_CODEC_ALC663 HDA_CODEC_CONSTRUCT(REALTEK, 0x0663)
|
||||
@ -622,6 +626,7 @@
|
||||
#define HDA_CODEC_INTELCPT HDA_CODEC_CONSTRUCT(INTEL, 0x2805)
|
||||
#define HDA_CODEC_INTELPPT HDA_CODEC_CONSTRUCT(INTEL, 0x2806)
|
||||
#define HDA_CODEC_INTELHSW HDA_CODEC_CONSTRUCT(INTEL, 0x2807)
|
||||
#define HDA_CODEC_INTELBDW HDA_CODEC_CONSTRUCT(INTEL, 0x2808)
|
||||
#define HDA_CODEC_INTELCL HDA_CODEC_CONSTRUCT(INTEL, 0x29fb)
|
||||
#define HDA_CODEC_INTELXXXX HDA_CODEC_CONSTRUCT(INTEL, 0xffff)
|
||||
|
||||
|
@ -87,6 +87,7 @@ static const struct {
|
||||
{ HDA_CODEC_ALC273, 0, "Realtek ALC273" },
|
||||
{ HDA_CODEC_ALC275, 0, "Realtek ALC275" },
|
||||
{ HDA_CODEC_ALC276, 0, "Realtek ALC276" },
|
||||
{ HDA_CODEC_ALC292, 0, "Realtek ALC292" },
|
||||
{ HDA_CODEC_ALC660, 0, "Realtek ALC660-VD" },
|
||||
{ HDA_CODEC_ALC662, 0x0002, "Realtek ALC662 rev2" },
|
||||
{ HDA_CODEC_ALC662, 0, "Realtek ALC662" },
|
||||
@ -319,6 +320,7 @@ static const struct {
|
||||
{ HDA_CODEC_INTELCPT, 0, "Intel Cougar Point" },
|
||||
{ HDA_CODEC_INTELPPT, 0, "Intel Panther Point" },
|
||||
{ HDA_CODEC_INTELHSW, 0, "Intel Haswell" },
|
||||
{ HDA_CODEC_INTELBDW, 0, "Intel Broadwell" },
|
||||
{ HDA_CODEC_INTELCL, 0, "Intel Crestline" },
|
||||
{ HDA_CODEC_SII1390, 0, "Silicon Image SiI1390" },
|
||||
{ HDA_CODEC_SII1392, 0, "Silicon Image SiI1392" },
|
||||
|
Loading…
Reference in New Issue
Block a user