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);