xref: /aosp_15_r20/external/mesa3d/src/amd/drm-shim/amdgpu_devices.c (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard Worker /*
2*61046927SAndroid Build Coastguard Worker  * Copyright 2023 Google LLC
3*61046927SAndroid Build Coastguard Worker  * SPDX-License-Identifier: MIT
4*61046927SAndroid Build Coastguard Worker  */
5*61046927SAndroid Build Coastguard Worker 
6*61046927SAndroid Build Coastguard Worker #include "amdgpu_devices.h"
7*61046927SAndroid Build Coastguard Worker #include "util/macros.h"
8*61046927SAndroid Build Coastguard Worker 
9*61046927SAndroid Build Coastguard Worker const struct amdgpu_device amdgpu_devices[] = {
10*61046927SAndroid Build Coastguard Worker    {
11*61046927SAndroid Build Coastguard Worker       .name = "renoir",
12*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_RENOIR,
13*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
14*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
15*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
16*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
17*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
18*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x90300,
19*61046927SAndroid Build Coastguard Worker       },
20*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
21*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
22*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
23*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
24*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
25*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x90300,
26*61046927SAndroid Build Coastguard Worker       },
27*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
28*61046927SAndroid Build Coastguard Worker          .ver = 166,
29*61046927SAndroid Build Coastguard Worker          .feature = 53,
30*61046927SAndroid Build Coastguard Worker       },
31*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
32*61046927SAndroid Build Coastguard Worker          .ver = 194,
33*61046927SAndroid Build Coastguard Worker          .feature = 53,
34*61046927SAndroid Build Coastguard Worker       },
35*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
36*61046927SAndroid Build Coastguard Worker          .ver = 464,
37*61046927SAndroid Build Coastguard Worker          .feature = 53,
38*61046927SAndroid Build Coastguard Worker       },
39*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
40*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x26010042,
41*61046927SAndroid Build Coastguard Worker       },
42*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
43*61046927SAndroid Build Coastguard Worker       .dev = {
44*61046927SAndroid Build Coastguard Worker          .device_id = 0x15e7,
45*61046927SAndroid Build Coastguard Worker          .external_rev = 0xa1,
46*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xe9,
47*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_RV,
48*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
49*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
50*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
51*61046927SAndroid Build Coastguard Worker          .max_engine_clock = 1800000,
52*61046927SAndroid Build Coastguard Worker          .max_memory_clock = 1333000,
53*61046927SAndroid Build Coastguard Worker          .cu_active_number = 7,
54*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0xfe,
55*61046927SAndroid Build Coastguard Worker          .cu_bitmap[0][0] = 0xfe,
56*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x3,
57*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 2,
58*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
59*61046927SAndroid Build Coastguard Worker          .ids_flags = 0x5,
60*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = 0x200000,
61*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
62*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
63*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
64*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
65*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
66*61046927SAndroid Build Coastguard Worker          .vram_type = 11,
67*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
68*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
69*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
70*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
71*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 8,
72*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
73*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
74*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
75*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
76*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap[0][0] = 0xfe,
77*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
78*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
79*61046927SAndroid Build Coastguard Worker       },
80*61046927SAndroid Build Coastguard Worker       .mem = {
81*61046927SAndroid Build Coastguard Worker          .vram = {
82*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(64) << 20,
83*61046927SAndroid Build Coastguard Worker          },
84*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
85*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(64) << 20,
86*61046927SAndroid Build Coastguard Worker          },
87*61046927SAndroid Build Coastguard Worker          .gtt = {
88*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(4096) << 20,
89*61046927SAndroid Build Coastguard Worker          },
90*61046927SAndroid Build Coastguard Worker       },
91*61046927SAndroid Build Coastguard Worker    },
92*61046927SAndroid Build Coastguard Worker    {
93*61046927SAndroid Build Coastguard Worker       .name = "raven",
94*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_RAVEN,
95*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
96*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
97*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
98*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
99*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
100*61046927SAndroid Build Coastguard Worker       },
101*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
102*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
103*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
104*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
105*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
106*61046927SAndroid Build Coastguard Worker       },
107*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
108*61046927SAndroid Build Coastguard Worker          .ver = 162,
109*61046927SAndroid Build Coastguard Worker          .feature = 47,
110*61046927SAndroid Build Coastguard Worker       },
111*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
112*61046927SAndroid Build Coastguard Worker          .ver = 185,
113*61046927SAndroid Build Coastguard Worker          .feature = 47,
114*61046927SAndroid Build Coastguard Worker       },
115*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
116*61046927SAndroid Build Coastguard Worker          .ver = 427,
117*61046927SAndroid Build Coastguard Worker          .feature = 47,
118*61046927SAndroid Build Coastguard Worker       },
119*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
120*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x24000042,
121*61046927SAndroid Build Coastguard Worker       },
122*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
123*61046927SAndroid Build Coastguard Worker       .dev = {
124*61046927SAndroid Build Coastguard Worker          .device_id = 0x15d8,
125*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
126*61046927SAndroid Build Coastguard Worker          .external_rev = 0x42,
127*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc1,
128*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_RV,
129*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
130*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
131*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 25000,
132*61046927SAndroid Build Coastguard Worker          .max_engine_clock = 1400000,
133*61046927SAndroid Build Coastguard Worker          .max_memory_clock = 1200000,
134*61046927SAndroid Build Coastguard Worker          .cu_active_number = 10,
135*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x3ff,
136*61046927SAndroid Build Coastguard Worker          .cu_bitmap[0][0] = 0x3ff,
137*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x3,
138*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 2,
139*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
140*61046927SAndroid Build Coastguard Worker          .ids_flags = 0x1,
141*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = 0x200000,
142*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
143*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
144*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
145*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
146*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
147*61046927SAndroid Build Coastguard Worker          .vram_type = 8,
148*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
149*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
150*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
151*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
152*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 11,
153*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
154*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
155*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
156*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
157*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap[0][0] = 0x3ff,
158*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
159*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
160*61046927SAndroid Build Coastguard Worker       },
161*61046927SAndroid Build Coastguard Worker       .mem = {
162*61046927SAndroid Build Coastguard Worker          .vram = {
163*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(64) << 20,
164*61046927SAndroid Build Coastguard Worker          },
165*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
166*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(64) << 20,
167*61046927SAndroid Build Coastguard Worker          },
168*61046927SAndroid Build Coastguard Worker          .gtt = {
169*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(3072) << 20,
170*61046927SAndroid Build Coastguard Worker          },
171*61046927SAndroid Build Coastguard Worker       },
172*61046927SAndroid Build Coastguard Worker    },
173*61046927SAndroid Build Coastguard Worker    {
174*61046927SAndroid Build Coastguard Worker       .name = "raven2",
175*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_RAVEN2,
176*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
177*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
178*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
179*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
180*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
181*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
182*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
183*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
184*61046927SAndroid Build Coastguard Worker       },
185*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
186*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
187*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
188*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
189*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
190*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
191*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
192*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
193*61046927SAndroid Build Coastguard Worker       },
194*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
195*61046927SAndroid Build Coastguard Worker          .ver = 166,
196*61046927SAndroid Build Coastguard Worker          .feature = 53,
197*61046927SAndroid Build Coastguard Worker       },
198*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
199*61046927SAndroid Build Coastguard Worker          .ver = 194,
200*61046927SAndroid Build Coastguard Worker          .feature = 53,
201*61046927SAndroid Build Coastguard Worker       },
202*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
203*61046927SAndroid Build Coastguard Worker          .ver = 464,
204*61046927SAndroid Build Coastguard Worker          .feature = 53,
205*61046927SAndroid Build Coastguard Worker       },
206*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
207*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x26013041,
208*61046927SAndroid Build Coastguard Worker       },
209*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
210*61046927SAndroid Build Coastguard Worker       .dev = {
211*61046927SAndroid Build Coastguard Worker          .device_id = 0x15d8,
212*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x09,
213*61046927SAndroid Build Coastguard Worker          .external_rev = 0x82,
214*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xea,
215*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_RV,
216*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
217*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
218*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
219*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(600000),
220*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(800000),
221*61046927SAndroid Build Coastguard Worker          .cu_active_number = 3,
222*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x7,
223*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
224*61046927SAndroid Build Coastguard Worker             { 0x7, 0x0, 0x0, 0x0, },
225*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
226*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
227*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
228*61046927SAndroid Build Coastguard Worker          },
229*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x1,
230*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 1,
231*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
232*61046927SAndroid Build Coastguard Worker          .pcie_gen = 0,
233*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x1),
234*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
235*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
236*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
237*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
238*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
239*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
240*61046927SAndroid Build Coastguard Worker          .vram_type = 8,
241*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 64,
242*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
243*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
244*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
245*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
246*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
247*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
248*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
249*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
250*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
251*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
252*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
253*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
254*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 3,
255*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 2,
256*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
257*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
258*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
259*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 0,
260*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
261*61046927SAndroid Build Coastguard Worker             { 0x7, 0x0, 0x0, 0x0, },
262*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
263*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
264*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
265*61046927SAndroid Build Coastguard Worker          },
266*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
267*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
268*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
269*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
270*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(0),
271*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(0),
272*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
273*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
274*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
275*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
276*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
277*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
278*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
279*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
280*61046927SAndroid Build Coastguard Worker       },
281*61046927SAndroid Build Coastguard Worker       .mem = {
282*61046927SAndroid Build Coastguard Worker          .vram = {
283*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(67108864),
284*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(50491392),
285*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(51437568),
286*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(37868544),
287*61046927SAndroid Build Coastguard Worker          },
288*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
289*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(67108864),
290*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(50491392),
291*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(51437568),
292*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(37868544),
293*61046927SAndroid Build Coastguard Worker          },
294*61046927SAndroid Build Coastguard Worker          .gtt = {
295*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(3057070080),
296*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(3052445696),
297*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(62390272),
298*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(2289334272),
299*61046927SAndroid Build Coastguard Worker          },
300*61046927SAndroid Build Coastguard Worker       },
301*61046927SAndroid Build Coastguard Worker    },
302*61046927SAndroid Build Coastguard Worker    {
303*61046927SAndroid Build Coastguard Worker       .name = "stoney",
304*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_STONEY,
305*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
306*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
307*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 1,
308*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
309*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
310*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
311*61046927SAndroid Build Coastguard Worker       },
312*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
313*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
314*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 1,
315*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
316*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
317*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
318*61046927SAndroid Build Coastguard Worker       },
319*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
320*61046927SAndroid Build Coastguard Worker          .ver = 52,
321*61046927SAndroid Build Coastguard Worker          .feature = 35,
322*61046927SAndroid Build Coastguard Worker       },
323*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
324*61046927SAndroid Build Coastguard Worker          .ver = 77,
325*61046927SAndroid Build Coastguard Worker          .feature = 35,
326*61046927SAndroid Build Coastguard Worker       },
327*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
328*61046927SAndroid Build Coastguard Worker          .ver = 134,
329*61046927SAndroid Build Coastguard Worker          .feature = 35,
330*61046927SAndroid Build Coastguard Worker       },
331*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
332*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x02010001,
333*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff00, 0x00000000,
334*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff00, 0x00000000,
335*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff00, 0x00000000,
336*61046927SAndroid Build Coastguard Worker          0x09d8, 0xffffffff, 0x00007111,
337*61046927SAndroid Build Coastguard Worker          0x2644, 0xffffffff, 0x00800010,
338*61046927SAndroid Build Coastguard Worker          0x2645, 0xffffffff, 0x00800810,
339*61046927SAndroid Build Coastguard Worker          0x2646, 0xffffffff, 0x00801010,
340*61046927SAndroid Build Coastguard Worker          0x2647, 0xffffffff, 0x00801810,
341*61046927SAndroid Build Coastguard Worker          0x2648, 0xffffffff, 0x00802810,
342*61046927SAndroid Build Coastguard Worker          0x2649, 0xffffffff, 0x00802808,
343*61046927SAndroid Build Coastguard Worker          0x264a, 0xffffffff, 0x00802814,
344*61046927SAndroid Build Coastguard Worker          0x264b, 0xffffffff, 0x00000000,
345*61046927SAndroid Build Coastguard Worker          0x264c, 0xffffffff, 0x00000004,
346*61046927SAndroid Build Coastguard Worker          0x264d, 0xffffffff, 0x02000008,
347*61046927SAndroid Build Coastguard Worker          0x264e, 0xffffffff, 0x02000010,
348*61046927SAndroid Build Coastguard Worker          0x264f, 0xffffffff, 0x06000014,
349*61046927SAndroid Build Coastguard Worker          0x2650, 0xffffffff, 0x00000000,
350*61046927SAndroid Build Coastguard Worker          0x2651, 0xffffffff, 0x02400008,
351*61046927SAndroid Build Coastguard Worker          0x2652, 0xffffffff, 0x02400010,
352*61046927SAndroid Build Coastguard Worker          0x2653, 0xffffffff, 0x02400030,
353*61046927SAndroid Build Coastguard Worker          0x2654, 0xffffffff, 0x06400014,
354*61046927SAndroid Build Coastguard Worker          0x2655, 0xffffffff, 0x00000000,
355*61046927SAndroid Build Coastguard Worker          0x2656, 0xffffffff, 0x0040000c,
356*61046927SAndroid Build Coastguard Worker          0x2657, 0xffffffff, 0x0100000c,
357*61046927SAndroid Build Coastguard Worker          0x2658, 0xffffffff, 0x0100001c,
358*61046927SAndroid Build Coastguard Worker          0x2659, 0xffffffff, 0x01000034,
359*61046927SAndroid Build Coastguard Worker          0x265a, 0xffffffff, 0x01000024,
360*61046927SAndroid Build Coastguard Worker          0x265b, 0xffffffff, 0x00000000,
361*61046927SAndroid Build Coastguard Worker          0x265c, 0xffffffff, 0x0040001c,
362*61046927SAndroid Build Coastguard Worker          0x265d, 0xffffffff, 0x01000020,
363*61046927SAndroid Build Coastguard Worker          0x265e, 0xffffffff, 0x01000038,
364*61046927SAndroid Build Coastguard Worker          0x265f, 0xffffffff, 0x02c00008,
365*61046927SAndroid Build Coastguard Worker          0x2660, 0xffffffff, 0x02c00010,
366*61046927SAndroid Build Coastguard Worker          0x2661, 0xffffffff, 0x06c00014,
367*61046927SAndroid Build Coastguard Worker          0x2662, 0xffffffff, 0x00000000,
368*61046927SAndroid Build Coastguard Worker          0x2663, 0xffffffff, 0x00000000,
369*61046927SAndroid Build Coastguard Worker          0x2664, 0xffffffff, 0x000000a8,
370*61046927SAndroid Build Coastguard Worker          0x2665, 0xffffffff, 0x000000a4,
371*61046927SAndroid Build Coastguard Worker          0x2666, 0xffffffff, 0x00000090,
372*61046927SAndroid Build Coastguard Worker          0x2667, 0xffffffff, 0x00000090,
373*61046927SAndroid Build Coastguard Worker          0x2668, 0xffffffff, 0x00000090,
374*61046927SAndroid Build Coastguard Worker          0x2669, 0xffffffff, 0x00000090,
375*61046927SAndroid Build Coastguard Worker          0x266a, 0xffffffff, 0x00000090,
376*61046927SAndroid Build Coastguard Worker          0x266b, 0xffffffff, 0x00000000,
377*61046927SAndroid Build Coastguard Worker          0x266c, 0xffffffff, 0x000000ee,
378*61046927SAndroid Build Coastguard Worker          0x266d, 0xffffffff, 0x000000ea,
379*61046927SAndroid Build Coastguard Worker          0x266e, 0xffffffff, 0x000000e9,
380*61046927SAndroid Build Coastguard Worker          0x266f, 0xffffffff, 0x000000e5,
381*61046927SAndroid Build Coastguard Worker          0x2670, 0xffffffff, 0x000000e4,
382*61046927SAndroid Build Coastguard Worker          0x2671, 0xffffffff, 0x000000e0,
383*61046927SAndroid Build Coastguard Worker          0x2672, 0xffffffff, 0x00000090,
384*61046927SAndroid Build Coastguard Worker          0x2673, 0xffffffff, 0x00000000,
385*61046927SAndroid Build Coastguard Worker       },
386*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 53,
387*61046927SAndroid Build Coastguard Worker       .dev = {
388*61046927SAndroid Build Coastguard Worker          .device_id = 0x98e4,
389*61046927SAndroid Build Coastguard Worker          .external_rev = 0x61,
390*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xeb,
391*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_CZ,
392*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
393*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
394*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 48000,
395*61046927SAndroid Build Coastguard Worker          .max_engine_clock = 600000,
396*61046927SAndroid Build Coastguard Worker          .max_memory_clock = 933000,
397*61046927SAndroid Build Coastguard Worker          .cu_active_number = 3,
398*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x3,
399*61046927SAndroid Build Coastguard Worker          .cu_bitmap[0][0] = 0x7,
400*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x1,
401*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 1,
402*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
403*61046927SAndroid Build Coastguard Worker          .ids_flags = 0x1,
404*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = 0x200000,
405*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0xfffe00000),
406*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
407*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
408*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
409*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
410*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 64,
411*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 2,
412*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
413*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
414*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 3,
415*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 2,
416*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 16,
417*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap[0][0] = 0x3,
418*61046927SAndroid Build Coastguard Worker       },
419*61046927SAndroid Build Coastguard Worker       .mem = {
420*61046927SAndroid Build Coastguard Worker          .vram = {
421*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16) << 20,
422*61046927SAndroid Build Coastguard Worker          },
423*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
424*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16) << 20,
425*61046927SAndroid Build Coastguard Worker          },
426*61046927SAndroid Build Coastguard Worker          .gtt = {
427*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(3072) << 20,
428*61046927SAndroid Build Coastguard Worker          },
429*61046927SAndroid Build Coastguard Worker       },
430*61046927SAndroid Build Coastguard Worker    },
431*61046927SAndroid Build Coastguard Worker    {
432*61046927SAndroid Build Coastguard Worker       .name = "vangogh",
433*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_VANGOGH,
434*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
435*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
436*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
437*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
438*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
439*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
440*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
441*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
442*61046927SAndroid Build Coastguard Worker       },
443*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
444*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
445*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
446*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
447*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
448*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
449*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
450*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
451*61046927SAndroid Build Coastguard Worker       },
452*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
453*61046927SAndroid Build Coastguard Worker          .ver = 64,
454*61046927SAndroid Build Coastguard Worker          .feature = 41,
455*61046927SAndroid Build Coastguard Worker       },
456*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
457*61046927SAndroid Build Coastguard Worker          .ver = 95,
458*61046927SAndroid Build Coastguard Worker          .feature = 41,
459*61046927SAndroid Build Coastguard Worker       },
460*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
461*61046927SAndroid Build Coastguard Worker          .ver = 98,
462*61046927SAndroid Build Coastguard Worker          .feature = 41,
463*61046927SAndroid Build Coastguard Worker       },
464*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
465*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00000142,
466*61046927SAndroid Build Coastguard Worker       },
467*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
468*61046927SAndroid Build Coastguard Worker       .dev = {
469*61046927SAndroid Build Coastguard Worker          .device_id = 0x163f,
470*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x00,
471*61046927SAndroid Build Coastguard Worker          .external_rev = 0x01,
472*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xae,
473*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_VGH,
474*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
475*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
476*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
477*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(0),
478*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(0),
479*61046927SAndroid Build Coastguard Worker          .cu_active_number = 8,
480*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0xff,
481*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
482*61046927SAndroid Build Coastguard Worker             { 0xff, 0x0, 0x0, 0x0, },
483*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
484*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
485*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
486*61046927SAndroid Build Coastguard Worker          },
487*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x3,
488*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 2,
489*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
490*61046927SAndroid Build Coastguard Worker          .pcie_gen = 0,
491*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x1),
492*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
493*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
494*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
495*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
496*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
497*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 65536,
498*61046927SAndroid Build Coastguard Worker          .vram_type = 10,
499*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 256,
500*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
501*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
502*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
503*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
504*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
505*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
506*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
507*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
508*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
509*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
510*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
511*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1024,
512*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 8,
513*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
514*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
515*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
516*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
517*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 0,
518*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
519*61046927SAndroid Build Coastguard Worker             { 0xff, 0x0, 0x0, 0x0, },
520*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
521*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
522*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
523*61046927SAndroid Build Coastguard Worker          },
524*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
525*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
526*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
527*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
528*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(0),
529*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(0),
530*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
531*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
532*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
533*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
534*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
535*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
536*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
537*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
538*61046927SAndroid Build Coastguard Worker       },
539*61046927SAndroid Build Coastguard Worker       .mem = {
540*61046927SAndroid Build Coastguard Worker          .vram = {
541*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(1073741824),
542*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(1040584704),
543*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(344141824),
544*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(780438528),
545*61046927SAndroid Build Coastguard Worker          },
546*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
547*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(1073741824),
548*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(1040584704),
549*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(344141824),
550*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(780438528),
551*61046927SAndroid Build Coastguard Worker          },
552*61046927SAndroid Build Coastguard Worker          .gtt = {
553*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8522825728),
554*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8511004672),
555*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(79179776),
556*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6383253504),
557*61046927SAndroid Build Coastguard Worker          },
558*61046927SAndroid Build Coastguard Worker       },
559*61046927SAndroid Build Coastguard Worker    },
560*61046927SAndroid Build Coastguard Worker    {
561*61046927SAndroid Build Coastguard Worker       .name = "raphael_mendocino",
562*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_RAPHAEL_MENDOCINO,
563*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
564*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
565*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
566*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
567*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
568*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
569*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
570*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa0306,
571*61046927SAndroid Build Coastguard Worker       },
572*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
573*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
574*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
575*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
576*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
577*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
578*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
579*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa0306,
580*61046927SAndroid Build Coastguard Worker       },
581*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
582*61046927SAndroid Build Coastguard Worker          .ver = 13,
583*61046927SAndroid Build Coastguard Worker          .feature = 38,
584*61046927SAndroid Build Coastguard Worker       },
585*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
586*61046927SAndroid Build Coastguard Worker          .ver = 13,
587*61046927SAndroid Build Coastguard Worker          .feature = 38,
588*61046927SAndroid Build Coastguard Worker       },
589*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
590*61046927SAndroid Build Coastguard Worker          .ver = 18,
591*61046927SAndroid Build Coastguard Worker          .feature = 38,
592*61046927SAndroid Build Coastguard Worker       },
593*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
594*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00000042,
595*61046927SAndroid Build Coastguard Worker       },
596*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
597*61046927SAndroid Build Coastguard Worker       .dev = {
598*61046927SAndroid Build Coastguard Worker          .device_id = 0x164e,
599*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
600*61046927SAndroid Build Coastguard Worker          .external_rev = 0x02,
601*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc1,
602*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_GC_10_3_6,
603*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
604*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
605*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
606*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(200000),
607*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(2400000),
608*61046927SAndroid Build Coastguard Worker          .cu_active_number = 2,
609*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x3,
610*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
611*61046927SAndroid Build Coastguard Worker             { 0x3, 0x0, 0x0, 0x0, },
612*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
613*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
614*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
615*61046927SAndroid Build Coastguard Worker          },
616*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0x1,
617*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 1,
618*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
619*61046927SAndroid Build Coastguard Worker          .pcie_gen = 4,
620*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x1),
621*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
622*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
623*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
624*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
625*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
626*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 65536,
627*61046927SAndroid Build Coastguard Worker          .vram_type = 10,
628*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
629*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
630*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
631*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
632*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
633*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
634*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
635*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
636*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
637*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
638*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
639*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
640*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1024,
641*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 2,
642*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 2,
643*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
644*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
645*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
646*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 16,
647*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
648*61046927SAndroid Build Coastguard Worker             { 0x3, 0x0, 0x0, 0x0, },
649*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
650*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
651*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
652*61046927SAndroid Build Coastguard Worker          },
653*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
654*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
655*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
656*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
657*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(200000),
658*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(2400000),
659*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
660*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
661*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
662*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
663*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
664*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
665*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
666*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
667*61046927SAndroid Build Coastguard Worker       },
668*61046927SAndroid Build Coastguard Worker       .mem = {
669*61046927SAndroid Build Coastguard Worker          .vram = {
670*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(536870912),
671*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(512081920),
672*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(30093312),
673*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(384061440),
674*61046927SAndroid Build Coastguard Worker          },
675*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
676*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(536870912),
677*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(512081920),
678*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(30093312),
679*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(384061440),
680*61046927SAndroid Build Coastguard Worker          },
681*61046927SAndroid Build Coastguard Worker          .gtt = {
682*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(33254252544),
683*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(33241997312),
684*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(14360576),
685*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(24931497984),
686*61046927SAndroid Build Coastguard Worker          },
687*61046927SAndroid Build Coastguard Worker       },
688*61046927SAndroid Build Coastguard Worker    },
689*61046927SAndroid Build Coastguard Worker    {
690*61046927SAndroid Build Coastguard Worker       .name = "polaris10",
691*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_POLARIS10,
692*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
693*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
694*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
695*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
696*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
697*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
698*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
699*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
700*61046927SAndroid Build Coastguard Worker       },
701*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
702*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
703*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
704*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
705*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
706*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
707*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
708*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
709*61046927SAndroid Build Coastguard Worker       },
710*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
711*61046927SAndroid Build Coastguard Worker          .ver = 167,
712*61046927SAndroid Build Coastguard Worker          .feature = 49,
713*61046927SAndroid Build Coastguard Worker       },
714*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
715*61046927SAndroid Build Coastguard Worker          .ver = 254,
716*61046927SAndroid Build Coastguard Worker          .feature = 49,
717*61046927SAndroid Build Coastguard Worker       },
718*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
719*61046927SAndroid Build Coastguard Worker          .ver = 730,
720*61046927SAndroid Build Coastguard Worker          .feature = 49,
721*61046927SAndroid Build Coastguard Worker       },
722*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
723*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x22011003,
724*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff00, 0x00000000,
725*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff00, 0x16000012,
726*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff00, 0x0000002a,
727*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff01, 0x00000000,
728*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff01, 0x16000012,
729*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff01, 0x0000002a,
730*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff02, 0x00000000,
731*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff02, 0x16000012,
732*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff02, 0x0000002a,
733*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff03, 0x00000000,
734*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff03, 0x16000012,
735*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff03, 0x0000002a,
736*61046927SAndroid Build Coastguard Worker          0x09d8, 0xffffffff, 0x000060a2,
737*61046927SAndroid Build Coastguard Worker          0x2644, 0xffffffff, 0x00800310,
738*61046927SAndroid Build Coastguard Worker          0x2645, 0xffffffff, 0x00800b10,
739*61046927SAndroid Build Coastguard Worker          0x2646, 0xffffffff, 0x00801310,
740*61046927SAndroid Build Coastguard Worker          0x2647, 0xffffffff, 0x00801b10,
741*61046927SAndroid Build Coastguard Worker          0x2648, 0xffffffff, 0x00802b10,
742*61046927SAndroid Build Coastguard Worker          0x2649, 0xffffffff, 0x00802b08,
743*61046927SAndroid Build Coastguard Worker          0x264a, 0xffffffff, 0x00802b14,
744*61046927SAndroid Build Coastguard Worker          0x264b, 0xffffffff, 0x00802954,
745*61046927SAndroid Build Coastguard Worker          0x264c, 0xffffffff, 0x00000304,
746*61046927SAndroid Build Coastguard Worker          0x264d, 0xffffffff, 0x02000308,
747*61046927SAndroid Build Coastguard Worker          0x264e, 0xffffffff, 0x02000310,
748*61046927SAndroid Build Coastguard Worker          0x264f, 0xffffffff, 0x06000314,
749*61046927SAndroid Build Coastguard Worker          0x2650, 0xffffffff, 0x06000154,
750*61046927SAndroid Build Coastguard Worker          0x2651, 0xffffffff, 0x02400308,
751*61046927SAndroid Build Coastguard Worker          0x2652, 0xffffffff, 0x02400310,
752*61046927SAndroid Build Coastguard Worker          0x2653, 0xffffffff, 0x02400330,
753*61046927SAndroid Build Coastguard Worker          0x2654, 0xffffffff, 0x06400314,
754*61046927SAndroid Build Coastguard Worker          0x2655, 0xffffffff, 0x06400154,
755*61046927SAndroid Build Coastguard Worker          0x2656, 0xffffffff, 0x0040030c,
756*61046927SAndroid Build Coastguard Worker          0x2657, 0xffffffff, 0x0100030c,
757*61046927SAndroid Build Coastguard Worker          0x2658, 0xffffffff, 0x0100031c,
758*61046927SAndroid Build Coastguard Worker          0x2659, 0xffffffff, 0x01000334,
759*61046927SAndroid Build Coastguard Worker          0x265a, 0xffffffff, 0x01000324,
760*61046927SAndroid Build Coastguard Worker          0x265b, 0xffffffff, 0x01000164,
761*61046927SAndroid Build Coastguard Worker          0x265c, 0xffffffff, 0x0040031c,
762*61046927SAndroid Build Coastguard Worker          0x265d, 0xffffffff, 0x01000320,
763*61046927SAndroid Build Coastguard Worker          0x265e, 0xffffffff, 0x01000338,
764*61046927SAndroid Build Coastguard Worker          0x265f, 0xffffffff, 0x02c00308,
765*61046927SAndroid Build Coastguard Worker          0x2660, 0xffffffff, 0x02c00310,
766*61046927SAndroid Build Coastguard Worker          0x2661, 0xffffffff, 0x06c00314,
767*61046927SAndroid Build Coastguard Worker          0x2662, 0xffffffff, 0x06c00154,
768*61046927SAndroid Build Coastguard Worker          0x2663, 0xffffffff, 0x00000000,
769*61046927SAndroid Build Coastguard Worker          0x2664, 0xffffffff, 0x000000e8,
770*61046927SAndroid Build Coastguard Worker          0x2665, 0xffffffff, 0x000000e8,
771*61046927SAndroid Build Coastguard Worker          0x2666, 0xffffffff, 0x000000e8,
772*61046927SAndroid Build Coastguard Worker          0x2667, 0xffffffff, 0x000000e8,
773*61046927SAndroid Build Coastguard Worker          0x2668, 0xffffffff, 0x000000d4,
774*61046927SAndroid Build Coastguard Worker          0x2669, 0xffffffff, 0x000000c0,
775*61046927SAndroid Build Coastguard Worker          0x266a, 0xffffffff, 0x000000c0,
776*61046927SAndroid Build Coastguard Worker          0x266b, 0xffffffff, 0x00000000,
777*61046927SAndroid Build Coastguard Worker          0x266c, 0xffffffff, 0x000000ec,
778*61046927SAndroid Build Coastguard Worker          0x266d, 0xffffffff, 0x000000e8,
779*61046927SAndroid Build Coastguard Worker          0x266e, 0xffffffff, 0x000000d4,
780*61046927SAndroid Build Coastguard Worker          0x266f, 0xffffffff, 0x000000d0,
781*61046927SAndroid Build Coastguard Worker          0x2670, 0xffffffff, 0x00000080,
782*61046927SAndroid Build Coastguard Worker          0x2671, 0xffffffff, 0x00000040,
783*61046927SAndroid Build Coastguard Worker          0x2672, 0xffffffff, 0x00000040,
784*61046927SAndroid Build Coastguard Worker          0x2673, 0xffffffff, 0x00000000,
785*61046927SAndroid Build Coastguard Worker       },
786*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 62,
787*61046927SAndroid Build Coastguard Worker       .dev = {
788*61046927SAndroid Build Coastguard Worker          .device_id = 0x67df,
789*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
790*61046927SAndroid Build Coastguard Worker          .external_rev = 0x51,
791*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xe7,
792*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_VI,
793*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 4,
794*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
795*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 25000,
796*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(1360000),
797*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(2000000),
798*61046927SAndroid Build Coastguard Worker          .cu_active_number = 36,
799*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x1ff01ff,
800*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
801*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
802*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
803*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
804*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
805*61046927SAndroid Build Coastguard Worker          },
806*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xff,
807*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 8,
808*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
809*61046927SAndroid Build Coastguard Worker          .pcie_gen = 0,
810*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
811*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
812*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x1fffe00000),
813*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
814*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
815*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
816*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
817*61046927SAndroid Build Coastguard Worker          .vram_type = 5,
818*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 256,
819*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 2,
820*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
821*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
822*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
823*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
824*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
825*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
826*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
827*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
828*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
829*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
830*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
831*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 9,
832*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 8,
833*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 0,
834*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 0,
835*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
836*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 0,
837*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
838*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
839*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
840*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
841*61046927SAndroid Build Coastguard Worker             { 0x1ff, 0x0, 0x0, 0x0, },
842*61046927SAndroid Build Coastguard Worker          },
843*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0x0),
844*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0x0),
845*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
846*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
847*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(0),
848*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(0),
849*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
850*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
851*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
852*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
853*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
854*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
855*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
856*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
857*61046927SAndroid Build Coastguard Worker       },
858*61046927SAndroid Build Coastguard Worker       .mem = {
859*61046927SAndroid Build Coastguard Worker          .vram = {
860*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8589934592),
861*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8576106496),
862*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(267620352),
863*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6432079872),
864*61046927SAndroid Build Coastguard Worker          },
865*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
866*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
867*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(262995968),
868*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(17641472),
869*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(197246976),
870*61046927SAndroid Build Coastguard Worker          },
871*61046927SAndroid Build Coastguard Worker          .gtt = {
872*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16776243200),
873*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(16766920704),
874*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(80318464),
875*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(12575190528),
876*61046927SAndroid Build Coastguard Worker          },
877*61046927SAndroid Build Coastguard Worker       },
878*61046927SAndroid Build Coastguard Worker    },
879*61046927SAndroid Build Coastguard Worker    {
880*61046927SAndroid Build Coastguard Worker       .name = "polaris12",
881*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_POLARIS12,
882*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
883*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
884*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
885*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
886*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
887*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
888*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
889*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
890*61046927SAndroid Build Coastguard Worker       },
891*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
892*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 8,
893*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
894*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
895*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
896*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
897*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
898*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
899*61046927SAndroid Build Coastguard Worker       },
900*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
901*61046927SAndroid Build Coastguard Worker          .ver = 167,
902*61046927SAndroid Build Coastguard Worker          .feature = 49,
903*61046927SAndroid Build Coastguard Worker       },
904*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
905*61046927SAndroid Build Coastguard Worker          .ver = 254,
906*61046927SAndroid Build Coastguard Worker          .feature = 49,
907*61046927SAndroid Build Coastguard Worker       },
908*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
909*61046927SAndroid Build Coastguard Worker          .ver = 730,
910*61046927SAndroid Build Coastguard Worker          .feature = 49,
911*61046927SAndroid Build Coastguard Worker       },
912*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
913*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x22011002,
914*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff00, 0x00000001,
915*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff00, 0x16000012,
916*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff00, 0x00000000,
917*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff01, 0x00000001,
918*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff01, 0x16000012,
919*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff01, 0x00000000,
920*61046927SAndroid Build Coastguard Worker          0x09d8, 0xffffffff, 0x000060a2,
921*61046927SAndroid Build Coastguard Worker          0x2644, 0xffffffff, 0x00800150,
922*61046927SAndroid Build Coastguard Worker          0x2645, 0xffffffff, 0x00800950,
923*61046927SAndroid Build Coastguard Worker          0x2646, 0xffffffff, 0x00801150,
924*61046927SAndroid Build Coastguard Worker          0x2647, 0xffffffff, 0x00801950,
925*61046927SAndroid Build Coastguard Worker          0x2648, 0xffffffff, 0x00802950,
926*61046927SAndroid Build Coastguard Worker          0x2649, 0xffffffff, 0x00802948,
927*61046927SAndroid Build Coastguard Worker          0x264a, 0xffffffff, 0x00802954,
928*61046927SAndroid Build Coastguard Worker          0x264b, 0xffffffff, 0x00802954,
929*61046927SAndroid Build Coastguard Worker          0x264c, 0xffffffff, 0x00000144,
930*61046927SAndroid Build Coastguard Worker          0x264d, 0xffffffff, 0x02000148,
931*61046927SAndroid Build Coastguard Worker          0x264e, 0xffffffff, 0x02000150,
932*61046927SAndroid Build Coastguard Worker          0x264f, 0xffffffff, 0x06000154,
933*61046927SAndroid Build Coastguard Worker          0x2650, 0xffffffff, 0x06000154,
934*61046927SAndroid Build Coastguard Worker          0x2651, 0xffffffff, 0x02400148,
935*61046927SAndroid Build Coastguard Worker          0x2652, 0xffffffff, 0x02400150,
936*61046927SAndroid Build Coastguard Worker          0x2653, 0xffffffff, 0x02400170,
937*61046927SAndroid Build Coastguard Worker          0x2654, 0xffffffff, 0x06400154,
938*61046927SAndroid Build Coastguard Worker          0x2655, 0xffffffff, 0x06400154,
939*61046927SAndroid Build Coastguard Worker          0x2656, 0xffffffff, 0x0040014c,
940*61046927SAndroid Build Coastguard Worker          0x2657, 0xffffffff, 0x0100014c,
941*61046927SAndroid Build Coastguard Worker          0x2658, 0xffffffff, 0x0100015c,
942*61046927SAndroid Build Coastguard Worker          0x2659, 0xffffffff, 0x01000174,
943*61046927SAndroid Build Coastguard Worker          0x265a, 0xffffffff, 0x01000164,
944*61046927SAndroid Build Coastguard Worker          0x265b, 0xffffffff, 0x01000164,
945*61046927SAndroid Build Coastguard Worker          0x265c, 0xffffffff, 0x0040015c,
946*61046927SAndroid Build Coastguard Worker          0x265d, 0xffffffff, 0x01000160,
947*61046927SAndroid Build Coastguard Worker          0x265e, 0xffffffff, 0x01000178,
948*61046927SAndroid Build Coastguard Worker          0x265f, 0xffffffff, 0x02c00148,
949*61046927SAndroid Build Coastguard Worker          0x2660, 0xffffffff, 0x02c00150,
950*61046927SAndroid Build Coastguard Worker          0x2661, 0xffffffff, 0x06c00154,
951*61046927SAndroid Build Coastguard Worker          0x2662, 0xffffffff, 0x06c00154,
952*61046927SAndroid Build Coastguard Worker          0x2663, 0xffffffff, 0x00000000,
953*61046927SAndroid Build Coastguard Worker          0x2664, 0xffffffff, 0x000000e8,
954*61046927SAndroid Build Coastguard Worker          0x2665, 0xffffffff, 0x000000e8,
955*61046927SAndroid Build Coastguard Worker          0x2666, 0xffffffff, 0x000000e8,
956*61046927SAndroid Build Coastguard Worker          0x2667, 0xffffffff, 0x000000e4,
957*61046927SAndroid Build Coastguard Worker          0x2668, 0xffffffff, 0x000000d0,
958*61046927SAndroid Build Coastguard Worker          0x2669, 0xffffffff, 0x000000d0,
959*61046927SAndroid Build Coastguard Worker          0x266a, 0xffffffff, 0x000000d0,
960*61046927SAndroid Build Coastguard Worker          0x266b, 0xffffffff, 0x00000000,
961*61046927SAndroid Build Coastguard Worker          0x266c, 0xffffffff, 0x000000ed,
962*61046927SAndroid Build Coastguard Worker          0x266d, 0xffffffff, 0x000000e9,
963*61046927SAndroid Build Coastguard Worker          0x266e, 0xffffffff, 0x000000e8,
964*61046927SAndroid Build Coastguard Worker          0x266f, 0xffffffff, 0x000000e4,
965*61046927SAndroid Build Coastguard Worker          0x2670, 0xffffffff, 0x000000d0,
966*61046927SAndroid Build Coastguard Worker          0x2671, 0xffffffff, 0x00000090,
967*61046927SAndroid Build Coastguard Worker          0x2672, 0xffffffff, 0x00000040,
968*61046927SAndroid Build Coastguard Worker          0x2673, 0xffffffff, 0x00000000,
969*61046927SAndroid Build Coastguard Worker       },
970*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 56,
971*61046927SAndroid Build Coastguard Worker       .dev = {
972*61046927SAndroid Build Coastguard Worker          .device_id = 0x699f,
973*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x00,
974*61046927SAndroid Build Coastguard Worker          .external_rev = 0x64,
975*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc7,
976*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_VI,
977*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 2,
978*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
979*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 25000,
980*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(1183000),
981*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(1750000),
982*61046927SAndroid Build Coastguard Worker          .cu_active_number = 8,
983*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x1e001e,
984*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
985*61046927SAndroid Build Coastguard Worker             { 0x1e, 0x0, 0x0, 0x0, },
986*61046927SAndroid Build Coastguard Worker             { 0x1e, 0x0, 0x0, 0x0, },
987*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
988*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
989*61046927SAndroid Build Coastguard Worker          },
990*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xf,
991*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 4,
992*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
993*61046927SAndroid Build Coastguard Worker          .pcie_gen = 3,
994*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
995*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
996*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x3fffe00000),
997*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
998*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
999*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1000*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
1001*61046927SAndroid Build Coastguard Worker          .vram_type = 5,
1002*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
1003*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 2,
1004*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
1005*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1006*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1007*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1008*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1009*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1010*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1011*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1012*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1013*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
1014*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
1015*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 5,
1016*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
1017*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 0,
1018*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 0,
1019*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1020*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 1,
1021*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1022*61046927SAndroid Build Coastguard Worker             { 0x1e, 0x0, 0x0, 0x0, },
1023*61046927SAndroid Build Coastguard Worker             { 0x1e, 0x0, 0x0, 0x0, },
1024*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1025*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1026*61046927SAndroid Build Coastguard Worker          },
1027*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0x0),
1028*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0x0),
1029*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1030*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1031*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(214000),
1032*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(300000),
1033*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1034*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1035*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1036*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1037*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1038*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1039*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
1040*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1041*61046927SAndroid Build Coastguard Worker       },
1042*61046927SAndroid Build Coastguard Worker       .mem = {
1043*61046927SAndroid Build Coastguard Worker          .vram = {
1044*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(4294967296),
1045*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(4281139200),
1046*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(5963776),
1047*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(3210854400),
1048*61046927SAndroid Build Coastguard Worker          },
1049*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1050*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(4294967296),
1051*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(4281139200),
1052*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(5963776),
1053*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(3210854400),
1054*61046927SAndroid Build Coastguard Worker          },
1055*61046927SAndroid Build Coastguard Worker          .gtt = {
1056*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(33254252544),
1057*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(33249120256),
1058*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(17903616),
1059*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(24936840192),
1060*61046927SAndroid Build Coastguard Worker          },
1061*61046927SAndroid Build Coastguard Worker       },
1062*61046927SAndroid Build Coastguard Worker    },
1063*61046927SAndroid Build Coastguard Worker    {
1064*61046927SAndroid Build Coastguard Worker       .name = "vega10",
1065*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_VEGA10,
1066*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1067*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
1068*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1069*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1070*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1071*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1072*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1073*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x90001,
1074*61046927SAndroid Build Coastguard Worker       },
1075*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1076*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 9,
1077*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1078*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1079*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1080*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1081*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1082*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x90001,
1083*61046927SAndroid Build Coastguard Worker       },
1084*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1085*61046927SAndroid Build Coastguard Worker          .ver = 166,
1086*61046927SAndroid Build Coastguard Worker          .feature = 53,
1087*61046927SAndroid Build Coastguard Worker       },
1088*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1089*61046927SAndroid Build Coastguard Worker          .ver = 194,
1090*61046927SAndroid Build Coastguard Worker          .feature = 53,
1091*61046927SAndroid Build Coastguard Worker       },
1092*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1093*61046927SAndroid Build Coastguard Worker          .ver = 33236,
1094*61046927SAndroid Build Coastguard Worker          .feature = 53,
1095*61046927SAndroid Build Coastguard Worker       },
1096*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1097*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x2a114042,
1098*61046927SAndroid Build Coastguard Worker       },
1099*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
1100*61046927SAndroid Build Coastguard Worker       .dev = {
1101*61046927SAndroid Build Coastguard Worker          .device_id = 0x687f,
1102*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
1103*61046927SAndroid Build Coastguard Worker          .external_rev = 0x01,
1104*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc1,
1105*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_AI,
1106*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 4,
1107*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
1108*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 27000,
1109*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(1630000),
1110*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(945000),
1111*61046927SAndroid Build Coastguard Worker          .cu_active_number = 64,
1112*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0xffffffff,
1113*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1114*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1115*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1116*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1117*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1118*61046927SAndroid Build Coastguard Worker          },
1119*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xffff,
1120*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 16,
1121*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1122*61046927SAndroid Build Coastguard Worker          .pcie_gen = 0,
1123*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1124*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1125*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
1126*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1127*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1128*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1129*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
1130*61046927SAndroid Build Coastguard Worker          .vram_type = 6,
1131*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 2048,
1132*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1133*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
1134*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1135*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1136*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1137*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1138*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1139*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1140*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1141*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1142*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
1143*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
1144*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 16,
1145*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 16,
1146*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
1147*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
1148*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1149*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 0,
1150*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1151*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1152*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1153*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1154*61046927SAndroid Build Coastguard Worker             { 0xffff, 0x0, 0x0, 0x0, },
1155*61046927SAndroid Build Coastguard Worker          },
1156*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
1157*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
1158*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1159*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1160*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(0),
1161*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(0),
1162*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1163*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1164*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1165*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1166*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1167*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1168*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
1169*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1170*61046927SAndroid Build Coastguard Worker       },
1171*61046927SAndroid Build Coastguard Worker       .mem = {
1172*61046927SAndroid Build Coastguard Worker          .vram = {
1173*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8573157376),
1174*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8556453888),
1175*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(39575552),
1176*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6417340416),
1177*61046927SAndroid Build Coastguard Worker          },
1178*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1179*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
1180*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(260120576),
1181*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(30138368),
1182*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(195090432),
1183*61046927SAndroid Build Coastguard Worker          },
1184*61046927SAndroid Build Coastguard Worker          .gtt = {
1185*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8359135232),
1186*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8346802176),
1187*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(22892544),
1188*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6260101632),
1189*61046927SAndroid Build Coastguard Worker          },
1190*61046927SAndroid Build Coastguard Worker       },
1191*61046927SAndroid Build Coastguard Worker    },
1192*61046927SAndroid Build Coastguard Worker    {
1193*61046927SAndroid Build Coastguard Worker       .name = "navi10",
1194*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_NAVI10,
1195*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1196*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
1197*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1198*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1199*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1200*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1201*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1202*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa010a,
1203*61046927SAndroid Build Coastguard Worker       },
1204*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1205*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
1206*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1207*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1208*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1209*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1210*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1211*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa010a,
1212*61046927SAndroid Build Coastguard Worker       },
1213*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1214*61046927SAndroid Build Coastguard Worker          .ver = 100,
1215*61046927SAndroid Build Coastguard Worker          .feature = 34,
1216*61046927SAndroid Build Coastguard Worker       },
1217*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1218*61046927SAndroid Build Coastguard Worker          .ver = 155,
1219*61046927SAndroid Build Coastguard Worker          .feature = 34,
1220*61046927SAndroid Build Coastguard Worker       },
1221*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1222*61046927SAndroid Build Coastguard Worker          .ver = 146,
1223*61046927SAndroid Build Coastguard Worker          .feature = 34,
1224*61046927SAndroid Build Coastguard Worker       },
1225*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1226*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00100044,
1227*61046927SAndroid Build Coastguard Worker       },
1228*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
1229*61046927SAndroid Build Coastguard Worker       .dev = {
1230*61046927SAndroid Build Coastguard Worker          .device_id = 0x731f,
1231*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x02,
1232*61046927SAndroid Build Coastguard Worker          .external_rev = 0x03,
1233*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc1,
1234*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_NV,
1235*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 2,
1236*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 2,
1237*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
1238*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(2100000),
1239*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(875000),
1240*61046927SAndroid Build Coastguard Worker          .cu_active_number = 40,
1241*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0xffffffff,
1242*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1243*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1244*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1245*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1246*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1247*61046927SAndroid Build Coastguard Worker          },
1248*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xffff,
1249*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 16,
1250*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1251*61046927SAndroid Build Coastguard Worker          .pcie_gen = 0,
1252*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1253*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1254*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
1255*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1256*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1257*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1258*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 65536,
1259*61046927SAndroid Build Coastguard Worker          .vram_type = 9,
1260*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 256,
1261*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1262*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
1263*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1264*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1265*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1266*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1267*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1268*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1269*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1270*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1271*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
1272*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1024,
1273*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 10,
1274*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 16,
1275*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
1276*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
1277*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1278*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 0,
1279*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1280*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1281*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1282*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1283*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1284*61046927SAndroid Build Coastguard Worker          },
1285*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
1286*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
1287*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 1187840,
1288*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1289*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(0),
1290*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(0),
1291*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1292*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1293*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1294*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1295*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1296*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1297*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
1298*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1299*61046927SAndroid Build Coastguard Worker       },
1300*61046927SAndroid Build Coastguard Worker       .mem = {
1301*61046927SAndroid Build Coastguard Worker          .vram = {
1302*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8573157376),
1303*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8553127936),
1304*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(11644928),
1305*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6414845952),
1306*61046927SAndroid Build Coastguard Worker          },
1307*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1308*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
1309*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(256860160),
1310*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(11579392),
1311*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(192645120),
1312*61046927SAndroid Build Coastguard Worker          },
1313*61046927SAndroid Build Coastguard Worker          .gtt = {
1314*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8359135232),
1315*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8347318272),
1316*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(22102016),
1317*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6260488704),
1318*61046927SAndroid Build Coastguard Worker          },
1319*61046927SAndroid Build Coastguard Worker       },
1320*61046927SAndroid Build Coastguard Worker    },
1321*61046927SAndroid Build Coastguard Worker    {
1322*61046927SAndroid Build Coastguard Worker       .name = "navi31",
1323*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_NAVI31,
1324*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1325*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 11,
1326*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1327*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1328*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1329*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1330*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1331*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xb0000,
1332*61046927SAndroid Build Coastguard Worker       },
1333*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1334*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 11,
1335*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1336*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1337*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1338*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1339*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1340*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xb0000,
1341*61046927SAndroid Build Coastguard Worker       },
1342*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1343*61046927SAndroid Build Coastguard Worker          .ver = 1486,
1344*61046927SAndroid Build Coastguard Worker          .feature = 29,
1345*61046927SAndroid Build Coastguard Worker       },
1346*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1347*61046927SAndroid Build Coastguard Worker          .ver = 1525,
1348*61046927SAndroid Build Coastguard Worker          .feature = 29,
1349*61046927SAndroid Build Coastguard Worker       },
1350*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1351*61046927SAndroid Build Coastguard Worker          .ver = 494,
1352*61046927SAndroid Build Coastguard Worker          .feature = 29,
1353*61046927SAndroid Build Coastguard Worker       },
1354*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1355*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00000545,
1356*61046927SAndroid Build Coastguard Worker       },
1357*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
1358*61046927SAndroid Build Coastguard Worker       .dev = {
1359*61046927SAndroid Build Coastguard Worker          .device_id = 0x744c,
1360*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x00,
1361*61046927SAndroid Build Coastguard Worker          .external_rev = 0x01,
1362*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc8,
1363*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_GC_11_0_0,
1364*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 6,
1365*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 2,
1366*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
1367*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(2371000),
1368*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(1249000),
1369*61046927SAndroid Build Coastguard Worker          .cu_active_number = 96,
1370*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x0,
1371*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1372*61046927SAndroid Build Coastguard Worker             { 0xff, 0xff, 0xff, 0xff, },
1373*61046927SAndroid Build Coastguard Worker             { 0xff, 0xff, 0xff, 0xff, },
1374*61046927SAndroid Build Coastguard Worker             { 0xff, 0xff, 0x0, 0x0, },
1375*61046927SAndroid Build Coastguard Worker             { 0xff, 0xff, 0x0, 0x0, },
1376*61046927SAndroid Build Coastguard Worker          },
1377*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xffffff,
1378*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 24,
1379*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1380*61046927SAndroid Build Coastguard Worker          .pcie_gen = 4,
1381*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1382*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1383*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
1384*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1385*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1386*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1387*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 0,
1388*61046927SAndroid Build Coastguard Worker          .vram_type = 9,
1389*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 384,
1390*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1391*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 0,
1392*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1393*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1394*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1395*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1396*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1397*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1398*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1399*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1400*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
1401*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1536,
1402*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 8,
1403*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 24,
1404*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
1405*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
1406*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1407*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 16,
1408*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1409*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1410*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1411*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1412*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1413*61046927SAndroid Build Coastguard Worker          },
1414*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
1415*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
1416*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1417*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1418*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(500000),
1419*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(96000),
1420*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 32,
1421*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 1,
1422*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 16,
1423*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 32,
1424*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 256,
1425*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 6144,
1426*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(100663296),
1427*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1428*61046927SAndroid Build Coastguard Worker       },
1429*61046927SAndroid Build Coastguard Worker       .mem = {
1430*61046927SAndroid Build Coastguard Worker          .vram = {
1431*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(25753026560),
1432*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(25681096704),
1433*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(7515435008),
1434*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(19260822528),
1435*61046927SAndroid Build Coastguard Worker          },
1436*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1437*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(25753026560),
1438*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(25681096704),
1439*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(7515435008),
1440*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(19260822528),
1441*61046927SAndroid Build Coastguard Worker          },
1442*61046927SAndroid Build Coastguard Worker          .gtt = {
1443*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(33254252544),
1444*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(33240895488),
1445*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(142462976),
1446*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(24930671616),
1447*61046927SAndroid Build Coastguard Worker          },
1448*61046927SAndroid Build Coastguard Worker       },
1449*61046927SAndroid Build Coastguard Worker    },
1450*61046927SAndroid Build Coastguard Worker    {
1451*61046927SAndroid Build Coastguard Worker       .name = "navi21",
1452*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_NAVI21,
1453*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1454*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
1455*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1456*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1457*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1458*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1459*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1460*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa0300,
1461*61046927SAndroid Build Coastguard Worker       },
1462*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1463*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 10,
1464*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1465*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1466*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1467*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1468*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1469*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xa0300,
1470*61046927SAndroid Build Coastguard Worker       },
1471*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1472*61046927SAndroid Build Coastguard Worker          .ver = 64,
1473*61046927SAndroid Build Coastguard Worker          .feature = 42,
1474*61046927SAndroid Build Coastguard Worker       },
1475*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1476*61046927SAndroid Build Coastguard Worker          .ver = 95,
1477*61046927SAndroid Build Coastguard Worker          .feature = 42,
1478*61046927SAndroid Build Coastguard Worker       },
1479*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1480*61046927SAndroid Build Coastguard Worker          .ver = 104,
1481*61046927SAndroid Build Coastguard Worker          .feature = 42,
1482*61046927SAndroid Build Coastguard Worker       },
1483*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1484*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00000444,
1485*61046927SAndroid Build Coastguard Worker       },
1486*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
1487*61046927SAndroid Build Coastguard Worker       .dev = {
1488*61046927SAndroid Build Coastguard Worker          .device_id = 0x73bf,
1489*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
1490*61046927SAndroid Build Coastguard Worker          .external_rev = 0x29,
1491*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xc3,
1492*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_NV,
1493*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 4,
1494*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 2,
1495*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
1496*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(2475000),
1497*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(1000000),
1498*61046927SAndroid Build Coastguard Worker          .cu_active_number = 60,
1499*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x3ffff,
1500*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1501*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1502*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1503*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1504*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1505*61046927SAndroid Build Coastguard Worker          },
1506*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xff0f,
1507*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 16,
1508*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1509*61046927SAndroid Build Coastguard Worker          .pcie_gen = 3,
1510*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1511*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1512*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
1513*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1514*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1515*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1516*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 65536,
1517*61046927SAndroid Build Coastguard Worker          .vram_type = 9,
1518*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 256,
1519*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1520*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
1521*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1522*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1523*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1524*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1525*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1526*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1527*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1528*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1529*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
1530*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1024,
1531*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 10,
1532*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 16,
1533*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
1534*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
1535*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1536*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 16,
1537*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1538*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1539*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1540*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1541*61046927SAndroid Build Coastguard Worker             { 0x3ff, 0x3ff, 0x0, 0x0, },
1542*61046927SAndroid Build Coastguard Worker          },
1543*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
1544*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffe00000),
1545*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1546*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1547*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(500000),
1548*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(96000),
1549*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1550*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1551*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1552*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1553*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1554*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1555*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(134217728),
1556*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1557*61046927SAndroid Build Coastguard Worker       },
1558*61046927SAndroid Build Coastguard Worker       .mem = {
1559*61046927SAndroid Build Coastguard Worker          .vram = {
1560*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(17163091968),
1561*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(17128448000),
1562*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(817770496),
1563*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(12846336000),
1564*61046927SAndroid Build Coastguard Worker          },
1565*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1566*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
1567*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(273055744),
1568*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(246521856),
1569*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(204791808),
1570*61046927SAndroid Build Coastguard Worker          },
1571*61046927SAndroid Build Coastguard Worker          .gtt = {
1572*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16746784768),
1573*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(16733624320),
1574*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(499445760),
1575*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(12550218240),
1576*61046927SAndroid Build Coastguard Worker          },
1577*61046927SAndroid Build Coastguard Worker       },
1578*61046927SAndroid Build Coastguard Worker    },
1579*61046927SAndroid Build Coastguard Worker    {
1580*61046927SAndroid Build Coastguard Worker       .name = "pitcairn",
1581*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_PITCAIRN,
1582*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1583*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 6,
1584*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1585*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1586*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1587*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1588*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1589*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
1590*61046927SAndroid Build Coastguard Worker       },
1591*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1592*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 6,
1593*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1594*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1595*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1596*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1597*61046927SAndroid Build Coastguard Worker          .available_rings = 0x3,
1598*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
1599*61046927SAndroid Build Coastguard Worker       },
1600*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1601*61046927SAndroid Build Coastguard Worker          .ver = 145,
1602*61046927SAndroid Build Coastguard Worker          .feature = 29,
1603*61046927SAndroid Build Coastguard Worker       },
1604*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1605*61046927SAndroid Build Coastguard Worker          .ver = 84,
1606*61046927SAndroid Build Coastguard Worker          .feature = 29,
1607*61046927SAndroid Build Coastguard Worker       },
1608*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1609*61046927SAndroid Build Coastguard Worker          .ver = 0,
1610*61046927SAndroid Build Coastguard Worker          .feature = 0,
1611*61046927SAndroid Build Coastguard Worker       },
1612*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1613*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x12011003,
1614*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff00, 0x00000001,
1615*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff00, 0x2a001260,
1616*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff01, 0x00000001,
1617*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff01, 0x2a001260,
1618*61046927SAndroid Build Coastguard Worker          0x09d8, 0xffffffff, 0x0000025a,
1619*61046927SAndroid Build Coastguard Worker          0x2644, 0xffffffff, 0x00360292,
1620*61046927SAndroid Build Coastguard Worker          0x2645, 0xffffffff, 0x00360a92,
1621*61046927SAndroid Build Coastguard Worker          0x2646, 0xffffffff, 0x00361292,
1622*61046927SAndroid Build Coastguard Worker          0x2647, 0xffffffff, 0x00122a92,
1623*61046927SAndroid Build Coastguard Worker          0x2648, 0xffffffff, 0x0000028a,
1624*61046927SAndroid Build Coastguard Worker          0x2649, 0xffffffff, 0x00021a92,
1625*61046927SAndroid Build Coastguard Worker          0x264a, 0xffffffff, 0x00031292,
1626*61046927SAndroid Build Coastguard Worker          0x264b, 0xffffffff, 0x00022112,
1627*61046927SAndroid Build Coastguard Worker          0x264c, 0xffffffff, 0x00000004,
1628*61046927SAndroid Build Coastguard Worker          0x264d, 0xffffffff, 0x00000288,
1629*61046927SAndroid Build Coastguard Worker          0x264e, 0xffffffff, 0x00361290,
1630*61046927SAndroid Build Coastguard Worker          0x264f, 0xffffffff, 0x00351290,
1631*61046927SAndroid Build Coastguard Worker          0x2650, 0xffffffff, 0x00301a90,
1632*61046927SAndroid Build Coastguard Worker          0x2651, 0xffffffff, 0x00000289,
1633*61046927SAndroid Build Coastguard Worker          0x2652, 0xffffffff, 0x00321291,
1634*61046927SAndroid Build Coastguard Worker          0x2653, 0xffffffff, 0x00311291,
1635*61046927SAndroid Build Coastguard Worker          0x2654, 0xffffffff, 0x00301a91,
1636*61046927SAndroid Build Coastguard Worker          0x2655, 0xffffffff, 0x00302a91,
1637*61046927SAndroid Build Coastguard Worker          0x2656, 0xffffffff, 0x0000028d,
1638*61046927SAndroid Build Coastguard Worker          0x2657, 0xffffffff, 0x00302aa1,
1639*61046927SAndroid Build Coastguard Worker          0x2658, 0xffffffff, 0x00302a9d,
1640*61046927SAndroid Build Coastguard Worker          0x2659, 0xffffffff, 0x00131291,
1641*61046927SAndroid Build Coastguard Worker          0x265a, 0xffffffff, 0x00121291,
1642*61046927SAndroid Build Coastguard Worker          0x265b, 0xffffffff, 0x00031291,
1643*61046927SAndroid Build Coastguard Worker          0x265c, 0xffffffff, 0x00021a91,
1644*61046927SAndroid Build Coastguard Worker          0x265d, 0xffffffff, 0x00022111,
1645*61046927SAndroid Build Coastguard Worker          0x265e, 0xffffffff, 0x00022111,
1646*61046927SAndroid Build Coastguard Worker          0x265f, 0xffffffff, 0x00022111,
1647*61046927SAndroid Build Coastguard Worker          0x2660, 0xffffffff, 0x00022111,
1648*61046927SAndroid Build Coastguard Worker          0x2661, 0xffffffff, 0x00022111,
1649*61046927SAndroid Build Coastguard Worker          0x2662, 0xffffffff, 0x00012911,
1650*61046927SAndroid Build Coastguard Worker          0x2663, 0xffffffff, 0x00000000,
1651*61046927SAndroid Build Coastguard Worker       },
1652*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 38,
1653*61046927SAndroid Build Coastguard Worker       .dev = {
1654*61046927SAndroid Build Coastguard Worker          .device_id = 0x6818,
1655*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
1656*61046927SAndroid Build Coastguard Worker          .external_rev = 0x15,
1657*61046927SAndroid Build Coastguard Worker          .pci_rev = 0x00,
1658*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_SI,
1659*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 2,
1660*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 2,
1661*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 27000,
1662*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(1100000),
1663*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(1250000),
1664*61046927SAndroid Build Coastguard Worker          .cu_active_number = 20,
1665*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x1f1f1f1f,
1666*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1667*61046927SAndroid Build Coastguard Worker             { 0x1f, 0x1f, 0x0, 0x0, },
1668*61046927SAndroid Build Coastguard Worker             { 0x1f, 0x1f, 0x0, 0x0, },
1669*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1670*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1671*61046927SAndroid Build Coastguard Worker          },
1672*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xff,
1673*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 8,
1674*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1675*61046927SAndroid Build Coastguard Worker          .pcie_gen = 3,
1676*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1677*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1678*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0xfffe00000),
1679*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1680*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1681*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1682*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
1683*61046927SAndroid Build Coastguard Worker          .vram_type = 5,
1684*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 256,
1685*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1686*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 0,
1687*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1688*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1689*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1690*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1691*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1692*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1693*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1694*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1695*61046927SAndroid Build Coastguard Worker          .wave_front_size = 0,
1696*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
1697*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 5,
1698*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 8,
1699*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 0,
1700*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 0,
1701*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1702*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 8,
1703*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1704*61046927SAndroid Build Coastguard Worker             { 0x1f, 0x1f, 0x0, 0x0, },
1705*61046927SAndroid Build Coastguard Worker             { 0x1f, 0x1f, 0x0, 0x0, },
1706*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1707*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1708*61046927SAndroid Build Coastguard Worker          },
1709*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0x0),
1710*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0x0),
1711*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1712*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1713*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(300000),
1714*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(150000),
1715*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1716*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1717*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1718*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1719*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1720*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1721*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
1722*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1723*61046927SAndroid Build Coastguard Worker       },
1724*61046927SAndroid Build Coastguard Worker       .mem = {
1725*61046927SAndroid Build Coastguard Worker          .vram = {
1726*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(2147483648),
1727*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(2134118400),
1728*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(5238784),
1729*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(1600588800),
1730*61046927SAndroid Build Coastguard Worker          },
1731*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1732*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
1733*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(263458816),
1734*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(4976640),
1735*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(197594112),
1736*61046927SAndroid Build Coastguard Worker          },
1737*61046927SAndroid Build Coastguard Worker          .gtt = {
1738*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(8363028480),
1739*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(8359759872),
1740*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(3530752),
1741*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(6269819904),
1742*61046927SAndroid Build Coastguard Worker          },
1743*61046927SAndroid Build Coastguard Worker       },
1744*61046927SAndroid Build Coastguard Worker    },
1745*61046927SAndroid Build Coastguard Worker    {
1746*61046927SAndroid Build Coastguard Worker       .name = "bonaire",
1747*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_BONAIRE,
1748*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1749*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 7,
1750*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 2,
1751*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1752*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1753*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1754*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1755*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
1756*61046927SAndroid Build Coastguard Worker       },
1757*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1758*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 7,
1759*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 2,
1760*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1761*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1762*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1763*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1764*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0x0000,
1765*61046927SAndroid Build Coastguard Worker       },
1766*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1767*61046927SAndroid Build Coastguard Worker          .ver = 187,
1768*61046927SAndroid Build Coastguard Worker          .feature = 29,
1769*61046927SAndroid Build Coastguard Worker       },
1770*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1771*61046927SAndroid Build Coastguard Worker          .ver = 229,
1772*61046927SAndroid Build Coastguard Worker          .feature = 29,
1773*61046927SAndroid Build Coastguard Worker       },
1774*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1775*61046927SAndroid Build Coastguard Worker          .ver = 421,
1776*61046927SAndroid Build Coastguard Worker          .feature = 29,
1777*61046927SAndroid Build Coastguard Worker       },
1778*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1779*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x12010001,
1780*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff00, 0x00000001,
1781*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff00, 0x16000012,
1782*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff00, 0x00000000,
1783*61046927SAndroid Build Coastguard Worker          0x263d, 0x0000ff01, 0x00000001,
1784*61046927SAndroid Build Coastguard Worker          0xa0d4, 0x0000ff01, 0x16000012,
1785*61046927SAndroid Build Coastguard Worker          0xa0d5, 0x0000ff01, 0x00000000,
1786*61046927SAndroid Build Coastguard Worker          0x09d8, 0xffffffff, 0x00006262,
1787*61046927SAndroid Build Coastguard Worker          0x2644, 0xffffffff, 0x00800150,
1788*61046927SAndroid Build Coastguard Worker          0x2645, 0xffffffff, 0x00800950,
1789*61046927SAndroid Build Coastguard Worker          0x2646, 0xffffffff, 0x00801150,
1790*61046927SAndroid Build Coastguard Worker          0x2647, 0xffffffff, 0x00801950,
1791*61046927SAndroid Build Coastguard Worker          0x2648, 0xffffffff, 0x00802950,
1792*61046927SAndroid Build Coastguard Worker          0x2649, 0xffffffff, 0x00800148,
1793*61046927SAndroid Build Coastguard Worker          0x264a, 0xffffffff, 0x00802954,
1794*61046927SAndroid Build Coastguard Worker          0x264b, 0xffffffff, 0x00002800,
1795*61046927SAndroid Build Coastguard Worker          0x264c, 0xffffffff, 0x00000144,
1796*61046927SAndroid Build Coastguard Worker          0x264d, 0xffffffff, 0x00000148,
1797*61046927SAndroid Build Coastguard Worker          0x264e, 0xffffffff, 0x02000150,
1798*61046927SAndroid Build Coastguard Worker          0x264f, 0xffffffff, 0x06000154,
1799*61046927SAndroid Build Coastguard Worker          0x2650, 0xffffffff, 0x00002800,
1800*61046927SAndroid Build Coastguard Worker          0x2651, 0xffffffff, 0x00400148,
1801*61046927SAndroid Build Coastguard Worker          0x2652, 0xffffffff, 0x02400150,
1802*61046927SAndroid Build Coastguard Worker          0x2653, 0xffffffff, 0x02400170,
1803*61046927SAndroid Build Coastguard Worker          0x2654, 0xffffffff, 0x06400154,
1804*61046927SAndroid Build Coastguard Worker          0x2655, 0xffffffff, 0x00002800,
1805*61046927SAndroid Build Coastguard Worker          0x2656, 0xffffffff, 0x0040014c,
1806*61046927SAndroid Build Coastguard Worker          0x2657, 0xffffffff, 0x0040014c,
1807*61046927SAndroid Build Coastguard Worker          0x2658, 0xffffffff, 0x0040015c,
1808*61046927SAndroid Build Coastguard Worker          0x2659, 0xffffffff, 0x00400174,
1809*61046927SAndroid Build Coastguard Worker          0x265a, 0xffffffff, 0x00400164,
1810*61046927SAndroid Build Coastguard Worker          0x265b, 0xffffffff, 0x00002800,
1811*61046927SAndroid Build Coastguard Worker          0x265c, 0xffffffff, 0x0040015c,
1812*61046927SAndroid Build Coastguard Worker          0x265d, 0xffffffff, 0x00400160,
1813*61046927SAndroid Build Coastguard Worker          0x265e, 0xffffffff, 0x00400178,
1814*61046927SAndroid Build Coastguard Worker          0x265f, 0xffffffff, 0x00c00148,
1815*61046927SAndroid Build Coastguard Worker          0x2660, 0xffffffff, 0x02c00150,
1816*61046927SAndroid Build Coastguard Worker          0x2661, 0xffffffff, 0x06c00154,
1817*61046927SAndroid Build Coastguard Worker          0x2662, 0xffffffff, 0x00002800,
1818*61046927SAndroid Build Coastguard Worker          0x2663, 0xffffffff, 0x00000000,
1819*61046927SAndroid Build Coastguard Worker          0x2664, 0xffffffff, 0x000000e8,
1820*61046927SAndroid Build Coastguard Worker          0x2665, 0xffffffff, 0x000000e4,
1821*61046927SAndroid Build Coastguard Worker          0x2666, 0xffffffff, 0x000000d0,
1822*61046927SAndroid Build Coastguard Worker          0x2667, 0xffffffff, 0x000000d0,
1823*61046927SAndroid Build Coastguard Worker          0x2668, 0xffffffff, 0x000000d0,
1824*61046927SAndroid Build Coastguard Worker          0x2669, 0xffffffff, 0x00000090,
1825*61046927SAndroid Build Coastguard Worker          0x266a, 0xffffffff, 0x00000040,
1826*61046927SAndroid Build Coastguard Worker          0x266b, 0xffffffff, 0x00000000,
1827*61046927SAndroid Build Coastguard Worker          0x266c, 0xffffffff, 0x000000ed,
1828*61046927SAndroid Build Coastguard Worker          0x266d, 0xffffffff, 0x000000e9,
1829*61046927SAndroid Build Coastguard Worker          0x266e, 0xffffffff, 0x000000e8,
1830*61046927SAndroid Build Coastguard Worker          0x266f, 0xffffffff, 0x000000e4,
1831*61046927SAndroid Build Coastguard Worker          0x2670, 0xffffffff, 0x000000d0,
1832*61046927SAndroid Build Coastguard Worker          0x2671, 0xffffffff, 0x00000090,
1833*61046927SAndroid Build Coastguard Worker          0x2672, 0xffffffff, 0x00000040,
1834*61046927SAndroid Build Coastguard Worker          0x2673, 0xffffffff, 0x00000000,
1835*61046927SAndroid Build Coastguard Worker       },
1836*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 56,
1837*61046927SAndroid Build Coastguard Worker       .dev = {
1838*61046927SAndroid Build Coastguard Worker          .device_id = 0x6658,
1839*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
1840*61046927SAndroid Build Coastguard Worker          .external_rev = 0x15,
1841*61046927SAndroid Build Coastguard Worker          .pci_rev = 0x00,
1842*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_CI,
1843*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 2,
1844*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 1,
1845*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 27000,
1846*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(1075000),
1847*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(1600000),
1848*61046927SAndroid Build Coastguard Worker          .cu_active_number = 14,
1849*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x7f007f,
1850*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1851*61046927SAndroid Build Coastguard Worker             { 0x7f, 0x0, 0x0, 0x0, },
1852*61046927SAndroid Build Coastguard Worker             { 0x7f, 0x0, 0x0, 0x0, },
1853*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1854*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1855*61046927SAndroid Build Coastguard Worker          },
1856*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xf,
1857*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 4,
1858*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1859*61046927SAndroid Build Coastguard Worker          .pcie_gen = 3,
1860*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x0),
1861*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x200000),
1862*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x1fffe00000),
1863*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1864*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1865*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1866*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 32768,
1867*61046927SAndroid Build Coastguard Worker          .vram_type = 5,
1868*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
1869*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1870*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 1,
1871*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
1872*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
1873*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
1874*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
1875*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
1876*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
1877*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
1878*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
1879*61046927SAndroid Build Coastguard Worker          .wave_front_size = 64,
1880*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 256,
1881*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 7,
1882*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
1883*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 0,
1884*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 0,
1885*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
1886*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 16,
1887*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
1888*61046927SAndroid Build Coastguard Worker             { 0x7f, 0x0, 0x0, 0x0, },
1889*61046927SAndroid Build Coastguard Worker             { 0x7f, 0x0, 0x0, 0x0, },
1890*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1891*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1892*61046927SAndroid Build Coastguard Worker          },
1893*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0x0),
1894*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0x0),
1895*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
1896*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
1897*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(300000),
1898*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(150000),
1899*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 0,
1900*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 0,
1901*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 0,
1902*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 0,
1903*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 0,
1904*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 0,
1905*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
1906*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
1907*61046927SAndroid Build Coastguard Worker       },
1908*61046927SAndroid Build Coastguard Worker       .mem = {
1909*61046927SAndroid Build Coastguard Worker          .vram = {
1910*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(2147483648),
1911*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(2118266880),
1912*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(21352448),
1913*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(1588700160),
1914*61046927SAndroid Build Coastguard Worker          },
1915*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
1916*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(268435456),
1917*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(255901696),
1918*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(20828160),
1919*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(191926272),
1920*61046927SAndroid Build Coastguard Worker          },
1921*61046927SAndroid Build Coastguard Worker          .gtt = {
1922*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16746776576),
1923*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(16743417856),
1924*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(3883008),
1925*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(12557563392),
1926*61046927SAndroid Build Coastguard Worker          },
1927*61046927SAndroid Build Coastguard Worker       },
1928*61046927SAndroid Build Coastguard Worker    },
1929*61046927SAndroid Build Coastguard Worker    {
1930*61046927SAndroid Build Coastguard Worker       .name = "gfx1150",
1931*61046927SAndroid Build Coastguard Worker       .radeon_family = CHIP_GFX1150,
1932*61046927SAndroid Build Coastguard Worker       .hw_ip_gfx = {
1933*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 11,
1934*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1935*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1936*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1937*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1938*61046927SAndroid Build Coastguard Worker          .available_rings = 0x1,
1939*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xb0500,
1940*61046927SAndroid Build Coastguard Worker       },
1941*61046927SAndroid Build Coastguard Worker       .hw_ip_compute = {
1942*61046927SAndroid Build Coastguard Worker          .hw_ip_version_major = 11,
1943*61046927SAndroid Build Coastguard Worker          .hw_ip_version_minor = 0,
1944*61046927SAndroid Build Coastguard Worker          .capabilities_flags = UINT64_C(0),
1945*61046927SAndroid Build Coastguard Worker          .ib_start_alignment = 32,
1946*61046927SAndroid Build Coastguard Worker          .ib_size_alignment = 32,
1947*61046927SAndroid Build Coastguard Worker          .available_rings = 0xf,
1948*61046927SAndroid Build Coastguard Worker          .ip_discovery_version = 0xb0500,
1949*61046927SAndroid Build Coastguard Worker       },
1950*61046927SAndroid Build Coastguard Worker       .fw_gfx_me = {
1951*61046927SAndroid Build Coastguard Worker          .ver = 29,
1952*61046927SAndroid Build Coastguard Worker          .feature = 35,
1953*61046927SAndroid Build Coastguard Worker       },
1954*61046927SAndroid Build Coastguard Worker       .fw_gfx_pfp = {
1955*61046927SAndroid Build Coastguard Worker          .ver = 39,
1956*61046927SAndroid Build Coastguard Worker          .feature = 35,
1957*61046927SAndroid Build Coastguard Worker       },
1958*61046927SAndroid Build Coastguard Worker       .fw_gfx_mec = {
1959*61046927SAndroid Build Coastguard Worker          .ver = 24,
1960*61046927SAndroid Build Coastguard Worker          .feature = 35,
1961*61046927SAndroid Build Coastguard Worker       },
1962*61046927SAndroid Build Coastguard Worker       .mmr_regs = {
1963*61046927SAndroid Build Coastguard Worker          0x263e, 0xffffffff, 0x00000242,
1964*61046927SAndroid Build Coastguard Worker       },
1965*61046927SAndroid Build Coastguard Worker       .mmr_reg_count = 1,
1966*61046927SAndroid Build Coastguard Worker       .dev = {
1967*61046927SAndroid Build Coastguard Worker          .device_id = 0x150e,
1968*61046927SAndroid Build Coastguard Worker          .chip_rev = 0x01,
1969*61046927SAndroid Build Coastguard Worker          .external_rev = 0x11,
1970*61046927SAndroid Build Coastguard Worker          .pci_rev = 0xd1,
1971*61046927SAndroid Build Coastguard Worker          .family = AMDGPU_FAMILY_GC_11_5_0,
1972*61046927SAndroid Build Coastguard Worker          .num_shader_engines = 1,
1973*61046927SAndroid Build Coastguard Worker          .num_shader_arrays_per_engine = 2,
1974*61046927SAndroid Build Coastguard Worker          .gpu_counter_freq = 100000,
1975*61046927SAndroid Build Coastguard Worker          .max_engine_clock = UINT64_C(2900000),
1976*61046927SAndroid Build Coastguard Worker          .max_memory_clock = UINT64_C(937000),
1977*61046927SAndroid Build Coastguard Worker          .cu_active_number = 16,
1978*61046927SAndroid Build Coastguard Worker          .cu_ao_mask = 0x0,
1979*61046927SAndroid Build Coastguard Worker          .cu_bitmap = {
1980*61046927SAndroid Build Coastguard Worker             { 0xff, 0xff, 0x0, 0x0, },
1981*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1982*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1983*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
1984*61046927SAndroid Build Coastguard Worker          },
1985*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask = 0xf,
1986*61046927SAndroid Build Coastguard Worker          .num_rb_pipes = 4,
1987*61046927SAndroid Build Coastguard Worker          .num_hw_gfx_contexts = 8,
1988*61046927SAndroid Build Coastguard Worker          .pcie_gen = 4,
1989*61046927SAndroid Build Coastguard Worker          .ids_flags = UINT64_C(0x9),
1990*61046927SAndroid Build Coastguard Worker          .virtual_address_offset = UINT64_C(0x10000),
1991*61046927SAndroid Build Coastguard Worker          .virtual_address_max = UINT64_C(0x800000000000),
1992*61046927SAndroid Build Coastguard Worker          .virtual_address_alignment = 4096,
1993*61046927SAndroid Build Coastguard Worker          .pte_fragment_size = 2097152,
1994*61046927SAndroid Build Coastguard Worker          .gart_page_size = 4096,
1995*61046927SAndroid Build Coastguard Worker          .ce_ram_size = 0,
1996*61046927SAndroid Build Coastguard Worker          .vram_type = 12,
1997*61046927SAndroid Build Coastguard Worker          .vram_bit_width = 128,
1998*61046927SAndroid Build Coastguard Worker          .vce_harvest_config = 0,
1999*61046927SAndroid Build Coastguard Worker          .gc_double_offchip_lds_buf = 0,
2000*61046927SAndroid Build Coastguard Worker          .prim_buf_gpu_addr = UINT64_C(0),
2001*61046927SAndroid Build Coastguard Worker          .pos_buf_gpu_addr = UINT64_C(0),
2002*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_gpu_addr = UINT64_C(0),
2003*61046927SAndroid Build Coastguard Worker          .param_buf_gpu_addr = UINT64_C(0),
2004*61046927SAndroid Build Coastguard Worker          .prim_buf_size = 0,
2005*61046927SAndroid Build Coastguard Worker          .pos_buf_size = 0,
2006*61046927SAndroid Build Coastguard Worker          .cntl_sb_buf_size = 0,
2007*61046927SAndroid Build Coastguard Worker          .param_buf_size = 0,
2008*61046927SAndroid Build Coastguard Worker          .wave_front_size = 32,
2009*61046927SAndroid Build Coastguard Worker          .num_shader_visible_vgprs = 1024,
2010*61046927SAndroid Build Coastguard Worker          .num_cu_per_sh = 8,
2011*61046927SAndroid Build Coastguard Worker          .num_tcc_blocks = 4,
2012*61046927SAndroid Build Coastguard Worker          .gs_vgt_table_depth = 32,
2013*61046927SAndroid Build Coastguard Worker          .gs_prim_buffer_depth = 1792,
2014*61046927SAndroid Build Coastguard Worker          .max_gs_waves_per_vgt = 32,
2015*61046927SAndroid Build Coastguard Worker          .pcie_num_lanes = 16,
2016*61046927SAndroid Build Coastguard Worker          .cu_ao_bitmap = {
2017*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
2018*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
2019*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
2020*61046927SAndroid Build Coastguard Worker             { 0x0, 0x0, 0x0, 0x0, },
2021*61046927SAndroid Build Coastguard Worker          },
2022*61046927SAndroid Build Coastguard Worker          .high_va_offset = UINT64_C(0xffff800000000000),
2023*61046927SAndroid Build Coastguard Worker          .high_va_max = UINT64_C(0xffffffffffbfe000),
2024*61046927SAndroid Build Coastguard Worker          .pa_sc_tile_steering_override = 0,
2025*61046927SAndroid Build Coastguard Worker          .tcc_disabled_mask = UINT64_C(0),
2026*61046927SAndroid Build Coastguard Worker          .min_engine_clock = UINT64_C(600000),
2027*61046927SAndroid Build Coastguard Worker          .min_memory_clock = UINT64_C(400000),
2028*61046927SAndroid Build Coastguard Worker          .tcp_cache_size = 32,
2029*61046927SAndroid Build Coastguard Worker          .num_sqc_per_wgp = 1,
2030*61046927SAndroid Build Coastguard Worker          .sqc_data_cache_size = 16,
2031*61046927SAndroid Build Coastguard Worker          .sqc_inst_cache_size = 32,
2032*61046927SAndroid Build Coastguard Worker          .gl1c_cache_size = 256,
2033*61046927SAndroid Build Coastguard Worker          .gl2c_cache_size = 2048,
2034*61046927SAndroid Build Coastguard Worker          .mall_size = UINT64_C(0),
2035*61046927SAndroid Build Coastguard Worker          .enabled_rb_pipes_mask_hi = 0,
2036*61046927SAndroid Build Coastguard Worker       },
2037*61046927SAndroid Build Coastguard Worker       .mem = {
2038*61046927SAndroid Build Coastguard Worker          .vram = {
2039*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(536870912),
2040*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(368558080),
2041*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(281300992),
2042*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(276418560),
2043*61046927SAndroid Build Coastguard Worker          },
2044*61046927SAndroid Build Coastguard Worker          .cpu_accessible_vram = {
2045*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(536870912),
2046*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(368558080),
2047*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(281300992),
2048*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(276418560),
2049*61046927SAndroid Build Coastguard Worker          },
2050*61046927SAndroid Build Coastguard Worker          .gtt = {
2051*61046927SAndroid Build Coastguard Worker             .total_heap_size = UINT64_C(16488497152),
2052*61046927SAndroid Build Coastguard Worker             .usable_heap_size = UINT64_C(16474185728),
2053*61046927SAndroid Build Coastguard Worker             .heap_usage = UINT64_C(50016256),
2054*61046927SAndroid Build Coastguard Worker             .max_allocation = UINT64_C(12355639296),
2055*61046927SAndroid Build Coastguard Worker          },
2056*61046927SAndroid Build Coastguard Worker       },
2057*61046927SAndroid Build Coastguard Worker    }
2058*61046927SAndroid Build Coastguard Worker };
2059*61046927SAndroid Build Coastguard Worker 
2060*61046927SAndroid Build Coastguard Worker const size_t num_amdgpu_devices = ARRAY_SIZE(amdgpu_devices);
2061