summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h
diff options
context:
space:
mode:
authorSeshendra Gadagottu <sgadagottu@nvidia.com>2016-04-06 20:46:57 -0400
committerKen Adams <kadams@nvidia.com>2016-04-13 11:14:00 -0400
commit548c95266cd1055c317d3d38835f628f9acfe3bf (patch)
treee9341124f9dc162eea38b3b26d791b247585cfb3 /drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h
parentf13463e30048ec29c8de33bbdd5f36d15ddcec9c (diff)
gpu: nvgpu: gv11b: add hw headers for gv11b
Add initial versions of header for gv11b Bug 1735757 Change-Id: I76f85bbe98c1fa13c11d8ee1b2889703f62c6f67 Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-on: http://git-master/r/1121486 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Ken Adams <kadams@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h')
-rw-r--r--drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h3317
1 files changed, 3317 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h
new file mode 100644
index 00000000..3772d9ab
--- /dev/null
+++ b/drivers/gpu/nvgpu/gv11b/hw_gr_gv11b.h
@@ -0,0 +1,3317 @@
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 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16/*
17 * Function naming determines intended use:
18 *
19 * <x>_r(void) : Returns the offset for register <x>.
20 *
21 * <x>_o(void) : Returns the offset for element <x>.
22 *
23 * <x>_w(void) : Returns the word offset for word (4 byte) element <x>.
24 *
25 * <x>_<y>_s(void) : Returns size of field <y> of register <x> in bits.
26 *
27 * <x>_<y>_f(u32 v) : Returns a value based on 'v' which has been shifted
28 * and masked to place it at field <y> of register <x>. This value
29 * can be |'d with others to produce a full register value for
30 * register <x>.
31 *
32 * <x>_<y>_m(void) : Returns a mask for field <y> of register <x>. This
33 * value can be ~'d and then &'d to clear the value of field <y> for
34 * register <x>.
35 *
36 * <x>_<y>_<z>_f(void) : Returns the constant value <z> after being shifted
37 * to place it at field <y> of register <x>. This value can be |'d
38 * with others to produce a full register value for <x>.
39 *
40 * <x>_<y>_v(u32 r) : Returns the value of field <y> from a full register
41 * <x> value 'r' after being shifted to place its LSB at bit 0.
42 * This value is suitable for direct comparison with other unshifted
43 * values appropriate for use in field <y> of register <x>.
44 *
45 * <x>_<y>_<z>_v(void) : Returns the constant value for <z> defined for
46 * field <y> of register <x>. This value is suitable for direct
47 * comparison with unshifted values appropriate for use in field <y>
48 * of register <x>.
49 */
50#ifndef _hw_gr_gv11b_h_
51#define _hw_gr_gv11b_h_
52
53static inline u32 gr_intr_r(void)
54{
55 return 0x00400100;
56}
57static inline u32 gr_intr_notify_pending_f(void)
58{
59 return 0x1;
60}
61static inline u32 gr_intr_notify_reset_f(void)
62{
63 return 0x1;
64}
65static inline u32 gr_intr_semaphore_pending_f(void)
66{
67 return 0x2;
68}
69static inline u32 gr_intr_semaphore_reset_f(void)
70{
71 return 0x2;
72}
73static inline u32 gr_intr_illegal_method_pending_f(void)
74{
75 return 0x10;
76}
77static inline u32 gr_intr_illegal_method_reset_f(void)
78{
79 return 0x10;
80}
81static inline u32 gr_intr_illegal_notify_pending_f(void)
82{
83 return 0x40;
84}
85static inline u32 gr_intr_illegal_notify_reset_f(void)
86{
87 return 0x40;
88}
89static inline u32 gr_intr_firmware_method_f(u32 v)
90{
91 return (v & 0x1) << 8;
92}
93static inline u32 gr_intr_firmware_method_pending_f(void)
94{
95 return 0x100;
96}
97static inline u32 gr_intr_firmware_method_reset_f(void)
98{
99 return 0x100;
100}
101static inline u32 gr_intr_illegal_class_pending_f(void)
102{
103 return 0x20;
104}
105static inline u32 gr_intr_illegal_class_reset_f(void)
106{
107 return 0x20;
108}
109static inline u32 gr_intr_fecs_error_pending_f(void)
110{
111 return 0x80000;
112}
113static inline u32 gr_intr_fecs_error_reset_f(void)
114{
115 return 0x80000;
116}
117static inline u32 gr_intr_class_error_pending_f(void)
118{
119 return 0x100000;
120}
121static inline u32 gr_intr_class_error_reset_f(void)
122{
123 return 0x100000;
124}
125static inline u32 gr_intr_exception_pending_f(void)
126{
127 return 0x200000;
128}
129static inline u32 gr_intr_exception_reset_f(void)
130{
131 return 0x200000;
132}
133static inline u32 gr_fecs_intr_r(void)
134{
135 return 0x00400144;
136}
137static inline u32 gr_class_error_r(void)
138{
139 return 0x00400110;
140}
141static inline u32 gr_class_error_code_v(u32 r)
142{
143 return (r >> 0) & 0xffff;
144}
145static inline u32 gr_intr_nonstall_r(void)
146{
147 return 0x00400120;
148}
149static inline u32 gr_intr_nonstall_trap_pending_f(void)
150{
151 return 0x2;
152}
153static inline u32 gr_intr_en_r(void)
154{
155 return 0x0040013c;
156}
157static inline u32 gr_exception_r(void)
158{
159 return 0x00400108;
160}
161static inline u32 gr_exception_fe_m(void)
162{
163 return 0x1 << 0;
164}
165static inline u32 gr_exception_gpc_m(void)
166{
167 return 0x1 << 24;
168}
169static inline u32 gr_exception_memfmt_m(void)
170{
171 return 0x1 << 1;
172}
173static inline u32 gr_exception_ds_m(void)
174{
175 return 0x1 << 4;
176}
177static inline u32 gr_exception1_r(void)
178{
179 return 0x00400118;
180}
181static inline u32 gr_exception1_gpc_0_pending_f(void)
182{
183 return 0x1;
184}
185static inline u32 gr_exception2_r(void)
186{
187 return 0x0040011c;
188}
189static inline u32 gr_exception_en_r(void)
190{
191 return 0x00400138;
192}
193static inline u32 gr_exception_en_fe_m(void)
194{
195 return 0x1 << 0;
196}
197static inline u32 gr_exception1_en_r(void)
198{
199 return 0x00400130;
200}
201static inline u32 gr_exception2_en_r(void)
202{
203 return 0x00400134;
204}
205static inline u32 gr_gpfifo_ctl_r(void)
206{
207 return 0x00400500;
208}
209static inline u32 gr_gpfifo_ctl_access_f(u32 v)
210{
211 return (v & 0x1) << 0;
212}
213static inline u32 gr_gpfifo_ctl_access_disabled_f(void)
214{
215 return 0x0;
216}
217static inline u32 gr_gpfifo_ctl_access_enabled_f(void)
218{
219 return 0x1;
220}
221static inline u32 gr_gpfifo_ctl_semaphore_access_f(u32 v)
222{
223 return (v & 0x1) << 16;
224}
225static inline u32 gr_gpfifo_ctl_semaphore_access_enabled_v(void)
226{
227 return 0x00000001;
228}
229static inline u32 gr_gpfifo_ctl_semaphore_access_enabled_f(void)
230{
231 return 0x10000;
232}
233static inline u32 gr_gpfifo_status_r(void)
234{
235 return 0x00400504;
236}
237static inline u32 gr_trapped_addr_r(void)
238{
239 return 0x00400704;
240}
241static inline u32 gr_trapped_addr_mthd_v(u32 r)
242{
243 return (r >> 2) & 0xfff;
244}
245static inline u32 gr_trapped_addr_subch_v(u32 r)
246{
247 return (r >> 16) & 0x7;
248}
249static inline u32 gr_trapped_data_lo_r(void)
250{
251 return 0x00400708;
252}
253static inline u32 gr_trapped_data_hi_r(void)
254{
255 return 0x0040070c;
256}
257static inline u32 gr_status_r(void)
258{
259 return 0x00400700;
260}
261static inline u32 gr_status_fe_method_upper_v(u32 r)
262{
263 return (r >> 1) & 0x1;
264}
265static inline u32 gr_status_fe_method_lower_v(u32 r)
266{
267 return (r >> 2) & 0x1;
268}
269static inline u32 gr_status_fe_method_lower_idle_v(void)
270{
271 return 0x00000000;
272}
273static inline u32 gr_status_fe_gi_v(u32 r)
274{
275 return (r >> 21) & 0x1;
276}
277static inline u32 gr_status_mask_r(void)
278{
279 return 0x00400610;
280}
281static inline u32 gr_status_1_r(void)
282{
283 return 0x00400604;
284}
285static inline u32 gr_status_2_r(void)
286{
287 return 0x00400608;
288}
289static inline u32 gr_engine_status_r(void)
290{
291 return 0x0040060c;
292}
293static inline u32 gr_engine_status_value_busy_f(void)
294{
295 return 0x1;
296}
297static inline u32 gr_pri_be0_becs_be_exception_r(void)
298{
299 return 0x00410204;
300}
301static inline u32 gr_pri_be0_becs_be_exception_en_r(void)
302{
303 return 0x00410208;
304}
305static inline u32 gr_pri_gpc0_gpccs_gpc_exception_r(void)
306{
307 return 0x00502c90;
308}
309static inline u32 gr_pri_gpc0_gpccs_gpc_exception_en_r(void)
310{
311 return 0x00502c94;
312}
313static inline u32 gr_pri_gpc0_tpc0_tpccs_tpc_exception_r(void)
314{
315 return 0x00504508;
316}
317static inline u32 gr_pri_gpc0_tpc0_tpccs_tpc_exception_en_r(void)
318{
319 return 0x0050450c;
320}
321static inline u32 gr_activity_0_r(void)
322{
323 return 0x00400380;
324}
325static inline u32 gr_activity_1_r(void)
326{
327 return 0x00400384;
328}
329static inline u32 gr_activity_2_r(void)
330{
331 return 0x00400388;
332}
333static inline u32 gr_activity_4_r(void)
334{
335 return 0x00400390;
336}
337static inline u32 gr_activity_4_gpc0_s(void)
338{
339 return 3;
340}
341static inline u32 gr_activity_4_gpc0_f(u32 v)
342{
343 return (v & 0x7) << 0;
344}
345static inline u32 gr_activity_4_gpc0_m(void)
346{
347 return 0x7 << 0;
348}
349static inline u32 gr_activity_4_gpc0_v(u32 r)
350{
351 return (r >> 0) & 0x7;
352}
353static inline u32 gr_activity_4_gpc0_empty_v(void)
354{
355 return 0x00000000;
356}
357static inline u32 gr_activity_4_gpc0_preempted_v(void)
358{
359 return 0x00000004;
360}
361static inline u32 gr_pri_gpc0_gcc_dbg_r(void)
362{
363 return 0x00501000;
364}
365static inline u32 gr_pri_gpcs_gcc_dbg_r(void)
366{
367 return 0x00419000;
368}
369static inline u32 gr_pri_gpcs_gcc_dbg_invalidate_m(void)
370{
371 return 0x1 << 1;
372}
373static inline u32 gr_pri_gpc0_tpc0_sm_cache_control_r(void)
374{
375 return 0x0050433c;
376}
377static inline u32 gr_pri_gpcs_tpcs_sm_cache_control_r(void)
378{
379 return 0x00419b3c;
380}
381static inline u32 gr_pri_gpcs_tpcs_sm_cache_control_invalidate_cache_m(void)
382{
383 return 0x1 << 0;
384}
385static inline u32 gr_pri_sked_activity_r(void)
386{
387 return 0x00407054;
388}
389static inline u32 gr_pri_gpc0_gpccs_gpc_activity0_r(void)
390{
391 return 0x00502c80;
392}
393static inline u32 gr_pri_gpc0_gpccs_gpc_activity1_r(void)
394{
395 return 0x00502c84;
396}
397static inline u32 gr_pri_gpc0_gpccs_gpc_activity2_r(void)
398{
399 return 0x00502c88;
400}
401static inline u32 gr_pri_gpc0_gpccs_gpc_activity3_r(void)
402{
403 return 0x00502c8c;
404}
405static inline u32 gr_pri_gpc0_tpc0_tpccs_tpc_activity_0_r(void)
406{
407 return 0x00504500;
408}
409static inline u32 gr_pri_gpc0_tpc1_tpccs_tpc_activity_0_r(void)
410{
411 return 0x00504d00;
412}
413static inline u32 gr_pri_gpc0_tpcs_tpccs_tpc_activity_0_r(void)
414{
415 return 0x00501d00;
416}
417static inline u32 gr_pri_gpcs_gpccs_gpc_activity_0_r(void)
418{
419 return 0x0041ac80;
420}
421static inline u32 gr_pri_gpcs_gpccs_gpc_activity_1_r(void)
422{
423 return 0x0041ac84;
424}
425static inline u32 gr_pri_gpcs_gpccs_gpc_activity_2_r(void)
426{
427 return 0x0041ac88;
428}
429static inline u32 gr_pri_gpcs_gpccs_gpc_activity_3_r(void)
430{
431 return 0x0041ac8c;
432}
433static inline u32 gr_pri_gpcs_tpc0_tpccs_tpc_activity_0_r(void)
434{
435 return 0x0041c500;
436}
437static inline u32 gr_pri_gpcs_tpc1_tpccs_tpc_activity_0_r(void)
438{
439 return 0x0041cd00;
440}
441static inline u32 gr_pri_gpcs_tpcs_tpccs_tpc_activity_0_r(void)
442{
443 return 0x00419d00;
444}
445static inline u32 gr_pri_be0_becs_be_activity0_r(void)
446{
447 return 0x00410200;
448}
449static inline u32 gr_pri_be1_becs_be_activity0_r(void)
450{
451 return 0x00410600;
452}
453static inline u32 gr_pri_bes_becs_be_activity0_r(void)
454{
455 return 0x00408a00;
456}
457static inline u32 gr_pri_ds_mpipe_status_r(void)
458{
459 return 0x00405858;
460}
461static inline u32 gr_pri_fe_go_idle_info_r(void)
462{
463 return 0x00404194;
464}
465static inline u32 gr_pri_gpc0_tpc0_tex_m_tex_subunits_status_r(void)
466{
467 return 0x00504238;
468}
469static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_r(void)
470{
471 return 0x00504358;
472}
473static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_single_err_detected_qrfdp0_pending_f(void)
474{
475 return 0x10;
476}
477static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_single_err_detected_qrfdp1_pending_f(void)
478{
479 return 0x20;
480}
481static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_single_err_detected_qrfdp2_pending_f(void)
482{
483 return 0x40;
484}
485static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_single_err_detected_qrfdp3_pending_f(void)
486{
487 return 0x80;
488}
489static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_double_err_detected_qrfdp0_pending_f(void)
490{
491 return 0x100;
492}
493static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_double_err_detected_qrfdp1_pending_f(void)
494{
495 return 0x200;
496}
497static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_double_err_detected_qrfdp2_pending_f(void)
498{
499 return 0x400;
500}
501static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_status_double_err_detected_qrfdp3_pending_f(void)
502{
503 return 0x800;
504}
505static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_r(void)
506{
507 return 0x0050436c;
508}
509static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_single_err_corrected_shm0_pending_f(void)
510{
511 return 0x1;
512}
513static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_single_err_corrected_shm1_pending_f(void)
514{
515 return 0x2;
516}
517static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_single_err_detected_shm0_pending_f(void)
518{
519 return 0x10;
520}
521static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_single_err_detected_shm1_pending_f(void)
522{
523 return 0x20;
524}
525static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_double_err_detected_shm0_pending_f(void)
526{
527 return 0x100;
528}
529static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_status_double_err_detected_shm1_pending_f(void)
530{
531 return 0x200;
532}
533static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_single_err_count_r(void)
534{
535 return 0x0050435c;
536}
537static inline u32 gr_pri_gpc0_tpc0_sm_lrf_ecc_double_err_count_r(void)
538{
539 return 0x00504360;
540}
541static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_r(void)
542{
543 return 0x00504370;
544}
545static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_single_corrected_m(void)
546{
547 return 0xff << 0;
548}
549static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_single_corrected_v(u32 r)
550{
551 return (r >> 0) & 0xff;
552}
553static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_single_detected_m(void)
554{
555 return 0xff << 8;
556}
557static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_single_detected_v(u32 r)
558{
559 return (r >> 8) & 0xff;
560}
561static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_double_detected_m(void)
562{
563 return 0xff << 16;
564}
565static inline u32 gr_pri_gpc0_tpc0_sm_shm_ecc_err_count_double_detected_v(u32 r)
566{
567 return (r >> 16) & 0xff;
568}
569static inline u32 gr_pri_gpc0_tpc0_tex_m_routing_r(void)
570{
571 return 0x005042c4;
572}
573static inline u32 gr_pri_gpc0_tpc0_tex_m_routing_sel_default_f(void)
574{
575 return 0x0;
576}
577static inline u32 gr_pri_gpc0_tpc0_tex_m_routing_sel_pipe0_f(void)
578{
579 return 0x1;
580}
581static inline u32 gr_pri_gpc0_tpc0_tex_m_routing_sel_pipe1_f(void)
582{
583 return 0x2;
584}
585static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_total_r(void)
586{
587 return 0x00504218;
588}
589static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_total_sec_m(void)
590{
591 return 0xffff << 0;
592}
593static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_total_sec_v(u32 r)
594{
595 return (r >> 0) & 0xffff;
596}
597static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_total_ded_m(void)
598{
599 return 0xffff << 16;
600}
601static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_total_ded_v(u32 r)
602{
603 return (r >> 16) & 0xffff;
604}
605static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_unique_r(void)
606{
607 return 0x005042ec;
608}
609static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_unique_sec_m(void)
610{
611 return 0xffff << 0;
612}
613static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_unique_sec_v(u32 r)
614{
615 return (r >> 0) & 0xffff;
616}
617static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_unique_ded_m(void)
618{
619 return 0xffff << 16;
620}
621static inline u32 gr_pri_gpc0_tpc0_tex_m_ecc_cnt_unique_ded_v(u32 r)
622{
623 return (r >> 16) & 0xffff;
624}
625static inline u32 gr_pri_be0_crop_status1_r(void)
626{
627 return 0x00410134;
628}
629static inline u32 gr_pri_bes_crop_status1_r(void)
630{
631 return 0x00408934;
632}
633static inline u32 gr_pri_be0_zrop_status_r(void)
634{
635 return 0x00410048;
636}
637static inline u32 gr_pri_be0_zrop_status2_r(void)
638{
639 return 0x0041004c;
640}
641static inline u32 gr_pri_bes_zrop_status_r(void)
642{
643 return 0x00408848;
644}
645static inline u32 gr_pri_bes_zrop_status2_r(void)
646{
647 return 0x0040884c;
648}
649static inline u32 gr_pipe_bundle_address_r(void)
650{
651 return 0x00400200;
652}
653static inline u32 gr_pipe_bundle_address_value_v(u32 r)
654{
655 return (r >> 0) & 0xffff;
656}
657static inline u32 gr_pipe_bundle_data_r(void)
658{
659 return 0x00400204;
660}
661static inline u32 gr_pipe_bundle_config_r(void)
662{
663 return 0x00400208;
664}
665static inline u32 gr_pipe_bundle_config_override_pipe_mode_disabled_f(void)
666{
667 return 0x0;
668}
669static inline u32 gr_pipe_bundle_config_override_pipe_mode_enabled_f(void)
670{
671 return 0x80000000;
672}
673static inline u32 gr_fe_hww_esr_r(void)
674{
675 return 0x00404000;
676}
677static inline u32 gr_fe_hww_esr_reset_active_f(void)
678{
679 return 0x40000000;
680}
681static inline u32 gr_fe_hww_esr_en_enable_f(void)
682{
683 return 0x80000000;
684}
685static inline u32 gr_fe_go_idle_timeout_r(void)
686{
687 return 0x00404154;
688}
689static inline u32 gr_fe_go_idle_timeout_count_f(u32 v)
690{
691 return (v & 0xffffffff) << 0;
692}
693static inline u32 gr_fe_go_idle_timeout_count_disabled_f(void)
694{
695 return 0x0;
696}
697static inline u32 gr_fe_go_idle_timeout_count_prod_f(void)
698{
699 return 0x1800;
700}
701static inline u32 gr_fe_object_table_r(u32 i)
702{
703 return 0x00404200 + i*4;
704}
705static inline u32 gr_fe_object_table_nvclass_v(u32 r)
706{
707 return (r >> 0) & 0xffff;
708}
709static inline u32 gr_pri_mme_shadow_raw_index_r(void)
710{
711 return 0x00404488;
712}
713static inline u32 gr_pri_mme_shadow_raw_index_write_trigger_f(void)
714{
715 return 0x80000000;
716}
717static inline u32 gr_pri_mme_shadow_raw_data_r(void)
718{
719 return 0x0040448c;
720}
721static inline u32 gr_mme_hww_esr_r(void)
722{
723 return 0x00404490;
724}
725static inline u32 gr_mme_hww_esr_reset_active_f(void)
726{
727 return 0x40000000;
728}
729static inline u32 gr_mme_hww_esr_en_enable_f(void)
730{
731 return 0x80000000;
732}
733static inline u32 gr_memfmt_hww_esr_r(void)
734{
735 return 0x00404600;
736}
737static inline u32 gr_memfmt_hww_esr_reset_active_f(void)
738{
739 return 0x40000000;
740}
741static inline u32 gr_memfmt_hww_esr_en_enable_f(void)
742{
743 return 0x80000000;
744}
745static inline u32 gr_fecs_cpuctl_r(void)
746{
747 return 0x00409100;
748}
749static inline u32 gr_fecs_cpuctl_startcpu_f(u32 v)
750{
751 return (v & 0x1) << 1;
752}
753static inline u32 gr_fecs_cpuctl_alias_r(void)
754{
755 return 0x00409130;
756}
757static inline u32 gr_fecs_cpuctl_alias_startcpu_f(u32 v)
758{
759 return (v & 0x1) << 1;
760}
761static inline u32 gr_fecs_dmactl_r(void)
762{
763 return 0x0040910c;
764}
765static inline u32 gr_fecs_dmactl_require_ctx_f(u32 v)
766{
767 return (v & 0x1) << 0;
768}
769static inline u32 gr_fecs_dmactl_dmem_scrubbing_m(void)
770{
771 return 0x1 << 1;
772}
773static inline u32 gr_fecs_dmactl_imem_scrubbing_m(void)
774{
775 return 0x1 << 2;
776}
777static inline u32 gr_fecs_os_r(void)
778{
779 return 0x00409080;
780}
781static inline u32 gr_fecs_idlestate_r(void)
782{
783 return 0x0040904c;
784}
785static inline u32 gr_fecs_mailbox0_r(void)
786{
787 return 0x00409040;
788}
789static inline u32 gr_fecs_mailbox1_r(void)
790{
791 return 0x00409044;
792}
793static inline u32 gr_fecs_irqstat_r(void)
794{
795 return 0x00409008;
796}
797static inline u32 gr_fecs_irqmode_r(void)
798{
799 return 0x0040900c;
800}
801static inline u32 gr_fecs_irqmask_r(void)
802{
803 return 0x00409018;
804}
805static inline u32 gr_fecs_irqdest_r(void)
806{
807 return 0x0040901c;
808}
809static inline u32 gr_fecs_curctx_r(void)
810{
811 return 0x00409050;
812}
813static inline u32 gr_fecs_nxtctx_r(void)
814{
815 return 0x00409054;
816}
817static inline u32 gr_fecs_engctl_r(void)
818{
819 return 0x004090a4;
820}
821static inline u32 gr_fecs_debug1_r(void)
822{
823 return 0x00409090;
824}
825static inline u32 gr_fecs_debuginfo_r(void)
826{
827 return 0x00409094;
828}
829static inline u32 gr_fecs_icd_cmd_r(void)
830{
831 return 0x00409200;
832}
833static inline u32 gr_fecs_icd_cmd_opc_s(void)
834{
835 return 4;
836}
837static inline u32 gr_fecs_icd_cmd_opc_f(u32 v)
838{
839 return (v & 0xf) << 0;
840}
841static inline u32 gr_fecs_icd_cmd_opc_m(void)
842{
843 return 0xf << 0;
844}
845static inline u32 gr_fecs_icd_cmd_opc_v(u32 r)
846{
847 return (r >> 0) & 0xf;
848}
849static inline u32 gr_fecs_icd_cmd_opc_rreg_f(void)
850{
851 return 0x8;
852}
853static inline u32 gr_fecs_icd_cmd_opc_rstat_f(void)
854{
855 return 0xe;
856}
857static inline u32 gr_fecs_icd_cmd_idx_f(u32 v)
858{
859 return (v & 0x1f) << 8;
860}
861static inline u32 gr_fecs_icd_rdata_r(void)
862{
863 return 0x0040920c;
864}
865static inline u32 gr_fecs_imemc_r(u32 i)
866{
867 return 0x00409180 + i*16;
868}
869static inline u32 gr_fecs_imemc_offs_f(u32 v)
870{
871 return (v & 0x3f) << 2;
872}
873static inline u32 gr_fecs_imemc_blk_f(u32 v)
874{
875 return (v & 0xff) << 8;
876}
877static inline u32 gr_fecs_imemc_aincw_f(u32 v)
878{
879 return (v & 0x1) << 24;
880}
881static inline u32 gr_fecs_imemd_r(u32 i)
882{
883 return 0x00409184 + i*16;
884}
885static inline u32 gr_fecs_imemt_r(u32 i)
886{
887 return 0x00409188 + i*16;
888}
889static inline u32 gr_fecs_imemt_tag_f(u32 v)
890{
891 return (v & 0xffff) << 0;
892}
893static inline u32 gr_fecs_dmemc_r(u32 i)
894{
895 return 0x004091c0 + i*8;
896}
897static inline u32 gr_fecs_dmemc_offs_s(void)
898{
899 return 6;
900}
901static inline u32 gr_fecs_dmemc_offs_f(u32 v)
902{
903 return (v & 0x3f) << 2;
904}
905static inline u32 gr_fecs_dmemc_offs_m(void)
906{
907 return 0x3f << 2;
908}
909static inline u32 gr_fecs_dmemc_offs_v(u32 r)
910{
911 return (r >> 2) & 0x3f;
912}
913static inline u32 gr_fecs_dmemc_blk_f(u32 v)
914{
915 return (v & 0xff) << 8;
916}
917static inline u32 gr_fecs_dmemc_aincw_f(u32 v)
918{
919 return (v & 0x1) << 24;
920}
921static inline u32 gr_fecs_dmemd_r(u32 i)
922{
923 return 0x004091c4 + i*8;
924}
925static inline u32 gr_fecs_dmatrfbase_r(void)
926{
927 return 0x00409110;
928}
929static inline u32 gr_fecs_dmatrfmoffs_r(void)
930{
931 return 0x00409114;
932}
933static inline u32 gr_fecs_dmatrffboffs_r(void)
934{
935 return 0x0040911c;
936}
937static inline u32 gr_fecs_dmatrfcmd_r(void)
938{
939 return 0x00409118;
940}
941static inline u32 gr_fecs_dmatrfcmd_imem_f(u32 v)
942{
943 return (v & 0x1) << 4;
944}
945static inline u32 gr_fecs_dmatrfcmd_write_f(u32 v)
946{
947 return (v & 0x1) << 5;
948}
949static inline u32 gr_fecs_dmatrfcmd_size_f(u32 v)
950{
951 return (v & 0x7) << 8;
952}
953static inline u32 gr_fecs_dmatrfcmd_ctxdma_f(u32 v)
954{
955 return (v & 0x7) << 12;
956}
957static inline u32 gr_fecs_bootvec_r(void)
958{
959 return 0x00409104;
960}
961static inline u32 gr_fecs_bootvec_vec_f(u32 v)
962{
963 return (v & 0xffffffff) << 0;
964}
965static inline u32 gr_fecs_falcon_hwcfg_r(void)
966{
967 return 0x00409108;
968}
969static inline u32 gr_gpcs_gpccs_falcon_hwcfg_r(void)
970{
971 return 0x0041a108;
972}
973static inline u32 gr_fecs_falcon_rm_r(void)
974{
975 return 0x00409084;
976}
977static inline u32 gr_fecs_current_ctx_r(void)
978{
979 return 0x00409b00;
980}
981static inline u32 gr_fecs_current_ctx_ptr_f(u32 v)
982{
983 return (v & 0xfffffff) << 0;
984}
985static inline u32 gr_fecs_current_ctx_ptr_v(u32 r)
986{
987 return (r >> 0) & 0xfffffff;
988}
989static inline u32 gr_fecs_current_ctx_target_s(void)
990{
991 return 2;
992}
993static inline u32 gr_fecs_current_ctx_target_f(u32 v)
994{
995 return (v & 0x3) << 28;
996}
997static inline u32 gr_fecs_current_ctx_target_m(void)
998{
999 return 0x3 << 28;
1000}
1001static inline u32 gr_fecs_current_ctx_target_v(u32 r)
1002{
1003 return (r >> 28) & 0x3;
1004}
1005static inline u32 gr_fecs_current_ctx_target_vid_mem_f(void)
1006{
1007 return 0x0;
1008}
1009static inline u32 gr_fecs_current_ctx_valid_s(void)
1010{
1011 return 1;
1012}
1013static inline u32 gr_fecs_current_ctx_valid_f(u32 v)
1014{
1015 return (v & 0x1) << 31;
1016}
1017static inline u32 gr_fecs_current_ctx_valid_m(void)
1018{
1019 return 0x1 << 31;
1020}
1021static inline u32 gr_fecs_current_ctx_valid_v(u32 r)
1022{
1023 return (r >> 31) & 0x1;
1024}
1025static inline u32 gr_fecs_current_ctx_valid_false_f(void)
1026{
1027 return 0x0;
1028}
1029static inline u32 gr_fecs_method_data_r(void)
1030{
1031 return 0x00409500;
1032}
1033static inline u32 gr_fecs_method_push_r(void)
1034{
1035 return 0x00409504;
1036}
1037static inline u32 gr_fecs_method_push_adr_f(u32 v)
1038{
1039 return (v & 0xfff) << 0;
1040}
1041static inline u32 gr_fecs_method_push_adr_bind_pointer_v(void)
1042{
1043 return 0x00000003;
1044}
1045static inline u32 gr_fecs_method_push_adr_bind_pointer_f(void)
1046{
1047 return 0x3;
1048}
1049static inline u32 gr_fecs_method_push_adr_discover_image_size_v(void)
1050{
1051 return 0x00000010;
1052}
1053static inline u32 gr_fecs_method_push_adr_wfi_golden_save_v(void)
1054{
1055 return 0x00000009;
1056}
1057static inline u32 gr_fecs_method_push_adr_restore_golden_v(void)
1058{
1059 return 0x00000015;
1060}
1061static inline u32 gr_fecs_method_push_adr_discover_zcull_image_size_v(void)
1062{
1063 return 0x00000016;
1064}
1065static inline u32 gr_fecs_method_push_adr_discover_pm_image_size_v(void)
1066{
1067 return 0x00000025;
1068}
1069static inline u32 gr_fecs_method_push_adr_discover_reglist_image_size_v(void)
1070{
1071 return 0x00000030;
1072}
1073static inline u32 gr_fecs_method_push_adr_set_reglist_bind_instance_v(void)
1074{
1075 return 0x00000031;
1076}
1077static inline u32 gr_fecs_method_push_adr_set_reglist_virtual_address_v(void)
1078{
1079 return 0x00000032;
1080}
1081static inline u32 gr_fecs_method_push_adr_stop_ctxsw_v(void)
1082{
1083 return 0x00000038;
1084}
1085static inline u32 gr_fecs_method_push_adr_start_ctxsw_v(void)
1086{
1087 return 0x00000039;
1088}
1089static inline u32 gr_fecs_method_push_adr_set_watchdog_timeout_f(void)
1090{
1091 return 0x21;
1092}
1093static inline u32 gr_fecs_method_push_adr_discover_preemption_image_size_v(void)
1094{
1095 return 0x0000001a;
1096}
1097static inline u32 gr_fecs_method_push_adr_halt_pipeline_v(void)
1098{
1099 return 0x00000004;
1100}
1101static inline u32 gr_fecs_method_push_adr_configure_interrupt_completion_option_v(void)
1102{
1103 return 0x0000003a;
1104}
1105static inline u32 gr_fecs_host_int_status_r(void)
1106{
1107 return 0x00409c18;
1108}
1109static inline u32 gr_fecs_host_int_status_fault_during_ctxsw_f(u32 v)
1110{
1111 return (v & 0x1) << 16;
1112}
1113static inline u32 gr_fecs_host_int_status_umimp_firmware_method_f(u32 v)
1114{
1115 return (v & 0x1) << 17;
1116}
1117static inline u32 gr_fecs_host_int_status_umimp_illegal_method_f(u32 v)
1118{
1119 return (v & 0x1) << 18;
1120}
1121static inline u32 gr_fecs_host_int_status_ctxsw_intr_f(u32 v)
1122{
1123 return (v & 0xffff) << 0;
1124}
1125static inline u32 gr_fecs_host_int_clear_r(void)
1126{
1127 return 0x00409c20;
1128}
1129static inline u32 gr_fecs_host_int_clear_ctxsw_intr1_f(u32 v)
1130{
1131 return (v & 0x1) << 1;
1132}
1133static inline u32 gr_fecs_host_int_clear_ctxsw_intr1_clear_f(void)
1134{
1135 return 0x2;
1136}
1137static inline u32 gr_fecs_host_int_enable_r(void)
1138{
1139 return 0x00409c24;
1140}
1141static inline u32 gr_fecs_host_int_enable_ctxsw_intr1_enable_f(void)
1142{
1143 return 0x2;
1144}
1145static inline u32 gr_fecs_host_int_enable_fault_during_ctxsw_enable_f(void)
1146{
1147 return 0x10000;
1148}
1149static inline u32 gr_fecs_host_int_enable_umimp_firmware_method_enable_f(void)
1150{
1151 return 0x20000;
1152}
1153static inline u32 gr_fecs_host_int_enable_umimp_illegal_method_enable_f(void)
1154{
1155 return 0x40000;
1156}
1157static inline u32 gr_fecs_host_int_enable_watchdog_enable_f(void)
1158{
1159 return 0x80000;
1160}
1161static inline u32 gr_fecs_ctxsw_reset_ctl_r(void)
1162{
1163 return 0x00409614;
1164}
1165static inline u32 gr_fecs_ctxsw_reset_ctl_sys_halt_disabled_f(void)
1166{
1167 return 0x0;
1168}
1169static inline u32 gr_fecs_ctxsw_reset_ctl_gpc_halt_disabled_f(void)
1170{
1171 return 0x0;
1172}
1173static inline u32 gr_fecs_ctxsw_reset_ctl_be_halt_disabled_f(void)
1174{
1175 return 0x0;
1176}
1177static inline u32 gr_fecs_ctxsw_reset_ctl_sys_engine_reset_disabled_f(void)
1178{
1179 return 0x10;
1180}
1181static inline u32 gr_fecs_ctxsw_reset_ctl_gpc_engine_reset_disabled_f(void)
1182{
1183 return 0x20;
1184}
1185static inline u32 gr_fecs_ctxsw_reset_ctl_be_engine_reset_disabled_f(void)
1186{
1187 return 0x40;
1188}
1189static inline u32 gr_fecs_ctxsw_reset_ctl_sys_context_reset_enabled_f(void)
1190{
1191 return 0x0;
1192}
1193static inline u32 gr_fecs_ctxsw_reset_ctl_sys_context_reset_disabled_f(void)
1194{
1195 return 0x100;
1196}
1197static inline u32 gr_fecs_ctxsw_reset_ctl_gpc_context_reset_enabled_f(void)
1198{
1199 return 0x0;
1200}
1201static inline u32 gr_fecs_ctxsw_reset_ctl_gpc_context_reset_disabled_f(void)
1202{
1203 return 0x200;
1204}
1205static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_s(void)
1206{
1207 return 1;
1208}
1209static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_f(u32 v)
1210{
1211 return (v & 0x1) << 10;
1212}
1213static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_m(void)
1214{
1215 return 0x1 << 10;
1216}
1217static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_v(u32 r)
1218{
1219 return (r >> 10) & 0x1;
1220}
1221static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_enabled_f(void)
1222{
1223 return 0x0;
1224}
1225static inline u32 gr_fecs_ctxsw_reset_ctl_be_context_reset_disabled_f(void)
1226{
1227 return 0x400;
1228}
1229static inline u32 gr_fecs_ctx_state_store_major_rev_id_r(void)
1230{
1231 return 0x0040960c;
1232}
1233static inline u32 gr_fecs_ctxsw_mailbox_r(u32 i)
1234{
1235 return 0x00409800 + i*4;
1236}
1237static inline u32 gr_fecs_ctxsw_mailbox__size_1_v(void)
1238{
1239 return 0x00000010;
1240}
1241static inline u32 gr_fecs_ctxsw_mailbox_value_f(u32 v)
1242{
1243 return (v & 0xffffffff) << 0;
1244}
1245static inline u32 gr_fecs_ctxsw_mailbox_value_pass_v(void)
1246{
1247 return 0x00000001;
1248}
1249static inline u32 gr_fecs_ctxsw_mailbox_value_fail_v(void)
1250{
1251 return 0x00000002;
1252}
1253static inline u32 gr_fecs_ctxsw_mailbox_set_r(u32 i)
1254{
1255 return 0x004098c0 + i*4;
1256}
1257static inline u32 gr_fecs_ctxsw_mailbox_set_value_f(u32 v)
1258{
1259 return (v & 0xffffffff) << 0;
1260}
1261static inline u32 gr_fecs_ctxsw_mailbox_clear_r(u32 i)
1262{
1263 return 0x00409840 + i*4;
1264}
1265static inline u32 gr_fecs_ctxsw_mailbox_clear_value_f(u32 v)
1266{
1267 return (v & 0xffffffff) << 0;
1268}
1269static inline u32 gr_fecs_fs_r(void)
1270{
1271 return 0x00409604;
1272}
1273static inline u32 gr_fecs_fs_num_available_gpcs_s(void)
1274{
1275 return 5;
1276}
1277static inline u32 gr_fecs_fs_num_available_gpcs_f(u32 v)
1278{
1279 return (v & 0x1f) << 0;
1280}
1281static inline u32 gr_fecs_fs_num_available_gpcs_m(void)
1282{
1283 return 0x1f << 0;
1284}
1285static inline u32 gr_fecs_fs_num_available_gpcs_v(u32 r)
1286{
1287 return (r >> 0) & 0x1f;
1288}
1289static inline u32 gr_fecs_fs_num_available_fbps_s(void)
1290{
1291 return 5;
1292}
1293static inline u32 gr_fecs_fs_num_available_fbps_f(u32 v)
1294{
1295 return (v & 0x1f) << 16;
1296}
1297static inline u32 gr_fecs_fs_num_available_fbps_m(void)
1298{
1299 return 0x1f << 16;
1300}
1301static inline u32 gr_fecs_fs_num_available_fbps_v(u32 r)
1302{
1303 return (r >> 16) & 0x1f;
1304}
1305static inline u32 gr_fecs_cfg_r(void)
1306{
1307 return 0x00409620;
1308}
1309static inline u32 gr_fecs_cfg_imem_sz_v(u32 r)
1310{
1311 return (r >> 0) & 0xff;
1312}
1313static inline u32 gr_fecs_rc_lanes_r(void)
1314{
1315 return 0x00409880;
1316}
1317static inline u32 gr_fecs_rc_lanes_num_chains_s(void)
1318{
1319 return 6;
1320}
1321static inline u32 gr_fecs_rc_lanes_num_chains_f(u32 v)
1322{
1323 return (v & 0x3f) << 0;
1324}
1325static inline u32 gr_fecs_rc_lanes_num_chains_m(void)
1326{
1327 return 0x3f << 0;
1328}
1329static inline u32 gr_fecs_rc_lanes_num_chains_v(u32 r)
1330{
1331 return (r >> 0) & 0x3f;
1332}
1333static inline u32 gr_fecs_ctxsw_status_1_r(void)
1334{
1335 return 0x00409400;
1336}
1337static inline u32 gr_fecs_ctxsw_status_1_arb_busy_s(void)
1338{
1339 return 1;
1340}
1341static inline u32 gr_fecs_ctxsw_status_1_arb_busy_f(u32 v)
1342{
1343 return (v & 0x1) << 12;
1344}
1345static inline u32 gr_fecs_ctxsw_status_1_arb_busy_m(void)
1346{
1347 return 0x1 << 12;
1348}
1349static inline u32 gr_fecs_ctxsw_status_1_arb_busy_v(u32 r)
1350{
1351 return (r >> 12) & 0x1;
1352}
1353static inline u32 gr_fecs_arb_ctx_adr_r(void)
1354{
1355 return 0x00409a24;
1356}
1357static inline u32 gr_fecs_new_ctx_r(void)
1358{
1359 return 0x00409b04;
1360}
1361static inline u32 gr_fecs_new_ctx_ptr_s(void)
1362{
1363 return 28;
1364}
1365static inline u32 gr_fecs_new_ctx_ptr_f(u32 v)
1366{
1367 return (v & 0xfffffff) << 0;
1368}
1369static inline u32 gr_fecs_new_ctx_ptr_m(void)
1370{
1371 return 0xfffffff << 0;
1372}
1373static inline u32 gr_fecs_new_ctx_ptr_v(u32 r)
1374{
1375 return (r >> 0) & 0xfffffff;
1376}
1377static inline u32 gr_fecs_new_ctx_target_s(void)
1378{
1379 return 2;
1380}
1381static inline u32 gr_fecs_new_ctx_target_f(u32 v)
1382{
1383 return (v & 0x3) << 28;
1384}
1385static inline u32 gr_fecs_new_ctx_target_m(void)
1386{
1387 return 0x3 << 28;
1388}
1389static inline u32 gr_fecs_new_ctx_target_v(u32 r)
1390{
1391 return (r >> 28) & 0x3;
1392}
1393static inline u32 gr_fecs_new_ctx_valid_s(void)
1394{
1395 return 1;
1396}
1397static inline u32 gr_fecs_new_ctx_valid_f(u32 v)
1398{
1399 return (v & 0x1) << 31;
1400}
1401static inline u32 gr_fecs_new_ctx_valid_m(void)
1402{
1403 return 0x1 << 31;
1404}
1405static inline u32 gr_fecs_new_ctx_valid_v(u32 r)
1406{
1407 return (r >> 31) & 0x1;
1408}
1409static inline u32 gr_fecs_arb_ctx_ptr_r(void)
1410{
1411 return 0x00409a0c;
1412}
1413static inline u32 gr_fecs_arb_ctx_ptr_ptr_s(void)
1414{
1415 return 28;
1416}
1417static inline u32 gr_fecs_arb_ctx_ptr_ptr_f(u32 v)
1418{
1419 return (v & 0xfffffff) << 0;
1420}
1421static inline u32 gr_fecs_arb_ctx_ptr_ptr_m(void)
1422{
1423 return 0xfffffff << 0;
1424}
1425static inline u32 gr_fecs_arb_ctx_ptr_ptr_v(u32 r)
1426{
1427 return (r >> 0) & 0xfffffff;
1428}
1429static inline u32 gr_fecs_arb_ctx_ptr_target_s(void)
1430{
1431 return 2;
1432}
1433static inline u32 gr_fecs_arb_ctx_ptr_target_f(u32 v)
1434{
1435 return (v & 0x3) << 28;
1436}
1437static inline u32 gr_fecs_arb_ctx_ptr_target_m(void)
1438{
1439 return 0x3 << 28;
1440}
1441static inline u32 gr_fecs_arb_ctx_ptr_target_v(u32 r)
1442{
1443 return (r >> 28) & 0x3;
1444}
1445static inline u32 gr_fecs_arb_ctx_cmd_r(void)
1446{
1447 return 0x00409a10;
1448}
1449static inline u32 gr_fecs_arb_ctx_cmd_cmd_s(void)
1450{
1451 return 5;
1452}
1453static inline u32 gr_fecs_arb_ctx_cmd_cmd_f(u32 v)
1454{
1455 return (v & 0x1f) << 0;
1456}
1457static inline u32 gr_fecs_arb_ctx_cmd_cmd_m(void)
1458{
1459 return 0x1f << 0;
1460}
1461static inline u32 gr_fecs_arb_ctx_cmd_cmd_v(u32 r)
1462{
1463 return (r >> 0) & 0x1f;
1464}
1465static inline u32 gr_fecs_ctxsw_status_fe_0_r(void)
1466{
1467 return 0x00409c00;
1468}
1469static inline u32 gr_gpc0_gpccs_ctxsw_status_gpc_0_r(void)
1470{
1471 return 0x00502c04;
1472}
1473static inline u32 gr_gpc0_gpccs_ctxsw_status_1_r(void)
1474{
1475 return 0x00502400;
1476}
1477static inline u32 gr_fecs_ctxsw_idlestate_r(void)
1478{
1479 return 0x00409420;
1480}
1481static inline u32 gr_fecs_feature_override_ecc_r(void)
1482{
1483 return 0x00409658;
1484}
1485static inline u32 gr_fecs_feature_override_ecc_sm_lrf_override_v(u32 r)
1486{
1487 return (r >> 3) & 0x1;
1488}
1489static inline u32 gr_fecs_feature_override_ecc_sm_shm_override_v(u32 r)
1490{
1491 return (r >> 7) & 0x1;
1492}
1493static inline u32 gr_fecs_feature_override_ecc_tex_override_v(u32 r)
1494{
1495 return (r >> 11) & 0x1;
1496}
1497static inline u32 gr_fecs_feature_override_ecc_ltc_override_v(u32 r)
1498{
1499 return (r >> 15) & 0x1;
1500}
1501static inline u32 gr_fecs_feature_override_ecc_sm_lrf_v(u32 r)
1502{
1503 return (r >> 0) & 0x1;
1504}
1505static inline u32 gr_fecs_feature_override_ecc_sm_shm_v(u32 r)
1506{
1507 return (r >> 4) & 0x1;
1508}
1509static inline u32 gr_fecs_feature_override_ecc_tex_v(u32 r)
1510{
1511 return (r >> 8) & 0x1;
1512}
1513static inline u32 gr_fecs_feature_override_ecc_ltc_v(u32 r)
1514{
1515 return (r >> 12) & 0x1;
1516}
1517static inline u32 gr_gpc0_gpccs_ctxsw_idlestate_r(void)
1518{
1519 return 0x00502420;
1520}
1521static inline u32 gr_rstr2d_map_table_cfg_r(void)
1522{
1523 return 0x004078bc;
1524}
1525static inline u32 gr_rstr2d_map_table_cfg_row_offset_f(u32 v)
1526{
1527 return (v & 0xff) << 0;
1528}
1529static inline u32 gr_rstr2d_map_table_cfg_num_entries_f(u32 v)
1530{
1531 return (v & 0xff) << 8;
1532}
1533static inline u32 gr_pd_hww_esr_r(void)
1534{
1535 return 0x00406018;
1536}
1537static inline u32 gr_pd_hww_esr_reset_active_f(void)
1538{
1539 return 0x40000000;
1540}
1541static inline u32 gr_pd_hww_esr_en_enable_f(void)
1542{
1543 return 0x80000000;
1544}
1545static inline u32 gr_pd_num_tpc_per_gpc_r(u32 i)
1546{
1547 return 0x00406028 + i*4;
1548}
1549static inline u32 gr_pd_num_tpc_per_gpc__size_1_v(void)
1550{
1551 return 0x00000004;
1552}
1553static inline u32 gr_pd_num_tpc_per_gpc_count0_f(u32 v)
1554{
1555 return (v & 0xf) << 0;
1556}
1557static inline u32 gr_pd_num_tpc_per_gpc_count1_f(u32 v)
1558{
1559 return (v & 0xf) << 4;
1560}
1561static inline u32 gr_pd_num_tpc_per_gpc_count2_f(u32 v)
1562{
1563 return (v & 0xf) << 8;
1564}
1565static inline u32 gr_pd_num_tpc_per_gpc_count3_f(u32 v)
1566{
1567 return (v & 0xf) << 12;
1568}
1569static inline u32 gr_pd_num_tpc_per_gpc_count4_f(u32 v)
1570{
1571 return (v & 0xf) << 16;
1572}
1573static inline u32 gr_pd_num_tpc_per_gpc_count5_f(u32 v)
1574{
1575 return (v & 0xf) << 20;
1576}
1577static inline u32 gr_pd_num_tpc_per_gpc_count6_f(u32 v)
1578{
1579 return (v & 0xf) << 24;
1580}
1581static inline u32 gr_pd_num_tpc_per_gpc_count7_f(u32 v)
1582{
1583 return (v & 0xf) << 28;
1584}
1585static inline u32 gr_pd_ab_dist_cfg0_r(void)
1586{
1587 return 0x004064c0;
1588}
1589static inline u32 gr_pd_ab_dist_cfg0_timeslice_enable_en_f(void)
1590{
1591 return 0x80000000;
1592}
1593static inline u32 gr_pd_ab_dist_cfg0_timeslice_enable_dis_f(void)
1594{
1595 return 0x0;
1596}
1597static inline u32 gr_pd_ab_dist_cfg1_r(void)
1598{
1599 return 0x004064c4;
1600}
1601static inline u32 gr_pd_ab_dist_cfg1_max_batches_init_f(void)
1602{
1603 return 0xffff;
1604}
1605static inline u32 gr_pd_ab_dist_cfg1_max_output_f(u32 v)
1606{
1607 return (v & 0xffff) << 16;
1608}
1609static inline u32 gr_pd_ab_dist_cfg1_max_output_granularity_v(void)
1610{
1611 return 0x00000080;
1612}
1613static inline u32 gr_pd_ab_dist_cfg2_r(void)
1614{
1615 return 0x004064c8;
1616}
1617static inline u32 gr_pd_ab_dist_cfg2_token_limit_f(u32 v)
1618{
1619 return (v & 0x1fff) << 0;
1620}
1621static inline u32 gr_pd_ab_dist_cfg2_token_limit_init_v(void)
1622{
1623 return 0x00001d80;
1624}
1625static inline u32 gr_pd_ab_dist_cfg2_state_limit_f(u32 v)
1626{
1627 return (v & 0x1fff) << 16;
1628}
1629static inline u32 gr_pd_ab_dist_cfg2_state_limit_scc_bundle_granularity_v(void)
1630{
1631 return 0x00000020;
1632}
1633static inline u32 gr_pd_ab_dist_cfg2_state_limit_min_gpm_fifo_depths_v(void)
1634{
1635 return 0x00001d80;
1636}
1637static inline u32 gr_pd_dist_skip_table_r(u32 i)
1638{
1639 return 0x004064d0 + i*4;
1640}
1641static inline u32 gr_pd_dist_skip_table__size_1_v(void)
1642{
1643 return 0x00000008;
1644}
1645static inline u32 gr_pd_dist_skip_table_gpc_4n0_mask_f(u32 v)
1646{
1647 return (v & 0xff) << 0;
1648}
1649static inline u32 gr_pd_dist_skip_table_gpc_4n1_mask_f(u32 v)
1650{
1651 return (v & 0xff) << 8;
1652}
1653static inline u32 gr_pd_dist_skip_table_gpc_4n2_mask_f(u32 v)
1654{
1655 return (v & 0xff) << 16;
1656}
1657static inline u32 gr_pd_dist_skip_table_gpc_4n3_mask_f(u32 v)
1658{
1659 return (v & 0xff) << 24;
1660}
1661static inline u32 gr_ds_debug_r(void)
1662{
1663 return 0x00405800;
1664}
1665static inline u32 gr_ds_debug_timeslice_mode_disable_f(void)
1666{
1667 return 0x0;
1668}
1669static inline u32 gr_ds_debug_timeslice_mode_enable_f(void)
1670{
1671 return 0x8000000;
1672}
1673static inline u32 gr_ds_zbc_color_r_r(void)
1674{
1675 return 0x00405804;
1676}
1677static inline u32 gr_ds_zbc_color_r_val_f(u32 v)
1678{
1679 return (v & 0xffffffff) << 0;
1680}
1681static inline u32 gr_ds_zbc_color_g_r(void)
1682{
1683 return 0x00405808;
1684}
1685static inline u32 gr_ds_zbc_color_g_val_f(u32 v)
1686{
1687 return (v & 0xffffffff) << 0;
1688}
1689static inline u32 gr_ds_zbc_color_b_r(void)
1690{
1691 return 0x0040580c;
1692}
1693static inline u32 gr_ds_zbc_color_b_val_f(u32 v)
1694{
1695 return (v & 0xffffffff) << 0;
1696}
1697static inline u32 gr_ds_zbc_color_a_r(void)
1698{
1699 return 0x00405810;
1700}
1701static inline u32 gr_ds_zbc_color_a_val_f(u32 v)
1702{
1703 return (v & 0xffffffff) << 0;
1704}
1705static inline u32 gr_ds_zbc_color_fmt_r(void)
1706{
1707 return 0x00405814;
1708}
1709static inline u32 gr_ds_zbc_color_fmt_val_f(u32 v)
1710{
1711 return (v & 0x7f) << 0;
1712}
1713static inline u32 gr_ds_zbc_color_fmt_val_invalid_f(void)
1714{
1715 return 0x0;
1716}
1717static inline u32 gr_ds_zbc_color_fmt_val_zero_v(void)
1718{
1719 return 0x00000001;
1720}
1721static inline u32 gr_ds_zbc_color_fmt_val_unorm_one_v(void)
1722{
1723 return 0x00000002;
1724}
1725static inline u32 gr_ds_zbc_color_fmt_val_rf32_gf32_bf32_af32_v(void)
1726{
1727 return 0x00000004;
1728}
1729static inline u32 gr_ds_zbc_color_fmt_val_a8_b8_g8_r8_v(void)
1730{
1731 return 0x00000028;
1732}
1733static inline u32 gr_ds_zbc_z_r(void)
1734{
1735 return 0x00405818;
1736}
1737static inline u32 gr_ds_zbc_z_val_s(void)
1738{
1739 return 32;
1740}
1741static inline u32 gr_ds_zbc_z_val_f(u32 v)
1742{
1743 return (v & 0xffffffff) << 0;
1744}
1745static inline u32 gr_ds_zbc_z_val_m(void)
1746{
1747 return 0xffffffff << 0;
1748}
1749static inline u32 gr_ds_zbc_z_val_v(u32 r)
1750{
1751 return (r >> 0) & 0xffffffff;
1752}
1753static inline u32 gr_ds_zbc_z_val__init_v(void)
1754{
1755 return 0x00000000;
1756}
1757static inline u32 gr_ds_zbc_z_val__init_f(void)
1758{
1759 return 0x0;
1760}
1761static inline u32 gr_ds_zbc_z_fmt_r(void)
1762{
1763 return 0x0040581c;
1764}
1765static inline u32 gr_ds_zbc_z_fmt_val_f(u32 v)
1766{
1767 return (v & 0x1) << 0;
1768}
1769static inline u32 gr_ds_zbc_z_fmt_val_invalid_f(void)
1770{
1771 return 0x0;
1772}
1773static inline u32 gr_ds_zbc_z_fmt_val_fp32_v(void)
1774{
1775 return 0x00000001;
1776}
1777static inline u32 gr_ds_zbc_tbl_index_r(void)
1778{
1779 return 0x00405820;
1780}
1781static inline u32 gr_ds_zbc_tbl_index_val_f(u32 v)
1782{
1783 return (v & 0xf) << 0;
1784}
1785static inline u32 gr_ds_zbc_tbl_ld_r(void)
1786{
1787 return 0x00405824;
1788}
1789static inline u32 gr_ds_zbc_tbl_ld_select_c_f(void)
1790{
1791 return 0x0;
1792}
1793static inline u32 gr_ds_zbc_tbl_ld_select_z_f(void)
1794{
1795 return 0x1;
1796}
1797static inline u32 gr_ds_zbc_tbl_ld_action_write_f(void)
1798{
1799 return 0x0;
1800}
1801static inline u32 gr_ds_zbc_tbl_ld_trigger_active_f(void)
1802{
1803 return 0x4;
1804}
1805static inline u32 gr_ds_tga_constraintlogic_beta_r(void)
1806{
1807 return 0x00405830;
1808}
1809static inline u32 gr_ds_tga_constraintlogic_beta_cbsize_f(u32 v)
1810{
1811 return (v & 0x3fffff) << 0;
1812}
1813static inline u32 gr_ds_tga_constraintlogic_alpha_r(void)
1814{
1815 return 0x0040585c;
1816}
1817static inline u32 gr_ds_tga_constraintlogic_alpha_cbsize_f(u32 v)
1818{
1819 return (v & 0xffff) << 0;
1820}
1821static inline u32 gr_ds_hww_esr_r(void)
1822{
1823 return 0x00405840;
1824}
1825static inline u32 gr_ds_hww_esr_reset_s(void)
1826{
1827 return 1;
1828}
1829static inline u32 gr_ds_hww_esr_reset_f(u32 v)
1830{
1831 return (v & 0x1) << 30;
1832}
1833static inline u32 gr_ds_hww_esr_reset_m(void)
1834{
1835 return 0x1 << 30;
1836}
1837static inline u32 gr_ds_hww_esr_reset_v(u32 r)
1838{
1839 return (r >> 30) & 0x1;
1840}
1841static inline u32 gr_ds_hww_esr_reset_task_v(void)
1842{
1843 return 0x00000001;
1844}
1845static inline u32 gr_ds_hww_esr_reset_task_f(void)
1846{
1847 return 0x40000000;
1848}
1849static inline u32 gr_ds_hww_esr_en_enabled_f(void)
1850{
1851 return 0x80000000;
1852}
1853static inline u32 gr_ds_hww_esr_2_r(void)
1854{
1855 return 0x00405848;
1856}
1857static inline u32 gr_ds_hww_esr_2_reset_s(void)
1858{
1859 return 1;
1860}
1861static inline u32 gr_ds_hww_esr_2_reset_f(u32 v)
1862{
1863 return (v & 0x1) << 30;
1864}
1865static inline u32 gr_ds_hww_esr_2_reset_m(void)
1866{
1867 return 0x1 << 30;
1868}
1869static inline u32 gr_ds_hww_esr_2_reset_v(u32 r)
1870{
1871 return (r >> 30) & 0x1;
1872}
1873static inline u32 gr_ds_hww_esr_2_reset_task_v(void)
1874{
1875 return 0x00000001;
1876}
1877static inline u32 gr_ds_hww_esr_2_reset_task_f(void)
1878{
1879 return 0x40000000;
1880}
1881static inline u32 gr_ds_hww_esr_2_en_enabled_f(void)
1882{
1883 return 0x80000000;
1884}
1885static inline u32 gr_ds_hww_report_mask_r(void)
1886{
1887 return 0x00405844;
1888}
1889static inline u32 gr_ds_hww_report_mask_sph0_err_report_f(void)
1890{
1891 return 0x1;
1892}
1893static inline u32 gr_ds_hww_report_mask_sph1_err_report_f(void)
1894{
1895 return 0x2;
1896}
1897static inline u32 gr_ds_hww_report_mask_sph2_err_report_f(void)
1898{
1899 return 0x4;
1900}
1901static inline u32 gr_ds_hww_report_mask_sph3_err_report_f(void)
1902{
1903 return 0x8;
1904}
1905static inline u32 gr_ds_hww_report_mask_sph4_err_report_f(void)
1906{
1907 return 0x10;
1908}
1909static inline u32 gr_ds_hww_report_mask_sph5_err_report_f(void)
1910{
1911 return 0x20;
1912}
1913static inline u32 gr_ds_hww_report_mask_sph6_err_report_f(void)
1914{
1915 return 0x40;
1916}
1917static inline u32 gr_ds_hww_report_mask_sph7_err_report_f(void)
1918{
1919 return 0x80;
1920}
1921static inline u32 gr_ds_hww_report_mask_sph8_err_report_f(void)
1922{
1923 return 0x100;
1924}
1925static inline u32 gr_ds_hww_report_mask_sph9_err_report_f(void)
1926{
1927 return 0x200;
1928}
1929static inline u32 gr_ds_hww_report_mask_sph10_err_report_f(void)
1930{
1931 return 0x400;
1932}
1933static inline u32 gr_ds_hww_report_mask_sph11_err_report_f(void)
1934{
1935 return 0x800;
1936}
1937static inline u32 gr_ds_hww_report_mask_sph12_err_report_f(void)
1938{
1939 return 0x1000;
1940}
1941static inline u32 gr_ds_hww_report_mask_sph13_err_report_f(void)
1942{
1943 return 0x2000;
1944}
1945static inline u32 gr_ds_hww_report_mask_sph14_err_report_f(void)
1946{
1947 return 0x4000;
1948}
1949static inline u32 gr_ds_hww_report_mask_sph15_err_report_f(void)
1950{
1951 return 0x8000;
1952}
1953static inline u32 gr_ds_hww_report_mask_sph16_err_report_f(void)
1954{
1955 return 0x10000;
1956}
1957static inline u32 gr_ds_hww_report_mask_sph17_err_report_f(void)
1958{
1959 return 0x20000;
1960}
1961static inline u32 gr_ds_hww_report_mask_sph18_err_report_f(void)
1962{
1963 return 0x40000;
1964}
1965static inline u32 gr_ds_hww_report_mask_sph19_err_report_f(void)
1966{
1967 return 0x80000;
1968}
1969static inline u32 gr_ds_hww_report_mask_sph20_err_report_f(void)
1970{
1971 return 0x100000;
1972}
1973static inline u32 gr_ds_hww_report_mask_sph21_err_report_f(void)
1974{
1975 return 0x200000;
1976}
1977static inline u32 gr_ds_hww_report_mask_sph22_err_report_f(void)
1978{
1979 return 0x400000;
1980}
1981static inline u32 gr_ds_hww_report_mask_sph23_err_report_f(void)
1982{
1983 return 0x800000;
1984}
1985static inline u32 gr_ds_hww_report_mask_2_r(void)
1986{
1987 return 0x0040584c;
1988}
1989static inline u32 gr_ds_hww_report_mask_2_sph24_err_report_f(void)
1990{
1991 return 0x1;
1992}
1993static inline u32 gr_ds_num_tpc_per_gpc_r(u32 i)
1994{
1995 return 0x00405870 + i*4;
1996}
1997static inline u32 gr_scc_bundle_cb_base_r(void)
1998{
1999 return 0x00408004;
2000}
2001static inline u32 gr_scc_bundle_cb_base_addr_39_8_f(u32 v)
2002{
2003 return (v & 0xffffffff) << 0;
2004}
2005static inline u32 gr_scc_bundle_cb_base_addr_39_8_align_bits_v(void)
2006{
2007 return 0x00000008;
2008}
2009static inline u32 gr_scc_bundle_cb_size_r(void)
2010{
2011 return 0x00408008;
2012}
2013static inline u32 gr_scc_bundle_cb_size_div_256b_f(u32 v)
2014{
2015 return (v & 0x7ff) << 0;
2016}
2017static inline u32 gr_scc_bundle_cb_size_div_256b__prod_v(void)
2018{
2019 return 0x00000030;
2020}
2021static inline u32 gr_scc_bundle_cb_size_div_256b_byte_granularity_v(void)
2022{
2023 return 0x00000100;
2024}
2025static inline u32 gr_scc_bundle_cb_size_valid_false_v(void)
2026{
2027 return 0x00000000;
2028}
2029static inline u32 gr_scc_bundle_cb_size_valid_false_f(void)
2030{
2031 return 0x0;
2032}
2033static inline u32 gr_scc_bundle_cb_size_valid_true_f(void)
2034{
2035 return 0x80000000;
2036}
2037static inline u32 gr_scc_pagepool_base_r(void)
2038{
2039 return 0x0040800c;
2040}
2041static inline u32 gr_scc_pagepool_base_addr_39_8_f(u32 v)
2042{
2043 return (v & 0xffffffff) << 0;
2044}
2045static inline u32 gr_scc_pagepool_base_addr_39_8_align_bits_v(void)
2046{
2047 return 0x00000008;
2048}
2049static inline u32 gr_scc_pagepool_r(void)
2050{
2051 return 0x00408010;
2052}
2053static inline u32 gr_scc_pagepool_total_pages_f(u32 v)
2054{
2055 return (v & 0x3ff) << 0;
2056}
2057static inline u32 gr_scc_pagepool_total_pages_hwmax_v(void)
2058{
2059 return 0x00000000;
2060}
2061static inline u32 gr_scc_pagepool_total_pages_hwmax_value_v(void)
2062{
2063 return 0x00000200;
2064}
2065static inline u32 gr_scc_pagepool_total_pages_byte_granularity_v(void)
2066{
2067 return 0x00000100;
2068}
2069static inline u32 gr_scc_pagepool_max_valid_pages_s(void)
2070{
2071 return 10;
2072}
2073static inline u32 gr_scc_pagepool_max_valid_pages_f(u32 v)
2074{
2075 return (v & 0x3ff) << 10;
2076}
2077static inline u32 gr_scc_pagepool_max_valid_pages_m(void)
2078{
2079 return 0x3ff << 10;
2080}
2081static inline u32 gr_scc_pagepool_max_valid_pages_v(u32 r)
2082{
2083 return (r >> 10) & 0x3ff;
2084}
2085static inline u32 gr_scc_pagepool_valid_true_f(void)
2086{
2087 return 0x80000000;
2088}
2089static inline u32 gr_scc_init_r(void)
2090{
2091 return 0x0040802c;
2092}
2093static inline u32 gr_scc_init_ram_trigger_f(void)
2094{
2095 return 0x1;
2096}
2097static inline u32 gr_scc_hww_esr_r(void)
2098{
2099 return 0x00408030;
2100}
2101static inline u32 gr_scc_hww_esr_reset_active_f(void)
2102{
2103 return 0x40000000;
2104}
2105static inline u32 gr_scc_hww_esr_en_enable_f(void)
2106{
2107 return 0x80000000;
2108}
2109static inline u32 gr_sked_hww_esr_r(void)
2110{
2111 return 0x00407020;
2112}
2113static inline u32 gr_sked_hww_esr_reset_active_f(void)
2114{
2115 return 0x40000000;
2116}
2117static inline u32 gr_cwd_fs_r(void)
2118{
2119 return 0x00405b00;
2120}
2121static inline u32 gr_cwd_fs_num_gpcs_f(u32 v)
2122{
2123 return (v & 0xff) << 0;
2124}
2125static inline u32 gr_cwd_fs_num_tpcs_f(u32 v)
2126{
2127 return (v & 0xff) << 8;
2128}
2129static inline u32 gr_cwd_gpc_tpc_id_r(u32 i)
2130{
2131 return 0x00405b60 + i*4;
2132}
2133static inline u32 gr_cwd_gpc_tpc_id_tpc0_f(u32 v)
2134{
2135 return (v & 0xf) << 0;
2136}
2137static inline u32 gr_cwd_gpc_tpc_id_tpc1_f(u32 v)
2138{
2139 return (v & 0xf) << 8;
2140}
2141static inline u32 gr_cwd_sm_id_r(u32 i)
2142{
2143 return 0x00405ba0 + i*4;
2144}
2145static inline u32 gr_cwd_sm_id_tpc0_f(u32 v)
2146{
2147 return (v & 0xff) << 0;
2148}
2149static inline u32 gr_cwd_sm_id_tpc1_f(u32 v)
2150{
2151 return (v & 0xff) << 8;
2152}
2153static inline u32 gr_gpc0_fs_gpc_r(void)
2154{
2155 return 0x00502608;
2156}
2157static inline u32 gr_gpc0_fs_gpc_num_available_tpcs_v(u32 r)
2158{
2159 return (r >> 0) & 0x1f;
2160}
2161static inline u32 gr_gpc0_fs_gpc_num_available_zculls_v(u32 r)
2162{
2163 return (r >> 16) & 0x1f;
2164}
2165static inline u32 gr_gpc0_cfg_r(void)
2166{
2167 return 0x00502620;
2168}
2169static inline u32 gr_gpc0_cfg_imem_sz_v(u32 r)
2170{
2171 return (r >> 0) & 0xff;
2172}
2173static inline u32 gr_gpccs_rc_lanes_r(void)
2174{
2175 return 0x00502880;
2176}
2177static inline u32 gr_gpccs_rc_lanes_num_chains_s(void)
2178{
2179 return 6;
2180}
2181static inline u32 gr_gpccs_rc_lanes_num_chains_f(u32 v)
2182{
2183 return (v & 0x3f) << 0;
2184}
2185static inline u32 gr_gpccs_rc_lanes_num_chains_m(void)
2186{
2187 return 0x3f << 0;
2188}
2189static inline u32 gr_gpccs_rc_lanes_num_chains_v(u32 r)
2190{
2191 return (r >> 0) & 0x3f;
2192}
2193static inline u32 gr_gpccs_rc_lane_size_r(void)
2194{
2195 return 0x00502910;
2196}
2197static inline u32 gr_gpccs_rc_lane_size_v_s(void)
2198{
2199 return 24;
2200}
2201static inline u32 gr_gpccs_rc_lane_size_v_f(u32 v)
2202{
2203 return (v & 0xffffff) << 0;
2204}
2205static inline u32 gr_gpccs_rc_lane_size_v_m(void)
2206{
2207 return 0xffffff << 0;
2208}
2209static inline u32 gr_gpccs_rc_lane_size_v_v(u32 r)
2210{
2211 return (r >> 0) & 0xffffff;
2212}
2213static inline u32 gr_gpccs_rc_lane_size_v_0_v(void)
2214{
2215 return 0x00000000;
2216}
2217static inline u32 gr_gpccs_rc_lane_size_v_0_f(void)
2218{
2219 return 0x0;
2220}
2221static inline u32 gr_gpc0_zcull_fs_r(void)
2222{
2223 return 0x00500910;
2224}
2225static inline u32 gr_gpc0_zcull_fs_num_sms_f(u32 v)
2226{
2227 return (v & 0x1ff) << 0;
2228}
2229static inline u32 gr_gpc0_zcull_fs_num_active_banks_f(u32 v)
2230{
2231 return (v & 0xf) << 16;
2232}
2233static inline u32 gr_gpc0_zcull_ram_addr_r(void)
2234{
2235 return 0x00500914;
2236}
2237static inline u32 gr_gpc0_zcull_ram_addr_tiles_per_hypertile_row_per_gpc_f(u32 v)
2238{
2239 return (v & 0xf) << 0;
2240}
2241static inline u32 gr_gpc0_zcull_ram_addr_row_offset_f(u32 v)
2242{
2243 return (v & 0xf) << 8;
2244}
2245static inline u32 gr_gpc0_zcull_sm_num_rcp_r(void)
2246{
2247 return 0x00500918;
2248}
2249static inline u32 gr_gpc0_zcull_sm_num_rcp_conservative_f(u32 v)
2250{
2251 return (v & 0xffffff) << 0;
2252}
2253static inline u32 gr_gpc0_zcull_sm_num_rcp_conservative__max_v(void)
2254{
2255 return 0x00800000;
2256}
2257static inline u32 gr_gpc0_zcull_total_ram_size_r(void)
2258{
2259 return 0x00500920;
2260}
2261static inline u32 gr_gpc0_zcull_total_ram_size_num_aliquots_f(u32 v)
2262{
2263 return (v & 0xffff) << 0;
2264}
2265static inline u32 gr_gpc0_zcull_zcsize_r(u32 i)
2266{
2267 return 0x00500a04 + i*32;
2268}
2269static inline u32 gr_gpc0_zcull_zcsize_height_subregion__multiple_v(void)
2270{
2271 return 0x00000040;
2272}
2273static inline u32 gr_gpc0_zcull_zcsize_width_subregion__multiple_v(void)
2274{
2275 return 0x00000010;
2276}
2277static inline u32 gr_gpc0_gpm_pd_sm_id_r(u32 i)
2278{
2279 return 0x00500c10 + i*4;
2280}
2281static inline u32 gr_gpc0_gpm_pd_sm_id_id_f(u32 v)
2282{
2283 return (v & 0xff) << 0;
2284}
2285static inline u32 gr_gpc0_gpm_pd_pes_tpc_id_mask_r(u32 i)
2286{
2287 return 0x00500c30 + i*4;
2288}
2289static inline u32 gr_gpc0_gpm_pd_pes_tpc_id_mask_mask_v(u32 r)
2290{
2291 return (r >> 0) & 0xff;
2292}
2293static inline u32 gr_gpc0_tpc0_pe_cfg_smid_r(void)
2294{
2295 return 0x00504088;
2296}
2297static inline u32 gr_gpc0_tpc0_pe_cfg_smid_value_f(u32 v)
2298{
2299 return (v & 0xffff) << 0;
2300}
2301static inline u32 gr_gpc0_tpc0_sm_cfg_r(void)
2302{
2303 return 0x00504608;
2304}
2305static inline u32 gr_gpc0_tpc0_sm_arch_r(void)
2306{
2307 return 0x00504330;
2308}
2309static inline u32 gr_gpc0_tpc0_sm_arch_warp_count_v(u32 r)
2310{
2311 return (r >> 0) & 0xff;
2312}
2313static inline u32 gr_gpc0_tpc0_sm_arch_spa_version_v(u32 r)
2314{
2315 return (r >> 8) & 0xfff;
2316}
2317static inline u32 gr_gpc0_tpc0_sm_arch_sm_version_v(u32 r)
2318{
2319 return (r >> 20) & 0xfff;
2320}
2321static inline u32 gr_gpc0_ppc0_pes_vsc_strem_r(void)
2322{
2323 return 0x00503018;
2324}
2325static inline u32 gr_gpc0_ppc0_pes_vsc_strem_master_pe_m(void)
2326{
2327 return 0x1 << 0;
2328}
2329static inline u32 gr_gpc0_ppc0_pes_vsc_strem_master_pe_true_f(void)
2330{
2331 return 0x1;
2332}
2333static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_r(void)
2334{
2335 return 0x005030c0;
2336}
2337static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_v_f(u32 v)
2338{
2339 return (v & 0x3fffff) << 0;
2340}
2341static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_v_m(void)
2342{
2343 return 0x3fffff << 0;
2344}
2345static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_v_default_v(void)
2346{
2347 return 0x00000480;
2348}
2349static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_v_gfxp_v(void)
2350{
2351 return 0x00000d10;
2352}
2353static inline u32 gr_gpc0_ppc0_cbm_beta_cb_size_v_granularity_v(void)
2354{
2355 return 0x00000020;
2356}
2357static inline u32 gr_gpc0_ppc0_cbm_beta_cb_offset_r(void)
2358{
2359 return 0x005030f4;
2360}
2361static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_size_r(void)
2362{
2363 return 0x005030e4;
2364}
2365static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_size_v_f(u32 v)
2366{
2367 return (v & 0xffff) << 0;
2368}
2369static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_size_v_m(void)
2370{
2371 return 0xffff << 0;
2372}
2373static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_size_v_default_v(void)
2374{
2375 return 0x00000800;
2376}
2377static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_size_v_granularity_v(void)
2378{
2379 return 0x00000020;
2380}
2381static inline u32 gr_gpc0_ppc0_cbm_alpha_cb_offset_r(void)
2382{
2383 return 0x005030f8;
2384}
2385static inline u32 gr_gpc0_ppc0_cbm_beta_steady_state_cb_size_r(void)
2386{
2387 return 0x005030f0;
2388}
2389static inline u32 gr_gpc0_ppc0_cbm_beta_steady_state_cb_size_v_f(u32 v)
2390{
2391 return (v & 0x3fffff) << 0;
2392}
2393static inline u32 gr_gpc0_ppc0_cbm_beta_steady_state_cb_size_v_default_v(void)
2394{
2395 return 0x00000480;
2396}
2397static inline u32 gr_gpcs_tpcs_tex_rm_cb_0_r(void)
2398{
2399 return 0x00419e00;
2400}
2401static inline u32 gr_gpcs_tpcs_tex_rm_cb_0_base_addr_43_12_f(u32 v)
2402{
2403 return (v & 0xffffffff) << 0;
2404}
2405static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_r(void)
2406{
2407 return 0x00419e04;
2408}
2409static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_size_div_128b_s(void)
2410{
2411 return 21;
2412}
2413static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_size_div_128b_f(u32 v)
2414{
2415 return (v & 0x1fffff) << 0;
2416}
2417static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_size_div_128b_m(void)
2418{
2419 return 0x1fffff << 0;
2420}
2421static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_size_div_128b_v(u32 r)
2422{
2423 return (r >> 0) & 0x1fffff;
2424}
2425static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_size_div_128b_granularity_f(void)
2426{
2427 return 0x80;
2428}
2429static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_valid_s(void)
2430{
2431 return 1;
2432}
2433static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_valid_f(u32 v)
2434{
2435 return (v & 0x1) << 31;
2436}
2437static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_valid_m(void)
2438{
2439 return 0x1 << 31;
2440}
2441static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_valid_v(u32 r)
2442{
2443 return (r >> 31) & 0x1;
2444}
2445static inline u32 gr_gpcs_tpcs_tex_rm_cb_1_valid_true_f(void)
2446{
2447 return 0x80000000;
2448}
2449static inline u32 gr_gpccs_falcon_addr_r(void)
2450{
2451 return 0x0041a0ac;
2452}
2453static inline u32 gr_gpccs_falcon_addr_lsb_s(void)
2454{
2455 return 6;
2456}
2457static inline u32 gr_gpccs_falcon_addr_lsb_f(u32 v)
2458{
2459 return (v & 0x3f) << 0;
2460}
2461static inline u32 gr_gpccs_falcon_addr_lsb_m(void)
2462{
2463 return 0x3f << 0;
2464}
2465static inline u32 gr_gpccs_falcon_addr_lsb_v(u32 r)
2466{
2467 return (r >> 0) & 0x3f;
2468}
2469static inline u32 gr_gpccs_falcon_addr_lsb_init_v(void)
2470{
2471 return 0x00000000;
2472}
2473static inline u32 gr_gpccs_falcon_addr_lsb_init_f(void)
2474{
2475 return 0x0;
2476}
2477static inline u32 gr_gpccs_falcon_addr_msb_s(void)
2478{
2479 return 6;
2480}
2481static inline u32 gr_gpccs_falcon_addr_msb_f(u32 v)
2482{
2483 return (v & 0x3f) << 6;
2484}
2485static inline u32 gr_gpccs_falcon_addr_msb_m(void)
2486{
2487 return 0x3f << 6;
2488}
2489static inline u32 gr_gpccs_falcon_addr_msb_v(u32 r)
2490{
2491 return (r >> 6) & 0x3f;
2492}
2493static inline u32 gr_gpccs_falcon_addr_msb_init_v(void)
2494{
2495 return 0x00000000;
2496}
2497static inline u32 gr_gpccs_falcon_addr_msb_init_f(void)
2498{
2499 return 0x0;
2500}
2501static inline u32 gr_gpccs_falcon_addr_ext_s(void)
2502{
2503 return 12;
2504}
2505static inline u32 gr_gpccs_falcon_addr_ext_f(u32 v)
2506{
2507 return (v & 0xfff) << 0;
2508}
2509static inline u32 gr_gpccs_falcon_addr_ext_m(void)
2510{
2511 return 0xfff << 0;
2512}
2513static inline u32 gr_gpccs_falcon_addr_ext_v(u32 r)
2514{
2515 return (r >> 0) & 0xfff;
2516}
2517static inline u32 gr_gpccs_cpuctl_r(void)
2518{
2519 return 0x0041a100;
2520}
2521static inline u32 gr_gpccs_cpuctl_startcpu_f(u32 v)
2522{
2523 return (v & 0x1) << 1;
2524}
2525static inline u32 gr_gpccs_dmactl_r(void)
2526{
2527 return 0x0041a10c;
2528}
2529static inline u32 gr_gpccs_dmactl_require_ctx_f(u32 v)
2530{
2531 return (v & 0x1) << 0;
2532}
2533static inline u32 gr_gpccs_dmactl_dmem_scrubbing_m(void)
2534{
2535 return 0x1 << 1;
2536}
2537static inline u32 gr_gpccs_dmactl_imem_scrubbing_m(void)
2538{
2539 return 0x1 << 2;
2540}
2541static inline u32 gr_gpccs_imemc_r(u32 i)
2542{
2543 return 0x0041a180 + i*16;
2544}
2545static inline u32 gr_gpccs_imemc_offs_f(u32 v)
2546{
2547 return (v & 0x3f) << 2;
2548}
2549static inline u32 gr_gpccs_imemc_blk_f(u32 v)
2550{
2551 return (v & 0xff) << 8;
2552}
2553static inline u32 gr_gpccs_imemc_aincw_f(u32 v)
2554{
2555 return (v & 0x1) << 24;
2556}
2557static inline u32 gr_gpccs_imemd_r(u32 i)
2558{
2559 return 0x0041a184 + i*16;
2560}
2561static inline u32 gr_gpccs_imemt_r(u32 i)
2562{
2563 return 0x0041a188 + i*16;
2564}
2565static inline u32 gr_gpccs_imemt__size_1_v(void)
2566{
2567 return 0x00000004;
2568}
2569static inline u32 gr_gpccs_imemt_tag_f(u32 v)
2570{
2571 return (v & 0xffff) << 0;
2572}
2573static inline u32 gr_gpccs_dmemc_r(u32 i)
2574{
2575 return 0x0041a1c0 + i*8;
2576}
2577static inline u32 gr_gpccs_dmemc_offs_f(u32 v)
2578{
2579 return (v & 0x3f) << 2;
2580}
2581static inline u32 gr_gpccs_dmemc_blk_f(u32 v)
2582{
2583 return (v & 0xff) << 8;
2584}
2585static inline u32 gr_gpccs_dmemc_aincw_f(u32 v)
2586{
2587 return (v & 0x1) << 24;
2588}
2589static inline u32 gr_gpccs_dmemd_r(u32 i)
2590{
2591 return 0x0041a1c4 + i*8;
2592}
2593static inline u32 gr_gpccs_ctxsw_mailbox_r(u32 i)
2594{
2595 return 0x0041a800 + i*4;
2596}
2597static inline u32 gr_gpccs_ctxsw_mailbox_value_f(u32 v)
2598{
2599 return (v & 0xffffffff) << 0;
2600}
2601static inline u32 gr_gpcs_swdx_bundle_cb_base_r(void)
2602{
2603 return 0x00418e24;
2604}
2605static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_s(void)
2606{
2607 return 32;
2608}
2609static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_f(u32 v)
2610{
2611 return (v & 0xffffffff) << 0;
2612}
2613static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_m(void)
2614{
2615 return 0xffffffff << 0;
2616}
2617static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_v(u32 r)
2618{
2619 return (r >> 0) & 0xffffffff;
2620}
2621static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_init_v(void)
2622{
2623 return 0x00000000;
2624}
2625static inline u32 gr_gpcs_swdx_bundle_cb_base_addr_39_8_init_f(void)
2626{
2627 return 0x0;
2628}
2629static inline u32 gr_gpcs_swdx_bundle_cb_size_r(void)
2630{
2631 return 0x00418e28;
2632}
2633static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_s(void)
2634{
2635 return 11;
2636}
2637static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_f(u32 v)
2638{
2639 return (v & 0x7ff) << 0;
2640}
2641static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_m(void)
2642{
2643 return 0x7ff << 0;
2644}
2645static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_v(u32 r)
2646{
2647 return (r >> 0) & 0x7ff;
2648}
2649static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_init_v(void)
2650{
2651 return 0x00000030;
2652}
2653static inline u32 gr_gpcs_swdx_bundle_cb_size_div_256b_init_f(void)
2654{
2655 return 0x30;
2656}
2657static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_s(void)
2658{
2659 return 1;
2660}
2661static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_f(u32 v)
2662{
2663 return (v & 0x1) << 31;
2664}
2665static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_m(void)
2666{
2667 return 0x1 << 31;
2668}
2669static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_v(u32 r)
2670{
2671 return (r >> 31) & 0x1;
2672}
2673static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_false_v(void)
2674{
2675 return 0x00000000;
2676}
2677static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_false_f(void)
2678{
2679 return 0x0;
2680}
2681static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_true_v(void)
2682{
2683 return 0x00000001;
2684}
2685static inline u32 gr_gpcs_swdx_bundle_cb_size_valid_true_f(void)
2686{
2687 return 0x80000000;
2688}
2689static inline u32 gr_gpc0_swdx_rm_spill_buffer_size_r(void)
2690{
2691 return 0x005001dc;
2692}
2693static inline u32 gr_gpc0_swdx_rm_spill_buffer_size_256b_f(u32 v)
2694{
2695 return (v & 0xffff) << 0;
2696}
2697static inline u32 gr_gpc0_swdx_rm_spill_buffer_size_256b_default_v(void)
2698{
2699 return 0x00000de0;
2700}
2701static inline u32 gr_gpc0_swdx_rm_spill_buffer_size_256b_byte_granularity_v(void)
2702{
2703 return 0x00000100;
2704}
2705static inline u32 gr_gpc0_swdx_rm_spill_buffer_addr_r(void)
2706{
2707 return 0x005001d8;
2708}
2709static inline u32 gr_gpc0_swdx_rm_spill_buffer_addr_39_8_f(u32 v)
2710{
2711 return (v & 0xffffffff) << 0;
2712}
2713static inline u32 gr_gpc0_swdx_rm_spill_buffer_addr_39_8_align_bits_v(void)
2714{
2715 return 0x00000008;
2716}
2717static inline u32 gr_gpcs_swdx_beta_cb_ctrl_r(void)
2718{
2719 return 0x004181e4;
2720}
2721static inline u32 gr_gpcs_swdx_beta_cb_ctrl_cbes_reserve_f(u32 v)
2722{
2723 return (v & 0xfff) << 0;
2724}
2725static inline u32 gr_gpcs_swdx_beta_cb_ctrl_cbes_reserve_gfxp_v(void)
2726{
2727 return 0x00000100;
2728}
2729static inline u32 gr_gpcs_ppcs_cbm_beta_cb_ctrl_r(void)
2730{
2731 return 0x0041befc;
2732}
2733static inline u32 gr_gpcs_ppcs_cbm_beta_cb_ctrl_cbes_reserve_f(u32 v)
2734{
2735 return (v & 0xfff) << 0;
2736}
2737static inline u32 gr_gpcs_swdx_tc_beta_cb_size_r(u32 i)
2738{
2739 return 0x00418ea0 + i*4;
2740}
2741static inline u32 gr_gpcs_swdx_tc_beta_cb_size_v_f(u32 v)
2742{
2743 return (v & 0x3fffff) << 0;
2744}
2745static inline u32 gr_gpcs_swdx_tc_beta_cb_size_v_m(void)
2746{
2747 return 0x3fffff << 0;
2748}
2749static inline u32 gr_gpcs_swdx_dss_zbc_color_r_r(u32 i)
2750{
2751 return 0x00418010 + i*4;
2752}
2753static inline u32 gr_gpcs_swdx_dss_zbc_color_r_val_f(u32 v)
2754{
2755 return (v & 0xffffffff) << 0;
2756}
2757static inline u32 gr_gpcs_swdx_dss_zbc_color_g_r(u32 i)
2758{
2759 return 0x0041804c + i*4;
2760}
2761static inline u32 gr_gpcs_swdx_dss_zbc_color_g_val_f(u32 v)
2762{
2763 return (v & 0xffffffff) << 0;
2764}
2765static inline u32 gr_gpcs_swdx_dss_zbc_color_b_r(u32 i)
2766{
2767 return 0x00418088 + i*4;
2768}
2769static inline u32 gr_gpcs_swdx_dss_zbc_color_b_val_f(u32 v)
2770{
2771 return (v & 0xffffffff) << 0;
2772}
2773static inline u32 gr_gpcs_swdx_dss_zbc_color_a_r(u32 i)
2774{
2775 return 0x004180c4 + i*4;
2776}
2777static inline u32 gr_gpcs_swdx_dss_zbc_color_a_val_f(u32 v)
2778{
2779 return (v & 0xffffffff) << 0;
2780}
2781static inline u32 gr_gpcs_swdx_dss_zbc_c_01_to_04_format_r(void)
2782{
2783 return 0x00500100;
2784}
2785static inline u32 gr_gpcs_swdx_dss_zbc_z_r(u32 i)
2786{
2787 return 0x00418110 + i*4;
2788}
2789static inline u32 gr_gpcs_swdx_dss_zbc_z_val_f(u32 v)
2790{
2791 return (v & 0xffffffff) << 0;
2792}
2793static inline u32 gr_gpcs_swdx_dss_zbc_z_01_to_04_format_r(void)
2794{
2795 return 0x0050014c;
2796}
2797static inline u32 gr_gpcs_setup_attrib_cb_base_r(void)
2798{
2799 return 0x00418810;
2800}
2801static inline u32 gr_gpcs_setup_attrib_cb_base_addr_39_12_f(u32 v)
2802{
2803 return (v & 0xfffffff) << 0;
2804}
2805static inline u32 gr_gpcs_setup_attrib_cb_base_addr_39_12_align_bits_v(void)
2806{
2807 return 0x0000000c;
2808}
2809static inline u32 gr_gpcs_setup_attrib_cb_base_valid_true_f(void)
2810{
2811 return 0x80000000;
2812}
2813static inline u32 gr_crstr_map_table_cfg_r(void)
2814{
2815 return 0x00418bb8;
2816}
2817static inline u32 gr_crstr_map_table_cfg_row_offset_f(u32 v)
2818{
2819 return (v & 0xff) << 0;
2820}
2821static inline u32 gr_crstr_map_table_cfg_num_entries_f(u32 v)
2822{
2823 return (v & 0xff) << 8;
2824}
2825static inline u32 gr_gpcs_gpm_pd_cfg_r(void)
2826{
2827 return 0x00418c6c;
2828}
2829static inline u32 gr_gpcs_gpm_pd_cfg_timeslice_mode_disable_f(void)
2830{
2831 return 0x0;
2832}
2833static inline u32 gr_gpcs_gpm_pd_cfg_timeslice_mode_enable_f(void)
2834{
2835 return 0x1;
2836}
2837static inline u32 gr_gpcs_gcc_pagepool_base_r(void)
2838{
2839 return 0x00419004;
2840}
2841static inline u32 gr_gpcs_gcc_pagepool_base_addr_39_8_f(u32 v)
2842{
2843 return (v & 0xffffffff) << 0;
2844}
2845static inline u32 gr_gpcs_gcc_pagepool_r(void)
2846{
2847 return 0x00419008;
2848}
2849static inline u32 gr_gpcs_gcc_pagepool_total_pages_f(u32 v)
2850{
2851 return (v & 0x3ff) << 0;
2852}
2853static inline u32 gr_gpcs_tpcs_pe_vaf_r(void)
2854{
2855 return 0x0041980c;
2856}
2857static inline u32 gr_gpcs_tpcs_pe_vaf_fast_mode_switch_true_f(void)
2858{
2859 return 0x10;
2860}
2861static inline u32 gr_gpcs_tpcs_pe_pin_cb_global_base_addr_r(void)
2862{
2863 return 0x00419848;
2864}
2865static inline u32 gr_gpcs_tpcs_pe_pin_cb_global_base_addr_v_f(u32 v)
2866{
2867 return (v & 0xfffffff) << 0;
2868}
2869static inline u32 gr_gpcs_tpcs_pe_pin_cb_global_base_addr_valid_f(u32 v)
2870{
2871 return (v & 0x1) << 28;
2872}
2873static inline u32 gr_gpcs_tpcs_pe_pin_cb_global_base_addr_valid_true_f(void)
2874{
2875 return 0x10000000;
2876}
2877static inline u32 gr_gpcs_tpcs_mpc_vtg_debug_r(void)
2878{
2879 return 0x00419c00;
2880}
2881static inline u32 gr_gpcs_tpcs_mpc_vtg_debug_timeslice_mode_disabled_f(void)
2882{
2883 return 0x0;
2884}
2885static inline u32 gr_gpcs_tpcs_mpc_vtg_debug_timeslice_mode_enabled_f(void)
2886{
2887 return 0x8;
2888}
2889static inline u32 gr_gpcs_tpcs_mpc_vtg_cb_global_base_addr_r(void)
2890{
2891 return 0x00419c2c;
2892}
2893static inline u32 gr_gpcs_tpcs_mpc_vtg_cb_global_base_addr_v_f(u32 v)
2894{
2895 return (v & 0xfffffff) << 0;
2896}
2897static inline u32 gr_gpcs_tpcs_mpc_vtg_cb_global_base_addr_valid_f(u32 v)
2898{
2899 return (v & 0x1) << 28;
2900}
2901static inline u32 gr_gpcs_tpcs_mpc_vtg_cb_global_base_addr_valid_true_f(void)
2902{
2903 return 0x10000000;
2904}
2905static inline u32 gr_gpcs_tpcs_tpccs_tpc_exception_en_r(void)
2906{
2907 return 0x00419d0c;
2908}
2909static inline u32 gr_gpcs_tpcs_tpccs_tpc_exception_en_sm_enabled_f(void)
2910{
2911 return 0x2;
2912}
2913static inline u32 gr_gpcs_tpcs_tpccs_tpc_exception_en_tex_enabled_f(void)
2914{
2915 return 0x1;
2916}
2917static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_en_r(void)
2918{
2919 return 0x0050450c;
2920}
2921static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_en_sm_v(u32 r)
2922{
2923 return (r >> 1) & 0x1;
2924}
2925static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_en_sm_enabled_f(void)
2926{
2927 return 0x2;
2928}
2929static inline u32 gr_gpcs_gpccs_gpc_exception_en_r(void)
2930{
2931 return 0x0041ac94;
2932}
2933static inline u32 gr_gpcs_gpccs_gpc_exception_en_tpc_f(u32 v)
2934{
2935 return (v & 0xff) << 16;
2936}
2937static inline u32 gr_gpc0_gpccs_gpc_exception_r(void)
2938{
2939 return 0x00502c90;
2940}
2941static inline u32 gr_gpc0_gpccs_gpc_exception_tpc_v(u32 r)
2942{
2943 return (r >> 16) & 0xff;
2944}
2945static inline u32 gr_gpc0_gpccs_gpc_exception_tpc_0_pending_v(void)
2946{
2947 return 0x00000001;
2948}
2949static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_r(void)
2950{
2951 return 0x00504508;
2952}
2953static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_tex_v(u32 r)
2954{
2955 return (r >> 0) & 0x1;
2956}
2957static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_tex_pending_v(void)
2958{
2959 return 0x00000001;
2960}
2961static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_sm_v(u32 r)
2962{
2963 return (r >> 1) & 0x1;
2964}
2965static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_sm_pending_v(void)
2966{
2967 return 0x00000001;
2968}
2969static inline u32 gr_gpcs_tpcs_sm_hww_global_esr_r(void)
2970{
2971 return 0x00419e14;
2972}
2973static inline u32 gr_gpc0_tpc0_sm_hww_global_esr_r(void)
2974{
2975 return 0x00504614;
2976}
2977static inline u32 gr_gpc0_tpc0_tex_m_hww_esr_r(void)
2978{
2979 return 0x00504224;
2980}
2981static inline u32 gr_gpc0_tpc0_tex_m_hww_esr_intr_pending_f(void)
2982{
2983 return 0x1;
2984}
2985static inline u32 gr_gpc0_tpc0_tex_m_hww_esr_ecc_sec_pending_f(void)
2986{
2987 return 0x80;
2988}
2989static inline u32 gr_gpc0_tpc0_tex_m_hww_esr_ecc_ded_pending_f(void)
2990{
2991 return 0x100;
2992}
2993static inline u32 gr_gpc0_tpc0_sm_halfctl_ctrl_r(void)
2994{
2995 return 0x005043a0;
2996}
2997static inline u32 gr_gpcs_tpcs_sm_halfctl_ctrl_r(void)
2998{
2999 return 0x00419ba0;
3000}
3001static inline u32 gr_gpcs_tpcs_sm_halfctl_ctrl_sctl_read_quad_ctl_m(void)
3002{
3003 return 0x1 << 4;
3004}
3005static inline u32 gr_gpcs_tpcs_sm_halfctl_ctrl_sctl_read_quad_ctl_f(u32 v)
3006{
3007 return (v & 0x1) << 4;
3008}
3009static inline u32 gr_gpc0_tpc0_sm_debug_sfe_control_r(void)
3010{
3011 return 0x005043b0;
3012}
3013static inline u32 gr_gpcs_tpcs_sm_debug_sfe_control_r(void)
3014{
3015 return 0x00419bb0;
3016}
3017static inline u32 gr_gpcs_tpcs_sm_debug_sfe_control_read_half_ctl_m(void)
3018{
3019 return 0x1 << 0;
3020}
3021static inline u32 gr_gpcs_tpcs_sm_debug_sfe_control_read_half_ctl_f(u32 v)
3022{
3023 return (v & 0x1) << 0;
3024}
3025static inline u32 gr_gpcs_tpcs_pes_vsc_vpc_r(void)
3026{
3027 return 0x0041be08;
3028}
3029static inline u32 gr_gpcs_tpcs_pes_vsc_vpc_fast_mode_switch_true_f(void)
3030{
3031 return 0x4;
3032}
3033static inline u32 gr_ppcs_wwdx_map_table_cfg_r(void)
3034{
3035 return 0x0041bfd0;
3036}
3037static inline u32 gr_ppcs_wwdx_map_table_cfg_row_offset_f(u32 v)
3038{
3039 return (v & 0xff) << 0;
3040}
3041static inline u32 gr_ppcs_wwdx_map_table_cfg_num_entries_f(u32 v)
3042{
3043 return (v & 0xff) << 8;
3044}
3045static inline u32 gr_ppcs_wwdx_map_table_cfg_normalized_num_entries_f(u32 v)
3046{
3047 return (v & 0x1f) << 16;
3048}
3049static inline u32 gr_ppcs_wwdx_map_table_cfg_normalized_shift_value_f(u32 v)
3050{
3051 return (v & 0x7) << 21;
3052}
3053static inline u32 gr_gpcs_ppcs_wwdx_sm_num_rcp_r(void)
3054{
3055 return 0x0041bfd4;
3056}
3057static inline u32 gr_gpcs_ppcs_wwdx_sm_num_rcp_conservative_f(u32 v)
3058{
3059 return (v & 0xffffff) << 0;
3060}
3061static inline u32 gr_bes_zrop_settings_r(void)
3062{
3063 return 0x00408850;
3064}
3065static inline u32 gr_bes_zrop_settings_num_active_ltcs_f(u32 v)
3066{
3067 return (v & 0xf) << 0;
3068}
3069static inline u32 gr_be0_crop_debug3_r(void)
3070{
3071 return 0x00410108;
3072}
3073static inline u32 gr_bes_crop_debug3_r(void)
3074{
3075 return 0x00408908;
3076}
3077static inline u32 gr_bes_crop_debug3_comp_vdc_4to2_disable_m(void)
3078{
3079 return 0x1 << 31;
3080}
3081static inline u32 gr_bes_crop_settings_r(void)
3082{
3083 return 0x00408958;
3084}
3085static inline u32 gr_bes_crop_settings_num_active_ltcs_f(u32 v)
3086{
3087 return (v & 0xf) << 0;
3088}
3089static inline u32 gr_zcull_bytes_per_aliquot_per_gpu_v(void)
3090{
3091 return 0x00000020;
3092}
3093static inline u32 gr_zcull_save_restore_header_bytes_per_gpc_v(void)
3094{
3095 return 0x00000020;
3096}
3097static inline u32 gr_zcull_save_restore_subregion_header_bytes_per_gpc_v(void)
3098{
3099 return 0x000000c0;
3100}
3101static inline u32 gr_zcull_subregion_qty_v(void)
3102{
3103 return 0x00000010;
3104}
3105static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control_sel0_r(void)
3106{
3107 return 0x00504308;
3108}
3109static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control_sel1_r(void)
3110{
3111 return 0x0050430c;
3112}
3113static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control0_r(void)
3114{
3115 return 0x00504318;
3116}
3117static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control1_r(void)
3118{
3119 return 0x00504320;
3120}
3121static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control2_r(void)
3122{
3123 return 0x00504324;
3124}
3125static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control3_r(void)
3126{
3127 return 0x00504328;
3128}
3129static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control4_r(void)
3130{
3131 return 0x0050432c;
3132}
3133static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter_control5_r(void)
3134{
3135 return 0x0050431c;
3136}
3137static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter0_control_r(void)
3138{
3139 return 0x00504378;
3140}
3141static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter1_control_r(void)
3142{
3143 return 0x0050437c;
3144}
3145static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter2_control_r(void)
3146{
3147 return 0x00504380;
3148}
3149static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter3_control_r(void)
3150{
3151 return 0x00504384;
3152}
3153static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter4_control_r(void)
3154{
3155 return 0x00504388;
3156}
3157static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter5_control_r(void)
3158{
3159 return 0x0050438c;
3160}
3161static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter6_control_r(void)
3162{
3163 return 0x00504390;
3164}
3165static inline u32 gr_pri_gpc0_tpc0_sm_dsm_perf_counter7_control_r(void)
3166{
3167 return 0x00504394;
3168}
3169static inline u32 gr_fe_pwr_mode_r(void)
3170{
3171 return 0x00404170;
3172}
3173static inline u32 gr_fe_pwr_mode_mode_auto_f(void)
3174{
3175 return 0x0;
3176}
3177static inline u32 gr_fe_pwr_mode_mode_force_on_f(void)
3178{
3179 return 0x2;
3180}
3181static inline u32 gr_fe_pwr_mode_req_v(u32 r)
3182{
3183 return (r >> 4) & 0x1;
3184}
3185static inline u32 gr_fe_pwr_mode_req_send_f(void)
3186{
3187 return 0x10;
3188}
3189static inline u32 gr_fe_pwr_mode_req_done_v(void)
3190{
3191 return 0x00000000;
3192}
3193static inline u32 gr_gpcs_pri_mmu_ctrl_r(void)
3194{
3195 return 0x00418880;
3196}
3197static inline u32 gr_gpcs_pri_mmu_ctrl_vm_pg_size_m(void)
3198{
3199 return 0x1 << 0;
3200}
3201static inline u32 gr_gpcs_pri_mmu_ctrl_use_pdb_big_page_size_m(void)
3202{
3203 return 0x1 << 11;
3204}
3205static inline u32 gr_gpcs_pri_mmu_ctrl_vol_fault_m(void)
3206{
3207 return 0x1 << 1;
3208}
3209static inline u32 gr_gpcs_pri_mmu_ctrl_comp_fault_m(void)
3210{
3211 return 0x1 << 2;
3212}
3213static inline u32 gr_gpcs_pri_mmu_ctrl_miss_gran_m(void)
3214{
3215 return 0x3 << 3;
3216}
3217static inline u32 gr_gpcs_pri_mmu_ctrl_cache_mode_m(void)
3218{
3219 return 0x3 << 5;
3220}
3221static inline u32 gr_gpcs_pri_mmu_ctrl_mmu_aperture_m(void)
3222{
3223 return 0x3 << 28;
3224}
3225static inline u32 gr_gpcs_pri_mmu_ctrl_mmu_vol_m(void)
3226{
3227 return 0x1 << 30;
3228}
3229static inline u32 gr_gpcs_pri_mmu_ctrl_mmu_disable_m(void)
3230{
3231 return 0x1 << 31;
3232}
3233static inline u32 gr_gpcs_pri_mmu_pm_unit_mask_r(void)
3234{
3235 return 0x00418890;
3236}
3237static inline u32 gr_gpcs_pri_mmu_pm_req_mask_r(void)
3238{
3239 return 0x00418894;
3240}
3241static inline u32 gr_gpcs_pri_mmu_debug_ctrl_r(void)
3242{
3243 return 0x004188b0;
3244}
3245static inline u32 gr_gpcs_pri_mmu_debug_ctrl_debug_v(u32 r)
3246{
3247 return (r >> 16) & 0x1;
3248}
3249static inline u32 gr_gpcs_pri_mmu_debug_ctrl_debug_enabled_v(void)
3250{
3251 return 0x00000001;
3252}
3253static inline u32 gr_gpcs_pri_mmu_debug_wr_r(void)
3254{
3255 return 0x004188b4;
3256}
3257static inline u32 gr_gpcs_pri_mmu_debug_rd_r(void)
3258{
3259 return 0x004188b8;
3260}
3261static inline u32 gr_gpcs_mmu_num_active_ltcs_r(void)
3262{
3263 return 0x004188ac;
3264}
3265static inline u32 gr_fe_gfxp_wfi_timeout_r(void)
3266{
3267 return 0x004041c0;
3268}
3269static inline u32 gr_fe_gfxp_wfi_timeout_count_f(u32 v)
3270{
3271 return (v & 0xffffffff) << 0;
3272}
3273static inline u32 gr_fe_gfxp_wfi_timeout_count_disabled_f(void)
3274{
3275 return 0x0;
3276}
3277static inline u32 gr_gpcs_tpcs_sm_texio_control_r(void)
3278{
3279 return 0x00419bd8;
3280}
3281static inline u32 gr_gpcs_tpcs_sm_texio_control_oor_addr_check_mode_f(u32 v)
3282{
3283 return (v & 0x7) << 8;
3284}
3285static inline u32 gr_gpcs_tpcs_sm_texio_control_oor_addr_check_mode_m(void)
3286{
3287 return 0x7 << 8;
3288}
3289static inline u32 gr_gpcs_tpcs_sm_texio_control_oor_addr_check_mode_arm_63_48_match_f(void)
3290{
3291 return 0x100;
3292}
3293static inline u32 gr_gpcs_tpcs_sm_disp_ctrl_r(void)
3294{
3295 return 0x00419ba4;
3296}
3297static inline u32 gr_gpcs_tpcs_sm_disp_ctrl_re_suppress_m(void)
3298{
3299 return 0x3 << 11;
3300}
3301static inline u32 gr_gpcs_tpcs_sm_disp_ctrl_re_suppress_disable_f(void)
3302{
3303 return 0x1000;
3304}
3305static inline u32 gr_gpcs_tc_debug0_r(void)
3306{
3307 return 0x00418708;
3308}
3309static inline u32 gr_gpcs_tc_debug0_limit_coalesce_buffer_size_f(u32 v)
3310{
3311 return (v & 0x1ff) << 0;
3312}
3313static inline u32 gr_gpcs_tc_debug0_limit_coalesce_buffer_size_m(void)
3314{
3315 return 0x1ff << 0;
3316}
3317#endif