Author: glebius
Date: Thu Mar  7 08:00:04 2013
New Revision: 247911
URL: http://svnweb.freebsd.org/changeset/base/247911

Log:
  Add quirks to enable headphones redirection on number of Lenovo
  laptops, namely X1, X1 Carbon, T420, T520.
  
  PR:           misc/176656
  Submitted by: Hiren Panchasar <hiren.panchasara gmail.com>
  Tested by:    glebius, X1 Carbon
  Tested by:    osa, X1
  Tested by:    Hiren Panchasar, T420
  Tested by:    sbruno, T520
  Reviewed by:  mav
  Sponsored by: Nginx, Inc.

Modified:
  head/sys/dev/sound/pci/hda/hdaa_patches.c
  head/sys/dev/sound/pci/hda/hdac.h

Modified: head/sys/dev/sound/pci/hda/hdaa_patches.c
==============================================================================
--- head/sys/dev/sound/pci/hda/hdaa_patches.c   Thu Mar  7 07:54:50 2013        
(r247910)
+++ head/sys/dev/sound/pci/hda/hdaa_patches.c   Thu Mar  7 08:00:04 2013        
(r247911)
@@ -334,12 +334,22 @@ hdac_pin_patch(struct hdaa_widget *w)
                        break;
                }
        } else if (id == HDA_CODEC_CX20590 &&
-           subid == LENOVO_X220_SUBVENDOR) {
+           (subid == LENOVO_X1_SUBVENDOR ||
+           subid == LENOVO_X220_SUBVENDOR ||
+           subid == LENOVO_T420_SUBVENDOR ||
+           subid == LENOVO_T520_SUBVENDOR)) {
                switch (nid) {
                case 25:
                        patch = "as=1 seq=15";
                        break;
                }
+       } else if (id == HDA_CODEC_ALC269 &&
+           subid == LENOVO_X1CRBN_SUBVENDOR) {
+               switch (nid) {
+               case 21:
+                       patch = "as=1 seq=15";
+                       break;
+               }
        }
 
        if (patch != NULL)

Modified: head/sys/dev/sound/pci/hda/hdac.h
==============================================================================
--- head/sys/dev/sound/pci/hda/hdac.h   Thu Mar  7 07:54:50 2013        
(r247910)
+++ head/sys/dev/sound/pci/hda/hdac.h   Thu Mar  7 08:00:04 2013        
(r247911)
@@ -220,8 +220,12 @@
 #define LENOVO_3KN200_SUBVENDOR        HDA_MODEL_CONSTRUCT(LENOVO, 0x384e)
 #define LENOVO_B450_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x3a0d)
 #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_X220_SUBVENDOR  HDA_MODEL_CONSTRUCT(LENOVO, 0x21da)
 #define LENOVO_X300_SUBVENDOR  HDA_MODEL_CONSTRUCT(LENOVO, 0x20ac)
+#define        LENOVO_T420_SUBVENDOR   HDA_MODEL_CONSTRUCT(LENOVO, 0x21ce)
+#define        LENOVO_T520_SUBVENDOR   HDA_MODEL_CONSTRUCT(LENOVO, 0x21cf)
 #define LENOVO_ALL_SUBVENDOR   HDA_MODEL_CONSTRUCT(LENOVO, 0xffff)
 
 /* Samsung */
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to