coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
hda_verb.c
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  0x0000000e, // 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  /* NID 0x01, HDA Codec Subsystem ID Verb Table */
17  AZALIA_SUBVENDOR(0, 0x11790670),
18 
19  /* Pin Widget Verb Table */
20 
21  /* Pin Complex (NID 0x12) DMIC - interior mobile lid */
22  AZALIA_PIN_CFG(0, 0x12, 0xb7a60110),
23 
24  /* Pin Complex (NID 0x14) SPKR-OUT PORTD */
25  // group 1, front left/right
26  // no connector, no jack detect
27  // speaker out, analog
28  // fixed function, internal
29  AZALIA_PIN_CFG(0, 0x14, 0x90170110),
30 
31  /* Pin Complex (NID 0x17) MONO Out - Disabled */
32  AZALIA_PIN_CFG(0, 0x17, 0x411111f0),
33 
34  /* Pin Complex (NID 0x18) MIC1 PORTB - Disabled */
35  AZALIA_PIN_CFG(0, 0x18, 0x411111f0),
36 
37  /* Pin Complex (NID 0x19) MIC2 PORTF */
38  // group 1, cap 1
39  // black, jack detect
40  // mic in, analog
41  // connector, left panel
42  AZALIA_PIN_CFG(0, 0x19, 0x03a71011),
43 
44  /* Pin Complex (NID 0x1A) LINE1 PORTC - Disabled */
45  AZALIA_PIN_CFG(0, 0x1a, 0x411111f0),
46 
47  /* Pin Complex (NID 0x1B) LINE2 PORTE - Disabled */
48  AZALIA_PIN_CFG(0, 0x1b, 0x411111f0),
49 
50  /* Pin Complex (NID 0x1d) PCBeep */
51  // eapd low on ex-amp, laptop, custom enable
52  // mute spkr on hpout
53  // pcbeep enable, checksum
54  // no physical, internal
55  AZALIA_PIN_CFG(0, 0x1d, 0x4015812d),
56 
57  /* Pin Complex (NID 0x1E) SPDIF-OUT - Disabled */
58  AZALIA_PIN_CFG(0, 0x1e, 0x411111f0),
59 
60  /* Pin Complex (NID 0x21) HPOUT PORT-I */
61  // group1,
62  // black, jack detect
63  // HPOut, 1/8 stereo
64  // connector, left panel
65  AZALIA_PIN_CFG(0, 0x21, 0x0321101f),
66 
67  /* Undocumented settings from Realtek (needed for beep_gen) */
68  /* Widget node 0x20 */
69  0x02050010,
70  0x02040c20,
71  0x0205001b,
72  0x0204081b,
73 
74  /* Tuned jack detection */
75  0x02050043,
76  0x0204A614,
77  0x02050047,
78  0x02049470,
79 };
80 
81 const u32 pc_beep_verbs[] = {
82  0x00170500, /* power up everything (codec, dac, adc, mixers) */
83  0x01470740, /* enable speaker out */
84  0x01470c02, /* set speaker EAPD pin */
85  0x0143b01f, /* unmute speaker */
86  0x00c37100, /* unmute mixer nid 0xc input 1 */
87  0x00b37410, /* unmute mixer nid 0xb beep input and set volume */
88 };
89 
#define AZALIA_SUBVENDOR(codec, val)
#define AZALIA_PIN_CFG(codec, pin, val)
const u32 cim_verb_data[]
Definition: hda_verb.c:5
const u32 pc_beep_verbs[]
Definition: hda_verb.c:37
AZALIA_ARRAY_SIZES
Definition: hda_verb.c:39
uint32_t u32
Definition: stdint.h:51