Adapted from http://marc.info/?l=openbsd-misc&m=128919130029011&w=2
OK? Index: dev/pci/azalia_codec.c =================================================================== RCS file: /home/cvs/src/sys/dev/pci/azalia_codec.c,v retrieving revision 1.151 diff -u -p -r1.151 azalia_codec.c --- dev/pci/azalia_codec.c 10 Sep 2010 15:11:23 -0000 1.151 +++ dev/pci/azalia_codec.c 29 Nov 2012 11:16:41 -0000 @@ -64,6 +64,13 @@ azalia_codec_init_vtbl(codec_t *this) this->name = NULL; this->qrks = AZ_QRK_NONE; switch (this->vid) { + case 0x10134206: + this->name = "Cirrus Logic CS4206"; + if (this->subid == 0xcb8910de) { /* APPLE_MBA3_1 */ + this->qrks |= AZ_QRK_GPIO_UNMUTE_1 | + AZ_QRK_GPIO_UNMUTE_3; + } + break; case 0x10ec0260: this->name = "Realtek ALC260"; break; @@ -2403,6 +2410,9 @@ azalia_codec_gpio_quirks(codec_t *this) } if (this->qrks & AZ_QRK_GPIO_UNMUTE_2) { azalia_gpio_unmute(this, 2); + } + if (this->qrks & AZ_QRK_GPIO_UNMUTE_3) { + azalia_gpio_unmute(this, 3); } return(0);