Angel Pons | d32b6de | 2020-04-03 01:23:13 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 2 | |
Vladimir Serbinenko | 75c8387 | 2014-09-05 01:01:31 +0200 | [diff] [blame] | 3 | #include <device/azalia_device.h> |
| 4 | |
| 5 | const u32 cim_verb_data[] = { |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 6 | /* coreboot specific header */ |
| 7 | 0x10134210, // Codec Vendor / Device ID: Cirrus Logic CS4210 |
| 8 | 0x10134210, // Subsystem ID |
| 9 | 0x00000007, // Number of jacks |
| 10 | |
| 11 | /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x10134210 */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 12 | AZALIA_SUBVENDOR(0, 0x10134210), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 13 | |
| 14 | /* Pin Widget Verb Table */ |
| 15 | |
| 16 | /* Pin Complex (NID 0x05) 1/8 Gray HP Out at Ext Front */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 17 | AZALIA_PIN_CFG(0, 0x05, 0x022120f0), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 18 | |
| 19 | /* Pin Complex (NID 0x06) Analog Unknown Speaker at Int N/A */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 20 | AZALIA_PIN_CFG(0, 0x06, 0x90170010), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 21 | |
| 22 | /* Pin Complex (NID 0x07) 1/8 Grey Line In at Ext Front */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 23 | AZALIA_PIN_CFG(0, 0x07, 0x02a120f0), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 24 | |
| 25 | /* Pin Complex (NID 0x08) Analog Unknown Mic at Oth Mobile-In */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 26 | AZALIA_PIN_CFG(0, 0x08, 0x77a70037), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 27 | |
| 28 | /* Pin Complex (NID 0x09) Digital Unknown Mic at Oth Mobile-In */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 29 | AZALIA_PIN_CFG(0, 0x09, 0x77a6003e), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 30 | |
| 31 | /* Pin Complex (NID 0x0a) Optical Black SPDIF Out at Ext N/A */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 32 | AZALIA_PIN_CFG(0, 0x0a, 0x434510f0), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 33 | |
| 34 | /* coreboot specific header */ |
| 35 | 0x80862805, // Codec Vendor / Device ID: Intel CougarPoint HDMI |
| 36 | 0x80860101, // Subsystem ID |
| 37 | 0x00000004, // Number of jacks |
| 38 | |
| 39 | /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x80860101 */ |
Angel Pons | d8ce9a8 | 2019-12-19 19:44:11 +0100 | [diff] [blame] | 40 | AZALIA_SUBVENDOR(3, 0x80860101), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 41 | |
| 42 | /* Pin Complex (NID 0x05) Digital Out at Int HDMI */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 43 | AZALIA_PIN_CFG(3, 0x05, 0x18560010), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 44 | |
| 45 | /* Pin Complex (NID 0x06) Digital Out at Int HDMI */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 46 | AZALIA_PIN_CFG(3, 0x06, 0x18560020), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 47 | |
| 48 | /* Pin Complex (NID 0x07) Digital Out at Int HDMI */ |
Angel Pons | ec21170 | 2019-12-19 19:37:21 +0100 | [diff] [blame] | 49 | AZALIA_PIN_CFG(3, 0x07, 0x18560030), |
Stefan Reinauer | e1ae4b2 | 2012-04-27 23:20:58 +0200 | [diff] [blame] | 50 | }; |
| 51 | |
Vladimir Serbinenko | 75c8387 | 2014-09-05 01:01:31 +0200 | [diff] [blame] | 52 | const u32 pc_beep_verbs[] = { |
Dylan Reid | b98d078 | 2012-04-27 11:37:33 -0700 | [diff] [blame] | 53 | 0x00170500, /* power up codec */ |
| 54 | 0x00270500, /* power up DAC */ |
| 55 | 0x00670500, /* power up speaker */ |
| 56 | 0x00670740, /* enable speaker output */ |
| 57 | 0x0023B04B, /* set DAC gain */ |
| 58 | }; |
Vladimir Serbinenko | 75c8387 | 2014-09-05 01:01:31 +0200 | [diff] [blame] | 59 | AZALIA_ARRAY_SIZES; |