diff --git a/sys/dev/sound/pci/hda/hdaa_patches.c b/sys/dev/sound/pci/hda/hdaa_patches.c --- a/sys/dev/sound/pci/hda/hdaa_patches.c +++ b/sys/dev/sound/pci/hda/hdaa_patches.c @@ -322,6 +322,13 @@ patch_str = "as=1 seq=15"; break; } + } else if (id == HDA_CODEC_IDT92HD95B && + (subid == FRAMEWORK_LAPTOP_SUBVENDOR)) { + switch (nid) { + case 10: + patch_str = "as=1 seq=15 color=Black loc=Left"; + break; + } } else { /* * loop over hdaa_model_pin_patch diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -503,6 +503,10 @@ #define AOPEN_VENDORID 0xa0a0 #define AOPEN_I915GMMHFS_SUBVENDOR HDA_MODEL_CONSTRUCT(AOPEN, 0x8202) +/* Framework */ +#define FRAMEWORK_VENDORID 0xf111 +#define FRAMEWORK_LAPTOP_SUBVENDOR HDA_MODEL_CONSTRUCT(FRAMEWORK, 0x0001) + /* All codecs you can eat... */ #define HDA_CODEC_CONSTRUCT(vendor, id) \ (((uint32_t)(vendor##_VENDORID) << 16) | ((id) & 0xffff))