xref: /utopia/UTPA2-700.0.x/modules/gpd/hal/macan/gpd/gpd_reg.c (revision 53ee8cc121a030b8d368113ac3e966b4705770ef)
1*53ee8cc1Swenshuai.xi //<MStar Software>
2*53ee8cc1Swenshuai.xi //******************************************************************************
3*53ee8cc1Swenshuai.xi // MStar Software
4*53ee8cc1Swenshuai.xi // Copyright (c) 2010 - 2012 MStar Semiconductor, Inc. All rights reserved.
5*53ee8cc1Swenshuai.xi // All software, firmware and related documentation herein ("MStar Software") are
6*53ee8cc1Swenshuai.xi // intellectual property of MStar Semiconductor, Inc. ("MStar") and protected by
7*53ee8cc1Swenshuai.xi // law, including, but not limited to, copyright law and international treaties.
8*53ee8cc1Swenshuai.xi // Any use, modification, reproduction, retransmission, or republication of all
9*53ee8cc1Swenshuai.xi // or part of MStar Software is expressly prohibited, unless prior written
10*53ee8cc1Swenshuai.xi // permission has been granted by MStar.
11*53ee8cc1Swenshuai.xi //
12*53ee8cc1Swenshuai.xi // By accessing, browsing and/or using MStar Software, you acknowledge that you
13*53ee8cc1Swenshuai.xi // have read, understood, and agree, to be bound by below terms ("Terms") and to
14*53ee8cc1Swenshuai.xi // comply with all applicable laws and regulations:
15*53ee8cc1Swenshuai.xi //
16*53ee8cc1Swenshuai.xi // 1. MStar shall retain any and all right, ownership and interest to MStar
17*53ee8cc1Swenshuai.xi //    Software and any modification/derivatives thereof.
18*53ee8cc1Swenshuai.xi //    No right, ownership, or interest to MStar Software and any
19*53ee8cc1Swenshuai.xi //    modification/derivatives thereof is transferred to you under Terms.
20*53ee8cc1Swenshuai.xi //
21*53ee8cc1Swenshuai.xi // 2. You understand that MStar Software might include, incorporate or be
22*53ee8cc1Swenshuai.xi //    supplied together with third party`s software and the use of MStar
23*53ee8cc1Swenshuai.xi //    Software may require additional licenses from third parties.
24*53ee8cc1Swenshuai.xi //    Therefore, you hereby agree it is your sole responsibility to separately
25*53ee8cc1Swenshuai.xi //    obtain any and all third party right and license necessary for your use of
26*53ee8cc1Swenshuai.xi //    such third party`s software.
27*53ee8cc1Swenshuai.xi //
28*53ee8cc1Swenshuai.xi // 3. MStar Software and any modification/derivatives thereof shall be deemed as
29*53ee8cc1Swenshuai.xi //    MStar`s confidential information and you agree to keep MStar`s
30*53ee8cc1Swenshuai.xi //    confidential information in strictest confidence and not disclose to any
31*53ee8cc1Swenshuai.xi //    third party.
32*53ee8cc1Swenshuai.xi //
33*53ee8cc1Swenshuai.xi // 4. MStar Software is provided on an "AS IS" basis without warranties of any
34*53ee8cc1Swenshuai.xi //    kind. Any warranties are hereby expressly disclaimed by MStar, including
35*53ee8cc1Swenshuai.xi //    without limitation, any warranties of merchantability, non-infringement of
36*53ee8cc1Swenshuai.xi //    intellectual property rights, fitness for a particular purpose, error free
37*53ee8cc1Swenshuai.xi //    and in conformity with any international standard.  You agree to waive any
38*53ee8cc1Swenshuai.xi //    claim against MStar for any loss, damage, cost or expense that you may
39*53ee8cc1Swenshuai.xi //    incur related to your use of MStar Software.
40*53ee8cc1Swenshuai.xi //    In no event shall MStar be liable for any direct, indirect, incidental or
41*53ee8cc1Swenshuai.xi //    consequential damages, including without limitation, lost of profit or
42*53ee8cc1Swenshuai.xi //    revenues, lost or damage of data, and unauthorized system use.
43*53ee8cc1Swenshuai.xi //    You agree that this Section 4 shall still apply without being affected
44*53ee8cc1Swenshuai.xi //    even if MStar Software has been modified by MStar in accordance with your
45*53ee8cc1Swenshuai.xi //    request or instruction for your use, except otherwise agreed by both
46*53ee8cc1Swenshuai.xi //    parties in writing.
47*53ee8cc1Swenshuai.xi //
48*53ee8cc1Swenshuai.xi // 5. If requested, MStar may from time to time provide technical supports or
49*53ee8cc1Swenshuai.xi //    services in relation with MStar Software to you for your use of
50*53ee8cc1Swenshuai.xi //    MStar Software in conjunction with your or your customer`s product
51*53ee8cc1Swenshuai.xi //    ("Services").
52*53ee8cc1Swenshuai.xi //    You understand and agree that, except otherwise agreed by both parties in
53*53ee8cc1Swenshuai.xi //    writing, Services are provided on an "AS IS" basis and the warranty
54*53ee8cc1Swenshuai.xi //    disclaimer set forth in Section 4 above shall apply.
55*53ee8cc1Swenshuai.xi //
56*53ee8cc1Swenshuai.xi // 6. Nothing contained herein shall be construed as by implication, estoppels
57*53ee8cc1Swenshuai.xi //    or otherwise:
58*53ee8cc1Swenshuai.xi //    (a) conferring any license or right to use MStar name, trademark, service
59*53ee8cc1Swenshuai.xi //        mark, symbol or any other identification;
60*53ee8cc1Swenshuai.xi //    (b) obligating MStar or any of its affiliates to furnish any person,
61*53ee8cc1Swenshuai.xi //        including without limitation, you and your customers, any assistance
62*53ee8cc1Swenshuai.xi //        of any kind whatsoever, or any information; or
63*53ee8cc1Swenshuai.xi //    (c) conferring any license or right under any intellectual property right.
64*53ee8cc1Swenshuai.xi //
65*53ee8cc1Swenshuai.xi // 7. These terms shall be governed by and construed in accordance with the laws
66*53ee8cc1Swenshuai.xi //    of Taiwan, R.O.C., excluding its conflict of law rules.
67*53ee8cc1Swenshuai.xi //    Any and all dispute arising out hereof or related hereto shall be finally
68*53ee8cc1Swenshuai.xi //    settled by arbitration referred to the Chinese Arbitration Association,
69*53ee8cc1Swenshuai.xi //    Taipei in accordance with the ROC Arbitration Law and the Arbitration
70*53ee8cc1Swenshuai.xi //    Rules of the Association by three (3) arbitrators appointed in accordance
71*53ee8cc1Swenshuai.xi //    with the said Rules.
72*53ee8cc1Swenshuai.xi //    The place of arbitration shall be in Taipei, Taiwan and the language shall
73*53ee8cc1Swenshuai.xi //    be English.
74*53ee8cc1Swenshuai.xi //    The arbitration award shall be final and binding to both parties.
75*53ee8cc1Swenshuai.xi //
76*53ee8cc1Swenshuai.xi //******************************************************************************
77*53ee8cc1Swenshuai.xi //<MStar Software>
78*53ee8cc1Swenshuai.xi #include <stdio.h>
79*53ee8cc1Swenshuai.xi #include "MsCommon.h"
80*53ee8cc1Swenshuai.xi #include "gpd_reg.h"
81*53ee8cc1Swenshuai.xi 
82*53ee8cc1Swenshuai.xi MS_VIRT GPD_REG_BASE;
83*53ee8cc1Swenshuai.xi 
84*53ee8cc1Swenshuai.xi const MS_U16 gpd_reg_addr[] =
85*53ee8cc1Swenshuai.xi {
86*53ee8cc1Swenshuai.xi 0x0 ,
87*53ee8cc1Swenshuai.xi 0x0 ,
88*53ee8cc1Swenshuai.xi 0x0 ,
89*53ee8cc1Swenshuai.xi 0x0 ,
90*53ee8cc1Swenshuai.xi 0x0 ,
91*53ee8cc1Swenshuai.xi 0x0 ,
92*53ee8cc1Swenshuai.xi 0x0 ,
93*53ee8cc1Swenshuai.xi 0x0 ,
94*53ee8cc1Swenshuai.xi 0x0 ,
95*53ee8cc1Swenshuai.xi 0x0 ,
96*53ee8cc1Swenshuai.xi 0x0 ,
97*53ee8cc1Swenshuai.xi 0x0 ,
98*53ee8cc1Swenshuai.xi 0x0 ,
99*53ee8cc1Swenshuai.xi 0x0 ,
100*53ee8cc1Swenshuai.xi 0x1 ,
101*53ee8cc1Swenshuai.xi 0x1 ,
102*53ee8cc1Swenshuai.xi 0x2 ,
103*53ee8cc1Swenshuai.xi 0x3 ,
104*53ee8cc1Swenshuai.xi 0x4 ,
105*53ee8cc1Swenshuai.xi 0x5 ,
106*53ee8cc1Swenshuai.xi 0x6 ,
107*53ee8cc1Swenshuai.xi 0x8 ,
108*53ee8cc1Swenshuai.xi 0xa ,
109*53ee8cc1Swenshuai.xi 0xc ,
110*53ee8cc1Swenshuai.xi 0xe ,
111*53ee8cc1Swenshuai.xi 0xf ,
112*53ee8cc1Swenshuai.xi 0x10,
113*53ee8cc1Swenshuai.xi 0x12,
114*53ee8cc1Swenshuai.xi 0x13,
115*53ee8cc1Swenshuai.xi 0x14,
116*53ee8cc1Swenshuai.xi 0x15,
117*53ee8cc1Swenshuai.xi 0x15,
118*53ee8cc1Swenshuai.xi 0x15,
119*53ee8cc1Swenshuai.xi 0x16,
120*53ee8cc1Swenshuai.xi 0x17,
121*53ee8cc1Swenshuai.xi 0x18,
122*53ee8cc1Swenshuai.xi 0x18,
123*53ee8cc1Swenshuai.xi 0x18,
124*53ee8cc1Swenshuai.xi 0x18,
125*53ee8cc1Swenshuai.xi 0x18,
126*53ee8cc1Swenshuai.xi 0x18,
127*53ee8cc1Swenshuai.xi 0x19,
128*53ee8cc1Swenshuai.xi 0x19,
129*53ee8cc1Swenshuai.xi 0x1a,
130*53ee8cc1Swenshuai.xi 0x1a,
131*53ee8cc1Swenshuai.xi 0x1a,
132*53ee8cc1Swenshuai.xi 0x1a,
133*53ee8cc1Swenshuai.xi 0x1a,
134*53ee8cc1Swenshuai.xi 0x1a,
135*53ee8cc1Swenshuai.xi 0x1a,
136*53ee8cc1Swenshuai.xi 0x1a,
137*53ee8cc1Swenshuai.xi 0x1b,
138*53ee8cc1Swenshuai.xi 0x1b,
139*53ee8cc1Swenshuai.xi 0x1b,
140*53ee8cc1Swenshuai.xi 0x1b,
141*53ee8cc1Swenshuai.xi 0x1c,
142*53ee8cc1Swenshuai.xi 0x1c,
143*53ee8cc1Swenshuai.xi 0x1d,
144*53ee8cc1Swenshuai.xi 0x1e,
145*53ee8cc1Swenshuai.xi 0x1e,
146*53ee8cc1Swenshuai.xi 0x20,
147*53ee8cc1Swenshuai.xi 0x20,
148*53ee8cc1Swenshuai.xi 0x22,
149*53ee8cc1Swenshuai.xi 0x22,
150*53ee8cc1Swenshuai.xi 0x23,
151*53ee8cc1Swenshuai.xi 0x23,
152*53ee8cc1Swenshuai.xi 0x23,
153*53ee8cc1Swenshuai.xi 0x23,
154*53ee8cc1Swenshuai.xi 0x24,
155*53ee8cc1Swenshuai.xi 0x24,
156*53ee8cc1Swenshuai.xi 0x24,
157*53ee8cc1Swenshuai.xi 0x25,
158*53ee8cc1Swenshuai.xi 0x26,
159*53ee8cc1Swenshuai.xi 0x26,
160*53ee8cc1Swenshuai.xi 0x28,
161*53ee8cc1Swenshuai.xi 0x28,
162*53ee8cc1Swenshuai.xi 0x2a,
163*53ee8cc1Swenshuai.xi 0x2a,
164*53ee8cc1Swenshuai.xi 0x2c,
165*53ee8cc1Swenshuai.xi 0x2c,
166*53ee8cc1Swenshuai.xi 0x2d,
167*53ee8cc1Swenshuai.xi 0x2e,
168*53ee8cc1Swenshuai.xi 0x2e,
169*53ee8cc1Swenshuai.xi 0x2f,
170*53ee8cc1Swenshuai.xi 0x30,
171*53ee8cc1Swenshuai.xi 0x30,
172*53ee8cc1Swenshuai.xi 0x31,
173*53ee8cc1Swenshuai.xi 0x32,
174*53ee8cc1Swenshuai.xi 0x32,
175*53ee8cc1Swenshuai.xi 0x33,
176*53ee8cc1Swenshuai.xi 0x34,
177*53ee8cc1Swenshuai.xi 0x34,
178*53ee8cc1Swenshuai.xi 0x35,
179*53ee8cc1Swenshuai.xi 0x35,
180*53ee8cc1Swenshuai.xi 0x36,
181*53ee8cc1Swenshuai.xi 0x36,
182*53ee8cc1Swenshuai.xi 0x36,
183*53ee8cc1Swenshuai.xi 0x36,
184*53ee8cc1Swenshuai.xi 0x37,
185*53ee8cc1Swenshuai.xi 0x37,
186*53ee8cc1Swenshuai.xi 0x38,
187*53ee8cc1Swenshuai.xi 0x38,
188*53ee8cc1Swenshuai.xi 0x38,
189*53ee8cc1Swenshuai.xi 0x38,
190*53ee8cc1Swenshuai.xi 0x39,
191*53ee8cc1Swenshuai.xi 0x39,
192*53ee8cc1Swenshuai.xi 0x3a,
193*53ee8cc1Swenshuai.xi 0x3b,
194*53ee8cc1Swenshuai.xi 0x3c,
195*53ee8cc1Swenshuai.xi 0x3d,
196*53ee8cc1Swenshuai.xi 0x3e,
197*53ee8cc1Swenshuai.xi 0x3f,
198*53ee8cc1Swenshuai.xi 0x40,
199*53ee8cc1Swenshuai.xi 0x41,
200*53ee8cc1Swenshuai.xi 0x42,
201*53ee8cc1Swenshuai.xi 0x43,
202*53ee8cc1Swenshuai.xi 0x44,
203*53ee8cc1Swenshuai.xi 0x45,
204*53ee8cc1Swenshuai.xi 0x46,
205*53ee8cc1Swenshuai.xi 0x47,
206*53ee8cc1Swenshuai.xi 0x48,
207*53ee8cc1Swenshuai.xi 0x48,
208*53ee8cc1Swenshuai.xi 0x4a,
209*53ee8cc1Swenshuai.xi 0x4a,
210*53ee8cc1Swenshuai.xi 0x4a,
211*53ee8cc1Swenshuai.xi 0x4a,
212*53ee8cc1Swenshuai.xi 0x4a,
213*53ee8cc1Swenshuai.xi 0x4a,
214*53ee8cc1Swenshuai.xi 0x4a,
215*53ee8cc1Swenshuai.xi 0x4a,
216*53ee8cc1Swenshuai.xi 0x4a,
217*53ee8cc1Swenshuai.xi 0x4b,
218*53ee8cc1Swenshuai.xi 0x4c,
219*53ee8cc1Swenshuai.xi 0x4e,
220*53ee8cc1Swenshuai.xi 0x4f,
221*53ee8cc1Swenshuai.xi 0x4f,
222*53ee8cc1Swenshuai.xi 0x4f,
223*53ee8cc1Swenshuai.xi 0x50,
224*53ee8cc1Swenshuai.xi 0x51,
225*53ee8cc1Swenshuai.xi 0x51,
226*53ee8cc1Swenshuai.xi 0x51,
227*53ee8cc1Swenshuai.xi 0x52,
228*53ee8cc1Swenshuai.xi 0x53,
229*53ee8cc1Swenshuai.xi 0x53,
230*53ee8cc1Swenshuai.xi 0x53,
231*53ee8cc1Swenshuai.xi 0x53,
232*53ee8cc1Swenshuai.xi 0x53,
233*53ee8cc1Swenshuai.xi 0x54,
234*53ee8cc1Swenshuai.xi 0x55,
235*53ee8cc1Swenshuai.xi 0x55,
236*53ee8cc1Swenshuai.xi 0x55,
237*53ee8cc1Swenshuai.xi 0x55,
238*53ee8cc1Swenshuai.xi 0x56,
239*53ee8cc1Swenshuai.xi 0x58,
240*53ee8cc1Swenshuai.xi 0x5a,
241*53ee8cc1Swenshuai.xi 0x5c,
242*53ee8cc1Swenshuai.xi 0x5e,
243*53ee8cc1Swenshuai.xi 0x5e,
244*53ee8cc1Swenshuai.xi 0x5e,
245*53ee8cc1Swenshuai.xi 0x5e,
246*53ee8cc1Swenshuai.xi 0x5e,
247*53ee8cc1Swenshuai.xi 0x5e,
248*53ee8cc1Swenshuai.xi 0x5e,
249*53ee8cc1Swenshuai.xi 0x5e,
250*53ee8cc1Swenshuai.xi 0x5e,
251*53ee8cc1Swenshuai.xi 0x5e,
252*53ee8cc1Swenshuai.xi 0x5e,
253*53ee8cc1Swenshuai.xi 0x5e,
254*53ee8cc1Swenshuai.xi 0x5e,
255*53ee8cc1Swenshuai.xi 0x5e,
256*53ee8cc1Swenshuai.xi 0x5e,
257*53ee8cc1Swenshuai.xi 0x5e,
258*53ee8cc1Swenshuai.xi 0x5f,
259*53ee8cc1Swenshuai.xi 0x5f,
260*53ee8cc1Swenshuai.xi 0x5f,
261*53ee8cc1Swenshuai.xi 0x5f,
262*53ee8cc1Swenshuai.xi 0x5f,
263*53ee8cc1Swenshuai.xi 0x5f,
264*53ee8cc1Swenshuai.xi 0x5f,
265*53ee8cc1Swenshuai.xi 0x60,
266*53ee8cc1Swenshuai.xi 0x60,
267*53ee8cc1Swenshuai.xi 0x60,
268*53ee8cc1Swenshuai.xi 0x60,
269*53ee8cc1Swenshuai.xi 0x60,
270*53ee8cc1Swenshuai.xi 0x60,
271*53ee8cc1Swenshuai.xi 0x61,
272*53ee8cc1Swenshuai.xi 0x61,
273*53ee8cc1Swenshuai.xi 0x61,
274*53ee8cc1Swenshuai.xi 0x61,
275*53ee8cc1Swenshuai.xi 0x61,
276*53ee8cc1Swenshuai.xi 0x62,
277*53ee8cc1Swenshuai.xi 0x64,
278*53ee8cc1Swenshuai.xi 0x65,
279*53ee8cc1Swenshuai.xi 0x66,
280*53ee8cc1Swenshuai.xi 0x66,
281*53ee8cc1Swenshuai.xi 0x67,
282*53ee8cc1Swenshuai.xi 0x69,
283*53ee8cc1Swenshuai.xi 0x6b,
284*53ee8cc1Swenshuai.xi 0x6b,
285*53ee8cc1Swenshuai.xi 0x6b,
286*53ee8cc1Swenshuai.xi 0x6b,
287*53ee8cc1Swenshuai.xi 0x6c,
288*53ee8cc1Swenshuai.xi 0x6e,
289*53ee8cc1Swenshuai.xi 0x70,
290*53ee8cc1Swenshuai.xi 0x70
291*53ee8cc1Swenshuai.xi };
292*53ee8cc1Swenshuai.xi 
293*53ee8cc1Swenshuai.xi const MS_U8 gpd_reg_msb[] =
294*53ee8cc1Swenshuai.xi {
295*53ee8cc1Swenshuai.xi 0 ,
296*53ee8cc1Swenshuai.xi 1 ,
297*53ee8cc1Swenshuai.xi 2 ,
298*53ee8cc1Swenshuai.xi 3 ,
299*53ee8cc1Swenshuai.xi 4 ,
300*53ee8cc1Swenshuai.xi 5 ,
301*53ee8cc1Swenshuai.xi 8 ,
302*53ee8cc1Swenshuai.xi 9 ,
303*53ee8cc1Swenshuai.xi 10,
304*53ee8cc1Swenshuai.xi 11,
305*53ee8cc1Swenshuai.xi 12,
306*53ee8cc1Swenshuai.xi 13,
307*53ee8cc1Swenshuai.xi 14,
308*53ee8cc1Swenshuai.xi 19,
309*53ee8cc1Swenshuai.xi 9,
310*53ee8cc1Swenshuai.xi 15,
311*53ee8cc1Swenshuai.xi 15,
312*53ee8cc1Swenshuai.xi 14,
313*53ee8cc1Swenshuai.xi 15,
314*53ee8cc1Swenshuai.xi 15,
315*53ee8cc1Swenshuai.xi 30,
316*53ee8cc1Swenshuai.xi 30,
317*53ee8cc1Swenshuai.xi 30,
318*53ee8cc1Swenshuai.xi 31,
319*53ee8cc1Swenshuai.xi 8 ,
320*53ee8cc1Swenshuai.xi 15,
321*53ee8cc1Swenshuai.xi 15,
322*53ee8cc1Swenshuai.xi 15,
323*53ee8cc1Swenshuai.xi 15,
324*53ee8cc1Swenshuai.xi 15,
325*53ee8cc1Swenshuai.xi 0,
326*53ee8cc1Swenshuai.xi 8,
327*53ee8cc1Swenshuai.xi 15,
328*53ee8cc1Swenshuai.xi 15,
329*53ee8cc1Swenshuai.xi 15,
330*53ee8cc1Swenshuai.xi 0 ,
331*53ee8cc1Swenshuai.xi 1 ,
332*53ee8cc1Swenshuai.xi 3 ,
333*53ee8cc1Swenshuai.xi 6 ,
334*53ee8cc1Swenshuai.xi 10,
335*53ee8cc1Swenshuai.xi 15,
336*53ee8cc1Swenshuai.xi 5,
337*53ee8cc1Swenshuai.xi 12,
338*53ee8cc1Swenshuai.xi 0 ,
339*53ee8cc1Swenshuai.xi 2 ,
340*53ee8cc1Swenshuai.xi 5 ,
341*53ee8cc1Swenshuai.xi 6 ,
342*53ee8cc1Swenshuai.xi 7 ,
343*53ee8cc1Swenshuai.xi 8 ,
344*53ee8cc1Swenshuai.xi 9 ,
345*53ee8cc1Swenshuai.xi 15,
346*53ee8cc1Swenshuai.xi 8,
347*53ee8cc1Swenshuai.xi 9,
348*53ee8cc1Swenshuai.xi 14,
349*53ee8cc1Swenshuai.xi 15,
350*53ee8cc1Swenshuai.xi 7 ,
351*53ee8cc1Swenshuai.xi 16,
352*53ee8cc1Swenshuai.xi 10,
353*53ee8cc1Swenshuai.xi 10,
354*53ee8cc1Swenshuai.xi 22,
355*53ee8cc1Swenshuai.xi 12,
356*53ee8cc1Swenshuai.xi 26,
357*53ee8cc1Swenshuai.xi 14,
358*53ee8cc1Swenshuai.xi 15,
359*53ee8cc1Swenshuai.xi 1,
360*53ee8cc1Swenshuai.xi 4,
361*53ee8cc1Swenshuai.xi 8,
362*53ee8cc1Swenshuai.xi 13,
363*53ee8cc1Swenshuai.xi 5 ,
364*53ee8cc1Swenshuai.xi 12,
365*53ee8cc1Swenshuai.xi 20,
366*53ee8cc1Swenshuai.xi 13,
367*53ee8cc1Swenshuai.xi 9 ,
368*53ee8cc1Swenshuai.xi 20,
369*53ee8cc1Swenshuai.xi 11,
370*53ee8cc1Swenshuai.xi 24,
371*53ee8cc1Swenshuai.xi 13,
372*53ee8cc1Swenshuai.xi 28,
373*53ee8cc1Swenshuai.xi 8 ,
374*53ee8cc1Swenshuai.xi 17,
375*53ee8cc1Swenshuai.xi 10,
376*53ee8cc1Swenshuai.xi 8 ,
377*53ee8cc1Swenshuai.xi 17,
378*53ee8cc1Swenshuai.xi 10,
379*53ee8cc1Swenshuai.xi 8 ,
380*53ee8cc1Swenshuai.xi 17,
381*53ee8cc1Swenshuai.xi 10,
382*53ee8cc1Swenshuai.xi 8 ,
383*53ee8cc1Swenshuai.xi 17,
384*53ee8cc1Swenshuai.xi 10,
385*53ee8cc1Swenshuai.xi 8 ,
386*53ee8cc1Swenshuai.xi 17,
387*53ee8cc1Swenshuai.xi 6,
388*53ee8cc1Swenshuai.xi 11,
389*53ee8cc1Swenshuai.xi 4 ,
390*53ee8cc1Swenshuai.xi 9 ,
391*53ee8cc1Swenshuai.xi 14,
392*53ee8cc1Swenshuai.xi 19,
393*53ee8cc1Swenshuai.xi 8,
394*53ee8cc1Swenshuai.xi 13,
395*53ee8cc1Swenshuai.xi 4 ,
396*53ee8cc1Swenshuai.xi 9 ,
397*53ee8cc1Swenshuai.xi 14,
398*53ee8cc1Swenshuai.xi 19,
399*53ee8cc1Swenshuai.xi 8,
400*53ee8cc1Swenshuai.xi 13,
401*53ee8cc1Swenshuai.xi 15,
402*53ee8cc1Swenshuai.xi 15,
403*53ee8cc1Swenshuai.xi 15,
404*53ee8cc1Swenshuai.xi 15,
405*53ee8cc1Swenshuai.xi 15,
406*53ee8cc1Swenshuai.xi 15,
407*53ee8cc1Swenshuai.xi 15,
408*53ee8cc1Swenshuai.xi 15,
409*53ee8cc1Swenshuai.xi 15,
410*53ee8cc1Swenshuai.xi 15,
411*53ee8cc1Swenshuai.xi 15,
412*53ee8cc1Swenshuai.xi 15,
413*53ee8cc1Swenshuai.xi 15,
414*53ee8cc1Swenshuai.xi 15,
415*53ee8cc1Swenshuai.xi 14,
416*53ee8cc1Swenshuai.xi 29,
417*53ee8cc1Swenshuai.xi 0 ,
418*53ee8cc1Swenshuai.xi 1 ,
419*53ee8cc1Swenshuai.xi 4 ,
420*53ee8cc1Swenshuai.xi 5 ,
421*53ee8cc1Swenshuai.xi 8 ,
422*53ee8cc1Swenshuai.xi 10,
423*53ee8cc1Swenshuai.xi 13,
424*53ee8cc1Swenshuai.xi 14,
425*53ee8cc1Swenshuai.xi 15,
426*53ee8cc1Swenshuai.xi 15,
427*53ee8cc1Swenshuai.xi 31,
428*53ee8cc1Swenshuai.xi 23,
429*53ee8cc1Swenshuai.xi 13,
430*53ee8cc1Swenshuai.xi 14,
431*53ee8cc1Swenshuai.xi 15,
432*53ee8cc1Swenshuai.xi 25,
433*53ee8cc1Swenshuai.xi 10,
434*53ee8cc1Swenshuai.xi 14,
435*53ee8cc1Swenshuai.xi 15,
436*53ee8cc1Swenshuai.xi 25,
437*53ee8cc1Swenshuai.xi 10,
438*53ee8cc1Swenshuai.xi 11,
439*53ee8cc1Swenshuai.xi 12,
440*53ee8cc1Swenshuai.xi 14,
441*53ee8cc1Swenshuai.xi 15,
442*53ee8cc1Swenshuai.xi 25,
443*53ee8cc1Swenshuai.xi 10,
444*53ee8cc1Swenshuai.xi 12,
445*53ee8cc1Swenshuai.xi 13,
446*53ee8cc1Swenshuai.xi 14,
447*53ee8cc1Swenshuai.xi 31,
448*53ee8cc1Swenshuai.xi 31,
449*53ee8cc1Swenshuai.xi 27,
450*53ee8cc1Swenshuai.xi 27,
451*53ee8cc1Swenshuai.xi 0 ,
452*53ee8cc1Swenshuai.xi 1 ,
453*53ee8cc1Swenshuai.xi 2 ,
454*53ee8cc1Swenshuai.xi 3 ,
455*53ee8cc1Swenshuai.xi 4 ,
456*53ee8cc1Swenshuai.xi 5 ,
457*53ee8cc1Swenshuai.xi 6 ,
458*53ee8cc1Swenshuai.xi 7 ,
459*53ee8cc1Swenshuai.xi 8 ,
460*53ee8cc1Swenshuai.xi 9 ,
461*53ee8cc1Swenshuai.xi 10,
462*53ee8cc1Swenshuai.xi 11,
463*53ee8cc1Swenshuai.xi 12,
464*53ee8cc1Swenshuai.xi 13,
465*53ee8cc1Swenshuai.xi 14,
466*53ee8cc1Swenshuai.xi 15,
467*53ee8cc1Swenshuai.xi 0,
468*53ee8cc1Swenshuai.xi 1,
469*53ee8cc1Swenshuai.xi 2,
470*53ee8cc1Swenshuai.xi 3,
471*53ee8cc1Swenshuai.xi 4,
472*53ee8cc1Swenshuai.xi 5,
473*53ee8cc1Swenshuai.xi 6,
474*53ee8cc1Swenshuai.xi 4,
475*53ee8cc1Swenshuai.xi 9 ,
476*53ee8cc1Swenshuai.xi 12,
477*53ee8cc1Swenshuai.xi 13,
478*53ee8cc1Swenshuai.xi 14,
479*53ee8cc1Swenshuai.xi 15,
480*53ee8cc1Swenshuai.xi 4,
481*53ee8cc1Swenshuai.xi 9,
482*53ee8cc1Swenshuai.xi 11,
483*53ee8cc1Swenshuai.xi 13,
484*53ee8cc1Swenshuai.xi 15,
485*53ee8cc1Swenshuai.xi 27,
486*53ee8cc1Swenshuai.xi 27,
487*53ee8cc1Swenshuai.xi 13,
488*53ee8cc1Swenshuai.xi 5 ,
489*53ee8cc1Swenshuai.xi 15,
490*53ee8cc1Swenshuai.xi 31,
491*53ee8cc1Swenshuai.xi 17,
492*53ee8cc1Swenshuai.xi 9,
493*53ee8cc1Swenshuai.xi 12,
494*53ee8cc1Swenshuai.xi 13,
495*53ee8cc1Swenshuai.xi 14,
496*53ee8cc1Swenshuai.xi 23,
497*53ee8cc1Swenshuai.xi 31,
498*53ee8cc1Swenshuai.xi 7,
499*53ee8cc1Swenshuai.xi 15
500*53ee8cc1Swenshuai.xi };
501*53ee8cc1Swenshuai.xi 
502*53ee8cc1Swenshuai.xi const MS_U8 gpd_reg_lsb[] =
503*53ee8cc1Swenshuai.xi {
504*53ee8cc1Swenshuai.xi 0 ,
505*53ee8cc1Swenshuai.xi 1 ,
506*53ee8cc1Swenshuai.xi 2 ,
507*53ee8cc1Swenshuai.xi 3 ,
508*53ee8cc1Swenshuai.xi 4 ,
509*53ee8cc1Swenshuai.xi 5 ,
510*53ee8cc1Swenshuai.xi 6 ,
511*53ee8cc1Swenshuai.xi 9 ,
512*53ee8cc1Swenshuai.xi 10,
513*53ee8cc1Swenshuai.xi 11,
514*53ee8cc1Swenshuai.xi 12,
515*53ee8cc1Swenshuai.xi 13,
516*53ee8cc1Swenshuai.xi 14,
517*53ee8cc1Swenshuai.xi 15,
518*53ee8cc1Swenshuai.xi 4,
519*53ee8cc1Swenshuai.xi 10,
520*53ee8cc1Swenshuai.xi 0 ,
521*53ee8cc1Swenshuai.xi 0 ,
522*53ee8cc1Swenshuai.xi 0 ,
523*53ee8cc1Swenshuai.xi 0 ,
524*53ee8cc1Swenshuai.xi 0 ,
525*53ee8cc1Swenshuai.xi 0 ,
526*53ee8cc1Swenshuai.xi 0 ,
527*53ee8cc1Swenshuai.xi 0 ,
528*53ee8cc1Swenshuai.xi 0 ,
529*53ee8cc1Swenshuai.xi 0 ,
530*53ee8cc1Swenshuai.xi 0 ,
531*53ee8cc1Swenshuai.xi 0,
532*53ee8cc1Swenshuai.xi 0,
533*53ee8cc1Swenshuai.xi 0,
534*53ee8cc1Swenshuai.xi 0,
535*53ee8cc1Swenshuai.xi 1,
536*53ee8cc1Swenshuai.xi 9,
537*53ee8cc1Swenshuai.xi 0,
538*53ee8cc1Swenshuai.xi 0,
539*53ee8cc1Swenshuai.xi 0 ,
540*53ee8cc1Swenshuai.xi 1 ,
541*53ee8cc1Swenshuai.xi 2 ,
542*53ee8cc1Swenshuai.xi 4 ,
543*53ee8cc1Swenshuai.xi 7 ,
544*53ee8cc1Swenshuai.xi 11,
545*53ee8cc1Swenshuai.xi 0,
546*53ee8cc1Swenshuai.xi 6,
547*53ee8cc1Swenshuai.xi 0 ,
548*53ee8cc1Swenshuai.xi 1 ,
549*53ee8cc1Swenshuai.xi 3 ,
550*53ee8cc1Swenshuai.xi 6 ,
551*53ee8cc1Swenshuai.xi 7 ,
552*53ee8cc1Swenshuai.xi 8 ,
553*53ee8cc1Swenshuai.xi 9 ,
554*53ee8cc1Swenshuai.xi 10,
555*53ee8cc1Swenshuai.xi 0,
556*53ee8cc1Swenshuai.xi 9,
557*53ee8cc1Swenshuai.xi 10,
558*53ee8cc1Swenshuai.xi 15,
559*53ee8cc1Swenshuai.xi 0 ,
560*53ee8cc1Swenshuai.xi 8 ,
561*53ee8cc1Swenshuai.xi 1,
562*53ee8cc1Swenshuai.xi 0 ,
563*53ee8cc1Swenshuai.xi 11,
564*53ee8cc1Swenshuai.xi 0 ,
565*53ee8cc1Swenshuai.xi 13,
566*53ee8cc1Swenshuai.xi 0 ,
567*53ee8cc1Swenshuai.xi 15,
568*53ee8cc1Swenshuai.xi 0,
569*53ee8cc1Swenshuai.xi 2,
570*53ee8cc1Swenshuai.xi 5,
571*53ee8cc1Swenshuai.xi 9,
572*53ee8cc1Swenshuai.xi 0 ,
573*53ee8cc1Swenshuai.xi 6 ,
574*53ee8cc1Swenshuai.xi 13,
575*53ee8cc1Swenshuai.xi 5,
576*53ee8cc1Swenshuai.xi 0 ,
577*53ee8cc1Swenshuai.xi 10,
578*53ee8cc1Swenshuai.xi 0 ,
579*53ee8cc1Swenshuai.xi 12,
580*53ee8cc1Swenshuai.xi 0 ,
581*53ee8cc1Swenshuai.xi 14,
582*53ee8cc1Swenshuai.xi 0 ,
583*53ee8cc1Swenshuai.xi 9 ,
584*53ee8cc1Swenshuai.xi 2,
585*53ee8cc1Swenshuai.xi 0 ,
586*53ee8cc1Swenshuai.xi 9 ,
587*53ee8cc1Swenshuai.xi 2,
588*53ee8cc1Swenshuai.xi 0 ,
589*53ee8cc1Swenshuai.xi 9 ,
590*53ee8cc1Swenshuai.xi 2,
591*53ee8cc1Swenshuai.xi 0 ,
592*53ee8cc1Swenshuai.xi 9 ,
593*53ee8cc1Swenshuai.xi 2,
594*53ee8cc1Swenshuai.xi 0 ,
595*53ee8cc1Swenshuai.xi 9 ,
596*53ee8cc1Swenshuai.xi 2,
597*53ee8cc1Swenshuai.xi 7,
598*53ee8cc1Swenshuai.xi 0 ,
599*53ee8cc1Swenshuai.xi 5 ,
600*53ee8cc1Swenshuai.xi 10,
601*53ee8cc1Swenshuai.xi 15,
602*53ee8cc1Swenshuai.xi 4,
603*53ee8cc1Swenshuai.xi 9,
604*53ee8cc1Swenshuai.xi 0 ,
605*53ee8cc1Swenshuai.xi 5 ,
606*53ee8cc1Swenshuai.xi 10,
607*53ee8cc1Swenshuai.xi 15,
608*53ee8cc1Swenshuai.xi 4,
609*53ee8cc1Swenshuai.xi 9,
610*53ee8cc1Swenshuai.xi 0,
611*53ee8cc1Swenshuai.xi 0,
612*53ee8cc1Swenshuai.xi 0,
613*53ee8cc1Swenshuai.xi 0,
614*53ee8cc1Swenshuai.xi 0,
615*53ee8cc1Swenshuai.xi 0,
616*53ee8cc1Swenshuai.xi 0,
617*53ee8cc1Swenshuai.xi 0 ,
618*53ee8cc1Swenshuai.xi 0 ,
619*53ee8cc1Swenshuai.xi 0 ,
620*53ee8cc1Swenshuai.xi 0 ,
621*53ee8cc1Swenshuai.xi 0 ,
622*53ee8cc1Swenshuai.xi 0 ,
623*53ee8cc1Swenshuai.xi 0 ,
624*53ee8cc1Swenshuai.xi 0 ,
625*53ee8cc1Swenshuai.xi 15,
626*53ee8cc1Swenshuai.xi 0 ,
627*53ee8cc1Swenshuai.xi 1 ,
628*53ee8cc1Swenshuai.xi 2 ,
629*53ee8cc1Swenshuai.xi 5 ,
630*53ee8cc1Swenshuai.xi 6 ,
631*53ee8cc1Swenshuai.xi 9 ,
632*53ee8cc1Swenshuai.xi 11,
633*53ee8cc1Swenshuai.xi 14,
634*53ee8cc1Swenshuai.xi 15,
635*53ee8cc1Swenshuai.xi 0 ,
636*53ee8cc1Swenshuai.xi 0 ,
637*53ee8cc1Swenshuai.xi 0 ,
638*53ee8cc1Swenshuai.xi 8,
639*53ee8cc1Swenshuai.xi 14,
640*53ee8cc1Swenshuai.xi 15,
641*53ee8cc1Swenshuai.xi 0,
642*53ee8cc1Swenshuai.xi 10,
643*53ee8cc1Swenshuai.xi 11,
644*53ee8cc1Swenshuai.xi 15,
645*53ee8cc1Swenshuai.xi 0,
646*53ee8cc1Swenshuai.xi 10,
647*53ee8cc1Swenshuai.xi 11,
648*53ee8cc1Swenshuai.xi 12,
649*53ee8cc1Swenshuai.xi 13,
650*53ee8cc1Swenshuai.xi 15,
651*53ee8cc1Swenshuai.xi 0,
652*53ee8cc1Swenshuai.xi 10,
653*53ee8cc1Swenshuai.xi 11,
654*53ee8cc1Swenshuai.xi 13,
655*53ee8cc1Swenshuai.xi 14,
656*53ee8cc1Swenshuai.xi 0 ,
657*53ee8cc1Swenshuai.xi 0 ,
658*53ee8cc1Swenshuai.xi 0 ,
659*53ee8cc1Swenshuai.xi 0 ,
660*53ee8cc1Swenshuai.xi 0 ,
661*53ee8cc1Swenshuai.xi 1 ,
662*53ee8cc1Swenshuai.xi 2 ,
663*53ee8cc1Swenshuai.xi 3 ,
664*53ee8cc1Swenshuai.xi 4 ,
665*53ee8cc1Swenshuai.xi 5 ,
666*53ee8cc1Swenshuai.xi 6 ,
667*53ee8cc1Swenshuai.xi 7 ,
668*53ee8cc1Swenshuai.xi 8 ,
669*53ee8cc1Swenshuai.xi 9 ,
670*53ee8cc1Swenshuai.xi 10,
671*53ee8cc1Swenshuai.xi 11,
672*53ee8cc1Swenshuai.xi 12,
673*53ee8cc1Swenshuai.xi 13,
674*53ee8cc1Swenshuai.xi 14,
675*53ee8cc1Swenshuai.xi 15,
676*53ee8cc1Swenshuai.xi 0,
677*53ee8cc1Swenshuai.xi 1,
678*53ee8cc1Swenshuai.xi 2,
679*53ee8cc1Swenshuai.xi 3,
680*53ee8cc1Swenshuai.xi 4,
681*53ee8cc1Swenshuai.xi 5,
682*53ee8cc1Swenshuai.xi 6,
683*53ee8cc1Swenshuai.xi 0,
684*53ee8cc1Swenshuai.xi 5 ,
685*53ee8cc1Swenshuai.xi 10,
686*53ee8cc1Swenshuai.xi 13,
687*53ee8cc1Swenshuai.xi 14,
688*53ee8cc1Swenshuai.xi 15,
689*53ee8cc1Swenshuai.xi 0,
690*53ee8cc1Swenshuai.xi 5,
691*53ee8cc1Swenshuai.xi 10,
692*53ee8cc1Swenshuai.xi 13,
693*53ee8cc1Swenshuai.xi 14,
694*53ee8cc1Swenshuai.xi 0 ,
695*53ee8cc1Swenshuai.xi 0 ,
696*53ee8cc1Swenshuai.xi 12,
697*53ee8cc1Swenshuai.xi 0 ,
698*53ee8cc1Swenshuai.xi 6 ,
699*53ee8cc1Swenshuai.xi 0,
700*53ee8cc1Swenshuai.xi 0,
701*53ee8cc1Swenshuai.xi 0,
702*53ee8cc1Swenshuai.xi 10,
703*53ee8cc1Swenshuai.xi 13,
704*53ee8cc1Swenshuai.xi 14,
705*53ee8cc1Swenshuai.xi 0,
706*53ee8cc1Swenshuai.xi 0 ,
707*53ee8cc1Swenshuai.xi 0,
708*53ee8cc1Swenshuai.xi 8
709*53ee8cc1Swenshuai.xi };
710*53ee8cc1Swenshuai.xi 
711*53ee8cc1Swenshuai.xi const char *gpd_reg_name[] = {
712*53ee8cc1Swenshuai.xi "reg_gif_go_le            ",
713*53ee8cc1Swenshuai.xi "reg_act_chk_le           ",
714*53ee8cc1Swenshuai.xi "reg_gpd_bsaddr_go_le     ",
715*53ee8cc1Swenshuai.xi "reg_gpd_rst_le           ",
716*53ee8cc1Swenshuai.xi "reg_png_go_le            ",
717*53ee8cc1Swenshuai.xi "reg_png_blk_go_le        ",
718*53ee8cc1Swenshuai.xi "reg_gif_ltbl_size      ",
719*53ee8cc1Swenshuai.xi "reg_gif_local_tbl      ",
720*53ee8cc1Swenshuai.xi "reg_gif_done           ",
721*53ee8cc1Swenshuai.xi "reg_ofifo_abort        ",
722*53ee8cc1Swenshuai.xi "reg_ififo_full         ",
723*53ee8cc1Swenshuai.xi "reg_ififo_empty        ",
724*53ee8cc1Swenshuai.xi "reg_bsadr_full         ",
725*53ee8cc1Swenshuai.xi "reg_ififo_diff         ",
726*53ee8cc1Swenshuai.xi "reg_bitpos             ",
727*53ee8cc1Swenshuai.xi "reg_png_dtbl_size      ",
728*53ee8cc1Swenshuai.xi "reg_gif_state          ",
729*53ee8cc1Swenshuai.xi "reg_gpd_pitch          ",
730*53ee8cc1Swenshuai.xi "reg_gpd_iwidth         ",
731*53ee8cc1Swenshuai.xi "reg_gpd_iheight        ",
732*53ee8cc1Swenshuai.xi "reg_gpd_bstart         ",
733*53ee8cc1Swenshuai.xi "reg_gpd_bend           ",
734*53ee8cc1Swenshuai.xi "reg_gpd_istart         ",
735*53ee8cc1Swenshuai.xi "reg_spare1             ",
736*53ee8cc1Swenshuai.xi "reg_gpd_boffset        ",
737*53ee8cc1Swenshuai.xi "reg_iofifo_state       ",
738*53ee8cc1Swenshuai.xi "reg_gpd_roi_hstart     ",
739*53ee8cc1Swenshuai.xi "reg_gpd_roi_vstart     ",
740*53ee8cc1Swenshuai.xi "reg_gpd_roi_width      ",
741*53ee8cc1Swenshuai.xi "reg_gpd_roi_height     ",
742*53ee8cc1Swenshuai.xi "reg_gpd_roi_en         ",
743*53ee8cc1Swenshuai.xi "reg_gpd_default_alpha  ",
744*53ee8cc1Swenshuai.xi "reg_spare2_rst0        ",
745*53ee8cc1Swenshuai.xi "reg_png_trans_r        ",
746*53ee8cc1Swenshuai.xi "reg_png_trans_g        ",
747*53ee8cc1Swenshuai.xi "reg_png_blk_done       ",
748*53ee8cc1Swenshuai.xi "reg_png_mincode1       ",
749*53ee8cc1Swenshuai.xi "reg_png_mincode2       ",
750*53ee8cc1Swenshuai.xi "reg_png_mincode3       ",
751*53ee8cc1Swenshuai.xi "reg_png_mincode4       ",
752*53ee8cc1Swenshuai.xi "reg_png_mincode5       ",
753*53ee8cc1Swenshuai.xi "reg_png_mincode6       ",
754*53ee8cc1Swenshuai.xi "reg_png_mincode7       ",
755*53ee8cc1Swenshuai.xi "reg_gpd_ipm_en         ",
756*53ee8cc1Swenshuai.xi "reg_gpd_ipm_size       ",
757*53ee8cc1Swenshuai.xi "reg_gpd_ocolor         ",
758*53ee8cc1Swenshuai.xi "reg_gpd_en               ",
759*53ee8cc1Swenshuai.xi "reg_ofifo_done         ",
760*53ee8cc1Swenshuai.xi "reg_miu_domain_empty   ",
761*53ee8cc1Swenshuai.xi "reg_mreq_always_active ",
762*53ee8cc1Swenshuai.xi "reg_eng_always_active  ",
763*53ee8cc1Swenshuai.xi "reg_png_ltbl_size      ",
764*53ee8cc1Swenshuai.xi "reg_gpd_act_chk        ",
765*53ee8cc1Swenshuai.xi "reg_png_sca            ",
766*53ee8cc1Swenshuai.xi "reg_png_eob            ",
767*53ee8cc1Swenshuai.xi "reg_png_mincode8       ",
768*53ee8cc1Swenshuai.xi "reg_png_mincode9       ",
769*53ee8cc1Swenshuai.xi "reg_png_mincode10      ",
770*53ee8cc1Swenshuai.xi "reg_png_mincode11      ",
771*53ee8cc1Swenshuai.xi "reg_png_mincode12      ",
772*53ee8cc1Swenshuai.xi "reg_png_mincode13      ",
773*53ee8cc1Swenshuai.xi "reg_png_mincode14      ",
774*53ee8cc1Swenshuai.xi "reg_png_mincode15      ",
775*53ee8cc1Swenshuai.xi "reg_png2_mincode1      ",
776*53ee8cc1Swenshuai.xi "reg_png2_mincode2      ",
777*53ee8cc1Swenshuai.xi "reg_png2_mincode3      ",
778*53ee8cc1Swenshuai.xi "reg_png2_mincode4      ",
779*53ee8cc1Swenshuai.xi "reg_png2_mincode5      ",
780*53ee8cc1Swenshuai.xi "reg_png2_mincode6      ",
781*53ee8cc1Swenshuai.xi "reg_png2_mincode7      ",
782*53ee8cc1Swenshuai.xi "reg_png2_mincode8      ",
783*53ee8cc1Swenshuai.xi "reg_png2_mincode9      ",
784*53ee8cc1Swenshuai.xi "reg_png2_mincode10     ",
785*53ee8cc1Swenshuai.xi "reg_png2_mincode11     ",
786*53ee8cc1Swenshuai.xi "reg_png2_mincode12     ",
787*53ee8cc1Swenshuai.xi "reg_png2_mincode13     ",
788*53ee8cc1Swenshuai.xi "reg_png2_mincode14     ",
789*53ee8cc1Swenshuai.xi "reg_png2_mincode15     ",
790*53ee8cc1Swenshuai.xi "reg_png_lbase2         ",
791*53ee8cc1Swenshuai.xi "reg_png_lbase3         ",
792*53ee8cc1Swenshuai.xi "reg_png_lbase4         ",
793*53ee8cc1Swenshuai.xi "reg_png_lbase5         ",
794*53ee8cc1Swenshuai.xi "reg_png_lbase6         ",
795*53ee8cc1Swenshuai.xi "reg_png_lbase7         ",
796*53ee8cc1Swenshuai.xi "reg_png_lbase8         ",
797*53ee8cc1Swenshuai.xi "reg_png_lbase9         ",
798*53ee8cc1Swenshuai.xi "reg_png_lbase10        ",
799*53ee8cc1Swenshuai.xi "reg_png_lbase11        ",
800*53ee8cc1Swenshuai.xi "reg_png_lbase12        ",
801*53ee8cc1Swenshuai.xi "reg_png_lbase13        ",
802*53ee8cc1Swenshuai.xi "reg_png_lbase14        ",
803*53ee8cc1Swenshuai.xi "reg_png_lbase15        ",
804*53ee8cc1Swenshuai.xi "reg_png_dbase2         ",
805*53ee8cc1Swenshuai.xi "reg_png_dbase3         ",
806*53ee8cc1Swenshuai.xi "reg_png_dbase4         ",
807*53ee8cc1Swenshuai.xi "reg_png_dbase5         ",
808*53ee8cc1Swenshuai.xi "reg_png_dbase6         ",
809*53ee8cc1Swenshuai.xi "reg_png_dbase7         ",
810*53ee8cc1Swenshuai.xi "reg_png_dbase8         ",
811*53ee8cc1Swenshuai.xi "reg_png_dbase9         ",
812*53ee8cc1Swenshuai.xi "reg_png_dbase10        ",
813*53ee8cc1Swenshuai.xi "reg_png_dbase11        ",
814*53ee8cc1Swenshuai.xi "reg_png_dbase12        ",
815*53ee8cc1Swenshuai.xi "reg_png_dbase13        ",
816*53ee8cc1Swenshuai.xi "reg_png_dbase14        ",
817*53ee8cc1Swenshuai.xi "reg_png_dbase15        ",
818*53ee8cc1Swenshuai.xi "reg_png_scline0_width  ",
819*53ee8cc1Swenshuai.xi "reg_png_scline1_width  ",
820*53ee8cc1Swenshuai.xi "reg_png_scline2_width  ",
821*53ee8cc1Swenshuai.xi "reg_png_scline3_width  ",
822*53ee8cc1Swenshuai.xi "reg_png_scline4_width  ",
823*53ee8cc1Swenshuai.xi "reg_png_scline5_width  ",
824*53ee8cc1Swenshuai.xi "reg_png_scline6_width  ",
825*53ee8cc1Swenshuai.xi "reg_png_scline0_height ",
826*53ee8cc1Swenshuai.xi "reg_png_scline1_height ",
827*53ee8cc1Swenshuai.xi "reg_png_scline2_height ",
828*53ee8cc1Swenshuai.xi "reg_png_scline3_height ",
829*53ee8cc1Swenshuai.xi "reg_png_scline4_height ",
830*53ee8cc1Swenshuai.xi "reg_png_scline5_height ",
831*53ee8cc1Swenshuai.xi "reg_png_scline6_height ",
832*53ee8cc1Swenshuai.xi "reg_png_mincode_valid  ",
833*53ee8cc1Swenshuai.xi "reg_png2_mincode_valid ",
834*53ee8cc1Swenshuai.xi "reg_gpd_only_decom_en  ",
835*53ee8cc1Swenshuai.xi "reg_png_done           ",
836*53ee8cc1Swenshuai.xi "reg_png_color_type     ",
837*53ee8cc1Swenshuai.xi "reg_gpd_interlace      ",
838*53ee8cc1Swenshuai.xi "reg_spare6             ",
839*53ee8cc1Swenshuai.xi "reg_png_compress_type  ",
840*53ee8cc1Swenshuai.xi "reg_png_color_depth    ",
841*53ee8cc1Swenshuai.xi "reg_miu_act_chk        ",
842*53ee8cc1Swenshuai.xi "reg_png_trans_en       ",
843*53ee8cc1Swenshuai.xi "reg_png_trans_b        ",
844*53ee8cc1Swenshuai.xi "reg_png_state          ",
845*53ee8cc1Swenshuai.xi "reg_ififo_cnt          ",
846*53ee8cc1Swenshuai.xi "reg_hipri              ",
847*53ee8cc1Swenshuai.xi "reg_gpd_premult_alpha_en ",
848*53ee8cc1Swenshuai.xi "reg_gpd_gif_alpha_mask_en",
849*53ee8cc1Swenshuai.xi "reg_frun_cnt           ",
850*53ee8cc1Swenshuai.xi "reg_png_burst_en       ",
851*53ee8cc1Swenshuai.xi "reg_gif_mask           ",
852*53ee8cc1Swenshuai.xi "reg_deflt_fast_on      ",
853*53ee8cc1Swenshuai.xi "reg_ififo_radr         ",
854*53ee8cc1Swenshuai.xi "reg_gpd_time_out       ",
855*53ee8cc1Swenshuai.xi "reg_gif_code_size_err  ",
856*53ee8cc1Swenshuai.xi "reg_gif_err            ",
857*53ee8cc1Swenshuai.xi "reg_gpd_pgend          ",
858*53ee8cc1Swenshuai.xi "reg_miu64              ",
859*53ee8cc1Swenshuai.xi "reg_gpd2mi_adr         ",
860*53ee8cc1Swenshuai.xi "reg_wait_last_done     ",
861*53ee8cc1Swenshuai.xi "reg_miu_wait_cyc       ",
862*53ee8cc1Swenshuai.xi "reg_fixed_pri          ",
863*53ee8cc1Swenshuai.xi "reg_last_done_md       ",
864*53ee8cc1Swenshuai.xi "reg_gpd_read_data      ",
865*53ee8cc1Swenshuai.xi "reg_io_read_gpd        ",
866*53ee8cc1Swenshuai.xi "reg_cbuf_bas           ",
867*53ee8cc1Swenshuai.xi "reg_zbuf_bas           ",
868*53ee8cc1Swenshuai.xi "reg_bist_fail_lz_psram ",
869*53ee8cc1Swenshuai.xi "reg_bist_fail_bst_psram",
870*53ee8cc1Swenshuai.xi "reg_bist_fail_lit_psram",
871*53ee8cc1Swenshuai.xi "reg_bist_fail_flt_psram",
872*53ee8cc1Swenshuai.xi "reg_bist_fail_lmem     ",
873*53ee8cc1Swenshuai.xi "reg_bist_fail_cmem     ",
874*53ee8cc1Swenshuai.xi "reg_bist_fail_omem     ",
875*53ee8cc1Swenshuai.xi "reg_bist_fail_imem     ",
876*53ee8cc1Swenshuai.xi "reg_bist_fail_dc0_cmem ",
877*53ee8cc1Swenshuai.xi "reg_bist_fail_dc1_cmem ",
878*53ee8cc1Swenshuai.xi "reg_bist_fail_stk_psram",
879*53ee8cc1Swenshuai.xi "reg_bist_fail_dma1     ",
880*53ee8cc1Swenshuai.xi "reg_bist_fail_dma0     ",
881*53ee8cc1Swenshuai.xi "reg_bist_fail_cmd      ",
882*53ee8cc1Swenshuai.xi "reg_bist_fail_data     ",
883*53ee8cc1Swenshuai.xi "reg_bist_fail_cc_cmem  ",
884*53ee8cc1Swenshuai.xi "reg_bist_fail_cc_dmem  ",
885*53ee8cc1Swenshuai.xi "reg_bist_fail_cc_rdmem ",
886*53ee8cc1Swenshuai.xi "reg_bist_fail_cc_wdmem ",
887*53ee8cc1Swenshuai.xi "reg_bist_fail_zc_cmem  ",
888*53ee8cc1Swenshuai.xi "reg_bist_fail_zc_dmem  ",
889*53ee8cc1Swenshuai.xi "reg_bist_fail_zc_rdmem ",
890*53ee8cc1Swenshuai.xi "reg_bist_fail_zc_wdmem ",
891*53ee8cc1Swenshuai.xi "reg_int_mask           ",
892*53ee8cc1Swenshuai.xi "reg_int_rst            ",
893*53ee8cc1Swenshuai.xi "reg_debug_mux          ",
894*53ee8cc1Swenshuai.xi "reg_dram_imi           ",
895*53ee8cc1Swenshuai.xi "reg_gpd_istr_8b        ",
896*53ee8cc1Swenshuai.xi "reg_gif_act_clr        ",
897*53ee8cc1Swenshuai.xi "reg_int_status         ",
898*53ee8cc1Swenshuai.xi "reg_int_sw_force       ",
899*53ee8cc1Swenshuai.xi "reg_cache_hit_cmp      ",
900*53ee8cc1Swenshuai.xi "reg_scale_en           ",
901*53ee8cc1Swenshuai.xi "reg_scale_md           ",
902*53ee8cc1Swenshuai.xi "reg_lb_addr            ",
903*53ee8cc1Swenshuai.xi "reg_ub_addr            ",
904*53ee8cc1Swenshuai.xi "reg_gpd_xiu_byte_sel   ",
905*53ee8cc1Swenshuai.xi "reg_gpd_read_bits      ",
906*53ee8cc1Swenshuai.xi "reg_gpd_reserved1      ",
907*53ee8cc1Swenshuai.xi "reg_gpd_cmem_wdata     ",
908*53ee8cc1Swenshuai.xi "reg_png_ltbl_wdata     ",
909*53ee8cc1Swenshuai.xi "reg_png_dtbl_wdata     ",
910*53ee8cc1Swenshuai.xi "reg_debug2_mux         ",
911*53ee8cc1Swenshuai.xi "reg_wbe_bypass_go_chk  ",
912*53ee8cc1Swenshuai.xi "reg_gpd_sram_sd_en     ",
913*53ee8cc1Swenshuai.xi "reg_gpd_debug          ",
914*53ee8cc1Swenshuai.xi "reg_gpd_debug2         ",
915*53ee8cc1Swenshuai.xi "reg_gpd_version        ",
916*53ee8cc1Swenshuai.xi "reg_gpd_tlb            "
917*53ee8cc1Swenshuai.xi };
918*53ee8cc1Swenshuai.xi 
GPD_GET_ADDR(MS_U32 index)919*53ee8cc1Swenshuai.xi static volatile MS_VIRT GPD_GET_ADDR(MS_U32 index)
920*53ee8cc1Swenshuai.xi {
921*53ee8cc1Swenshuai.xi     MS_VIRT offset = gpd_reg_addr[index] - (gpd_reg_lsb[index] >> 4);
922*53ee8cc1Swenshuai.xi     return (volatile MS_VIRT)(GPD_REG_BASE + offset * 4);
923*53ee8cc1Swenshuai.xi }
924*53ee8cc1Swenshuai.xi 
GPD_GET_MS_U32MASK(MS_U32 index)925*53ee8cc1Swenshuai.xi static MS_U32 GPD_GET_MS_U32MASK(MS_U32 index)
926*53ee8cc1Swenshuai.xi {
927*53ee8cc1Swenshuai.xi     if(gpd_reg_msb[index] - gpd_reg_lsb[index] == 31)
928*53ee8cc1Swenshuai.xi 
929*53ee8cc1Swenshuai.xi       return 0xffffffff;
930*53ee8cc1Swenshuai.xi 
931*53ee8cc1Swenshuai.xi     else
932*53ee8cc1Swenshuai.xi         return (((MS_U32)1 << (gpd_reg_msb[index] - gpd_reg_lsb[index] + 1)) - 1) << gpd_reg_lsb[index];
933*53ee8cc1Swenshuai.xi }
934*53ee8cc1Swenshuai.xi 
GPD_READ_MS_U32(volatile MS_U32 * u32addr)935*53ee8cc1Swenshuai.xi static MS_U32 GPD_READ_MS_U32(volatile MS_U32 *u32addr)
936*53ee8cc1Swenshuai.xi {
937*53ee8cc1Swenshuai.xi     //volatile MS_U32 *u32addr = (volatile MS_U32 *)u8addr;
938*53ee8cc1Swenshuai.xi     return (u32addr[0] & 0xFFFF) | (u32addr[1] << 16);
939*53ee8cc1Swenshuai.xi }
940*53ee8cc1Swenshuai.xi 
GPD_WRITE_MS_U32(volatile MS_U32 * u32addr,MS_U32 value)941*53ee8cc1Swenshuai.xi static void GPD_WRITE_MS_U32(volatile MS_U32 *u32addr, MS_U32 value)
942*53ee8cc1Swenshuai.xi {
943*53ee8cc1Swenshuai.xi     //volatile MS_U32 *u32addr = (volatile MS_U32 *)u8addr;
944*53ee8cc1Swenshuai.xi     u32addr[0] = (value) & 0xFFFF;
945*53ee8cc1Swenshuai.xi     u32addr[1] = (value) >> 16;
946*53ee8cc1Swenshuai.xi }
947*53ee8cc1Swenshuai.xi 
GPD_GET_MS_U32REG_dbg(MS_U32 index)948*53ee8cc1Swenshuai.xi MS_U32 GPD_GET_MS_U32REG_dbg(MS_U32 index)
949*53ee8cc1Swenshuai.xi {
950*53ee8cc1Swenshuai.xi     volatile MS_VIRT u32addr = GPD_GET_ADDR(index);
951*53ee8cc1Swenshuai.xi 
952*53ee8cc1Swenshuai.xi 
953*53ee8cc1Swenshuai.xi     MS_U32 temp = (GPD_READ_MS_U32((volatile MS_U32*)u32addr) & GPD_GET_MS_U32MASK(index)) >> gpd_reg_lsb[index];
954*53ee8cc1Swenshuai.xi 
955*53ee8cc1Swenshuai.xi 
956*53ee8cc1Swenshuai.xi     console_printf("Reg read: %s = 0x%08tx, offset = 0x%02tX, lsb=%td, msb=%td\n", gpd_reg_name[index], (ptrdiff_t)temp,
957*53ee8cc1Swenshuai.xi         (ptrdiff_t)gpd_reg_addr[index], (ptrdiff_t)gpd_reg_lsb[index], (ptrdiff_t)gpd_reg_msb[index]);
958*53ee8cc1Swenshuai.xi     return temp;
959*53ee8cc1Swenshuai.xi }
960*53ee8cc1Swenshuai.xi 
GPD_GET_MS_U32REG(MS_U32 index)961*53ee8cc1Swenshuai.xi MS_U32 GPD_GET_MS_U32REG(MS_U32 index)
962*53ee8cc1Swenshuai.xi {
963*53ee8cc1Swenshuai.xi     volatile MS_VIRT u32addr = GPD_GET_ADDR(index);
964*53ee8cc1Swenshuai.xi 
965*53ee8cc1Swenshuai.xi 
966*53ee8cc1Swenshuai.xi     MS_U32 temp = (GPD_READ_MS_U32((volatile MS_U32*)u32addr) & GPD_GET_MS_U32MASK(index)) >> gpd_reg_lsb[index];
967*53ee8cc1Swenshuai.xi 
968*53ee8cc1Swenshuai.xi 
969*53ee8cc1Swenshuai.xi     //console_printf("Reg read: %s = 0x%08X, addr = 0x%08X\n", gpd_reg_name[index], temp, u8addr);
970*53ee8cc1Swenshuai.xi     return temp;
971*53ee8cc1Swenshuai.xi }
972*53ee8cc1Swenshuai.xi 
GPD_SET_MS_U32REG(MS_U32 index,MS_U32 value)973*53ee8cc1Swenshuai.xi void GPD_SET_MS_U32REG(MS_U32 index, MS_U32 value)
974*53ee8cc1Swenshuai.xi {
975*53ee8cc1Swenshuai.xi     volatile MS_VIRT u32addr = GPD_GET_ADDR(index);
976*53ee8cc1Swenshuai.xi     MS_U32 mask = GPD_GET_MS_U32MASK(index);
977*53ee8cc1Swenshuai.xi     MS_U32 temp = GPD_READ_MS_U32((volatile MS_U32*)u32addr);
978*53ee8cc1Swenshuai.xi 
979*53ee8cc1Swenshuai.xi     temp &= ~mask;
980*53ee8cc1Swenshuai.xi 
981*53ee8cc1Swenshuai.xi     temp |= ((value) << gpd_reg_lsb[index]) & mask;
982*53ee8cc1Swenshuai.xi     GPD_WRITE_MS_U32((volatile MS_U32*)u32addr, temp);
983*53ee8cc1Swenshuai.xi 
984*53ee8cc1Swenshuai.xi //    console_printf("Reg write: %s = 0x%08X, offset = 0x%02X, lsb=%d, msb=%d\n", gpd_reg_name[index], (MS_U32)value,
985*53ee8cc1Swenshuai.xi //        (MS_U16)gpd_reg_addr[index], gpd_reg_lsb[index], gpd_reg_msb[index]);
986*53ee8cc1Swenshuai.xi }
987*53ee8cc1Swenshuai.xi 
hal_gpd_get_clkbase()988*53ee8cc1Swenshuai.xi MS_U32 hal_gpd_get_clkbase()
989*53ee8cc1Swenshuai.xi {
990*53ee8cc1Swenshuai.xi     // macan: clkgen1
991*53ee8cc1Swenshuai.xi     return (0x03300 * 2);
992*53ee8cc1Swenshuai.xi }
993*53ee8cc1Swenshuai.xi 
hal_gpd_get_clkoffset()994*53ee8cc1Swenshuai.xi MS_U32 hal_gpd_get_clkoffset()
995*53ee8cc1Swenshuai.xi {
996*53ee8cc1Swenshuai.xi     // macan: h0028	h0028	4	0	reg_ckg_gpd
997*53ee8cc1Swenshuai.xi     return (0x50 << 1);
998*53ee8cc1Swenshuai.xi }
999*53ee8cc1Swenshuai.xi 
hal_gpd_reg_base(MS_U32 * u32RIUBase,MS_U32 * u32XIUBase)1000*53ee8cc1Swenshuai.xi void hal_gpd_reg_base(MS_U32* u32RIUBase, MS_U32* u32XIUBase)
1001*53ee8cc1Swenshuai.xi {
1002*53ee8cc1Swenshuai.xi     // macan: 113Eh, 113Fh
1003*53ee8cc1Swenshuai.xi     *u32RIUBase = (0x13E00 * 2);
1004*53ee8cc1Swenshuai.xi     *u32XIUBase = (0x13F00 * 2);
1005*53ee8cc1Swenshuai.xi }
1006*53ee8cc1Swenshuai.xi 
hal_gpd_miu_client(MS_U8 * u8Offset,MS_U16 * u16BitMask)1007*53ee8cc1Swenshuai.xi void hal_gpd_miu_client(MS_U8* u8Offset, MS_U16* u16BitMask)
1008*53ee8cc1Swenshuai.xi {
1009*53ee8cc1Swenshuai.xi     // macan: group2, bit 6==> //h007a	h007a	15	0	reg_miu_sel2
1010*53ee8cc1Swenshuai.xi     // 0x7a << 1 = 0xf4
1011*53ee8cc1Swenshuai.xi     *u8Offset = 0xf4;
1012*53ee8cc1Swenshuai.xi     *u16BitMask = 0x40;
1013*53ee8cc1Swenshuai.xi }
1014*53ee8cc1Swenshuai.xi 
hal_gpd_init_outside_reg(MS_VIRT BankBaseAddr)1015*53ee8cc1Swenshuai.xi void hal_gpd_init_outside_reg(MS_VIRT BankBaseAddr)
1016*53ee8cc1Swenshuai.xi {
1017*53ee8cc1Swenshuai.xi     MS_U32 tmp = 0;
1018*53ee8cc1Swenshuai.xi     // macan: group2, bit 6==> //h0022	h0022	15	0	reg_miu_group2_i64
1019*53ee8cc1Swenshuai.xi     // @20151022, from ronald's mail I64: addr 0x101e, offset 0x22, bit 6 = 1
1020*53ee8cc1Swenshuai.xi     tmp = *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x1E00*2 + 0x22*2*2));
1021*53ee8cc1Swenshuai.xi     tmp |= 0x40;
1022*53ee8cc1Swenshuai.xi     console_printf("set i64 reg to 0x%tx\n", (ptrdiff_t)tmp);
1023*53ee8cc1Swenshuai.xi     *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x1E00*2 + 0x22*2*2)) = tmp;
1024*53ee8cc1Swenshuai.xi 
1025*53ee8cc1Swenshuai.xi }
1026*53ee8cc1Swenshuai.xi 
1027*53ee8cc1Swenshuai.xi 
hal_gpd_init_chip_specific_reg(void)1028*53ee8cc1Swenshuai.xi void hal_gpd_init_chip_specific_reg(void)
1029*53ee8cc1Swenshuai.xi {
1030*53ee8cc1Swenshuai.xi }
1031*53ee8cc1Swenshuai.xi 
hal_gpd_SetMIUProtectMask(MS_VIRT BankBaseAddr,MS_U8 bEnable)1032*53ee8cc1Swenshuai.xi void hal_gpd_SetMIUProtectMask(MS_VIRT BankBaseAddr, MS_U8 bEnable)
1033*53ee8cc1Swenshuai.xi {
1034*53ee8cc1Swenshuai.xi     MS_U32 tmp = 0;
1035*53ee8cc1Swenshuai.xi     // macan: h0043	h0043	15	0	reg_rq2_mask
1036*53ee8cc1Swenshuai.xi     tmp = *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x1200*2 + 0x43*2*2));
1037*53ee8cc1Swenshuai.xi     if(bEnable==TRUE)
1038*53ee8cc1Swenshuai.xi     {
1039*53ee8cc1Swenshuai.xi         tmp |= 0x40;
1040*53ee8cc1Swenshuai.xi     }
1041*53ee8cc1Swenshuai.xi     else
1042*53ee8cc1Swenshuai.xi     {
1043*53ee8cc1Swenshuai.xi         tmp &=~0x40;
1044*53ee8cc1Swenshuai.xi     }
1045*53ee8cc1Swenshuai.xi     *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x1200*2 + 0x43*2*2)) = tmp;
1046*53ee8cc1Swenshuai.xi 
1047*53ee8cc1Swenshuai.xi     tmp = *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x0600*2 + 0x43*2*2));
1048*53ee8cc1Swenshuai.xi     if(bEnable==TRUE)
1049*53ee8cc1Swenshuai.xi     {
1050*53ee8cc1Swenshuai.xi         tmp |= 0x40;
1051*53ee8cc1Swenshuai.xi     }
1052*53ee8cc1Swenshuai.xi     else
1053*53ee8cc1Swenshuai.xi     {
1054*53ee8cc1Swenshuai.xi         tmp &=~0x40;
1055*53ee8cc1Swenshuai.xi     }
1056*53ee8cc1Swenshuai.xi     *((volatile MS_U32 *)(MS_VIRT)(BankBaseAddr + 0x0600*2 + 0x43*2*2)) = tmp;
1057*53ee8cc1Swenshuai.xi 
1058*53ee8cc1Swenshuai.xi     console_printf("set miu client protect to 0x%tx\n", (ptrdiff_t)tmp);
1059*53ee8cc1Swenshuai.xi 
1060*53ee8cc1Swenshuai.xi     return;
1061*53ee8cc1Swenshuai.xi }
1062*53ee8cc1Swenshuai.xi 
1063