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