Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/sound/hda/codecs/helpers/ideapad_s740.c
26489 views
1
// SPDX-License-Identifier: GPL-2.0
2
/* Fixes for Lenovo Ideapad S740, to be included from codec driver */
3
4
static const struct hda_verb alc285_ideapad_s740_coefs[] = {
5
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x10 },
6
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0320 },
7
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x24 },
8
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0041 },
9
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x24 },
10
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0041 },
11
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
12
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
13
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
14
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
15
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
16
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
17
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
18
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
19
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
20
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
21
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
22
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
23
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
24
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
25
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
26
{ 0x20, AC_VERB_SET_PROC_COEF, 0x007f },
27
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
28
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
29
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
30
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
31
{ 0x20, AC_VERB_SET_PROC_COEF, 0x007f },
32
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
33
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
34
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
35
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
36
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
37
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
38
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
39
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
40
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
41
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
42
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
43
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
44
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
45
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
46
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
47
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
48
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
49
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
50
{ 0x20, AC_VERB_SET_PROC_COEF, 0x003c },
51
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
52
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0011 },
53
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
54
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
55
{ 0x20, AC_VERB_SET_PROC_COEF, 0x003c },
56
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
57
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0011 },
58
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
59
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
60
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
61
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
62
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000c },
63
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
64
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
65
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
66
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
67
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000c },
68
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
69
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
70
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
71
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
72
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
73
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
74
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000f },
75
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
76
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0042 },
77
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
78
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
79
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000f },
80
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
81
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0042 },
82
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
83
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
84
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
85
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
86
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
87
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
88
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
89
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
90
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
91
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
92
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
93
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
94
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
95
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
96
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
97
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
98
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0003 },
99
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
100
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0009 },
101
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
102
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
103
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0003 },
104
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
105
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0009 },
106
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
107
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
108
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
109
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
110
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001c },
111
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
112
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004c },
113
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
114
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
115
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001c },
116
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
117
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004c },
118
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
119
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
120
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
121
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
122
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001d },
123
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
124
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004e },
125
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
126
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
127
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001d },
128
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
129
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004e },
130
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
131
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
132
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
133
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
134
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001b },
135
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
136
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
137
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
138
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
139
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001b },
140
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
141
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
142
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
143
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
144
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
145
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
146
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0019 },
147
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
148
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0025 },
149
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
150
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
151
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0019 },
152
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
153
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0025 },
154
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
155
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
156
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
157
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
158
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0018 },
159
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
160
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0037 },
161
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
162
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
163
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0018 },
164
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
165
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0037 },
166
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
167
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
168
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
169
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
170
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
171
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
172
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
173
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
174
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
175
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
176
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
177
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
178
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
179
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
180
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
181
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
182
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0016 },
183
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
184
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0076 },
185
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
186
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
187
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0016 },
188
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
189
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0076 },
190
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
191
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
192
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
193
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
194
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0017 },
195
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
196
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
197
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
198
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
199
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0017 },
200
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
201
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
202
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
203
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
204
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
205
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
206
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
207
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
208
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
209
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
210
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
211
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
212
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
213
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
214
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
215
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
216
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
217
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
218
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0007 },
219
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
220
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0086 },
221
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
222
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
223
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0007 },
224
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
225
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0086 },
226
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
227
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
228
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
229
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
230
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
231
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
232
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
233
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
234
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
235
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
236
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
237
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
238
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
239
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
240
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
241
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
242
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
243
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
244
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
245
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
246
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
247
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
248
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
249
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
250
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
251
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x24 },
252
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0042 },
253
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x24 },
254
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0042 },
255
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
256
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
257
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
258
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
259
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
260
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
261
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
262
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
263
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
264
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
265
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
266
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
267
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
268
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
269
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
270
{ 0x20, AC_VERB_SET_PROC_COEF, 0x007f },
271
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
272
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
273
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
274
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
275
{ 0x20, AC_VERB_SET_PROC_COEF, 0x007f },
276
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
277
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
278
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
279
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
280
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
281
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
282
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
283
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
284
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
285
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
286
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
287
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
288
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
289
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
290
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
291
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
292
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
293
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
294
{ 0x20, AC_VERB_SET_PROC_COEF, 0x003c },
295
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
296
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0011 },
297
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
298
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
299
{ 0x20, AC_VERB_SET_PROC_COEF, 0x003c },
300
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
301
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0011 },
302
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
303
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
304
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
305
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
306
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000c },
307
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
308
{ 0x20, AC_VERB_SET_PROC_COEF, 0x002a },
309
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
310
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
311
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000c },
312
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
313
{ 0x20, AC_VERB_SET_PROC_COEF, 0x002a },
314
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
315
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
316
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
317
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
318
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000f },
319
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
320
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0046 },
321
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
322
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
323
{ 0x20, AC_VERB_SET_PROC_COEF, 0x000f },
324
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
325
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0046 },
326
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
327
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
328
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
329
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
330
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
331
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
332
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0044 },
333
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
334
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
335
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
336
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
337
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0044 },
338
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
339
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
340
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
341
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
342
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0003 },
343
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
344
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0009 },
345
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
346
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
347
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0003 },
348
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
349
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0009 },
350
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
351
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
352
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
353
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
354
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001c },
355
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
356
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004c },
357
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
358
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
359
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001c },
360
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
361
{ 0x20, AC_VERB_SET_PROC_COEF, 0x004c },
362
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
363
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
364
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
365
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
366
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
367
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
368
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001b },
369
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
370
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
371
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
372
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
373
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001b },
374
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
375
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
376
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
377
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
378
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
379
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
380
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0019 },
381
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
382
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0025 },
383
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
384
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
385
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0019 },
386
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
387
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0025 },
388
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
389
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
390
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
391
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
392
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0018 },
393
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
394
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0037 },
395
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
396
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
397
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0018 },
398
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
399
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0037 },
400
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
401
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
402
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
403
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
404
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
405
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
406
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
407
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
408
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
409
{ 0x20, AC_VERB_SET_PROC_COEF, 0x001a },
410
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
411
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0040 },
412
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
413
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
414
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
415
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
416
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0016 },
417
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
418
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0076 },
419
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
420
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
421
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0016 },
422
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
423
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0076 },
424
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
425
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
426
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
427
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
428
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0017 },
429
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
430
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
431
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
432
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
433
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0017 },
434
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
435
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0010 },
436
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
437
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
438
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
439
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
440
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
441
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
442
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
443
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
444
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
445
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
446
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
447
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0015 },
448
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
449
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
450
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
451
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
452
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0007 },
453
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
454
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0086 },
455
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
456
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
457
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0007 },
458
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
459
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0086 },
460
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
461
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
462
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
463
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
464
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
465
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
466
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
467
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
468
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
469
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
470
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
471
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0001 },
472
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
473
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
474
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x29 },
475
{ 0x20, AC_VERB_SET_COEF_INDEX, 0x26 },
476
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0002 },
477
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
478
{ 0x20, AC_VERB_SET_PROC_COEF, 0x0000 },
479
{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 },
480
{}
481
};
482
483
static void alc285_fixup_ideapad_s740_coef(struct hda_codec *codec,
484
const struct hda_fixup *fix,
485
int action)
486
{
487
switch (action) {
488
case HDA_FIXUP_ACT_PRE_PROBE:
489
snd_hda_add_verbs(codec, alc285_ideapad_s740_coefs);
490
break;
491
}
492
}
493
494