1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <device/azalia_device.h>
5 const u32 cim_verb_data
[] = {
6 /* coreboot specific header */
7 0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283
8 0x10ec0283, // Subsystem ID
9 0x0000000e, // Number of jacks (NID entries)
11 0x0017ff00, // Function Reset
12 0x0017ff00, // Double Function Reset
13 0x000F0000, // Pad - get vendor id
14 0x000F0002, // Pad - get revision id
16 /* Bits 31:28 - Codec Address */
17 /* Bits 27:20 - NID */
18 /* Bits 19:8 - Verb ID */
19 /* Bits 7:0 - Payload */
21 /* NID 0x01, HDA Codec Subsystem ID Verb Table */
22 AZALIA_SUBVENDOR(0, 0x11790670),
24 /* Pin Widget Verb Table */
26 /* Pin Complex (NID 0x12) DMIC - interior mobile lid */
27 AZALIA_PIN_CFG(0, 0x12, 0xb7a60110),
29 /* Pin Complex (NID 0x14) SPKR-OUT - Internal Speakers */
31 // no connector, no jack detect
32 // speaker out, analog
33 // fixed function, internal, Location N/A
34 AZALIA_PIN_CFG(0, 0x14, 0x90170110),
36 /* Pin Complex (NID 0x17) MONO Out - Disabled */
37 AZALIA_PIN_CFG(0, 0x17, AZALIA_PIN_CFG_NC(0)),
39 /* Pin Complex (NID 0x18) MIC1 PORTB - Disabled */
40 AZALIA_PIN_CFG(0, 0x18, AZALIA_PIN_CFG_NC(0)),
42 /* Pin Complex (NID 0x19) MIC2 - 3.5mm Jack */
46 // connector, External left panel
47 AZALIA_PIN_CFG(0, 0x19, 0x03a11020),
49 /* Pin Complex (NID 0x1A) LINE1 PORTC - Disabled */
50 AZALIA_PIN_CFG(0, 0x1a, AZALIA_PIN_CFG_NC(0)),
52 /* Pin Complex (NID 0x1B) LINE2 - Disabled */
53 AZALIA_PIN_CFG(0, 0x1b, AZALIA_PIN_CFG_NC(0)),
55 /* Pin Complex (NID 0x1D) PCBeep */
56 // eapd low on ex-amp, laptop, custom enable
58 // pcbeep enable, checksum
59 // no physical, Internal, Location N/A
60 AZALIA_PIN_CFG(0, 0x1d, 0x4015812d),
62 /* Pin Complex (NID 0x1E) SPDIF-OUT - Disabled*/
63 AZALIA_PIN_CFG(0, 0x1e, AZALIA_PIN_CFG_NC(0)),
65 /* Pin Complex (NID 0x21) HP-OUT - 3.5mm Jack*/
69 // connector, left panel
70 AZALIA_PIN_CFG(0, 0x21, 0x03211021),
72 /* Undocumented settings from Realtek (needed for beep_gen) */
73 /* Widget node 0x20 */
79 /* Tuned jack detection */
86 const u32 pc_beep_verbs
[] = {
87 0x00170500, /* power up everything (codec, dac, adc, mixers) */
88 0x01470740, /* enable speaker out */
89 0x01470c02, /* set speaker EAPD pin */
90 0x0143b01f, /* unmute speaker */
91 0x00c37100, /* unmute mixer nid 0xc input 1 */
92 0x00b37410, /* unmute mixer nid 0xb beep input and set volume */