summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2016-08-15 10:49:20 -0400
committerDeepak Nibade <dnibade@nvidia.com>2016-12-27 04:56:49 -0500
commit38ad90b4840434df4650c617a236e1b01f8a43c6 (patch)
tree7cfe006f6a14da66d958ed17374e6c2bee0b247a
parent190e97f89bd486363db9916967a173e0bde5f43b (diff)
gpu: nvgpu: Adding support for mclk module
JIRA DNVGPU-88 Change-Id: Idecfff5a80fadde77887385491dd6b73b1956bac Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: http://git-master/r/1202551 (cherry picked from commit 3bcf9bad93fb6fdd4b87430b346ea41533149108) Reviewed-on: http://git-master/r/1223854 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/Makefile.nvgpu-t18x3
-rw-r--r--drivers/gpu/nvgpu/clk/clk_mclk.c1808
-rw-r--r--drivers/gpu/nvgpu/clk/clk_mclk.h19
-rw-r--r--drivers/gpu/nvgpu/gp106/pmu_gp106.c2
-rw-r--r--drivers/gpu/nvgpu/pmuif/gpmuifseq.h73
5 files changed, 1904 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/Makefile.nvgpu-t18x b/drivers/gpu/nvgpu/Makefile.nvgpu-t18x
index e7d18492..3e54a989 100644
--- a/drivers/gpu/nvgpu/Makefile.nvgpu-t18x
+++ b/drivers/gpu/nvgpu/Makefile.nvgpu-t18x
@@ -27,7 +27,8 @@ nvgpu-y += \
27 $(nvgpu-t18x)/gp106/acr_gp106.o \ 27 $(nvgpu-t18x)/gp106/acr_gp106.o \
28 $(nvgpu-t18x)/gp106/sec2_gp106.o \ 28 $(nvgpu-t18x)/gp106/sec2_gp106.o \
29 $(nvgpu-t18x)/gp106/fifo_gp106.o \ 29 $(nvgpu-t18x)/gp106/fifo_gp106.o \
30 $(nvgpu-t18x)/gp106/ltc_gp106.o 30 $(nvgpu-t18x)/gp106/ltc_gp106.o \
31 $(nvgpu-t18x)/clk/clk_mclk.o
31 32
32nvgpu-$(CONFIG_TEGRA_GK20A) += $(nvgpu-t18x)/gp10b/platform_gp10b_tegra.o 33nvgpu-$(CONFIG_TEGRA_GK20A) += $(nvgpu-t18x)/gp10b/platform_gp10b_tegra.o
33 34
diff --git a/drivers/gpu/nvgpu/clk/clk_mclk.c b/drivers/gpu/nvgpu/clk/clk_mclk.c
new file mode 100644
index 00000000..02e16fcc
--- /dev/null
+++ b/drivers/gpu/nvgpu/clk/clk_mclk.c
@@ -0,0 +1,1808 @@
1/*
2 * Copyright (c) 2014-2016, NVIDIA CORPORATION. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License,
6 * version 2, as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11 * more details.
12 */
13
14#include "gk20a/gk20a.h"
15#include <linux/delay.h>
16#include "pmuif/gpmuifseq.h"
17#include "gm206/bios_gm206.h"
18#include "gk20a/pmu_gk20a.h"
19#include "gk20a/hw_pwr_gk20a.h"
20
21#define VREG_COUNT 24
22
23struct memory_link_training_pattern {
24 u32 regaddr;
25 u32 writeval;
26};
27
28static struct memory_link_training_pattern memory_shadow_reglist[] = {
29 {0x9a065c, 0x20},
30 {0x98467c, 0xffff0000},
31 {0x984708, 0x30550},
32 {0x98470c, 0x4C4C},
33 {0x9006a0, 0x03030303},
34 {0x9006a4, 0x03030303},
35 {0x9046a0, 0x03030303},
36 {0x9046a4, 0x03030303},
37 {0x9086a0, 0x03030303},
38 {0x9086a4, 0x03030303},
39 {0x90c6a0, 0x03030303},
40 {0x90c6a4, 0x03030303},
41 {0x9106a0, 0x07070707},
42 {0x9106a4, 0x07070707},
43 {0x9146a0, 0x07070707},
44 {0x9146a4, 0x07070707},
45 {0x9846a8, 0x03030303},
46 {0x9846ac, 0x03030303},
47 {0x9a065c, 0x00},
48};
49
50static struct memory_link_training_pattern memory_pattern_reglist[] = {
51 {0x9a0968, 0x0},
52 {0x9a0920, 0x0},
53 {0x9a0918, 0x0},
54 {0x9a0920, 0x100},
55 {0x9a0918, 0x0},
56 {0x9a096c, 0x0},
57 {0x9a0924, 0x0},
58 {0x9a091c, 0x0},
59 {0x9a0924, 0x100},
60 {0x9a091c, 0x0},
61 {0x9a0968, 0x100},
62 {0x9a0920, 0xff},
63 {0x9a0918, 0xffffffff},
64 {0x9a0920, 0x1ff},
65 {0x9a0918, 0xffffffff},
66 {0x9a096c, 0x100},
67 {0x9a0924, 0xff},
68 {0x9a091c, 0xffffffff},
69 {0x9a0924, 0x1ff},
70 {0x9a091c, 0xffffffff},
71 {0x9a0968, 0x200},
72 {0x9a0920, 0xff},
73 {0x9a0918, 0x55555555},
74 {0x9a0920, 0x1ff},
75 {0x9a0918, 0x55555555},
76 {0x9a096c, 0x200},
77 {0x9a0924, 0xff},
78 {0x9a091c, 0x55555555},
79 {0x9a0924, 0x1ff},
80 {0x9a091c, 0x55555555},
81 {0x9a0968, 0x300},
82 {0x9a0920, 0x0},
83 {0x9a0918, 0xaaaaaaaa},
84 {0x9a0920, 0x100},
85 {0x9a0918, 0xaaaaaaaa},
86 {0x9a096c, 0x300},
87 {0x9a0924, 0x0},
88 {0x9a091c, 0xaaaaaaaa},
89 {0x9a0924, 0x100},
90 {0x9a091c, 0xaaaaaaaa},
91 {0x9a0968, 0x400},
92 {0x9a0920, 0xff},
93 {0x9a0918, 0x33333333},
94 {0x9a0920, 0x1ff},
95 {0x9a0918, 0x33333333},
96 {0x9a096c, 0x400},
97 {0x9a0924, 0xff},
98 {0x9a091c, 0x33333333},
99 {0x9a0924, 0x1ff},
100 {0x9a091c, 0x33333333},
101 {0x9a0968, 0x500},
102 {0x9a0920, 0x0},
103 {0x9a0918, 0xcccccccc},
104 {0x9a0920, 0x100},
105 {0x9a0918, 0xcccccccc},
106 {0x9a096c, 0x500},
107 {0x9a0924, 0x0},
108 {0x9a091c, 0xcccccccc},
109 {0x9a0924, 0x100},
110 {0x9a091c, 0xcccccccc},
111 {0x9a0968, 0x600},
112 {0x9a0920, 0x0},
113 {0x9a0918, 0xf0f0f0f0},
114 {0x9a0920, 0x100},
115 {0x9a0918, 0xf0f0f0f0},
116 {0x9a096c, 0x600},
117 {0x9a0924, 0x0},
118 {0x9a091c, 0xf0f0f0f0},
119 {0x9a0924, 0x100},
120 {0x9a091c, 0xf0f0f0f0},
121 {0x9a0968, 0x700},
122 {0x9a0920, 0xff},
123 {0x9a0918, 0xf0f0f0f},
124 {0x9a0920, 0x1ff},
125 {0x9a0918, 0xf0f0f0f},
126 {0x9a096c, 0x700},
127 {0x9a0924, 0xff},
128 {0x9a091c, 0xf0f0f0f},
129 {0x9a0924, 0x1ff},
130 {0x9a091c, 0xf0f0f0f},
131 {0x9a0968, 0x800},
132 {0x9a0920, 0xff},
133 {0x9a0918, 0xff00ff},
134 {0x9a0920, 0x1ff},
135 {0x9a0918, 0xff00ff},
136 {0x9a096c, 0x800},
137 {0x9a0924, 0xff},
138 {0x9a091c, 0xff00ff},
139 {0x9a0924, 0x1ff},
140 {0x9a091c, 0xff00ff},
141 {0x9a0968, 0x900},
142 {0x9a0920, 0x0},
143 {0x9a0918, 0xff00ff00},
144 {0x9a0920, 0x100},
145 {0x9a0918, 0xff00ff00},
146 {0x9a096c, 0x900},
147 {0x9a0924, 0x0},
148 {0x9a091c, 0xff00ff00},
149 {0x9a0924, 0x100},
150 {0x9a091c, 0xff00ff00},
151 {0x9a0968, 0xa00},
152 {0x9a0920, 0xff},
153 {0x9a0918, 0xffff},
154 {0x9a0920, 0x1ff},
155 {0x9a0918, 0xffff},
156 {0x9a096c, 0xa00},
157 {0x9a0924, 0xff},
158 {0x9a091c, 0xffff},
159 {0x9a0924, 0x1ff},
160 {0x9a091c, 0xffff},
161 {0x9a0968, 0xb00},
162 {0x9a0920, 0x0},
163 {0x9a0918, 0xffff0000},
164 {0x9a0920, 0x100},
165 {0x9a0918, 0xffff0000},
166 {0x9a096c, 0xb00},
167 {0x9a0924, 0x0},
168 {0x9a091c, 0xffff0000},
169 {0x9a0924, 0x100},
170 {0x9a091c, 0xffff0000},
171 {0x9a0968, 0xc00},
172 {0x9a0920, 0x0},
173 {0x9a0918, 0x0},
174 {0x9a0920, 0x100},
175 {0x9a0918, 0x0},
176 {0x9a096c, 0xc00},
177 {0x9a0924, 0x0},
178 {0x9a091c, 0x0},
179 {0x9a0924, 0x100},
180 {0x9a091c, 0x0},
181 {0x9a0968, 0xd00},
182 {0x9a0920, 0xff},
183 {0x9a0918, 0xffffffff},
184 {0x9a0920, 0x1ff},
185 {0x9a0918, 0xffffffff},
186 {0x9a096c, 0xd00},
187 {0x9a0924, 0xff},
188 {0x9a091c, 0xffffffff},
189 {0x9a0924, 0x1ff},
190 {0x9a091c, 0xffffffff},
191 {0x9a0968, 0xe00},
192 {0x9a0920, 0xff},
193 {0x9a0918, 0x55555555},
194 {0x9a0920, 0x1ff},
195 {0x9a0918, 0x55555555},
196 {0x9a096c, 0xe00},
197 {0x9a0924, 0xff},
198 {0x9a091c, 0x55555555},
199 {0x9a0924, 0x1ff},
200 {0x9a091c, 0x55555555},
201 {0x9a0968, 0xf00},
202 {0x9a0920, 0x0},
203 {0x9a0918, 0xaaaaaaaa},
204 {0x9a0920, 0x100},
205 {0x9a0918, 0xaaaaaaaa},
206 {0x9a096c, 0xf00},
207 {0x9a0924, 0x0},
208 {0x9a091c, 0xaaaaaaaa},
209 {0x9a0924, 0x100},
210 {0x9a091c, 0xaaaaaaaa},
211 {0x9a0968, 0x1000},
212 {0x9a0920, 0xff},
213 {0x9a0918, 0x33333333},
214 {0x9a0920, 0x1ff},
215 {0x9a0918, 0x33333333},
216 {0x9a096c, 0x1000},
217 {0x9a0924, 0xff},
218 {0x9a091c, 0x33333333},
219 {0x9a0924, 0x1ff},
220 {0x9a091c, 0x33333333},
221 {0x9a0968, 0x1100},
222 {0x9a0920, 0x0},
223 {0x9a0918, 0xcccccccc},
224 {0x9a0920, 0x100},
225 {0x9a0918, 0xcccccccc},
226 {0x9a096c, 0x1100},
227 {0x9a0924, 0x0},
228 {0x9a091c, 0xcccccccc},
229 {0x9a0924, 0x100},
230 {0x9a091c, 0xcccccccc},
231 {0x9a0968, 0x1200},
232 {0x9a0920, 0x0},
233 {0x9a0918, 0xf0f0f0f0},
234 {0x9a0920, 0x100},
235 {0x9a0918, 0xf0f0f0f0},
236 {0x9a096c, 0x1200},
237 {0x9a0924, 0x0},
238 {0x9a091c, 0xf0f0f0f0},
239 {0x9a0924, 0x100},
240 {0x9a091c, 0xf0f0f0f0},
241 {0x9a0968, 0x1300},
242 {0x9a0920, 0xff},
243 {0x9a0918, 0xf0f0f0f},
244 {0x9a0920, 0x1ff},
245 {0x9a0918, 0xf0f0f0f},
246 {0x9a096c, 0x1300},
247 {0x9a0924, 0xff},
248 {0x9a091c, 0xf0f0f0f},
249 {0x9a0924, 0x1ff},
250 {0x9a091c, 0xf0f0f0f},
251 {0x9a0968, 0x1400},
252 {0x9a0920, 0xff},
253 {0x9a0918, 0xff00ff},
254 {0x9a0920, 0x1ff},
255 {0x9a0918, 0xff00ff},
256 {0x9a096c, 0x1400},
257 {0x9a0924, 0xff},
258 {0x9a091c, 0xff00ff},
259 {0x9a0924, 0x1ff},
260 {0x9a091c, 0xff00ff},
261 {0x9a0968, 0x1500},
262 {0x9a0920, 0x0},
263 {0x9a0918, 0xff00ff00},
264 {0x9a0920, 0x100},
265 {0x9a0918, 0xff00ff00},
266 {0x9a096c, 0x1500},
267 {0x9a0924, 0x0},
268 {0x9a091c, 0xff00ff00},
269 {0x9a0924, 0x100},
270 {0x9a091c, 0xff00ff00},
271 {0x9a0968, 0x1600},
272 {0x9a0920, 0xff},
273 {0x9a0918, 0xffff},
274 {0x9a0920, 0x1ff},
275 {0x9a0918, 0xffff},
276 {0x9a096c, 0x1600},
277 {0x9a0924, 0xff},
278 {0x9a091c, 0xffff},
279 {0x9a0924, 0x1ff},
280 {0x9a091c, 0xffff},
281 {0x9a0968, 0x1700},
282 {0x9a0920, 0x0},
283 {0x9a0918, 0xffff0000},
284 {0x9a0920, 0x100},
285 {0x9a0918, 0xffff0000},
286 {0x9a096c, 0x1700},
287 {0x9a0924, 0x0},
288 {0x9a091c, 0xffff0000},
289 {0x9a0924, 0x100},
290 {0x9a091c, 0xffff0000},
291 {0x9a0968, 0x1800},
292 {0x9a0920, 0x0},
293 {0x9a0918, 0x0},
294 {0x9a0920, 0x100},
295 {0x9a0918, 0x0},
296 {0x9a096c, 0x1800},
297 {0x9a0924, 0x0},
298 {0x9a091c, 0x0},
299 {0x9a0924, 0x100},
300 {0x9a091c, 0x0},
301 {0x9a0968, 0x1900},
302 {0x9a0920, 0xff},
303 {0x9a0918, 0xffffffff},
304 {0x9a0920, 0x1ff},
305 {0x9a0918, 0xffffffff},
306 {0x9a096c, 0x1900},
307 {0x9a0924, 0xff},
308 {0x9a091c, 0xffffffff},
309 {0x9a0924, 0x1ff},
310 {0x9a091c, 0xffffffff},
311 {0x9a0968, 0x1a00},
312 {0x9a0920, 0xff},
313 {0x9a0918, 0x55555555},
314 {0x9a0920, 0x1ff},
315 {0x9a0918, 0x55555555},
316 {0x9a096c, 0x1a00},
317 {0x9a0924, 0xff},
318 {0x9a091c, 0x55555555},
319 {0x9a0924, 0x1ff},
320 {0x9a091c, 0x55555555},
321 {0x9a0968, 0x1b00},
322 {0x9a0920, 0x0},
323 {0x9a0918, 0xaaaaaaaa},
324 {0x9a0920, 0x100},
325 {0x9a0918, 0xaaaaaaaa},
326 {0x9a096c, 0x1b00},
327 {0x9a0924, 0x0},
328 {0x9a091c, 0xaaaaaaaa},
329 {0x9a0924, 0x100},
330 {0x9a091c, 0xaaaaaaaa},
331 {0x9a0968, 0x1c00},
332 {0x9a0920, 0xff},
333 {0x9a0918, 0x33333333},
334 {0x9a0920, 0x1ff},
335 {0x9a0918, 0x33333333},
336 {0x9a096c, 0x1c00},
337 {0x9a0924, 0xff},
338 {0x9a091c, 0x33333333},
339 {0x9a0924, 0x1ff},
340 {0x9a091c, 0x33333333},
341 {0x9a0968, 0x1d00},
342 {0x9a0920, 0x0},
343 {0x9a0918, 0xcccccccc},
344 {0x9a0920, 0x100},
345 {0x9a0918, 0xcccccccc},
346 {0x9a096c, 0x1d00},
347 {0x9a0924, 0x0},
348 {0x9a091c, 0xcccccccc},
349 {0x9a0924, 0x100},
350 {0x9a091c, 0xcccccccc},
351 {0x9a0968, 0x1e00},
352 {0x9a0920, 0x0},
353 {0x9a0918, 0xf0f0f0f0},
354 {0x9a0920, 0x100},
355 {0x9a0918, 0xf0f0f0f0},
356 {0x9a096c, 0x1e00},
357 {0x9a0924, 0x0},
358 {0x9a091c, 0xf0f0f0f0},
359 {0x9a0924, 0x100},
360 {0x9a091c, 0xf0f0f0f0},
361 {0x9a0968, 0x1f00},
362 {0x9a0920, 0xff},
363 {0x9a0918, 0xf0f0f0f},
364 {0x9a0920, 0x1ff},
365 {0x9a0918, 0xf0f0f0f},
366 {0x9a096c, 0x1f00},
367 {0x9a0924, 0xff},
368 {0x9a091c, 0xf0f0f0f},
369 {0x9a0924, 0x1ff},
370 {0x9a091c, 0xf0f0f0f},
371 {0x9a0968, 0x2000},
372 {0x9a0920, 0xff},
373 {0x9a0918, 0xff00ff},
374 {0x9a0920, 0x1ff},
375 {0x9a0918, 0xff00ff},
376 {0x9a096c, 0x2000},
377 {0x9a0924, 0xff},
378 {0x9a091c, 0xff00ff},
379 {0x9a0924, 0x1ff},
380 {0x9a091c, 0xff00ff},
381 {0x9a0968, 0x2100},
382 {0x9a0920, 0x0},
383 {0x9a0918, 0xff00ff00},
384 {0x9a0920, 0x100},
385 {0x9a0918, 0xff00ff00},
386 {0x9a096c, 0x2100},
387 {0x9a0924, 0x0},
388 {0x9a091c, 0xff00ff00},
389 {0x9a0924, 0x100},
390 {0x9a091c, 0xff00ff00},
391 {0x9a0968, 0x2200},
392 {0x9a0920, 0xff},
393 {0x9a0918, 0xffff},
394 {0x9a0920, 0x1ff},
395 {0x9a0918, 0xffff},
396 {0x9a096c, 0x2200},
397 {0x9a0924, 0xff},
398 {0x9a091c, 0xffff},
399 {0x9a0924, 0x1ff},
400 {0x9a091c, 0xffff},
401 {0x9a0968, 0x2300},
402 {0x9a0920, 0x0},
403 {0x9a0918, 0xffff0000},
404 {0x9a0920, 0x100},
405 {0x9a0918, 0xffff0000},
406 {0x9a096c, 0x2300},
407 {0x9a0924, 0x0},
408 {0x9a091c, 0xffff0000},
409 {0x9a0924, 0x100},
410 {0x9a091c, 0xffff0000},
411 {0x9a0968, 0x2400},
412 {0x9a0920, 0x0},
413 {0x9a0918, 0x0},
414 {0x9a0920, 0x100},
415 {0x9a0918, 0x0},
416 {0x9a096c, 0x2400},
417 {0x9a0924, 0x0},
418 {0x9a091c, 0x0},
419 {0x9a0924, 0x100},
420 {0x9a091c, 0x0},
421 {0x9a0968, 0x2500},
422 {0x9a0920, 0xff},
423 {0x9a0918, 0xffffffff},
424 {0x9a0920, 0x1ff},
425 {0x9a0918, 0xffffffff},
426 {0x9a096c, 0x2500},
427 {0x9a0924, 0xff},
428 {0x9a091c, 0xffffffff},
429 {0x9a0924, 0x1ff},
430 {0x9a091c, 0xffffffff},
431 {0x9a0968, 0x2600},
432 {0x9a0920, 0xff},
433 {0x9a0918, 0x55555555},
434 {0x9a0920, 0x1ff},
435 {0x9a0918, 0x55555555},
436 {0x9a096c, 0x2600},
437 {0x9a0924, 0xff},
438 {0x9a091c, 0x55555555},
439 {0x9a0924, 0x1ff},
440 {0x9a091c, 0x55555555},
441 {0x9a0968, 0x2700},
442 {0x9a0920, 0x0},
443 {0x9a0918, 0xaaaaaaaa},
444 {0x9a0920, 0x100},
445 {0x9a0918, 0xaaaaaaaa},
446 {0x9a096c, 0x2700},
447 {0x9a0924, 0x0},
448 {0x9a091c, 0xaaaaaaaa},
449 {0x9a0924, 0x100},
450 {0x9a091c, 0xaaaaaaaa},
451 {0x9a0968, 0x2800},
452 {0x9a0920, 0xff},
453 {0x9a0918, 0x33333333},
454 {0x9a0920, 0x1ff},
455 {0x9a0918, 0x33333333},
456 {0x9a096c, 0x2800},
457 {0x9a0924, 0xff},
458 {0x9a091c, 0x33333333},
459 {0x9a0924, 0x1ff},
460 {0x9a091c, 0x33333333},
461 {0x9a0968, 0x2900},
462 {0x9a0920, 0x0},
463 {0x9a0918, 0xcccccccc},
464 {0x9a0920, 0x100},
465 {0x9a0918, 0xcccccccc},
466 {0x9a096c, 0x2900},
467 {0x9a0924, 0x0},
468 {0x9a091c, 0xcccccccc},
469 {0x9a0924, 0x100},
470 {0x9a091c, 0xcccccccc},
471 {0x9a0968, 0x2a00},
472 {0x9a0920, 0x0},
473 {0x9a0918, 0xf0f0f0f0},
474 {0x9a0920, 0x100},
475 {0x9a0918, 0xf0f0f0f0},
476 {0x9a096c, 0x2a00},
477 {0x9a0924, 0x0},
478 {0x9a091c, 0xf0f0f0f0},
479 {0x9a0924, 0x100},
480 {0x9a091c, 0xf0f0f0f0},
481 {0x9a0968, 0x2b00},
482 {0x9a0920, 0xff},
483 {0x9a0918, 0xf0f0f0f},
484 {0x9a0920, 0x1ff},
485 {0x9a0918, 0xf0f0f0f},
486 {0x9a096c, 0x2b00},
487 {0x9a0924, 0xff},
488 {0x9a091c, 0xf0f0f0f},
489 {0x9a0924, 0x1ff},
490 {0x9a091c, 0xf0f0f0f},
491 {0x9a0968, 0x2c00},
492 {0x9a0920, 0xff},
493 {0x9a0918, 0xff00ff},
494 {0x9a0920, 0x1ff},
495 {0x9a0918, 0xff00ff},
496 {0x9a096c, 0x2c00},
497 {0x9a0924, 0xff},
498 {0x9a091c, 0xff00ff},
499 {0x9a0924, 0x1ff},
500 {0x9a091c, 0xff00ff},
501 {0x9a0968, 0x2d00},
502 {0x9a0920, 0x0},
503 {0x9a0918, 0xff00ff00},
504 {0x9a0920, 0x100},
505 {0x9a0918, 0xff00ff00},
506 {0x9a096c, 0x2d00},
507 {0x9a0924, 0x0},
508 {0x9a091c, 0xff00ff00},
509 {0x9a0924, 0x100},
510 {0x9a091c, 0xff00ff00},
511 {0x9a0968, 0x2e00},
512 {0x9a0920, 0xff},
513 {0x9a0918, 0xffff},
514 {0x9a0920, 0x1ff},
515 {0x9a0918, 0xffff},
516 {0x9a096c, 0x2e00},
517 {0x9a0924, 0xff},
518 {0x9a091c, 0xffff},
519 {0x9a0924, 0x1ff},
520 {0x9a091c, 0xffff},
521 {0x9a0968, 0x2f00},
522 {0x9a0920, 0x0},
523 {0x9a0918, 0xffff0000},
524 {0x9a0920, 0x100},
525 {0x9a0918, 0xffff0000},
526 {0x9a096c, 0x2f00},
527 {0x9a0924, 0x0},
528 {0x9a091c, 0xffff0000},
529 {0x9a0924, 0x100},
530 {0x9a091c, 0xffff0000},
531 {0x9a0968, 0x0},
532 {0x9a0900, 0x0},
533 {0x9a0968, 0x1},
534 {0x9a0900, 0xffffffff},
535 {0x9a0968, 0x2},
536 {0x9a0900, 0x0},
537 {0x9a0968, 0x3},
538 {0x9a0900, 0xffffffff},
539 {0x9a0968, 0x4},
540 {0x9a0900, 0x0},
541 {0x9a0968, 0x5},
542 {0x9a0900, 0xffffffff},
543 {0x9a0968, 0x6},
544 {0x9a0900, 0x0},
545 {0x9a0968, 0x7},
546 {0x9a0900, 0xffffffff},
547 {0x9a0968, 0x8},
548 {0x9a0900, 0x0},
549 {0x9a0968, 0x9},
550 {0x9a0900, 0xffffffff},
551 {0x9a0968, 0xa},
552 {0x9a0900, 0x0},
553 {0x9a0968, 0xb},
554 {0x9a0900, 0xffffffff},
555 {0x9a0968, 0xc},
556 {0x9a0900, 0x0},
557 {0x9a0968, 0xd},
558 {0x9a0900, 0xffffffff},
559 {0x9a0968, 0xe},
560 {0x9a0900, 0x0},
561 {0x9a0968, 0xf},
562 {0x9a0900, 0xffffffff},
563 {0x9a0968, 0x10},
564 {0x9a0900, 0x55555555},
565 {0x9a0968, 0x11},
566 {0x9a0900, 0xaaaaaaaa},
567 {0x9a0968, 0x12},
568 {0x9a0900, 0x55555555},
569 {0x9a0968, 0x13},
570 {0x9a0900, 0xaaaaaaaa},
571 {0x9a0968, 0x14},
572 {0x9a0900, 0x55555555},
573 {0x9a0968, 0x15},
574 {0x9a0900, 0xaaaaaaaa},
575 {0x9a0968, 0x16},
576 {0x9a0900, 0x55555555},
577 {0x9a0968, 0x17},
578 {0x9a0900, 0xaaaaaaaa},
579 {0x9a0968, 0x18},
580 {0x9a0900, 0x55555555},
581 {0x9a0968, 0x19},
582 {0x9a0900, 0xaaaaaaaa},
583 {0x9a0968, 0x1a},
584 {0x9a0900, 0x55555555},
585 {0x9a0968, 0x1b},
586 {0x9a0900, 0xaaaaaaaa},
587 {0x9a0968, 0x1c},
588 {0x9a0900, 0x55555555},
589 {0x9a0968, 0x1d},
590 {0x9a0900, 0xaaaaaaaa},
591 {0x9a0968, 0x1e},
592 {0x9a0900, 0x55555555},
593 {0x9a0968, 0x1f},
594 {0x9a0900, 0xaaaaaaaa},
595 {0x9a0968, 0x20},
596 {0x9a0900, 0xffff},
597 {0x9a0968, 0x21},
598 {0x9a0900, 0xffff0000},
599 {0x9a0968, 0x22},
600 {0x9a0900, 0xffff},
601 {0x9a0968, 0x23},
602 {0x9a0900, 0xffff0000},
603 {0x9a0968, 0x24},
604 {0x9a0900, 0xffff},
605 {0x9a0968, 0x25},
606 {0x9a0900, 0xffff0000},
607 {0x9a0968, 0x26},
608 {0x9a0900, 0xffff},
609 {0x9a0968, 0x27},
610 {0x9a0900, 0xffff0000},
611 {0x9a0968, 0x28},
612 {0x9a0900, 0xffff},
613 {0x9a0968, 0x29},
614 {0x9a0900, 0xffff0000},
615 {0x9a0968, 0x2a},
616 {0x9a0900, 0xffff},
617 {0x9a0968, 0x2b},
618 {0x9a0900, 0xffff0000},
619 {0x9a0968, 0x2c},
620 {0x9a0900, 0xffff},
621 {0x9a0968, 0x2d},
622 {0x9a0900, 0xffff0000},
623 {0x9a0968, 0x2e},
624 {0x9a0900, 0xffff},
625 {0x9a0968, 0x2f},
626 {0x9a0900, 0xffff0000},
627 {0x9a0968, 0x30},
628 {0x9a0900, 0xff00ff},
629 {0x9a0968, 0x31},
630 {0x9a0900, 0xff00ff00},
631 {0x9a0968, 0x32},
632 {0x9a0900, 0xff00ff},
633 {0x9a0968, 0x33},
634 {0x9a0900, 0xff00ff00},
635 {0x9a0968, 0x34},
636 {0x9a0900, 0xff00ff},
637 {0x9a0968, 0x35},
638 {0x9a0900, 0xff00ff00},
639 {0x9a0968, 0x36},
640 {0x9a0900, 0xff00ff},
641 {0x9a0968, 0x37},
642 {0x9a0900, 0xff00ff00},
643 {0x9a0968, 0x38},
644 {0x9a0900, 0xff00ff},
645 {0x9a0968, 0x39},
646 {0x9a0900, 0xff00ff00},
647 {0x9a0968, 0x3a},
648 {0x9a0900, 0xff00ff},
649 {0x9a0968, 0x3b},
650 {0x9a0900, 0xff00ff00},
651 {0x9a0968, 0x3c},
652 {0x9a0900, 0xff00ff},
653 {0x9a0968, 0x3d},
654 {0x9a0900, 0xff00ff00},
655 {0x9a0968, 0x3e},
656 {0x9a0900, 0xff00ff},
657 {0x9a0968, 0x3f},
658 {0x9a0900, 0xff00ff00},
659 {0x9a0968, 0x40},
660 {0x9a0900, 0x0},
661 {0x9a0968, 0x41},
662 {0x9a0900, 0xffffffff},
663 {0x9a0968, 0x42},
664 {0x9a0900, 0x0},
665 {0x9a0968, 0x43},
666 {0x9a0900, 0xffffffff},
667 {0x9a0968, 0x44},
668 {0x9a0900, 0x0},
669 {0x9a0968, 0x45},
670 {0x9a0900, 0xffffffff},
671 {0x9a0968, 0x46},
672 {0x9a0900, 0x0},
673 {0x9a0968, 0x47},
674 {0x9a0900, 0xffffffff},
675 {0x9a0968, 0x48},
676 {0x9a0900, 0x0},
677 {0x9a0968, 0x49},
678 {0x9a0900, 0xffffffff},
679 {0x9a0968, 0x4a},
680 {0x9a0900, 0x0},
681 {0x9a0968, 0x4b},
682 {0x9a0900, 0xffffffff},
683 {0x9a0968, 0x4c},
684 {0x9a0900, 0x0},
685 {0x9a0968, 0x4d},
686 {0x9a0900, 0xffffffff},
687 {0x9a0968, 0x4e},
688 {0x9a0900, 0x0},
689 {0x9a0968, 0x4f},
690 {0x9a0900, 0xffffffff},
691 {0x9a0968, 0x50},
692 {0x9a0900, 0x55555555},
693 {0x9a0968, 0x51},
694 {0x9a0900, 0xaaaaaaaa},
695 {0x9a0968, 0x52},
696 {0x9a0900, 0x55555555},
697 {0x9a0968, 0x53},
698 {0x9a0900, 0xaaaaaaaa},
699 {0x9a0968, 0x54},
700 {0x9a0900, 0x55555555},
701 {0x9a0968, 0x55},
702 {0x9a0900, 0xaaaaaaaa},
703 {0x9a0968, 0x56},
704 {0x9a0900, 0x55555555},
705 {0x9a0968, 0x57},
706 {0x9a0900, 0xaaaaaaaa},
707 {0x9a0968, 0x58},
708 {0x9a0900, 0x55555555},
709 {0x9a0968, 0x59},
710 {0x9a0900, 0xaaaaaaaa},
711 {0x9a0968, 0x5a},
712 {0x9a0900, 0x55555555},
713 {0x9a0968, 0x5b},
714 {0x9a0900, 0xaaaaaaaa},
715 {0x9a0968, 0x5c},
716 {0x9a0900, 0x55555555},
717 {0x9a0968, 0x5d},
718 {0x9a0900, 0xaaaaaaaa},
719 {0x9a0968, 0x5e},
720 {0x9a0900, 0x55555555},
721 {0x9a0968, 0x5f},
722 {0x9a0900, 0x0},
723 {0x9a0968, 0x60},
724 {0x9a0900, 0xffffffff},
725 {0x9a0968, 0x61},
726 {0x9a0900, 0x0},
727 {0x9a0968, 0x62},
728 {0x9a0900, 0xffffffff},
729 {0x9a0968, 0x63},
730 {0x9a0900, 0x0},
731 {0x9a0968, 0x64},
732 {0x9a0900, 0xffffffff},
733 {0x9a0968, 0x65},
734 {0x9a0900, 0x0},
735 {0x9a0968, 0x66},
736 {0x9a0900, 0xffffffff},
737 {0x9a0968, 0x67},
738 {0x9a0900, 0x0},
739 {0x9a0968, 0x68},
740 {0x9a0900, 0xffffffff},
741 {0x9a0968, 0x69},
742 {0x9a0900, 0x0},
743 {0x9a0968, 0x6a},
744 {0x9a0900, 0xffffffff},
745 {0x9a0968, 0x6b},
746 {0x9a0900, 0x0},
747 {0x9a0968, 0x6c},
748 {0x9a0900, 0xffffffff},
749 {0x9a0968, 0x6d},
750 {0x9a0900, 0x0},
751 {0x9a0968, 0x6e},
752 {0x9a0900, 0xffffffff},
753 {0x9a0968, 0x6f},
754 {0x9a0900, 0x55555555},
755 {0x9a0968, 0x70},
756 {0x9a0900, 0xaaaaaaaa},
757 {0x9a0968, 0x71},
758 {0x9a0900, 0x55555555},
759 {0x9a0968, 0x72},
760 {0x9a0900, 0xaaaaaaaa},
761 {0x9a0968, 0x73},
762 {0x9a0900, 0x55555555},
763 {0x9a0968, 0x74},
764 {0x9a0900, 0xaaaaaaaa},
765 {0x9a0968, 0x75},
766 {0x9a0900, 0x55555555},
767 {0x9a0968, 0x76},
768 {0x9a0900, 0xaaaaaaaa},
769 {0x9a0968, 0x77},
770 {0x9a0900, 0x55555555},
771 {0x9a0968, 0x78},
772 {0x9a0900, 0xaaaaaaaa},
773 {0x9a0968, 0x79},
774 {0x9a0900, 0x55555555},
775 {0x9a0968, 0x7a},
776 {0x9a0900, 0xaaaaaaaa},
777 {0x9a0968, 0x7b},
778 {0x9a0900, 0x55555555},
779 {0x9a0968, 0x7c},
780 {0x9a0900, 0xaaaaaaaa},
781 {0x9a0968, 0x7d},
782 {0x9a0900, 0x55555555},
783 {0x9a0968, 0x7e},
784 {0x9a0900, 0xaaaaaaaa},
785 {0x9a0968, 0x7f},
786 {0x9a0900, 0xffff},
787 {0x9a0968, 0x80},
788 {0x9a0900, 0xffff0000},
789 {0x9a0968, 0x81},
790 {0x9a0900, 0xffff},
791 {0x9a0968, 0x82},
792 {0x9a0900, 0xffff0000},
793 {0x9a0968, 0x83},
794 {0x9a0900, 0xffff},
795 {0x9a0968, 0x84},
796 {0x9a0900, 0xffff0000},
797 {0x9a0968, 0x85},
798 {0x9a0900, 0xffff},
799 {0x9a0968, 0x86},
800 {0x9a0900, 0xffff0000},
801 {0x9a0968, 0x87},
802 {0x9a0900, 0xffff},
803 {0x9a0968, 0x88},
804 {0x9a0900, 0xffff0000},
805 {0x9a0968, 0x89},
806 {0x9a0900, 0xffff},
807 {0x9a0968, 0x8a},
808 {0x9a0900, 0xffff0000},
809 {0x9a0968, 0x8b},
810 {0x9a0900, 0xffff},
811 {0x9a0968, 0x8c},
812 {0x9a0900, 0xffff0000},
813 {0x9a0968, 0x8d},
814 {0x9a0900, 0xffff},
815 {0x9a0968, 0x8e},
816 {0x9a0900, 0xffff0000},
817 {0x9a0968, 0x8f},
818 {0x9a0900, 0xff00ff},
819 {0x9a0968, 0x90},
820 {0x9a0900, 0xff00ff00},
821 {0x9a0968, 0x91},
822 {0x9a0900, 0xff00ff},
823 {0x9a0968, 0x92},
824 {0x9a0900, 0xff00ff00},
825 {0x9a0968, 0x93},
826 {0x9a0900, 0xff00ff},
827 {0x9a0968, 0x94},
828 {0x9a0900, 0xff00ff00},
829 {0x9a0968, 0x95},
830 {0x9a0900, 0xff00ff},
831 {0x9a0968, 0x96},
832 {0x9a0900, 0xff00ff00},
833 {0x9a0968, 0x97},
834 {0x9a0900, 0xff00ff},
835 {0x9a0968, 0x98},
836 {0x9a0900, 0xff00ff00},
837 {0x9a0968, 0x99},
838 {0x9a0900, 0xff00ff},
839 {0x9a0968, 0x9a},
840 {0x9a0900, 0xff00ff00},
841 {0x9a0968, 0x9b},
842 {0x9a0900, 0xff00ff},
843 {0x9a0968, 0x9c},
844 {0x9a0900, 0xff00ff00},
845 {0x9a0968, 0x9d},
846 {0x9a0900, 0xff00ff},
847 {0x9a0968, 0x9e},
848 {0x9a0900, 0xff00ff00},
849 {0x9a0968, 0x9f},
850 {0x9a0900, 0x0},
851 {0x9a0968, 0xa0},
852 {0x9a0900, 0xffffffff},
853 {0x9a0968, 0xa1},
854 {0x9a0900, 0x0},
855 {0x9a0968, 0xa2},
856 {0x9a0900, 0xffffffff},
857 {0x9a0968, 0xa3},
858 {0x9a0900, 0x0},
859 {0x9a0968, 0xa4},
860 {0x9a0900, 0xffffffff},
861 {0x9a0968, 0xa5},
862 {0x9a0900, 0x0},
863 {0x9a0968, 0xa6},
864 {0x9a0900, 0xffffffff},
865 {0x9a0968, 0xa7},
866 {0x9a0900, 0x0},
867 {0x9a0968, 0xa8},
868 {0x9a0900, 0xffffffff},
869 {0x9a0968, 0xa9},
870 {0x9a0900, 0x0},
871 {0x9a0968, 0xaa},
872 {0x9a0900, 0xffffffff},
873 {0x9a0968, 0xab},
874 {0x9a0900, 0x0},
875 {0x9a0968, 0xac},
876 {0x9a0900, 0xffffffff},
877 {0x9a0968, 0xad},
878 {0x9a0900, 0x0},
879 {0x9a0968, 0xae},
880 {0x9a0900, 0xffffffff},
881 {0x9a0968, 0xaf},
882 {0x9a0900, 0x55555555},
883 {0x9a0968, 0xb0},
884 {0x9a0900, 0xaaaaaaaa},
885 {0x9a0968, 0xb1},
886 {0x9a0900, 0x55555555},
887 {0x9a0968, 0xb2},
888 {0x9a0900, 0xaaaaaaaa},
889 {0x9a0968, 0xb3},
890 {0x9a0900, 0x55555555},
891 {0x9a0968, 0xb4},
892 {0x9a0900, 0xaaaaaaaa},
893 {0x9a0968, 0xb5},
894 {0x9a0900, 0x55555555},
895 {0x9a0968, 0xb6},
896 {0x9a0900, 0xaaaaaaaa},
897 {0x9a0968, 0xb7},
898 {0x9a0900, 0x55555555},
899 {0x9a0968, 0xb8},
900 {0x9a0900, 0xaaaaaaaa},
901 {0x9a0968, 0xb9},
902 {0x9a0900, 0x55555555},
903 {0x9a0968, 0xba},
904 {0x9a0900, 0xaaaaaaaa},
905 {0x9a0968, 0xbb},
906 {0x9a0900, 0x55555555},
907 {0x9a0968, 0xbc},
908 {0x9a0900, 0xaaaaaaaa},
909 {0x9a0968, 0xbd},
910 {0x9a0900, 0x55555555},
911 {0x9a0968, 0xbe},
912 {0x9a0900, 0x0},
913 {0x9a0968, 0xbf},
914 {0x9a0900, 0xffffffff},
915 {0x9a0968, 0xc0},
916 {0x9a0900, 0x0},
917 {0x9a0968, 0xc1},
918 {0x9a0900, 0xffffffff},
919 {0x9a0968, 0xc2},
920 {0x9a0900, 0x0},
921 {0x9a0968, 0xc3},
922 {0x9a0900, 0xffffffff},
923 {0x9a0968, 0xc4},
924 {0x9a0900, 0x0},
925 {0x9a0968, 0xc5},
926 {0x9a0900, 0xffffffff},
927 {0x9a0968, 0xc6},
928 {0x9a0900, 0x0},
929 {0x9a0968, 0xc7},
930 {0x9a0900, 0xffffffff},
931 {0x9a0968, 0xc8},
932 {0x9a0900, 0x0},
933 {0x9a0968, 0xc9},
934 {0x9a0900, 0xffffffff},
935 {0x9a0968, 0xca},
936 {0x9a0900, 0x0},
937 {0x9a0968, 0xcb},
938 {0x9a0900, 0xffffffff},
939 {0x9a0968, 0xcc},
940 {0x9a0900, 0x0},
941 {0x9a0968, 0xcd},
942 {0x9a0900, 0xffffffff},
943 {0x9a0968, 0xce},
944 {0x9a0900, 0x55555555},
945 {0x9a0968, 0xcf},
946 {0x9a0900, 0xaaaaaaaa},
947 {0x9a0968, 0xd0},
948 {0x9a0900, 0x55555555},
949 {0x9a0968, 0xd1},
950 {0x9a0900, 0xaaaaaaaa},
951 {0x9a0968, 0xd2},
952 {0x9a0900, 0x55555555},
953 {0x9a0968, 0xd3},
954 {0x9a0900, 0xaaaaaaaa},
955 {0x9a0968, 0xd4},
956 {0x9a0900, 0x55555555},
957 {0x9a0968, 0xd5},
958 {0x9a0900, 0xaaaaaaaa},
959 {0x9a0968, 0xd6},
960 {0x9a0900, 0x55555555},
961 {0x9a0968, 0xd7},
962 {0x9a0900, 0xaaaaaaaa},
963 {0x9a0968, 0xd8},
964 {0x9a0900, 0x55555555},
965 {0x9a0968, 0xd9},
966 {0x9a0900, 0xaaaaaaaa},
967 {0x9a0968, 0xda},
968 {0x9a0900, 0x55555555},
969 {0x9a0968, 0xdb},
970 {0x9a0900, 0xaaaaaaaa},
971 {0x9a0968, 0xdc},
972 {0x9a0900, 0x55555555},
973 {0x9a0968, 0xdd},
974 {0x9a0900, 0xaaaaaaaa},
975 {0x9a0968, 0xde},
976 {0x9a0900, 0xffff},
977 {0x9a0968, 0xdf},
978 {0x9a0900, 0xffff0000},
979 {0x9a0968, 0xe0},
980 {0x9a0900, 0xffff},
981 {0x9a0968, 0xe1},
982 {0x9a0900, 0xffff0000},
983 {0x9a0968, 0xe2},
984 {0x9a0900, 0xffff},
985 {0x9a0968, 0xe3},
986 {0x9a0900, 0xffff0000},
987 {0x9a0968, 0xe4},
988 {0x9a0900, 0xffff},
989 {0x9a0968, 0xe5},
990 {0x9a0900, 0xffff0000},
991 {0x9a0968, 0xe6},
992 {0x9a0900, 0xffff},
993 {0x9a0968, 0xe7},
994 {0x9a0900, 0xffff0000},
995 {0x9a0968, 0xe8},
996 {0x9a0900, 0xffff},
997 {0x9a0968, 0xe9},
998 {0x9a0900, 0xffff0000},
999 {0x9a0968, 0xea},
1000 {0x9a0900, 0xffff},
1001 {0x9a0968, 0xeb},
1002 {0x9a0900, 0xffff0000},
1003 {0x9a0968, 0xec},
1004 {0x9a0900, 0xffff},
1005 {0x9a0968, 0xed},
1006 {0x9a0900, 0xffff0000},
1007 {0x9a0968, 0xee},
1008 {0x9a0900, 0xff00ff},
1009 {0x9a0968, 0xef},
1010 {0x9a0900, 0xff00ff00},
1011 {0x9a0968, 0xf0},
1012 {0x9a0900, 0xff00ff},
1013 {0x9a0968, 0xf1},
1014 {0x9a0900, 0xff00ff00},
1015 {0x9a0968, 0xf2},
1016 {0x9a0900, 0xff00ff},
1017 {0x9a0968, 0xf3},
1018 {0x9a0900, 0xff00ff00},
1019 {0x9a0968, 0xf4},
1020 {0x9a0900, 0xff00ff},
1021 {0x9a0968, 0xf5},
1022 {0x9a0900, 0xff00ff00},
1023 {0x9a0968, 0xf6},
1024 {0x9a0900, 0xff00ff},
1025 {0x9a0968, 0xf7},
1026 {0x9a0900, 0xff00ff00},
1027 {0x9a0968, 0xf8},
1028 {0x9a0900, 0xff00ff},
1029 {0x9a0968, 0xf9},
1030 {0x9a0900, 0xff00ff00},
1031 {0x9a0968, 0xfa},
1032 {0x9a0900, 0xff00ff},
1033 {0x9a0968, 0xfb},
1034 {0x9a0900, 0xff00ff00},
1035 {0x9a0968, 0xfc},
1036 {0x9a0900, 0xff00ff},
1037 {0x9a0968, 0xfd},
1038 {0x9a0900, 0xff00ff00},
1039 {0x9a0968, 0xfe},
1040 {0x9a0900, 0x0},
1041 {0x9a0968, 0xff},
1042 {0x9a0900, 0xffffffff},
1043 {0x9a096c, 0x0},
1044 {0x9a0904, 0x0},
1045 {0x9a096c, 0x1},
1046 {0x9a0904, 0xffffffff},
1047 {0x9a096c, 0x2},
1048 {0x9a0904, 0x0},
1049 {0x9a096c, 0x3},
1050 {0x9a0904, 0xffffffff},
1051 {0x9a096c, 0x4},
1052 {0x9a0904, 0x0},
1053 {0x9a096c, 0x5},
1054 {0x9a0904, 0xffffffff},
1055 {0x9a096c, 0x6},
1056 {0x9a0904, 0x0},
1057 {0x9a096c, 0x7},
1058 {0x9a0904, 0xffffffff},
1059 {0x9a096c, 0x8},
1060 {0x9a0904, 0x0},
1061 {0x9a096c, 0x9},
1062 {0x9a0904, 0xffffffff},
1063 {0x9a096c, 0xa},
1064 {0x9a0904, 0x0},
1065 {0x9a096c, 0xb},
1066 {0x9a0904, 0xffffffff},
1067 {0x9a096c, 0xc},
1068 {0x9a0904, 0x0},
1069 {0x9a096c, 0xd},
1070 {0x9a0904, 0xffffffff},
1071 {0x9a096c, 0xe},
1072 {0x9a0904, 0x0},
1073 {0x9a096c, 0xf},
1074 {0x9a0904, 0xffffffff},
1075 {0x9a096c, 0x10},
1076 {0x9a0904, 0x55555555},
1077 {0x9a096c, 0x11},
1078 {0x9a0904, 0xaaaaaaaa},
1079 {0x9a096c, 0x12},
1080 {0x9a0904, 0x55555555},
1081 {0x9a096c, 0x13},
1082 {0x9a0904, 0xaaaaaaaa},
1083 {0x9a096c, 0x14},
1084 {0x9a0904, 0x55555555},
1085 {0x9a096c, 0x15},
1086 {0x9a0904, 0xaaaaaaaa},
1087 {0x9a096c, 0x16},
1088 {0x9a0904, 0x55555555},
1089 {0x9a096c, 0x17},
1090 {0x9a0904, 0xaaaaaaaa},
1091 {0x9a096c, 0x18},
1092 {0x9a0904, 0x55555555},
1093 {0x9a096c, 0x19},
1094 {0x9a0904, 0xaaaaaaaa},
1095 {0x9a096c, 0x1a},
1096 {0x9a0904, 0x55555555},
1097 {0x9a096c, 0x1b},
1098 {0x9a0904, 0xaaaaaaaa},
1099 {0x9a096c, 0x1c},
1100 {0x9a0904, 0x55555555},
1101 {0x9a096c, 0x1d},
1102 {0x9a0904, 0xaaaaaaaa},
1103 {0x9a096c, 0x1e},
1104 {0x9a0904, 0x55555555},
1105 {0x9a096c, 0x1f},
1106 {0x9a0904, 0xaaaaaaaa},
1107 {0x9a096c, 0x20},
1108 {0x9a0904, 0xffff},
1109 {0x9a096c, 0x21},
1110 {0x9a0904, 0xffff0000},
1111 {0x9a096c, 0x22},
1112 {0x9a0904, 0xffff},
1113 {0x9a096c, 0x23},
1114 {0x9a0904, 0xffff0000},
1115 {0x9a096c, 0x24},
1116 {0x9a0904, 0xffff},
1117 {0x9a096c, 0x25},
1118 {0x9a0904, 0xffff0000},
1119 {0x9a096c, 0x26},
1120 {0x9a0904, 0xffff},
1121 {0x9a096c, 0x27},
1122 {0x9a0904, 0xffff0000},
1123 {0x9a096c, 0x28},
1124 {0x9a0904, 0xffff},
1125 {0x9a096c, 0x29},
1126 {0x9a0904, 0xffff0000},
1127 {0x9a096c, 0x2a},
1128 {0x9a0904, 0xffff},
1129 {0x9a096c, 0x2b},
1130 {0x9a0904, 0xffff0000},
1131 {0x9a096c, 0x2c},
1132 {0x9a0904, 0xffff},
1133 {0x9a096c, 0x2d},
1134 {0x9a0904, 0xffff0000},
1135 {0x9a096c, 0x2e},
1136 {0x9a0904, 0xffff},
1137 {0x9a096c, 0x2f},
1138 {0x9a0904, 0xffff0000},
1139 {0x9a096c, 0x30},
1140 {0x9a0904, 0xff00ff},
1141 {0x9a096c, 0x31},
1142 {0x9a0904, 0xff00ff00},
1143 {0x9a096c, 0x32},
1144 {0x9a0904, 0xff00ff},
1145 {0x9a096c, 0x33},
1146 {0x9a0904, 0xff00ff00},
1147 {0x9a096c, 0x34},
1148 {0x9a0904, 0xff00ff},
1149 {0x9a096c, 0x35},
1150 {0x9a0904, 0xff00ff00},
1151 {0x9a096c, 0x36},
1152 {0x9a0904, 0xff00ff},
1153 {0x9a096c, 0x37},
1154 {0x9a0904, 0xff00ff00},
1155 {0x9a096c, 0x38},
1156 {0x9a0904, 0xff00ff},
1157 {0x9a096c, 0x39},
1158 {0x9a0904, 0xff00ff00},
1159 {0x9a096c, 0x3a},
1160 {0x9a0904, 0xff00ff},
1161 {0x9a096c, 0x3b},
1162 {0x9a0904, 0xff00ff00},
1163 {0x9a096c, 0x3c},
1164 {0x9a0904, 0xff00ff},
1165 {0x9a096c, 0x3d},
1166 {0x9a0904, 0xff00ff00},
1167 {0x9a096c, 0x3e},
1168 {0x9a0904, 0xff00ff},
1169 {0x9a096c, 0x3f},
1170 {0x9a0904, 0xff00ff00},
1171 {0x9a096c, 0x40},
1172 {0x9a0904, 0x0},
1173 {0x9a096c, 0x41},
1174 {0x9a0904, 0xffffffff},
1175 {0x9a096c, 0x42},
1176 {0x9a0904, 0x0},
1177 {0x9a096c, 0x43},
1178 {0x9a0904, 0xffffffff},
1179 {0x9a096c, 0x44},
1180 {0x9a0904, 0x0},
1181 {0x9a096c, 0x45},
1182 {0x9a0904, 0xffffffff},
1183 {0x9a096c, 0x46},
1184 {0x9a0904, 0x0},
1185 {0x9a096c, 0x47},
1186 {0x9a0904, 0xffffffff},
1187 {0x9a096c, 0x48},
1188 {0x9a0904, 0x0},
1189 {0x9a096c, 0x49},
1190 {0x9a0904, 0xffffffff},
1191 {0x9a096c, 0x4a},
1192 {0x9a0904, 0x0},
1193 {0x9a096c, 0x4b},
1194 {0x9a0904, 0xffffffff},
1195 {0x9a096c, 0x4c},
1196 {0x9a0904, 0x0},
1197 {0x9a096c, 0x4d},
1198 {0x9a0904, 0xffffffff},
1199 {0x9a096c, 0x4e},
1200 {0x9a0904, 0x0},
1201 {0x9a096c, 0x4f},
1202 {0x9a0904, 0xffffffff},
1203 {0x9a096c, 0x50},
1204 {0x9a0904, 0x55555555},
1205 {0x9a096c, 0x51},
1206 {0x9a0904, 0xaaaaaaaa},
1207 {0x9a096c, 0x52},
1208 {0x9a0904, 0x55555555},
1209 {0x9a096c, 0x53},
1210 {0x9a0904, 0xaaaaaaaa},
1211 {0x9a096c, 0x54},
1212 {0x9a0904, 0x55555555},
1213 {0x9a096c, 0x55},
1214 {0x9a0904, 0xaaaaaaaa},
1215 {0x9a096c, 0x56},
1216 {0x9a0904, 0x55555555},
1217 {0x9a096c, 0x57},
1218 {0x9a0904, 0xaaaaaaaa},
1219 {0x9a096c, 0x58},
1220 {0x9a0904, 0x55555555},
1221 {0x9a096c, 0x59},
1222 {0x9a0904, 0xaaaaaaaa},
1223 {0x9a096c, 0x5a},
1224 {0x9a0904, 0x55555555},
1225 {0x9a096c, 0x5b},
1226 {0x9a0904, 0xaaaaaaaa},
1227 {0x9a096c, 0x5c},
1228 {0x9a0904, 0x55555555},
1229 {0x9a096c, 0x5d},
1230 {0x9a0904, 0xaaaaaaaa},
1231 {0x9a096c, 0x5e},
1232 {0x9a0904, 0x55555555},
1233 {0x9a096c, 0x5f},
1234 {0x9a0904, 0x0},
1235 {0x9a096c, 0x60},
1236 {0x9a0904, 0xffffffff},
1237 {0x9a096c, 0x61},
1238 {0x9a0904, 0x0},
1239 {0x9a096c, 0x62},
1240 {0x9a0904, 0xffffffff},
1241 {0x9a096c, 0x63},
1242 {0x9a0904, 0x0},
1243 {0x9a096c, 0x64},
1244 {0x9a0904, 0xffffffff},
1245 {0x9a096c, 0x65},
1246 {0x9a0904, 0x0},
1247 {0x9a096c, 0x66},
1248 {0x9a0904, 0xffffffff},
1249 {0x9a096c, 0x67},
1250 {0x9a0904, 0x0},
1251 {0x9a096c, 0x68},
1252 {0x9a0904, 0xffffffff},
1253 {0x9a096c, 0x69},
1254 {0x9a0904, 0x0},
1255 {0x9a096c, 0x6a},
1256 {0x9a0904, 0xffffffff},
1257 {0x9a096c, 0x6b},
1258 {0x9a0904, 0x0},
1259 {0x9a096c, 0x6c},
1260 {0x9a0904, 0xffffffff},
1261 {0x9a096c, 0x6d},
1262 {0x9a0904, 0x0},
1263 {0x9a096c, 0x6e},
1264 {0x9a0904, 0xffffffff},
1265 {0x9a096c, 0x6f},
1266 {0x9a0904, 0x55555555},
1267 {0x9a096c, 0x70},
1268 {0x9a0904, 0xaaaaaaaa},
1269 {0x9a096c, 0x71},
1270 {0x9a0904, 0x55555555},
1271 {0x9a096c, 0x72},
1272 {0x9a0904, 0xaaaaaaaa},
1273 {0x9a096c, 0x73},
1274 {0x9a0904, 0x55555555},
1275 {0x9a096c, 0x74},
1276 {0x9a0904, 0xaaaaaaaa},
1277 {0x9a096c, 0x75},
1278 {0x9a0904, 0x55555555},
1279 {0x9a096c, 0x76},
1280 {0x9a0904, 0xaaaaaaaa},
1281 {0x9a096c, 0x77},
1282 {0x9a0904, 0x55555555},
1283 {0x9a096c, 0x78},
1284 {0x9a0904, 0xaaaaaaaa},
1285 {0x9a096c, 0x79},
1286 {0x9a0904, 0x55555555},
1287 {0x9a096c, 0x7a},
1288 {0x9a0904, 0xaaaaaaaa},
1289 {0x9a096c, 0x7b},
1290 {0x9a0904, 0x55555555},
1291 {0x9a096c, 0x7c},
1292 {0x9a0904, 0xaaaaaaaa},
1293 {0x9a096c, 0x7d},
1294 {0x9a0904, 0x55555555},
1295 {0x9a096c, 0x7e},
1296 {0x9a0904, 0xaaaaaaaa},
1297 {0x9a096c, 0x7f},
1298 {0x9a0904, 0xffff},
1299 {0x9a096c, 0x80},
1300 {0x9a0904, 0xffff0000},
1301 {0x9a096c, 0x81},
1302 {0x9a0904, 0xffff},
1303 {0x9a096c, 0x82},
1304 {0x9a0904, 0xffff0000},
1305 {0x9a096c, 0x83},
1306 {0x9a0904, 0xffff},
1307 {0x9a096c, 0x84},
1308 {0x9a0904, 0xffff0000},
1309 {0x9a096c, 0x85},
1310 {0x9a0904, 0xffff},
1311 {0x9a096c, 0x86},
1312 {0x9a0904, 0xffff0000},
1313 {0x9a096c, 0x87},
1314 {0x9a0904, 0xffff},
1315 {0x9a096c, 0x88},
1316 {0x9a0904, 0xffff0000},
1317 {0x9a096c, 0x89},
1318 {0x9a0904, 0xffff},
1319 {0x9a096c, 0x8a},
1320 {0x9a0904, 0xffff0000},
1321 {0x9a096c, 0x8b},
1322 {0x9a0904, 0xffff},
1323 {0x9a096c, 0x8c},
1324 {0x9a0904, 0xffff0000},
1325 {0x9a096c, 0x8d},
1326 {0x9a0904, 0xffff},
1327 {0x9a096c, 0x8e},
1328 {0x9a0904, 0xffff0000},
1329 {0x9a096c, 0x8f},
1330 {0x9a0904, 0xff00ff},
1331 {0x9a096c, 0x90},
1332 {0x9a0904, 0xff00ff00},
1333 {0x9a096c, 0x91},
1334 {0x9a0904, 0xff00ff},
1335 {0x9a096c, 0x92},
1336 {0x9a0904, 0xff00ff00},
1337 {0x9a096c, 0x93},
1338 {0x9a0904, 0xff00ff},
1339 {0x9a096c, 0x94},
1340 {0x9a0904, 0xff00ff00},
1341 {0x9a096c, 0x95},
1342 {0x9a0904, 0xff00ff},
1343 {0x9a096c, 0x96},
1344 {0x9a0904, 0xff00ff00},
1345 {0x9a096c, 0x97},
1346 {0x9a0904, 0xff00ff},
1347 {0x9a096c, 0x98},
1348 {0x9a0904, 0xff00ff00},
1349 {0x9a096c, 0x99},
1350 {0x9a0904, 0xff00ff},
1351 {0x9a096c, 0x9a},
1352 {0x9a0904, 0xff00ff00},
1353 {0x9a096c, 0x9b},
1354 {0x9a0904, 0xff00ff},
1355 {0x9a096c, 0x9c},
1356 {0x9a0904, 0xff00ff00},
1357 {0x9a096c, 0x9d},
1358 {0x9a0904, 0xff00ff},
1359 {0x9a096c, 0x9e},
1360 {0x9a0904, 0xff00ff00},
1361 {0x9a096c, 0x9f},
1362 {0x9a0904, 0x0},
1363 {0x9a096c, 0xa0},
1364 {0x9a0904, 0xffffffff},
1365 {0x9a096c, 0xa1},
1366 {0x9a0904, 0x0},
1367 {0x9a096c, 0xa2},
1368 {0x9a0904, 0xffffffff},
1369 {0x9a096c, 0xa3},
1370 {0x9a0904, 0x0},
1371 {0x9a096c, 0xa4},
1372 {0x9a0904, 0xffffffff},
1373 {0x9a096c, 0xa5},
1374 {0x9a0904, 0x0},
1375 {0x9a096c, 0xa6},
1376 {0x9a0904, 0xffffffff},
1377 {0x9a096c, 0xa7},
1378 {0x9a0904, 0x0},
1379 {0x9a096c, 0xa8},
1380 {0x9a0904, 0xffffffff},
1381 {0x9a096c, 0xa9},
1382 {0x9a0904, 0x0},
1383 {0x9a096c, 0xaa},
1384 {0x9a0904, 0xffffffff},
1385 {0x9a096c, 0xab},
1386 {0x9a0904, 0x0},
1387 {0x9a096c, 0xac},
1388 {0x9a0904, 0xffffffff},
1389 {0x9a096c, 0xad},
1390 {0x9a0904, 0x0},
1391 {0x9a096c, 0xae},
1392 {0x9a0904, 0xffffffff},
1393 {0x9a096c, 0xaf},
1394 {0x9a0904, 0x55555555},
1395 {0x9a096c, 0xb0},
1396 {0x9a0904, 0xaaaaaaaa},
1397 {0x9a096c, 0xb1},
1398 {0x9a0904, 0x55555555},
1399 {0x9a096c, 0xb2},
1400 {0x9a0904, 0xaaaaaaaa},
1401 {0x9a096c, 0xb3},
1402 {0x9a0904, 0x55555555},
1403 {0x9a096c, 0xb4},
1404 {0x9a0904, 0xaaaaaaaa},
1405 {0x9a096c, 0xb5},
1406 {0x9a0904, 0x55555555},
1407 {0x9a096c, 0xb6},
1408 {0x9a0904, 0xaaaaaaaa},
1409 {0x9a096c, 0xb7},
1410 {0x9a0904, 0x55555555},
1411 {0x9a096c, 0xb8},
1412 {0x9a0904, 0xaaaaaaaa},
1413 {0x9a096c, 0xb9},
1414 {0x9a0904, 0x55555555},
1415 {0x9a096c, 0xba},
1416 {0x9a0904, 0xaaaaaaaa},
1417 {0x9a096c, 0xbb},
1418 {0x9a0904, 0x55555555},
1419 {0x9a096c, 0xbc},
1420 {0x9a0904, 0xaaaaaaaa},
1421 {0x9a096c, 0xbd},
1422 {0x9a0904, 0x55555555},
1423 {0x9a096c, 0xbe},
1424 {0x9a0904, 0x0},
1425 {0x9a096c, 0xbf},
1426 {0x9a0904, 0xffffffff},
1427 {0x9a096c, 0xc0},
1428 {0x9a0904, 0x0},
1429 {0x9a096c, 0xc1},
1430 {0x9a0904, 0xffffffff},
1431 {0x9a096c, 0xc2},
1432 {0x9a0904, 0x0},
1433 {0x9a096c, 0xc3},
1434 {0x9a0904, 0xffffffff},
1435 {0x9a096c, 0xc4},
1436 {0x9a0904, 0x0},
1437 {0x9a096c, 0xc5},
1438 {0x9a0904, 0xffffffff},
1439 {0x9a096c, 0xc6},
1440 {0x9a0904, 0x0},
1441 {0x9a096c, 0xc7},
1442 {0x9a0904, 0xffffffff},
1443 {0x9a096c, 0xc8},
1444 {0x9a0904, 0x0},
1445 {0x9a096c, 0xc9},
1446 {0x9a0904, 0xffffffff},
1447 {0x9a096c, 0xca},
1448 {0x9a0904, 0x0},
1449 {0x9a096c, 0xcb},
1450 {0x9a0904, 0xffffffff},
1451 {0x9a096c, 0xcc},
1452 {0x9a0904, 0x0},
1453 {0x9a096c, 0xcd},
1454 {0x9a0904, 0xffffffff},
1455 {0x9a096c, 0xce},
1456 {0x9a0904, 0x55555555},
1457 {0x9a096c, 0xcf},
1458 {0x9a0904, 0xaaaaaaaa},
1459 {0x9a096c, 0xd0},
1460 {0x9a0904, 0x55555555},
1461 {0x9a096c, 0xd1},
1462 {0x9a0904, 0xaaaaaaaa},
1463 {0x9a096c, 0xd2},
1464 {0x9a0904, 0x55555555},
1465 {0x9a096c, 0xd3},
1466 {0x9a0904, 0xaaaaaaaa},
1467 {0x9a096c, 0xd4},
1468 {0x9a0904, 0x55555555},
1469 {0x9a096c, 0xd5},
1470 {0x9a0904, 0xaaaaaaaa},
1471 {0x9a096c, 0xd6},
1472 {0x9a0904, 0x55555555},
1473 {0x9a096c, 0xd7},
1474 {0x9a0904, 0xaaaaaaaa},
1475 {0x9a096c, 0xd8},
1476 {0x9a0904, 0x55555555},
1477 {0x9a096c, 0xd9},
1478 {0x9a0904, 0xaaaaaaaa},
1479 {0x9a096c, 0xda},
1480 {0x9a0904, 0x55555555},
1481 {0x9a096c, 0xdb},
1482 {0x9a0904, 0xaaaaaaaa},
1483 {0x9a096c, 0xdc},
1484 {0x9a0904, 0x55555555},
1485 {0x9a096c, 0xdd},
1486 {0x9a0904, 0xaaaaaaaa},
1487 {0x9a096c, 0xde},
1488 {0x9a0904, 0xffff},
1489 {0x9a096c, 0xdf},
1490 {0x9a0904, 0xffff0000},
1491 {0x9a096c, 0xe0},
1492 {0x9a0904, 0xffff},
1493 {0x9a096c, 0xe1},
1494 {0x9a0904, 0xffff0000},
1495 {0x9a096c, 0xe2},
1496 {0x9a0904, 0xffff},
1497 {0x9a096c, 0xe3},
1498 {0x9a0904, 0xffff0000},
1499 {0x9a096c, 0xe4},
1500 {0x9a0904, 0xffff},
1501 {0x9a096c, 0xe5},
1502 {0x9a0904, 0xffff0000},
1503 {0x9a096c, 0xe6},
1504 {0x9a0904, 0xffff},
1505 {0x9a096c, 0xe7},
1506 {0x9a0904, 0xffff0000},
1507 {0x9a096c, 0xe8},
1508 {0x9a0904, 0xffff},
1509 {0x9a096c, 0xe9},
1510 {0x9a0904, 0xffff0000},
1511 {0x9a096c, 0xea},
1512 {0x9a0904, 0xffff},
1513 {0x9a096c, 0xeb},
1514 {0x9a0904, 0xffff0000},
1515 {0x9a096c, 0xec},
1516 {0x9a0904, 0xffff},
1517 {0x9a096c, 0xed},
1518 {0x9a0904, 0xffff0000},
1519 {0x9a096c, 0xee},
1520 {0x9a0904, 0xff00ff},
1521 {0x9a096c, 0xef},
1522 {0x9a0904, 0xff00ff00},
1523 {0x9a096c, 0xf0},
1524 {0x9a0904, 0xff00ff},
1525 {0x9a096c, 0xf1},
1526 {0x9a0904, 0xff00ff00},
1527 {0x9a096c, 0xf2},
1528 {0x9a0904, 0xff00ff},
1529 {0x9a096c, 0xf3},
1530 {0x9a0904, 0xff00ff00},
1531 {0x9a096c, 0xf4},
1532 {0x9a0904, 0xff00ff},
1533 {0x9a096c, 0xf5},
1534 {0x9a0904, 0xff00ff00},
1535 {0x9a096c, 0xf6},
1536 {0x9a0904, 0xff00ff},
1537 {0x9a096c, 0xf7},
1538 {0x9a0904, 0xff00ff00},
1539 {0x9a096c, 0xf8},
1540 {0x9a0904, 0xff00ff},
1541 {0x9a096c, 0xf9},
1542 {0x9a0904, 0xff00ff00},
1543 {0x9a096c, 0xfa},
1544 {0x9a0904, 0xff00ff},
1545 {0x9a096c, 0xfb},
1546 {0x9a0904, 0xff00ff00},
1547 {0x9a096c, 0xfc},
1548 {0x9a0904, 0xff00ff},
1549 {0x9a096c, 0xfd},
1550 {0x9a0904, 0xff00ff00},
1551 {0x9a096c, 0xfe},
1552 {0x9a0904, 0x0},
1553 {0x9a096c, 0xff},
1554 {0x9a0904, 0xffffffff},
1555};
1556
1557static u8 seq_script_gp106[] = {
1558 0x0b, 0x00, 0x02, 0x00, 0x40, 0xc0, 0x62, 0x00, 0x22, 0x00, 0x02, 0x00,
1559 0x0a, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x02, 0x00, 0x40, 0x63, 0x61, 0x00,
1560 0x22, 0x00, 0x02, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x34, 0x00, 0x02, 0x00,
1561 0x0c, 0x00, 0x00, 0x00, 0x20, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00,
1562 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x07, 0x00, 0x30, 0x03, 0x9a, 0x00,
1563 0x14, 0x00, 0x10, 0x00, 0x38, 0xd6, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00,
1564 0x04, 0xd6, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x02, 0x00,
1565 0x20, 0x4e, 0x00, 0x00, 0x21, 0x00, 0x09, 0x00, 0x00, 0x02, 0x9a, 0x00,
1566 0x00, 0x90, 0x8f, 0x02, 0x10, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x0c, 0x00,
1567 0x14, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x10, 0x02, 0x9a, 0x00,
1568 0x00, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x02, 0x00, 0xe8, 0x03, 0x00, 0x00,
1569 0x21, 0x00, 0x03, 0x00, 0x10, 0x03, 0x9a, 0x00, 0x01, 0x00, 0x00, 0x00,
1570 0x2e, 0x00, 0x02, 0x00, 0xe8, 0x03, 0x00, 0x00, 0x21, 0x00, 0x0d, 0x00,
1571 0x48, 0x03, 0x9a, 0x00, 0x88, 0x00, 0x70, 0x00, 0x00, 0x02, 0x9a, 0x00,
1572 0x00, 0x90, 0x8f, 0x82, 0x14, 0x03, 0x9a, 0x00, 0x01, 0x00, 0x00, 0x00,
1573 0x00, 0x02, 0x9a, 0x00, 0x00, 0x90, 0x8f, 0x02, 0x90, 0x00, 0x9a, 0x00,
1574 0x61, 0x00, 0x00, 0x00, 0x90, 0x00, 0x9a, 0x00, 0x7f, 0x00, 0x00, 0xc0,
1575 0x2e, 0x00, 0x02, 0x00, 0xe8, 0x03, 0x00, 0x00, 0x21, 0x00, 0x27, 0x00,
1576 0x98, 0x06, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x06, 0x9a, 0x00,
1577 0x00, 0x00, 0x00, 0x00, 0x24, 0x08, 0x9a, 0x00, 0xe7, 0x8f, 0x88, 0xf7,
1578 0x40, 0x0d, 0x9a, 0x00, 0x20, 0xe0, 0x01, 0x00, 0x00, 0x02, 0x9a, 0x00,
1579 0x00, 0x90, 0x8f, 0x1a, 0x00, 0x08, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00,
1580 0xf0, 0x73, 0x13, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x08, 0x9a, 0x00,
1581 0x90, 0x90, 0x67, 0x00, 0xf4, 0x73, 0x13, 0x00, 0x11, 0x00, 0x01, 0x00,
1582 0xf4, 0x73, 0x13, 0x00, 0x10, 0x00, 0x01, 0x00, 0xf4, 0x73, 0x13, 0x00,
1583 0x00, 0x00, 0x01, 0x00, 0x20, 0x20, 0x13, 0x00, 0x00, 0x00, 0x03, 0x20,
1584 0x20, 0x73, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x20, 0x13, 0x00,
1585 0x04, 0x00, 0x00, 0x00, 0x34, 0x20, 0x13, 0x00, 0x00, 0x00, 0x8a, 0xf9,
1586 0x24, 0x20, 0x13, 0x00, 0x01, 0x32, 0x05, 0x00, 0x2c, 0x20, 0x13, 0x00,
1587 0x00, 0x01, 0x00, 0x00, 0x28, 0x20, 0x13, 0x00, 0x10, 0x00, 0x08, 0x10,
1588 0x20, 0x20, 0x13, 0x00, 0x01, 0x00, 0x03, 0x20, 0x34, 0x00, 0x02, 0x00,
1589 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00,
1590 0x01, 0x00, 0x02, 0x00, 0x90, 0x73, 0x13, 0x00, 0x15, 0x00, 0x03, 0x00,
1591 0x00, 0x00, 0x02, 0x00, 0x00, 0xfa, 0x00, 0x00, 0x34, 0x00, 0x02, 0x00,
1592 0x0e, 0x00, 0x00, 0x00, 0x21, 0x00, 0x0d, 0x00, 0x2c, 0x20, 0x13, 0x00,
1593 0x00, 0x03, 0x00, 0x00, 0x28, 0x20, 0x13, 0x00, 0x10, 0x00, 0x04, 0x10,
1594 0xf4, 0x73, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x13, 0x00,
1595 0x00, 0x00, 0x01, 0x98, 0x04, 0x20, 0x13, 0x00, 0x01, 0x0b, 0x01, 0x00,
1596 0x00, 0x20, 0x13, 0x00, 0x01, 0x00, 0x01, 0x98, 0x34, 0x00, 0x02, 0x00,
1597 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
1598 0x01, 0x00, 0x02, 0x00, 0x90, 0x73, 0x13, 0x00, 0x15, 0x00, 0x03, 0x00,
1599 0x02, 0x00, 0x00, 0x00, 0x00, 0xfa, 0x00, 0x00, 0x34, 0x00, 0x02, 0x00,
1600 0x10, 0x00, 0x00, 0x00, 0x21, 0x00, 0x1d, 0x00, 0xf4, 0x73, 0x13, 0x00,
1601 0x00, 0x11, 0x00, 0x00, 0xf4, 0x73, 0x13, 0x00, 0x10, 0x11, 0x00, 0x00,
1602 0xec, 0x73, 0x13, 0x00, 0x00, 0x00, 0x03, 0x00, 0xf0, 0x73, 0x13, 0x00,
1603 0x02, 0x00, 0x00, 0x00, 0xf4, 0x73, 0x13, 0x00, 0x12, 0x11, 0x00, 0x00,
1604 0xf4, 0x73, 0x13, 0x00, 0x12, 0x00, 0x00, 0x00, 0x08, 0x08, 0x9a, 0x00,
1605 0x70, 0x00, 0x08, 0x48, 0x00, 0x02, 0x9a, 0x00, 0x00, 0x10, 0x8f, 0x1a,
1606 0x24, 0x08, 0x9a, 0x00, 0xe5, 0x8f, 0x88, 0xf7, 0x08, 0x08, 0x9a, 0x00,
1607 0x70, 0x00, 0xa8, 0x4a, 0x24, 0x08, 0x9a, 0x00, 0x85, 0x8f, 0x88, 0xf7,
1608 0x38, 0x1f, 0x9a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x34, 0x1f, 0x9a, 0x00,
1609 0x00, 0x00, 0x01, 0x00, 0x34, 0x0d, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00,
1610 0x13, 0x00, 0x02, 0x00, 0x2c, 0x01, 0x00, 0x00, 0x21, 0x00, 0x09, 0x00,
1611 0x5c, 0x06, 0x9a, 0x00, 0x22, 0x00, 0x00, 0x00, 0x0c, 0x06, 0x9a, 0x00,
1612 0xd0, 0x20, 0x00, 0xfd, 0xd4, 0x0e, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x40,
1613 0xd4, 0x0e, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
1614 0x2c, 0x01, 0x00, 0x00, 0x21, 0x00, 0x27, 0x00, 0x2c, 0x08, 0x9a, 0x00,
1615 0x00, 0x00, 0x05, 0x00, 0x30, 0x08, 0x9a, 0x00, 0x90, 0xa0, 0x67, 0x00,
1616 0x48, 0x02, 0x9a, 0x00, 0xa2, 0x44, 0x1e, 0x93, 0x90, 0x02, 0x9a, 0x00,
1617 0x42, 0xa5, 0x5a, 0x15, 0x94, 0x02, 0x9a, 0x00, 0x95, 0xc2, 0xe5, 0x28,
1618 0x98, 0x02, 0x9a, 0x00, 0x00, 0x08, 0x15, 0x88, 0x9c, 0x02, 0x9a, 0x00,
1619 0xec, 0x30, 0x00, 0x22, 0xa0, 0x02, 0x9a, 0x00, 0x32, 0x00, 0x83, 0xd5,
1620 0xa8, 0x02, 0x9a, 0x00, 0x0f, 0x86, 0x00, 0x02, 0xcc, 0x02, 0x9a, 0x00,
1621 0x00, 0x39, 0x0f, 0x12, 0x14, 0x06, 0x9a, 0x00, 0x77, 0x4e, 0x04, 0x40,
1622 0x10, 0x06, 0x9a, 0x00, 0x77, 0x4e, 0x04, 0x40, 0x78, 0x07, 0x10, 0x00,
1623 0x44, 0x04, 0x00, 0x82, 0x4c, 0x02, 0x9a, 0x00, 0x85, 0x0c, 0x05, 0x13,
1624 0xe0, 0x08, 0x9a, 0x00, 0x11, 0x00, 0x00, 0x00, 0x90, 0x03, 0x9a, 0x00,
1625 0x00, 0x00, 0x00, 0x00, 0x94, 0x03, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00,
1626 0x00, 0x0b, 0x9a, 0x00, 0x06, 0x22, 0x22, 0x22, 0x90, 0x00, 0x9a, 0x00,
1627 0x7e, 0x00, 0x00, 0x40, 0x2e, 0x00, 0x02, 0x00, 0xd0, 0x07, 0x00, 0x00,
1628 0x21, 0x00, 0x0f, 0x00, 0x14, 0x03, 0x9a, 0x00, 0x01, 0x00, 0x00, 0x00,
1629 0x10, 0x03, 0x9a, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x02, 0x9a, 0x00,
1630 0x00, 0x00, 0x00, 0x80, 0x90, 0x03, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00,
1631 0x94, 0x02, 0x9a, 0x00, 0x95, 0xc2, 0xe5, 0x24, 0x10, 0x09, 0x9a, 0x00,
1632 0x00, 0x00, 0x01, 0xa4, 0x14, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x01, 0xa4,
1633 0x34, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00,
1634 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x74, 0x09, 0x90, 0x00,
1635 0x15, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x20, 0xa1, 0x07, 0x00,
1636 0x01, 0x00, 0x02, 0x00, 0x74, 0x49, 0x90, 0x00, 0x15, 0x00, 0x03, 0x00,
1637 0x0f, 0x00, 0x00, 0x00, 0x20, 0xa1, 0x07, 0x00, 0x34, 0x00, 0x02, 0x00,
1638 0x12, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x02, 0x00, 0xe8, 0x03, 0x00, 0x00,
1639 0x21, 0x00, 0x0b, 0x00, 0x94, 0x02, 0x9a, 0x00, 0x95, 0xc2, 0xe5, 0x28,
1640 0x38, 0x03, 0x9a, 0x00, 0x03, 0x01, 0x30, 0x00, 0x3c, 0x03, 0x9a, 0x00,
1641 0xff, 0x01, 0x40, 0x00, 0x00, 0x03, 0x9a, 0x00, 0x05, 0x01, 0x00, 0x00,
1642 0x54, 0x03, 0x9a, 0x00, 0x03, 0x00, 0x80, 0x00, 0x2e, 0x00, 0x02, 0x00,
1643 0xe8, 0x03, 0x00, 0x00, 0x21, 0x00, 0x09, 0x00, 0x48, 0x03, 0x9a, 0x00,
1644 0x00, 0x00, 0x70, 0x00, 0x00, 0x02, 0x9a, 0x00, 0x00, 0x10, 0x8f, 0x9a,
1645 0x18, 0x03, 0x9a, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x9a, 0x00,
1646 0x00, 0x10, 0x8f, 0x1a, 0x2e, 0x00, 0x02, 0x00, 0xe8, 0x03, 0x00, 0x00,
1647 0x21, 0x00, 0x07, 0x00, 0x78, 0x09, 0x9a, 0x00, 0x0f, 0x1e, 0x7e, 0x88,
1648 0x10, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x0e, 0xa4, 0x14, 0x09, 0x9a, 0x00,
1649 0x00, 0x00, 0x0e, 0xa4, 0x34, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x00,
1650 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00,
1651 0x74, 0x09, 0x90, 0x00, 0x15, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x00, 0x00,
1652 0x20, 0xa1, 0x07, 0x00, 0x01, 0x00, 0x02, 0x00, 0x74, 0x49, 0x90, 0x00,
1653 0x15, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x20, 0xa1, 0x07, 0x00,
1654 0x34, 0x00, 0x02, 0x00, 0x14, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x02, 0x00,
1655 0xe8, 0x03, 0x00, 0x00, 0x21, 0x00, 0x07, 0x00, 0x00, 0x02, 0x9a, 0x00,
1656 0x00, 0x10, 0x8f, 0x3a, 0x10, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x0c, 0x25,
1657 0x14, 0x09, 0x9a, 0x00, 0x00, 0x00, 0x0c, 0x25, 0x20, 0x00, 0x03, 0x00,
1658 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x02, 0x00,
1659 0x15, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x00, 0xc0, 0x62, 0x00,
1660 0x00, 0x0f, 0x0f, 0x0f, 0x16, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00
1661};
1662
1663static void mclk_memory_load_training_pattern(struct gk20a *g)
1664{
1665 u32 reg_writes;
1666 u32 index;
1667
1668 gk20a_dbg_info("");
1669
1670 reg_writes = ((sizeof(memory_pattern_reglist) /
1671 sizeof((memory_pattern_reglist)[0])));
1672
1673 for (index = 0; index < reg_writes; index++) {
1674 gk20a_writel(g, memory_pattern_reglist[index].regaddr,
1675 memory_pattern_reglist[index].writeval);
1676 }
1677
1678 gk20a_dbg_fn("done");
1679}
1680
1681static void mclk_memory_load_shadow_regs(struct gk20a *g)
1682{
1683 u32 reg_writes;
1684 u32 index;
1685
1686 gk20a_dbg_info("");
1687
1688 reg_writes = ((sizeof(memory_shadow_reglist) /
1689 sizeof((memory_shadow_reglist)[0])));
1690 for (index = 0; index < reg_writes; index++) {
1691 gk20a_writel(g, memory_shadow_reglist[index].regaddr,
1692 memory_shadow_reglist[index].writeval);
1693 }
1694
1695 gk20a_dbg_fn("done");
1696
1697}
1698
1699static void mclk_seq_pmucmdhandler(struct gk20a *g, struct pmu_msg *_msg,
1700 void *param, u32 handle, u32 status)
1701{
1702 struct nv_pmu_seq_msg *msg = (struct nv_pmu_seq_msg *)_msg;
1703 struct nv_pmu_seq_msg_run_script *seq_msg;
1704 u32 msg_status = 0;
1705
1706 gk20a_dbg_info("");
1707
1708 if (status != 0) {
1709 gk20a_err(dev_from_gk20a(g), "mclk seq_script cmd aborted");
1710 msg_status = -ENOENT;
1711 goto status_update;
1712 }
1713
1714 seq_msg = &msg->run_script;
1715
1716 if (seq_msg->msg_type != NV_PMU_SEQ_MSG_ID_RUN_SCRIPT) {
1717 msg_status = -ENOENT;
1718 goto status_update;
1719 }
1720
1721 if (seq_msg->error_code) {
1722 msg_status = -ENOENT;
1723 goto status_update;
1724 }
1725
1726status_update:
1727 *((u32 *)param) = msg_status;
1728}
1729
1730int clk_mclkseq_build_prgm_gddr5(struct gk20a *g)
1731{
1732 struct pmu_payload payload = { {0} };
1733 void *vreg_buf = NULL;
1734 struct nv_pmu_seq_cmd cmd;
1735 struct nv_pmu_seq_cmd_run_script *pseq_cmd;
1736 u32 seqdesc;
1737 u32 status = 0;
1738 u32 seq_completion_status = ~0x0;
1739
1740 gk20a_dbg_info("");
1741
1742 /* Load Shadow registers */
1743 mclk_memory_load_shadow_regs(g);
1744
1745 /* Load RAM pattern */
1746 mclk_memory_load_training_pattern(g);
1747
1748 /* Fill command header with SEQ ID & size */
1749 memset(&cmd, 0, sizeof(cmd));
1750 cmd.hdr.unit_id = PMU_UNIT_SEQ;
1751 cmd.hdr.size = sizeof(struct nv_pmu_seq_cmd_run_script) +
1752 sizeof(struct pmu_hdr);
1753
1754 /* Fill RM_PMU_SEQ_CMD_RUN_SCRIPT struct */
1755 pseq_cmd = &cmd.run_script;
1756 pseq_cmd->cmd_type = NV_PMU_SEQ_CMD_ID_RUN_SCRIPT;
1757
1758 gk20a_writel(g, 0x132000, 0x98010000);
1759 udelay(0x5);
1760 gk20a_writel(g, 0x137300, 0x20000103);
1761
1762 /* Read sequencer binary*/
1763 payload.in.buf = seq_script_gp106;
1764 payload.in.size = sizeof(seq_script_gp106);
1765 payload.in.fb_size = PMU_CMD_SUBMIT_PAYLOAD_PARAMS_FB_SIZE_UNUSED;
1766 payload.in.offset = offsetof(struct nv_pmu_seq_cmd_run_script,
1767 script_alloc);
1768
1769 vreg_buf = kzalloc((sizeof(u32) * VREG_COUNT), GFP_KERNEL);
1770 if (!vreg_buf) {
1771 status = -ENOMEM;
1772 gk20a_err(dev_from_gk20a(g),
1773 "unable to allocate memory for VREG");
1774 goto exit_status;
1775 }
1776
1777 payload.out.buf = vreg_buf;
1778 payload.out.size = (VREG_COUNT * sizeof(u32));
1779 payload.out.fb_size = PMU_CMD_SUBMIT_PAYLOAD_PARAMS_FB_SIZE_UNUSED;
1780 payload.out.offset = offsetof(struct nv_pmu_seq_cmd_run_script,
1781 reg_alloc);
1782
1783 /* Send command to PMU to execute sequencer script */
1784 status = gk20a_pmu_cmd_post(g, (struct pmu_cmd *)&cmd, NULL, &payload,
1785 PMU_COMMAND_QUEUE_LPQ,
1786 mclk_seq_pmucmdhandler,
1787 &seq_completion_status, &seqdesc, ~0);
1788 if (status) {
1789 gk20a_err(dev_from_gk20a(g),
1790 "unable to post seq script exec cmd for unit %x ",
1791 cmd.hdr.unit_id);
1792 goto exit_status;
1793 }
1794
1795 /* wait till sequencer script complete */
1796 pmu_wait_message_cond(&g->pmu, (gk20a_get_gr_idle_timeout(g)),
1797 &seq_completion_status, 0);
1798 if (seq_completion_status != 0) {
1799 gk20a_err(dev_from_gk20a(g),
1800 "seq_scrip update failed");
1801 status = -EBUSY;
1802 goto exit_status;
1803 }
1804
1805exit_status:
1806 kfree(vreg_buf);
1807 return status;
1808}
diff --git a/drivers/gpu/nvgpu/clk/clk_mclk.h b/drivers/gpu/nvgpu/clk/clk_mclk.h
new file mode 100644
index 00000000..f86893f7
--- /dev/null
+++ b/drivers/gpu/nvgpu/clk/clk_mclk.h
@@ -0,0 +1,19 @@
1/*
2* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3*
4* This program is free software; you can redistribute it and/or modify it
5* under the terms and conditions of the GNU General Public License,
6* version 2, as published by the Free Software Foundation.
7*
8* This program is distributed in the hope it will be useful, but WITHOUT
9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11* more details.
12*/
13
14#ifndef _CLKMCLK_H_
15#define _CLKMCLK_H_
16
17int clk_mclkseq_build_prgm_gddr5(struct gk20a *g);
18
19#endif
diff --git a/drivers/gpu/nvgpu/gp106/pmu_gp106.c b/drivers/gpu/nvgpu/gp106/pmu_gp106.c
index f6fcd234..48653142 100644
--- a/drivers/gpu/nvgpu/gp106/pmu_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/pmu_gp106.c
@@ -21,6 +21,7 @@
21#include "gp106/pmu_gp106.h" 21#include "gp106/pmu_gp106.h"
22#include "gp106/acr_gp106.h" 22#include "gp106/acr_gp106.h"
23#include "gp106/hw_psec_gp106.h" 23#include "gp106/hw_psec_gp106.h"
24#include "clk/clk_mclk.h"
24#include "hw_mc_gp106.h" 25#include "hw_mc_gp106.h"
25#include "hw_pwr_gp106.h" 26#include "hw_pwr_gp106.h"
26 27
@@ -194,6 +195,7 @@ void gp106_init_pmu_ops(struct gpu_ops *gops)
194 gops->pmu.send_lrf_tex_ltc_dram_overide_en_dis_cmd = NULL; 195 gops->pmu.send_lrf_tex_ltc_dram_overide_en_dis_cmd = NULL;
195 gops->pmu.dump_secure_fuses = NULL; 196 gops->pmu.dump_secure_fuses = NULL;
196 gops->pmu.reset = gp106_falcon_reset; 197 gops->pmu.reset = gp106_falcon_reset;
198 gops->pmu.mclk_init = clk_mclkseq_build_prgm_gddr5;
197 199
198 gk20a_dbg_fn("done"); 200 gk20a_dbg_fn("done");
199} 201}
diff --git a/drivers/gpu/nvgpu/pmuif/gpmuifseq.h b/drivers/gpu/nvgpu/pmuif/gpmuifseq.h
new file mode 100644
index 00000000..69d55490
--- /dev/null
+++ b/drivers/gpu/nvgpu/pmuif/gpmuifseq.h
@@ -0,0 +1,73 @@
1/*
2* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3*
4* This program is free software; you can redistribute it and/or modify it
5* under the terms and conditions of the GNU General Public License,
6* version 2, as published by the Free Software Foundation.
7*
8* This program is distributed in the hope it will be useful, but WITHOUT
9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11* more details.
12*/
13#ifndef _GPMUIFSEQ_H_
14#define _GPMUIFSEQ_H_
15
16#include "gk20a/pmu_common.h"
17
18#define PMU_UNIT_SEQ (0x02)
19
20/*!
21* @file gpmuifseq.h
22* @brief PMU Command/Message Interfaces - Sequencer
23*/
24
25/*!
26* Defines the identifiers various high-level types of sequencer commands.
27*
28* _RUN_SCRIPT @ref NV_PMU_SEQ_CMD_RUN_SCRIPT
29*/
30enum {
31 NV_PMU_SEQ_CMD_ID_RUN_SCRIPT = 0,
32};
33
34struct nv_pmu_seq_cmd_run_script {
35 u8 cmd_type;
36 u8 pad[3];
37 struct pmu_allocation_v3 script_alloc;
38 struct pmu_allocation_v3 reg_alloc;
39};
40
41#define NV_PMU_SEQ_CMD_ALLOC_OFFSET 4
42
43#define NV_PMU_SEQ_MSG_ALLOC_OFFSET \
44 (NV_PMU_SEQ_CMD_ALLOC_OFFSET + NV_PMU_CMD_ALLOC_SIZE)
45
46struct nv_pmu_seq_cmd {
47 struct pmu_hdr hdr;
48 union {
49 u8 cmd_type;
50 struct nv_pmu_seq_cmd_run_script run_script;
51 };
52};
53
54enum {
55 NV_PMU_SEQ_MSG_ID_RUN_SCRIPT = 0,
56};
57
58struct nv_pmu_seq_msg_run_script {
59 u8 msg_type;
60 u8 error_code;
61 u16 error_pc;
62 u32 timeout_stat;
63};
64
65struct nv_pmu_seq_msg {
66 struct pmu_hdr hdr;
67 union {
68 u8 msg_type;
69 struct nv_pmu_seq_msg_run_script run_script;
70 };
71};
72
73#endif