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 #include <device/azalia.h>
5 
6 const u32 cim_verb_data[] = {
7  /* coreboot specific header */
8  0x10ec0255, /* Codec Vendor / Device ID: Realtek ALC255 */
9  0xffffffff, /* Subsystem ID */
10  12, /* Number of entries below */
11 
12  /* Reset Codec First */
13  AZALIA_RESET(0x1),
14  /* NID 0x01, HDA Codec Subsystem ID Verb Table */
15  AZALIA_SUBVENDOR(0, 0x110a4097),
16 
17  /* Pin Widget Verb Table */
18  AZALIA_PIN_CFG(0, 0x14, /* 0x14 Speaker OUT */
19  (AZALIA_PINCFG_PORT_FIXED << 30) |
24  (1 << 4) | 0
25  ),
26  AZALIA_PIN_CFG(0, 0x21, /* 0x21 Headphone OUT */
27  (AZALIA_PINCFG_PORT_JACK << 30) |
32  (2 << 4) | 0
33  ),
34  AZALIA_PIN_CFG(0, 0x19, /* 0x19 MIC2 */
35  (AZALIA_PINCFG_PORT_JACK << 30) |
41  (3 << 4) | 0
42  ),
43 
44  AZALIA_PIN_CFG(0, 0x12, AZALIA_PIN_CFG_NC(0)), /* 0x12 Digital MIC */
45  AZALIA_PIN_CFG(0, 0x17, AZALIA_PIN_CFG_NC(1)), /* 0x17 Mono OUT */
46  AZALIA_PIN_CFG(0, 0x18, AZALIA_PIN_CFG_NC(2)), /* 0x18 MIC1 */
47  AZALIA_PIN_CFG(0, 0x1a, AZALIA_PIN_CFG_NC(3)), /* 0x1a LINE1 */
48  AZALIA_PIN_CFG(0, 0x1b, AZALIA_PIN_CFG_NC(4)), /* 0x1b LINE2 */
49  AZALIA_PIN_CFG(0, 0x1d, AZALIA_PIN_CFG_NC(5)), /* 0x1d PCBEEP */
50  AZALIA_PIN_CFG(0, 0x1e, AZALIA_PIN_CFG_NC(6)), /* 0x1e S/PDIF OUT */
51 
52  /* HDMI/DP audio codec */
53  0x8086280b, /* Codec Vendor / Device ID: Intel Kabylake HDMI */
54  0xffffffff, /* Subsystem ID */
55  5, /* Number of entries below */
56 
57  /* Enable 2nd & 3rd pin widgets first */
58  0x20878101,
59  0x20878101,
60  0x20878101,
61  0x20878101,
62  AZALIA_PIN_CFG(2, 0x05, AZALIA_PIN_CFG_NC(0)),
63  AZALIA_PIN_CFG(2, 0x06, AZALIA_PIN_CFG_NC(1)),
64  AZALIA_PIN_CFG(2, 0x07,
65  (AZALIA_PINCFG_PORT_JACK << 30) |
69  (1 << 4) | 0
70  ),
71  /* Disable 2nd & 3rd pin widgets again */
72  0x20878100,
73  0x20878100,
74  0x20878100,
75  0x20878100,
76 };
77 
78 const u32 pc_beep_verbs[] = {
79 };
80 
@ AZALIA_PINCFG_COLOR_BLACK
Definition: azalia.h:84
@ AZALIA_PINCFG_MISC_IGNORE_PRESENCE
Definition: azalia.h:98
@ AZALIA_PINCFG_LOCATION_REAR_PANEL
Definition: azalia.h:39
@ AZALIA_PINCFG_LOCATION_FRONT
Definition: azalia.h:31
@ AZALIA_PINCFG_PORT_JACK
Definition: azalia.h:15
@ AZALIA_PINCFG_PORT_FIXED
Definition: azalia.h:17
@ AZALIA_PINCFG_LOCATION_INTERNAL
Definition: azalia.h:23
@ AZALIA_PINCFG_DEVICE_SPEAKER
Definition: azalia.h:50
@ AZALIA_PINCFG_DEVICE_HP_OUT
Definition: azalia.h:51
@ AZALIA_PINCFG_DEVICE_MICROPHONE
Definition: azalia.h:59
@ AZALIA_PINCFG_DEVICE_DIGITAL_OUT
Definition: azalia.h:54
@ AZALIA_PINCFG_CONN_COMBINATION
Definition: azalia.h:78
@ AZALIA_PINCFG_CONN_OTHER_ANALOG
Definition: azalia.h:74
@ AZALIA_PINCFG_CONN_OTHER_DIGITAL
Definition: azalia.h:73
#define AZALIA_SUBVENDOR(codec, val)
#define AZALIA_PIN_CFG(codec, pin, val)
#define AZALIA_PIN_CFG_NC(n)
#define AZALIA_RESET(pin)
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