blob: 1f54222ae0efbae057d061b0510a3aada80948cc [file] [log] [blame]
Angel Ponsfeedf232020-04-05 13:22:01 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Stefan Reinauer49428d82013-02-21 15:48:37 -08002
Vladimir Serbinenko75c83872014-09-05 01:01:31 +02003#include <device/azalia_device.h>
4
5const u32 cim_verb_data[] = {
Stefan Reinauer49428d82013-02-21 15:48:37 -08006 /* coreboot specific header */
7 0x11020011, // Codec Vendor / Device ID: Creative CA0132
8 0x144dc0c2, // Subsystem ID
9 0x00000014, // Number of jacks + Number of Malcolm setup blocks.
10
11 /* Malcolm Setup */
12
13 0x01570d09,
14 0x01570c23,
15 0x01570a01,
16 0x01570df0,
17
18 0x01570efe,
19 0x01570775,
20 0x015707d3,
21 0x01570709,
22
23 0x01570753,
24 0x015707d4,
25 0x015707ef,
26 0x01570775,
27
28 0x015707d3,
29 0x01570709,
30 0x01570702,
31 0x01570737,
32
33 0x01570778,
34 0x01553cce,
35 0x015575c9,
36 0x01553dce,
37
38 0x0155b7c9,
39 0x01570de8,
40 0x01570efe,
41 0x01570702,
42
43 0x01570768,
44 0x01570762,
45 0x01553ace,
46 0x015546c9,
47
48 0x01553bce,
49 0x0155e8c9,
50 0x01570d49,
51 0x01570c88,
52
53 0x01570d20,
54 0x01570e19,
55 0x01570700,
56 0x01571a05,
57
58 0x01571b29,
59 0x01571a04,
60 0x01571b29,
61 0x01570a01,
62
63 /* Pin Widget Verb Table */
64
65 /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x144DC0C2 */
Angel Ponsec211702019-12-19 19:37:21 +010066 AZALIA_SUBVENDOR(0, 0x144dc0c2),
Stefan Reinauer49428d82013-02-21 15:48:37 -080067
68 /* Pin Complex (NID 0x0B) Port-G Analog Unknown Speaker at Int N/A */
Angel Ponsec211702019-12-19 19:37:21 +010069 AZALIA_PIN_CFG(0, 0x0b, 0x901700f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080070
71 /* Pin Complex (NID 0x0C) N/C */
Angel Ponsec211702019-12-19 19:37:21 +010072 AZALIA_PIN_CFG(0, 0x0c, 0x70f000f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080073
74 /* Pin Complex (NID 0x0D) N/C */
Angel Ponsec211702019-12-19 19:37:21 +010075 AZALIA_PIN_CFG(0, 0x0d, 0x70f000f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080076
77 /* Pin Complex (NID 0x0E) N/C */
Angel Ponsec211702019-12-19 19:37:21 +010078 AZALIA_PIN_CFG(0, 0x0e, 0x70f000f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080079
80 /* Pin Complex (NID 0x0F) N/C */
Angel Ponsec211702019-12-19 19:37:21 +010081 AZALIA_PIN_CFG(0, 0x0f, 0x70f000f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080082
83 /* Pin Complex (NID 0x10) Port-D 1/8 Black HP Out at Ext Left */
Angel Ponsec211702019-12-19 19:37:21 +010084 AZALIA_PIN_CFG(0, 0x10, 0x032110f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080085
86 /* Pin Complex (NID 0x11) Port-B Click Mic */
Angel Ponsec211702019-12-19 19:37:21 +010087 AZALIA_PIN_CFG(0, 0x11, 0x90a700f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080088
89 /* Pin Complex (NID 0x12) Port-C Combo Jack Mic or D-Mic */
Angel Ponsec211702019-12-19 19:37:21 +010090 AZALIA_PIN_CFG(0, 0x12, 0x03a110f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080091
92 /* Pin Complex (NID 0x13) What you hear */
Angel Ponsec211702019-12-19 19:37:21 +010093 AZALIA_PIN_CFG(0, 0x13, 0x90d600f0),
Stefan Reinauer49428d82013-02-21 15:48:37 -080094
95 /* coreboot specific header */
96 0x80862806, // Codec Vendor / Device ID: Intel CougarPoint HDMI
97 0x80860101, // Subsystem ID
98 0x00000004, // Number of jacks
99
100 /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x80860101 */
Angel Ponsec211702019-12-19 19:37:21 +0100101 AZALIA_SUBVENDOR(3, 0x80860101),
Stefan Reinauer49428d82013-02-21 15:48:37 -0800102
103 /* Pin Complex (NID 0x05) Digital Out at Int HDMI */
Angel Ponsec211702019-12-19 19:37:21 +0100104 AZALIA_PIN_CFG(3, 0x05, 0x18560010),
Stefan Reinauer49428d82013-02-21 15:48:37 -0800105
106 /* Pin Complex (NID 0x06) Digital Out at Int HDMI */
Angel Ponsec211702019-12-19 19:37:21 +0100107 AZALIA_PIN_CFG(3, 0x06, 0x18560020),
Stefan Reinauer49428d82013-02-21 15:48:37 -0800108
109 /* Pin Complex (NID 0x07) Digital Out at Int HDMI */
Angel Ponsec211702019-12-19 19:37:21 +0100110 AZALIA_PIN_CFG(3, 0x07, 0x18560030),
Stefan Reinauer49428d82013-02-21 15:48:37 -0800111};
112
Vladimir Serbinenko75c83872014-09-05 01:01:31 +0200113const u32 pc_beep_verbs[] = {
Stefan Reinauer49428d82013-02-21 15:48:37 -0800114 0x00170500, /* power up codec */
115 0x00270500, /* power up DAC */
116 0x00b70500, /* power up speaker */
117 0x00b70740, /* enable speaker out */
118 0x00b78d00, /* enable EAPD pin */
119 0x00b70c02, /* set EAPD pin */
120 0x0143b013, /* beep volume */
121};
Vladimir Serbinenko75c83872014-09-05 01:01:31 +0200122AZALIA_ARRAY_SIZES;