coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
hda_verb.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <device/azalia_device.h>
4 
5 const u32 cim_verb_data[] = {
6  /* coreboot specific header */
7  0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283
8  0x10ec0283, // Subsystem ID
9  0x00000013, // Number of jacks (NID entries)
10 
11  0x0017ff00, // Function Reset
12  0x0017ff00, // Double Function Reset
13  0x000F0000, // Pad - get vendor id
14  0x000F0002, // Pad - get revision id
15 
16  /* Bits 31:28 - Codec Address */
17  /* Bits 27:20 - NID */
18  /* Bits 19:8 - Verb ID */
19  /* Bits 7:0 - Payload */
20 
21  /* NID 0x01, HDA Codec Subsystem ID Verb Table */
22  AZALIA_SUBVENDOR(0, 0x11790670),
23 
24  /* Pin Widget Verb Table */
25 
26  /* Pin Complex (NID 0x12) DMIC - Enabled */
27  AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
28 
29  /* Pin Complex (NID 0x14) SPKR-OUT - Internal Speakers */
30  // group 1, cap 0
31  // no connector, no jack detect
32  // speaker out, analog
33  // fixed function, internal, Location N/A
34  AZALIA_PIN_CFG(0, 0x14, 0x90170110),
35 
36  /* Pin Complex (NID 0x17) MONO Out - Enabled */
37  AZALIA_PIN_CFG(0, 0x17, 0x40000008),
38 
39  /* Pin Complex (NID 0x18) Disabled */
40  AZALIA_PIN_CFG(0, 0x18, 0x411111f0),
41 
42  /* Pin Complex (NID 0x19) MIC2 - 3.5mm Jack */
43  // group2, cap 0
44  // black, jack detect
45  // Mic in, 3.5mm Jack
46  // connector, External left panel
47  AZALIA_PIN_CFG(0, 0x19, 0x03a11020),
48 
49  /* Pin Complex (NID 0x1A) LINE1 - Disabled */
50  AZALIA_PIN_CFG(0, 0x1A, 0x411111f0),
51 
52  /* Pin Complex (NID 0x1B) LINE2 - Disabled */
53  AZALIA_PIN_CFG(0, 0x1B, 0x411111f0),
54 
55  /* Pin Complex (NID 0x1D) PCBeep */
56  // eapd low on ex-amp, laptop, custom enable
57  // mute spkr on hpout
58  // pcbeep enable, checksum
59  // no physical, Internal, Location N/A
60  AZALIA_PIN_CFG(0, 0x1D, 0x4015812d),
61 
62  /* Pin Complex (NID 0x1E) SPDIF-OUT - Disabled*/
63  AZALIA_PIN_CFG(0, 0x1E, 0x411111f0),
64 
65  /* Pin Complex (NID 0x21) HP-OUT - 3.5mm Jack*/
66  // group1
67  // black, jack detect
68  // HPOut, 3.5mm Jack
69  // connector, left panel
70  AZALIA_PIN_CFG(0, 0x21, 0x0321101f),
71 
72  /* Undocumented settings from Realtek (needed for beep_gen) */
73  /* Widget node 0x20 */
74  0x02050038,
75  0x02046900,
76  0x02050010,
77  0x02040C20,
78  /* Widget node 0x20 - 1 */
79  0x02050019,
80  0x02041857,
81  0x0205001A,
82  0x02044001,
83  /* Widget node 0x20 - 2 */
84  0x0205001B,
85  0x0204140B,
86  0x02050025,
87  0x0204802A,
88  /* Widget node 0x20 - 3 */
89  0x02050045,
90  0x02045029,
91  0x02050046,
92  0x02040004,
93  /* Widget node 0x20 - 4 */
94  0x02050043,
95  0x0204A614,
96  0x02050043,
97  0x0204A614,
98  /* pc beep */
99  0x02050010,
100  0x02040c20,
101  0x0205001b,
102  0x0204081b,
103 
104  /* Tuned jack detection */
105  0x02050043,
106  0x0204A614,
107  0x02050047,
108  0x02049470,
109 };
110 
111 const u32 pc_beep_verbs[] = {
112  0x00170500, /* power up everything (codec, dac, adc, mixers) */
113  0x01470740, /* enable speaker out */
114  0x01470c02, /* set speaker EAPD pin */
115  0x0143b01f, /* unmute speaker */
116  0x00c37100, /* unmute mixer nid 0xc input 1 */
117  0x00b37410, /* unmute mixer nid 0xb beep input and set volume */
118 };
119 
#define AZALIA_SUBVENDOR(codec, val)
#define AZALIA_PIN_CFG(codec, pin, val)
const u32 cim_verb_data[]
Definition: hda_verb.h:6
const u32 pc_beep_verbs[]
Definition: hda_verb.h:90
AZALIA_ARRAY_SIZES
Definition: hda_verb.h:99
uint32_t u32
Definition: stdint.h:51