1*53ee8cc1Swenshuai.xi #ifndef _API_XC_PANEL_V2_C_
2*53ee8cc1Swenshuai.xi #define _API_XC_PANEL_V2_C_
3*53ee8cc1Swenshuai.xi
4*53ee8cc1Swenshuai.xi #include "MsTypes.h"
5*53ee8cc1Swenshuai.xi #ifndef MSOS_TYPE_LINUX_KERNEL
6*53ee8cc1Swenshuai.xi #include <stdio.h>
7*53ee8cc1Swenshuai.xi #include <string.h>
8*53ee8cc1Swenshuai.xi #endif
9*53ee8cc1Swenshuai.xi #include "MsCommon.h"
10*53ee8cc1Swenshuai.xi #include "utopia_dapi.h"
11*53ee8cc1Swenshuai.xi #include "apiPNL.h"
12*53ee8cc1Swenshuai.xi #include "apiPNL_v2.h"
13*53ee8cc1Swenshuai.xi #include "drvPNL.h"
14*53ee8cc1Swenshuai.xi #include "PNL_private.h"
15*53ee8cc1Swenshuai.xi #include "utopia.h"
16*53ee8cc1Swenshuai.xi
17*53ee8cc1Swenshuai.xi #ifdef MSOS_TYPE_LINUX_KERNEL
18*53ee8cc1Swenshuai.xi void *pInstancePNLStr = NULL;
PNLStr(MS_U32 u32PowerState,void * pModule)19*53ee8cc1Swenshuai.xi MS_U32 PNLStr(MS_U32 u32PowerState, void* pModule)
20*53ee8cc1Swenshuai.xi {
21*53ee8cc1Swenshuai.xi MS_U32 u32Return=UTOPIA_STATUS_FAIL;
22*53ee8cc1Swenshuai.xi stPNL_SetPowerState PNLArgs;
23*53ee8cc1Swenshuai.xi
24*53ee8cc1Swenshuai.xi switch(u32PowerState)
25*53ee8cc1Swenshuai.xi {
26*53ee8cc1Swenshuai.xi case E_POWER_SUSPEND:
27*53ee8cc1Swenshuai.xi if (pInstancePNLStr == NULL)
28*53ee8cc1Swenshuai.xi {
29*53ee8cc1Swenshuai.xi if(UtopiaOpen(MODULE_PNL, &pInstancePNLStr, 0, NULL) != UTOPIA_STATUS_SUCCESS)
30*53ee8cc1Swenshuai.xi {
31*53ee8cc1Swenshuai.xi printf("UtopiaOpen PNL failed\n");
32*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_FAIL;
33*53ee8cc1Swenshuai.xi }
34*53ee8cc1Swenshuai.xi }
35*53ee8cc1Swenshuai.xi PNLArgs.ePowerState = u32PowerState;
36*53ee8cc1Swenshuai.xi PNLArgs.u32Return = UTOPIA_STATUS_FAIL;
37*53ee8cc1Swenshuai.xi if(UtopiaIoctl(pInstancePNLStr, E_PNL_CMD_SETPOWERSTATE, (void*)&PNLArgs) != UTOPIA_STATUS_SUCCESS)
38*53ee8cc1Swenshuai.xi {
39*53ee8cc1Swenshuai.xi printf("Obtain PNL engine fail\n");
40*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_FAIL;
41*53ee8cc1Swenshuai.xi }
42*53ee8cc1Swenshuai.xi u32Return=PNLArgs.u32Return;
43*53ee8cc1Swenshuai.xi break;
44*53ee8cc1Swenshuai.xi case E_POWER_RESUME:
45*53ee8cc1Swenshuai.xi if (pInstancePNLStr == NULL)
46*53ee8cc1Swenshuai.xi {
47*53ee8cc1Swenshuai.xi if(UtopiaOpen(MODULE_PNL, &pInstancePNLStr, 0, NULL) != UTOPIA_STATUS_SUCCESS)
48*53ee8cc1Swenshuai.xi {
49*53ee8cc1Swenshuai.xi printf("UtopiaOpen PNL failed\n");
50*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_FAIL;
51*53ee8cc1Swenshuai.xi }
52*53ee8cc1Swenshuai.xi }
53*53ee8cc1Swenshuai.xi PNLArgs.ePowerState = u32PowerState;
54*53ee8cc1Swenshuai.xi PNLArgs.u32Return = UTOPIA_STATUS_FAIL;
55*53ee8cc1Swenshuai.xi if(UtopiaIoctl(pInstancePNLStr, E_PNL_CMD_SETPOWERSTATE, (void*)&PNLArgs) != UTOPIA_STATUS_SUCCESS)
56*53ee8cc1Swenshuai.xi {
57*53ee8cc1Swenshuai.xi printf("Obtain PNL engine fail\n");
58*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_FAIL;
59*53ee8cc1Swenshuai.xi }
60*53ee8cc1Swenshuai.xi u32Return=PNLArgs.u32Return;
61*53ee8cc1Swenshuai.xi break;
62*53ee8cc1Swenshuai.xi default:
63*53ee8cc1Swenshuai.xi printf("[%s][%d] PowerState:%lx not Implement now!!!\n",__FUNCTION__,__LINE__,u32PowerState);
64*53ee8cc1Swenshuai.xi break;
65*53ee8cc1Swenshuai.xi }
66*53ee8cc1Swenshuai.xi return u32Return;
67*53ee8cc1Swenshuai.xi }
68*53ee8cc1Swenshuai.xi #endif
69*53ee8cc1Swenshuai.xi // ========== Global definition ==========
70*53ee8cc1Swenshuai.xi void* pModulePNL = NULL;
71*53ee8cc1Swenshuai.xi
PNLRegisterToUtopia(FUtopiaOpen ModuleType)72*53ee8cc1Swenshuai.xi void PNLRegisterToUtopia(FUtopiaOpen ModuleType)
73*53ee8cc1Swenshuai.xi {
74*53ee8cc1Swenshuai.xi MS_U32 u32ResourceStatusCheck[E_PNL_POOL_ID_MAX] = {UTOPIA_STATUS_FAIL};
75*53ee8cc1Swenshuai.xi // 1. deal with module
76*53ee8cc1Swenshuai.xi UtopiaModuleCreate(MODULE_PNL, 0, &pModulePNL);
77*53ee8cc1Swenshuai.xi UtopiaModuleRegister(pModulePNL);
78*53ee8cc1Swenshuai.xi // register func for module, after register here, then ap call UtopiaOpen/UtopiaIoctl/UtopiaClose can call to these registered standard func
79*53ee8cc1Swenshuai.xi UtopiaModuleSetupFunctionPtr(pModulePNL, (FUtopiaOpen)PNLOpen, (FUtopiaClose)PNLClose, (FUtopiaIOctl)PNLIoctl);
80*53ee8cc1Swenshuai.xi
81*53ee8cc1Swenshuai.xi // 2. deal with resource , PNL may need 2 resources, one is readonly, the other is XC resource
82*53ee8cc1Swenshuai.xi void* psResource = NULL;
83*53ee8cc1Swenshuai.xi void* psResource1 = NULL;
84*53ee8cc1Swenshuai.xi #if defined(MSOS_TYPE_LINUX_KERNEL)
85*53ee8cc1Swenshuai.xi UtopiaModuleSetupSTRFunctionPtr(pModulePNL, (FUtopiaSTR)PNLStr);
86*53ee8cc1Swenshuai.xi UtopiaModuleSetSTRPrivate(pModulePNL, sizeof(PNL_REGS_SAVE_AREA));
87*53ee8cc1Swenshuai.xi #endif
88*53ee8cc1Swenshuai.xi // 3. resource can allocate private for internal use
89*53ee8cc1Swenshuai.xi MS_U32 u32MaxDeviceNum = _XC_PNL_GET_DEVICE_NUM();
90*53ee8cc1Swenshuai.xi MS_U32 i = 0;
91*53ee8cc1Swenshuai.xi for(i = 0 ; i < u32MaxDeviceNum ;i++)
92*53ee8cc1Swenshuai.xi {
93*53ee8cc1Swenshuai.xi // need refine
94*53ee8cc1Swenshuai.xi if(i == 0)
95*53ee8cc1Swenshuai.xi {
96*53ee8cc1Swenshuai.xi UtopiaModuleAddResourceStart(pModulePNL, E_PNL_POOL_ID_INTERNAL);
97*53ee8cc1Swenshuai.xi u32ResourceStatusCheck[E_PNL_POOL_ID_INTERNAL] = UtopiaResourceCreate("PNL_VARIABLE", sizeof(PNL_RESOURCE_PRIVATE), &psResource);
98*53ee8cc1Swenshuai.xi UtopiaResourceRegister(pModulePNL, psResource, E_PNL_POOL_ID_INTERNAL);
99*53ee8cc1Swenshuai.xi UtopiaModuleAddResourceEnd(pModulePNL, E_PNL_POOL_ID_INTERNAL);
100*53ee8cc1Swenshuai.xi }
101*53ee8cc1Swenshuai.xi else
102*53ee8cc1Swenshuai.xi {
103*53ee8cc1Swenshuai.xi UtopiaModuleAddResourceStart(pModulePNL, E_PNL_POOL_ID_INTERNAL1);
104*53ee8cc1Swenshuai.xi u32ResourceStatusCheck[E_PNL_POOL_ID_INTERNAL1] = UtopiaResourceCreate("PNL_VARIABLE1", sizeof(PNL_RESOURCE_PRIVATE), &psResource1);
105*53ee8cc1Swenshuai.xi UtopiaResourceRegister(pModulePNL, psResource1, E_PNL_POOL_ID_INTERNAL1);
106*53ee8cc1Swenshuai.xi UtopiaModuleAddResourceEnd(pModulePNL, E_PNL_POOL_ID_INTERNAL1);
107*53ee8cc1Swenshuai.xi }
108*53ee8cc1Swenshuai.xi }
109*53ee8cc1Swenshuai.xi
110*53ee8cc1Swenshuai.xi //4. init resource private members here (aka, global variable)
111*53ee8cc1Swenshuai.xi PNL_RESOURCE_PRIVATE* pPNLResourcePrivate = NULL;
112*53ee8cc1Swenshuai.xi UtopiaResourceGetPrivate(psResource,(void**)(&pPNLResourcePrivate));
113*53ee8cc1Swenshuai.xi
114*53ee8cc1Swenshuai.xi if (u32ResourceStatusCheck[E_PNL_POOL_ID_INTERNAL] == UTOPIA_STATUS_SHM_EXIST)
115*53ee8cc1Swenshuai.xi {
116*53ee8cc1Swenshuai.xi // do nothing, since it is already inited
117*53ee8cc1Swenshuai.xi }
118*53ee8cc1Swenshuai.xi else
119*53ee8cc1Swenshuai.xi {
120*53ee8cc1Swenshuai.xi // Init flow control related variables here. Other global variable should be
121*53ee8cc1Swenshuai.xi // inited in each of its init function relatively.
122*53ee8cc1Swenshuai.xi pPNLResourcePrivate->bResourceRegistered = TRUE;
123*53ee8cc1Swenshuai.xi
124*53ee8cc1Swenshuai.xi // apiPNL.c
125*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bSkipTimingChange = FALSE;
126*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._cstPnlInfo.eSupportGammaType = E_APIPNL_GAMMA_ALL;
127*53ee8cc1Swenshuai.xi memset(pPNLResourcePrivate->stapiPNL._pu8GammaTab[0], 0 ,sizeof(MS_U8)*GammaTblSize);
128*53ee8cc1Swenshuai.xi memset(pPNLResourcePrivate->stapiPNL._pu8GammaTab[1], 0 ,sizeof(MS_U8)*GammaTblSize);
129*53ee8cc1Swenshuai.xi memset(pPNLResourcePrivate->stapiPNL._pu8GammaTab[2], 0 ,sizeof(MS_U8)*GammaTblSize);
130*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._stPnlStatus.bPanel_Initialized = FALSE;
131*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._stPnlStatus.bPanel_Enabled = FALSE;
132*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._u16PanelDCLK = 0;
133*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bForceSetDCLKEnable = DISABLE;
134*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._u16PanelHStart = 0;
135*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bForceSetHStartEnable = DISABLE;
136*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL.ePrevPowerState = E_POWER_MECHANICAL;
137*53ee8cc1Swenshuai.xi
138*53ee8cc1Swenshuai.xi // halPNL.c
139*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u16PnlDefault_SwingLevel = 250;
140*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._eDrvPnlInitOptions = E_PNL_OUTPUT_CLK_DATA;
141*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_TARGET = 1; // 00:250mv, 01:350mv, 10:300mv, 11:200mv
142*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_PAIR_SEL = 0x01;
143*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._usMOD_CALI_OFFSET = 0;
144*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_VALUE = 0x1F; // 250mv:2'h15, 350mv:2'h1F, 300mv:2'h1A, 200mv:2'h10
145*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_LVDS_Pair_Shift = 0;
146*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_LVDS_Pair_Type = 0;
147*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8PnlDiffSwingLevel = 0x63;
148*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._bPVDD_2V5 = FALSE;
149*53ee8cc1Swenshuai.xi
150*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u8OutputOrderType = 0; // default
151*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder0_3 = 0x5410;
152*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder4_7 = 0x5410;
153*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder8_11 = 0x0000;
154*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder12_13 = 0x0000;
155*53ee8cc1Swenshuai.xi }
156*53ee8cc1Swenshuai.xi
157*53ee8cc1Swenshuai.xi if (psResource1 != NULL)
158*53ee8cc1Swenshuai.xi {
159*53ee8cc1Swenshuai.xi UtopiaResourceGetPrivate(psResource1,(void**)(&pPNLResourcePrivate));
160*53ee8cc1Swenshuai.xi
161*53ee8cc1Swenshuai.xi if (u32ResourceStatusCheck[E_PNL_POOL_ID_INTERNAL1] == UTOPIA_STATUS_SHM_EXIST)
162*53ee8cc1Swenshuai.xi {
163*53ee8cc1Swenshuai.xi // do nothing, since it is already inited
164*53ee8cc1Swenshuai.xi }
165*53ee8cc1Swenshuai.xi else
166*53ee8cc1Swenshuai.xi {
167*53ee8cc1Swenshuai.xi // Init flow control related variables here. Other global variable should be
168*53ee8cc1Swenshuai.xi // inited in each of its init function relatively.
169*53ee8cc1Swenshuai.xi pPNLResourcePrivate->bResourceRegistered = TRUE;
170*53ee8cc1Swenshuai.xi
171*53ee8cc1Swenshuai.xi // apiPNL.c
172*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bSkipTimingChange = FALSE;
173*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._cstPnlInfo.eSupportGammaType = E_APIPNL_GAMMA_ALL;
174*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._stPnlStatus.bPanel_Initialized = FALSE;
175*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._stPnlStatus.bPanel_Enabled = FALSE;
176*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._u16PanelDCLK = 0;
177*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bForceSetDCLKEnable = DISABLE;
178*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._u16PanelHStart = 0;
179*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL._bForceSetHStartEnable = DISABLE;
180*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stapiPNL.ePrevPowerState = E_POWER_MECHANICAL;
181*53ee8cc1Swenshuai.xi
182*53ee8cc1Swenshuai.xi // halPNL.c
183*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u16PnlDefault_SwingLevel = 250;
184*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._eDrvPnlInitOptions = E_PNL_OUTPUT_CLK_DATA;
185*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_TARGET = 0;
186*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_PAIR_SEL = 0x01;
187*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._usMOD_CALI_OFFSET = 0;
188*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_CALI_VALUE = 0x15;
189*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_LVDS_Pair_Shift = 0;
190*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8MOD_LVDS_Pair_Type = 0;
191*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._u8PnlDiffSwingLevel = 0x63;
192*53ee8cc1Swenshuai.xi pPNLResourcePrivate->sthalPNL._bPVDD_2V5 = FALSE;
193*53ee8cc1Swenshuai.xi
194*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u8OutputOrderType = 0; // default
195*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder0_3 = 0x5410;
196*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder4_7 = 0x5410;
197*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder8_11 = 0x0000;
198*53ee8cc1Swenshuai.xi pPNLResourcePrivate->stdrvPNL._stPnlInitData.u16OutputOrder12_13 = 0x0000;
199*53ee8cc1Swenshuai.xi }
200*53ee8cc1Swenshuai.xi }
201*53ee8cc1Swenshuai.xi }
202*53ee8cc1Swenshuai.xi
PNLOpen(void ** ppInstance,const void * const pAttribute)203*53ee8cc1Swenshuai.xi MS_U32 PNLOpen(void** ppInstance, const void* const pAttribute)
204*53ee8cc1Swenshuai.xi {
205*53ee8cc1Swenshuai.xi PNL_INSTANCE_PRIVATE *psPNLInstPri = NULL;
206*53ee8cc1Swenshuai.xi UtopiaInstanceCreate(sizeof(PNL_INSTANCE_PRIVATE), ppInstance);
207*53ee8cc1Swenshuai.xi UtopiaInstanceGetPrivate(*ppInstance, (void**)&psPNLInstPri);
208*53ee8cc1Swenshuai.xi
209*53ee8cc1Swenshuai.xi psPNLInstPri->u32DeviceID = 0;
210*53ee8cc1Swenshuai.xi if(pAttribute != NULL)
211*53ee8cc1Swenshuai.xi {
212*53ee8cc1Swenshuai.xi MS_U32* pID = (MS_U32*)pAttribute;
213*53ee8cc1Swenshuai.xi psPNLInstPri->u32DeviceID = *pID;
214*53ee8cc1Swenshuai.xi }
215*53ee8cc1Swenshuai.xi #ifdef UTOPIA_20
216*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetLibVer = MApi_PNL_GetLibVer_U2;
217*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetInfo = MApi_PNL_GetInfo_U2;
218*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetStatus = MApi_PNL_GetStatus_U2;
219*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetStatusEx = MApi_PNL_GetStatusEx_U2;
220*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetDbgLevel = MApi_PNL_SetDbgLevel_U2;
221*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_IOMapBaseInit = MApi_PNL_IOMapBaseInit_U2;
222*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_PreInit = MApi_PNL_PreInit_U2;
223*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Init = MApi_PNL_Init_U2;
224*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Init_Ex = MApi_PNL_Init_Ex_U2;
225*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetConfig = MApi_PNL_GetConfig_U2;
226*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOutput = MApi_PNL_SetOutput_U2;
227*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_ChangePanelType = MApi_PNL_ChangePanelType_U2;
228*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCONMAP_DumpTable = MApi_PNL_TCONMAP_DumpTable_U2;
229*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCONMAP_Power_Sequence = MApi_PNL_TCONMAP_Power_Sequence_U2;
230*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCON_Count_Reset = MApi_PNL_TCON_Count_Reset_U2;
231*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCON_Init = MApi_PNL_TCON_Init_U2;
232*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetDstInfo = MApi_PNL_GetDstInfo_U2;
233*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Control_Out_Swing = MApi_PNL_Control_Out_Swing_U2;
234*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOutputPattern = MApi_PNL_SetOutputPattern_U2;
235*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Mod_Calibration_Setting = MApi_Mod_Calibration_Setting_U2;
236*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Mod_Do_Calibration = MApi_Mod_Do_Calibration_U2;
237*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_BD_LVDS_Output_Type = MApi_BD_LVDS_Output_Type_U2;
238*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetLPLLTypeExt = MApi_PNL_SetLPLLTypeExt_U2;
239*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Init_MISC = MApi_PNL_Init_MISC_U2;
240*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Get_MISC_Status = MApi_PNL_GetMiscStatus_U2;
241*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_OutputConfig_User = MApi_PNL_MOD_OutputConfig_User_U2;
242*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_OutputChannelOrder = MApi_PNL_MOD_OutputChannelOrder_U2;
243*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_HWLVDSReservedtoLRFlag = MApi_PNL_HWLVDSReservedtoLRFlag_U2;
244*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_PVDD_Power_Setting = MApi_MOD_PVDD_Power_Setting_U2;
245*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetSSC_En = MApi_PNL_SetSSC_En_U2;
246*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetSSC_Fmodulation = MApi_PNL_SetSSC_Fmodulation_U2;
247*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetSSC_Rdeviation = MApi_PNL_SetSSC_Rdeviation_U2;
248*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOSDSSC_En = MApi_PNL_SetOSDSSC_En_U2;
249*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOSDSSC_Fmodulation = MApi_PNL_SetOSDSSC_Fmodulation_U2;
250*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOSDSSC_Rdeviation = MApi_PNL_SetOSDSSC_Rdeviation_U2;
251*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SkipTimingChange = MApi_PNL_SkipTimingChange_U2;
252*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_PreSetModeOn = MApi_PNL_PreSetModeOn_U2;
253*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_OverDriver_Init = MApi_PNL_OverDriver_Init_U2;
254*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_OverDriver_Enable = MApi_PNL_OverDriver_Enable_U2;
255*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Get_LPLL_Type = MApi_Pnl_Get_LPLL_Type_U2;
256*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Get_TCON_Capability = MApi_PNL_Get_TCON_Capability_U2;
257*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetPairSwap = MApi_PNL_SetPairSwap_U2;
258*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetExt_LPLL_Type = MApi_PNL_SetExt_LPLL_Type_U2;
259*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_CalExtLPLLSETbyDClk = MApi_PNL_CalExtLPLLSETbyDClk_U2;
260*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetDiffSwingLevel = MApi_PNL_SetDiffSwingLevel_U2;
261*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetPowerState = MApi_PNL_SetPowerState_U2;
262*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_ForceSetPanelDCLK = MApi_PNL_ForceSetPanelDCLK_U2;
263*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_ForceSetPanelHStart = MApi_PNL_ForceSetPanelHStart_U2;
264*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_EnableInternalTermination = MApi_PNL_EnableInternalTermination_U2;
265*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_OutputDeviceHandshake = MApi_PNL_OutputDeviceHandshake_U2;
266*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_OutputDeviceOCHandshake = MApi_PNL_OutputDeviceOCHandshake_U2;
267*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOutputInterlaceTiming = MApi_PNL_SetOutputInterlaceTiming_U2;
268*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetOutputInterlaceTiming = MApi_PNL_GetOutputInterlaceTiming_U2;
269*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelData = MApi_PNL_GetPanelData_U2;
270*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_DumpPanelData = MApi_PNL_DumpPanelData_U2;
271*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetSSC = MApi_PNL_SetSSC_U2;
272*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelOnTiming = MApi_PNL_GetPanelOnTiming_U2;
273*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelOffTiming = MApi_PNL_GetPanelOffTiming_U2;
274*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelDimCtrl = MApi_PNL_GetPanelDimCtrl_U2;
275*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetAllGammaTbl = MApi_PNL_GetAllGammaTbl_U2;
276*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_EnablePanel = MApi_PNL_EnablePanel_U2;
277*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetGammaTbl = MApi_PNL_SetGammaTbl_U2;
278*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetGammaTbl = MApi_PNL_GetGammaTbl_U2;
279*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetGammaValue = MApi_PNL_SetGammaValue_U2;
280*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetLPLLMode = MApi_PNL_GetLPLLMode_U2;
281*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetDefVFreq = MApi_PNL_GetDefVFreq_U2;
282*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelName = MApi_PNL_GetName_U2;
283*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetHStart = MAPI_PNL_GetPNLHstart_U2;
284*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetVStart = MAPI_PNL_GetPNLVstart_U2;
285*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetWidth = MAPI_PNL_GetPNLWidth_U2;
286*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetHeight = MAPI_PNL_GetPNLHeight_U2;
287*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetHtotal = MAPI_PNL_GetPNLHtotal_U2;
288*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetVtotal = MAPI_PNL_GetPNLVtotal_U2;
289*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetHsyncwidth = MAPI_PNL_GetPNLHsyncWidth_U2;
290*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetHsyncBackPorch = MAPI_PNL_GetPNLHsyncBackPorch_U2;
291*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetVsyncBackPorch = MAPI_PNL_GetPNLVsyncBackPorch_U2;
292*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetLPLLType = MApi_PNL_GetLPLLType_U2;
293*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetARC = MApi_PNL_GetARC_U2;
294*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetMinSET = MApi_PNL_GetMinSET_U2;
295*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetMaxSET = MApi_PNL_GetMaxSET_U2;
296*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetOutTimingMode = MApi_PNL_GetOutTimingMode_U2;
297*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_CheckVBY1HandshakeStatus = MApi_PNL_Check_VBY1_Handshake_Status_U2;
298*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetVideoHWTraining = MApi_PNL_SetVideoHWTraining_U2;
299*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOSDHWTraining = MApi_PNL_SetOSDHWTraining_U2;
300*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetVideoHWTraining_Status = MApi_PNL_GetVideoHWTraining_Status_U2;
301*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetOSDHWTraining_Status = MApi_PNL_GetOSDHWTraining_Status_U2;
302*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Setting = MApi_PNL_Setting_U2;
303*53ee8cc1Swenshuai.xi #endif
304*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
305*53ee8cc1Swenshuai.xi }
306*53ee8cc1Swenshuai.xi
307*53ee8cc1Swenshuai.xi
PNLIoctl(void * pInstance,MS_U32 u32Cmd,void * pArgs)308*53ee8cc1Swenshuai.xi MS_U32 PNLIoctl(void* pInstance, MS_U32 u32Cmd, void* pArgs)
309*53ee8cc1Swenshuai.xi {
310*53ee8cc1Swenshuai.xi #ifdef UTOPIA_20
311*53ee8cc1Swenshuai.xi void* pModule = NULL;
312*53ee8cc1Swenshuai.xi PNL_INSTANCE_PRIVATE* psPNLInstPri = NULL;
313*53ee8cc1Swenshuai.xi UtopiaInstanceGetPrivate(pInstance, (void*)&psPNLInstPri);
314*53ee8cc1Swenshuai.xi UtopiaInstanceGetModule(pInstance, &pModule);
315*53ee8cc1Swenshuai.xi //printf("[%s,%5d] u32Cmd type = %ld\n",__FUNCTION__,__LINE__,u32Cmd);
316*53ee8cc1Swenshuai.xi pu32PNLInst_private = pInstance;
317*53ee8cc1Swenshuai.xi switch(u32Cmd)
318*53ee8cc1Swenshuai.xi {
319*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETLIBVER:
320*53ee8cc1Swenshuai.xi {
321*53ee8cc1Swenshuai.xi pstPNL_GetLibVer pPNLArgs = (pstPNL_GetLibVer)pArgs;
322*53ee8cc1Swenshuai.xi pPNLArgs->eResult = psPNLInstPri->fpPNL_GetLibVer(pInstance, pPNLArgs->ppVersion);
323*53ee8cc1Swenshuai.xi
324*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
325*53ee8cc1Swenshuai.xi }
326*53ee8cc1Swenshuai.xi
327*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETINFO:
328*53ee8cc1Swenshuai.xi {
329*53ee8cc1Swenshuai.xi pstPNL_GetInfo pPNLArgs = (pstPNL_GetInfo)pArgs;
330*53ee8cc1Swenshuai.xi pPNLArgs->pApiInfo = psPNLInstPri->fpPNL_GetInfo(pInstance);
331*53ee8cc1Swenshuai.xi
332*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
333*53ee8cc1Swenshuai.xi }
334*53ee8cc1Swenshuai.xi
335*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETSTATUS:
336*53ee8cc1Swenshuai.xi {
337*53ee8cc1Swenshuai.xi pstPNL_GetStatus pPNLArgs = (pstPNL_GetStatus)pArgs;
338*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_GetStatus(pInstance, pPNLArgs->pPnlStatus);
339*53ee8cc1Swenshuai.xi
340*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
341*53ee8cc1Swenshuai.xi }
342*53ee8cc1Swenshuai.xi
343*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETSTATUSEX:
344*53ee8cc1Swenshuai.xi {
345*53ee8cc1Swenshuai.xi pstPNL_GetStatusEx pPNLArgs = (pstPNL_GetStatusEx)pArgs;
346*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_GetStatusEx(pInstance, pPNLArgs->pPnlExtStatus);
347*53ee8cc1Swenshuai.xi
348*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
349*53ee8cc1Swenshuai.xi }
350*53ee8cc1Swenshuai.xi
351*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETDBGLEVEL:
352*53ee8cc1Swenshuai.xi {
353*53ee8cc1Swenshuai.xi pstPNL_SetDbgLevel pPNLArgs = (pstPNL_SetDbgLevel)pArgs;
354*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_SetDbgLevel(pInstance, pPNLArgs->u16DbgSwitch);
355*53ee8cc1Swenshuai.xi
356*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
357*53ee8cc1Swenshuai.xi }
358*53ee8cc1Swenshuai.xi
359*53ee8cc1Swenshuai.xi case E_PNL_CMD_IOMAPBASEINIT:
360*53ee8cc1Swenshuai.xi {
361*53ee8cc1Swenshuai.xi pstPNL_IOMapBaseInit pPNLArgs = (pstPNL_IOMapBaseInit)pArgs;
362*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_IOMapBaseInit(pInstance);
363*53ee8cc1Swenshuai.xi
364*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
365*53ee8cc1Swenshuai.xi }
366*53ee8cc1Swenshuai.xi
367*53ee8cc1Swenshuai.xi case E_PNL_CMD_PREINIT:
368*53ee8cc1Swenshuai.xi {
369*53ee8cc1Swenshuai.xi pstPNL_PreInit pPNLArgs = (pstPNL_PreInit)pArgs;
370*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_PreInit(pInstance, pPNLArgs->eInitParam);
371*53ee8cc1Swenshuai.xi
372*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
373*53ee8cc1Swenshuai.xi }
374*53ee8cc1Swenshuai.xi
375*53ee8cc1Swenshuai.xi case E_PNL_CMD_INIT:
376*53ee8cc1Swenshuai.xi {
377*53ee8cc1Swenshuai.xi pstPNL_Init pPNLArgs = (pstPNL_Init)pArgs;
378*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_Init(pInstance, pPNLArgs->pSelPanelType);
379*53ee8cc1Swenshuai.xi
380*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
381*53ee8cc1Swenshuai.xi }
382*53ee8cc1Swenshuai.xi
383*53ee8cc1Swenshuai.xi case E_PNL_CMD_INIT_EX:
384*53ee8cc1Swenshuai.xi {
385*53ee8cc1Swenshuai.xi pstPNL_Init_Ex pPNLArgs = (pstPNL_Init_Ex)pArgs;
386*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_Init_Ex(pInstance, pPNLArgs->pSelPanelType, pPNLArgs->LIBVER);
387*53ee8cc1Swenshuai.xi
388*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
389*53ee8cc1Swenshuai.xi }
390*53ee8cc1Swenshuai.xi
391*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_CONFIG:
392*53ee8cc1Swenshuai.xi {
393*53ee8cc1Swenshuai.xi pstPNL_GetConfig pPNLArgs = (pstPNL_GetConfig) pArgs;
394*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_GetConfig(pInstance,pPNLArgs->pSelPanelType);
395*53ee8cc1Swenshuai.xi
396*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
397*53ee8cc1Swenshuai.xi }
398*53ee8cc1Swenshuai.xi
399*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETOUTPUT:
400*53ee8cc1Swenshuai.xi {
401*53ee8cc1Swenshuai.xi pstPNL_SetOutput pPNLArgs = (pstPNL_SetOutput)pArgs;
402*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOutput(pInstance, pPNLArgs->eOutputMode);
403*53ee8cc1Swenshuai.xi
404*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
405*53ee8cc1Swenshuai.xi }
406*53ee8cc1Swenshuai.xi
407*53ee8cc1Swenshuai.xi case E_PNL_CMD_CHANGEPANELTYPE:
408*53ee8cc1Swenshuai.xi {
409*53ee8cc1Swenshuai.xi pstPNL_ChangePanelType pPNLArgs = (pstPNL_ChangePanelType)pArgs;
410*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_ChangePanelType(pInstance, pPNLArgs->pSelPanelType);
411*53ee8cc1Swenshuai.xi
412*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
413*53ee8cc1Swenshuai.xi }
414*53ee8cc1Swenshuai.xi
415*53ee8cc1Swenshuai.xi case E_PNL_CMD_TCONMAP_DUMPTABLE:
416*53ee8cc1Swenshuai.xi {
417*53ee8cc1Swenshuai.xi pstPNL_TCONMAP_DumpTable pPNLArgs = (pstPNL_TCONMAP_DumpTable)pArgs;
418*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_TCONMAP_DumpTable(pInstance, pPNLArgs->pTCONTable, pPNLArgs->u8Tcontype);
419*53ee8cc1Swenshuai.xi
420*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
421*53ee8cc1Swenshuai.xi }
422*53ee8cc1Swenshuai.xi
423*53ee8cc1Swenshuai.xi case E_PNL_CMD_TCONMAP_POWER_SEQUENCE:
424*53ee8cc1Swenshuai.xi {
425*53ee8cc1Swenshuai.xi pstPNL_TCONMAP_Power_Sequence pPNLArgs = (pstPNL_TCONMAP_Power_Sequence)pArgs;
426*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_TCONMAP_Power_Sequence(pInstance, pPNLArgs->pTCONTable, pPNLArgs->bEnable);
427*53ee8cc1Swenshuai.xi
428*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
429*53ee8cc1Swenshuai.xi }
430*53ee8cc1Swenshuai.xi
431*53ee8cc1Swenshuai.xi case E_PNL_CMD_TCON_COUNT_RESET:
432*53ee8cc1Swenshuai.xi {
433*53ee8cc1Swenshuai.xi pstPNL_TCON_Count_Reset pPNLArgs = (pstPNL_TCON_Count_Reset)pArgs;
434*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCON_Count_Reset(pInstance, pPNLArgs->bEnable);
435*53ee8cc1Swenshuai.xi
436*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
437*53ee8cc1Swenshuai.xi }
438*53ee8cc1Swenshuai.xi
439*53ee8cc1Swenshuai.xi case E_PNL_CMD_TCON_INIT:
440*53ee8cc1Swenshuai.xi {
441*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_TCON_Init(pInstance);
442*53ee8cc1Swenshuai.xi
443*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
444*53ee8cc1Swenshuai.xi }
445*53ee8cc1Swenshuai.xi
446*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETDSTINFO:
447*53ee8cc1Swenshuai.xi {
448*53ee8cc1Swenshuai.xi pstPNL_GetDstInfo pPNLArgs = (pstPNL_GetDstInfo)pArgs;
449*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_GetDstInfo(pInstance, pPNLArgs->pDstInfo, pPNLArgs->u32SizeofDstInfo);
450*53ee8cc1Swenshuai.xi
451*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
452*53ee8cc1Swenshuai.xi }
453*53ee8cc1Swenshuai.xi
454*53ee8cc1Swenshuai.xi case E_PNL_CMD_CONTROL_OUT_SWING:
455*53ee8cc1Swenshuai.xi {
456*53ee8cc1Swenshuai.xi pstPNL_Control_Out_Swing pPNLArgs = (pstPNL_Control_Out_Swing)pArgs;
457*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_Control_Out_Swing(pInstance, pPNLArgs->u16Swing_Level);
458*53ee8cc1Swenshuai.xi
459*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
460*53ee8cc1Swenshuai.xi }
461*53ee8cc1Swenshuai.xi
462*53ee8cc1Swenshuai.xi case E_PNL_CMD_SET_OUTPUT_PATTERN:
463*53ee8cc1Swenshuai.xi {
464*53ee8cc1Swenshuai.xi pstPNL_SetOutputPattern pPNLArgs = (pstPNL_SetOutputPattern)pArgs;
465*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOutputPattern(pInstance, pPNLArgs->bEnable, pPNLArgs->u16Red, pPNLArgs->u16Green, pPNLArgs->u16Blue);
466*53ee8cc1Swenshuai.xi
467*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
468*53ee8cc1Swenshuai.xi }
469*53ee8cc1Swenshuai.xi
470*53ee8cc1Swenshuai.xi case E_PNL_CMD_MOD_CALIBRATION_SETTING:
471*53ee8cc1Swenshuai.xi {
472*53ee8cc1Swenshuai.xi pstPNL_Mod_Calibration_Setting pPNLArgs = (pstPNL_Mod_Calibration_Setting)pArgs;
473*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_Mod_Calibration_Setting(pInstance, pPNLArgs->pstModCaliInfo);
474*53ee8cc1Swenshuai.xi
475*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
476*53ee8cc1Swenshuai.xi }
477*53ee8cc1Swenshuai.xi
478*53ee8cc1Swenshuai.xi case E_PNL_CMD_MOD_DO_CALIBRATION:
479*53ee8cc1Swenshuai.xi {
480*53ee8cc1Swenshuai.xi pstPNL_Mod_Do_Calibration pPNLArgs = (pstPNL_Mod_Do_Calibration)pArgs;
481*53ee8cc1Swenshuai.xi pPNLArgs->bReturn= psPNLInstPri->fpPNL_Mod_Do_Calibration(pInstance);
482*53ee8cc1Swenshuai.xi
483*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
484*53ee8cc1Swenshuai.xi }
485*53ee8cc1Swenshuai.xi
486*53ee8cc1Swenshuai.xi case E_PNL_CMD_BD_LVDS_OUTPUT_TYPE:
487*53ee8cc1Swenshuai.xi {
488*53ee8cc1Swenshuai.xi pstPNL_BD_LVDS_Output_Type pPNLArgs = (pstPNL_BD_LVDS_Output_Type)pArgs;
489*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_BD_LVDS_Output_Type(pInstance, pPNLArgs->Type);
490*53ee8cc1Swenshuai.xi
491*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
492*53ee8cc1Swenshuai.xi }
493*53ee8cc1Swenshuai.xi
494*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETLPLLTYPEEXT:
495*53ee8cc1Swenshuai.xi {
496*53ee8cc1Swenshuai.xi pstPNL_SetLPLLTypeExt pPNLArgs = (pstPNL_SetLPLLTypeExt)pArgs;
497*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetLPLLTypeExt(pInstance, pPNLArgs->eLPLL_TypeExt);
498*53ee8cc1Swenshuai.xi
499*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
500*53ee8cc1Swenshuai.xi }
501*53ee8cc1Swenshuai.xi
502*53ee8cc1Swenshuai.xi case E_PNL_CMD_INIT_MISC:
503*53ee8cc1Swenshuai.xi {
504*53ee8cc1Swenshuai.xi pstPNL_Init_MISC pPNLArgs = (pstPNL_Init_MISC)pArgs;
505*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_Init_MISC(pInstance, pPNLArgs->ePNL_MISC);
506*53ee8cc1Swenshuai.xi
507*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
508*53ee8cc1Swenshuai.xi }
509*53ee8cc1Swenshuai.xi
510*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_MISC_STATUS:
511*53ee8cc1Swenshuai.xi {
512*53ee8cc1Swenshuai.xi pstPNL_Get_MISC_Status pPNLArgs = (pstPNL_Get_MISC_Status)pArgs;
513*53ee8cc1Swenshuai.xi pPNLArgs->u32Status = psPNLInstPri->fpPNL_Get_MISC_Status(pInstance);
514*53ee8cc1Swenshuai.xi
515*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
516*53ee8cc1Swenshuai.xi }
517*53ee8cc1Swenshuai.xi
518*53ee8cc1Swenshuai.xi case E_PNL_CMD_MOD_OUTPUTCONFIG_USER:
519*53ee8cc1Swenshuai.xi {
520*53ee8cc1Swenshuai.xi pstPNL_MOD_OutputConfig_User pPNLArgs = (pstPNL_MOD_OutputConfig_User)pArgs;
521*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_OutputConfig_User(pInstance, pPNLArgs->u32OutputCFG0_7, pPNLArgs->u32OutputCFG8_15, pPNLArgs->u32OutputCFG16_21);
522*53ee8cc1Swenshuai.xi
523*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
524*53ee8cc1Swenshuai.xi }
525*53ee8cc1Swenshuai.xi
526*53ee8cc1Swenshuai.xi case E_PNL_CMD_MOD_OUTPUT_CHANNEL_ORDER:
527*53ee8cc1Swenshuai.xi {
528*53ee8cc1Swenshuai.xi pstPNL_MOD_OutputChannelOrder pPNLArgs = (pstPNL_MOD_OutputChannelOrder)pArgs;
529*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_OutputChannelOrder(pInstance,
530*53ee8cc1Swenshuai.xi pPNLArgs->u8OutputOrderType,
531*53ee8cc1Swenshuai.xi pPNLArgs->u16OutputOrder0_3,
532*53ee8cc1Swenshuai.xi pPNLArgs->u16OutputOrder4_7,
533*53ee8cc1Swenshuai.xi pPNLArgs->u16OutputOrder8_11,
534*53ee8cc1Swenshuai.xi pPNLArgs->u16OutputOrder12_13);
535*53ee8cc1Swenshuai.xi
536*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
537*53ee8cc1Swenshuai.xi }
538*53ee8cc1Swenshuai.xi
539*53ee8cc1Swenshuai.xi case E_PNL_CMD_HWLVDSRESERVEDTOLRFLAG:
540*53ee8cc1Swenshuai.xi {
541*53ee8cc1Swenshuai.xi pstPNL_HWLVDSReservedtoLRFlag pPNLArgs = (pstPNL_HWLVDSReservedtoLRFlag)pArgs;
542*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_HWLVDSReservedtoLRFlag(pInstance, pPNLArgs->lvdsresinfo);
543*53ee8cc1Swenshuai.xi
544*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
545*53ee8cc1Swenshuai.xi }
546*53ee8cc1Swenshuai.xi
547*53ee8cc1Swenshuai.xi case E_PNL_CMD_MOD_PVDD_POWER_SETTING:
548*53ee8cc1Swenshuai.xi {
549*53ee8cc1Swenshuai.xi pstPNL_MOD_PVDD_Power_Setting pPNLArgs = (pstPNL_MOD_PVDD_Power_Setting)pArgs;
550*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_MOD_PVDD_Power_Setting(pInstance, pPNLArgs->bIs2p5);
551*53ee8cc1Swenshuai.xi
552*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
553*53ee8cc1Swenshuai.xi }
554*53ee8cc1Swenshuai.xi
555*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETSSC_EN:
556*53ee8cc1Swenshuai.xi {
557*53ee8cc1Swenshuai.xi pstPNL_SetSSC_En pPNLArgs = (pstPNL_SetSSC_En)pArgs;
558*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetSSC_En(pInstance, pPNLArgs->bEnable);
559*53ee8cc1Swenshuai.xi
560*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
561*53ee8cc1Swenshuai.xi }
562*53ee8cc1Swenshuai.xi
563*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETSSC_FMODULATION:
564*53ee8cc1Swenshuai.xi {
565*53ee8cc1Swenshuai.xi pstPNL_SetSSC_Fmodulation pPNLArgs = (pstPNL_SetSSC_Fmodulation)pArgs;
566*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetSSC_Fmodulation(pInstance, pPNLArgs->u16Fmodulation);
567*53ee8cc1Swenshuai.xi
568*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
569*53ee8cc1Swenshuai.xi }
570*53ee8cc1Swenshuai.xi
571*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETSSC_RDEVIATION:
572*53ee8cc1Swenshuai.xi {
573*53ee8cc1Swenshuai.xi pstPNL_SetSSC_Rdeviation pPNLArgs = (pstPNL_SetSSC_Rdeviation)pArgs;
574*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetSSC_Rdeviation(pInstance, pPNLArgs->u16Rdeviation);
575*53ee8cc1Swenshuai.xi
576*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
577*53ee8cc1Swenshuai.xi }
578*53ee8cc1Swenshuai.xi
579*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETOSDSSC_EN:
580*53ee8cc1Swenshuai.xi {
581*53ee8cc1Swenshuai.xi pstPNL_SetOSDSSC_En pPNLArgs = (pstPNL_SetOSDSSC_En)pArgs;
582*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetOSDSSC_En(pInstance, pPNLArgs->bEnable);
583*53ee8cc1Swenshuai.xi
584*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
585*53ee8cc1Swenshuai.xi }
586*53ee8cc1Swenshuai.xi
587*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETOSDSSC_FMODULATION:
588*53ee8cc1Swenshuai.xi {
589*53ee8cc1Swenshuai.xi pstPNL_SetOSDSSC_Fmodulation pPNLArgs = (pstPNL_SetOSDSSC_Fmodulation)pArgs;
590*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetOSDSSC_Fmodulation(pInstance, pPNLArgs->u16Fmodulation);
591*53ee8cc1Swenshuai.xi
592*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
593*53ee8cc1Swenshuai.xi }
594*53ee8cc1Swenshuai.xi
595*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETOSDSSC_RDEVIATION:
596*53ee8cc1Swenshuai.xi {
597*53ee8cc1Swenshuai.xi pstPNL_SetOSDSSC_Rdeviation pPNLArgs = (pstPNL_SetOSDSSC_Rdeviation)pArgs;
598*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetOSDSSC_Rdeviation(pInstance, pPNLArgs->u16Rdeviation);
599*53ee8cc1Swenshuai.xi
600*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
601*53ee8cc1Swenshuai.xi }
602*53ee8cc1Swenshuai.xi
603*53ee8cc1Swenshuai.xi case E_PNL_CMD_SKIPTIMINGCHANGE:
604*53ee8cc1Swenshuai.xi {
605*53ee8cc1Swenshuai.xi pstPNL_SkipTimingChange pPNLArgs = (pstPNL_SkipTimingChange)pArgs;
606*53ee8cc1Swenshuai.xi pPNLArgs->eResult = psPNLInstPri->fpPNL_SkipTimingChange(pInstance, pPNLArgs->bFlag);
607*53ee8cc1Swenshuai.xi
608*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
609*53ee8cc1Swenshuai.xi }
610*53ee8cc1Swenshuai.xi
611*53ee8cc1Swenshuai.xi case E_PNL_CMD_PRE_SET_MODE_ON:
612*53ee8cc1Swenshuai.xi {
613*53ee8cc1Swenshuai.xi pstPNL_PreSetModeOn pPNLArgs = (pstPNL_PreSetModeOn)pArgs;
614*53ee8cc1Swenshuai.xi pPNLArgs->eResult = psPNLInstPri->fpPNL_PreSetModeOn(pInstance, pPNLArgs->bSetMode);
615*53ee8cc1Swenshuai.xi
616*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
617*53ee8cc1Swenshuai.xi }
618*53ee8cc1Swenshuai.xi
619*53ee8cc1Swenshuai.xi case E_PNL_CMD_OVERDRIVER_INIT:
620*53ee8cc1Swenshuai.xi {
621*53ee8cc1Swenshuai.xi pstPNL_OverDriver_Init pPNLArgs = (pstPNL_OverDriver_Init)pArgs;
622*53ee8cc1Swenshuai.xi pPNLArgs->eResult = psPNLInstPri->fpPNL_OverDriver_Init(pInstance, pPNLArgs->pPNL_ODInitData, pPNLArgs->u32ODInitDataLen);
623*53ee8cc1Swenshuai.xi
624*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
625*53ee8cc1Swenshuai.xi }
626*53ee8cc1Swenshuai.xi
627*53ee8cc1Swenshuai.xi case E_PNL_CMD_OVERDRIVER_ENABLE:
628*53ee8cc1Swenshuai.xi {
629*53ee8cc1Swenshuai.xi pstPNL_OverDriver_Enable pPNLArgs = (pstPNL_OverDriver_Enable)pArgs;
630*53ee8cc1Swenshuai.xi pPNLArgs->eResult = psPNLInstPri->fpPNL_OverDriver_Enable(pInstance, pPNLArgs->bEnable);
631*53ee8cc1Swenshuai.xi
632*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
633*53ee8cc1Swenshuai.xi }
634*53ee8cc1Swenshuai.xi
635*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_LPLL_TYPE:
636*53ee8cc1Swenshuai.xi {
637*53ee8cc1Swenshuai.xi pstPNL_Get_LPLL_Type pPNLArgs = (pstPNL_Get_LPLL_Type)pArgs;
638*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_Get_LPLL_Type(pInstance);
639*53ee8cc1Swenshuai.xi
640*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
641*53ee8cc1Swenshuai.xi }
642*53ee8cc1Swenshuai.xi
643*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_TCON_CAPABILITY:
644*53ee8cc1Swenshuai.xi {
645*53ee8cc1Swenshuai.xi pstPNL_Get_TCON_Capability pPNLArgs = (pstPNL_Get_TCON_Capability)pArgs;
646*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_Get_TCON_Capability(pInstance);
647*53ee8cc1Swenshuai.xi
648*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
649*53ee8cc1Swenshuai.xi }
650*53ee8cc1Swenshuai.xi
651*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETPAIRSWAP:
652*53ee8cc1Swenshuai.xi {
653*53ee8cc1Swenshuai.xi pstPNL_SetPairSwap pPNLArgs = (pstPNL_SetPairSwap)pArgs;
654*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetPairSwap(pInstance, pPNLArgs->u32Polarity);
655*53ee8cc1Swenshuai.xi
656*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
657*53ee8cc1Swenshuai.xi }
658*53ee8cc1Swenshuai.xi
659*53ee8cc1Swenshuai.xi case E_PNL_CMD_SET_EXT_LPLL_TYPE:
660*53ee8cc1Swenshuai.xi {
661*53ee8cc1Swenshuai.xi pstPNL_SetExt_LPLL_Type pPNLArgs = (pstPNL_SetExt_LPLL_Type)pArgs;
662*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetExt_LPLL_Type(pInstance, pPNLArgs->u16Ext_lpll_type);
663*53ee8cc1Swenshuai.xi
664*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
665*53ee8cc1Swenshuai.xi }
666*53ee8cc1Swenshuai.xi
667*53ee8cc1Swenshuai.xi case E_PNL_CMD_CALEXTLPLLSETBYDCLK:
668*53ee8cc1Swenshuai.xi {
669*53ee8cc1Swenshuai.xi pstPNL_CalExtLPLLSETbyDClk pPNLArgs = (pstPNL_CalExtLPLLSETbyDClk)pArgs;
670*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_CalExtLPLLSETbyDClk(pInstance, pPNLArgs->ldHz);
671*53ee8cc1Swenshuai.xi
672*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
673*53ee8cc1Swenshuai.xi }
674*53ee8cc1Swenshuai.xi
675*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETDIFFSWINGLEVEL:
676*53ee8cc1Swenshuai.xi {
677*53ee8cc1Swenshuai.xi pstPNL_SetDiffSwingLevel pPNLArgs = (pstPNL_SetDiffSwingLevel)pArgs;
678*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_SetDiffSwingLevel(pInstance, pPNLArgs->u8Swing_Level);
679*53ee8cc1Swenshuai.xi
680*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
681*53ee8cc1Swenshuai.xi }
682*53ee8cc1Swenshuai.xi
683*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETPOWERSTATE:
684*53ee8cc1Swenshuai.xi {
685*53ee8cc1Swenshuai.xi pstPNL_SetPowerState pPNLArgs = (pstPNL_SetPowerState)pArgs;
686*53ee8cc1Swenshuai.xi pPNLArgs->u32Return = psPNLInstPri->fpPNL_SetPowerState(pInstance, pPNLArgs->ePowerState);
687*53ee8cc1Swenshuai.xi
688*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
689*53ee8cc1Swenshuai.xi }
690*53ee8cc1Swenshuai.xi
691*53ee8cc1Swenshuai.xi case E_PNL_CMD_FORCESETPANELDCLK:
692*53ee8cc1Swenshuai.xi {
693*53ee8cc1Swenshuai.xi pstPNL_ForceSetPanelDCLK pPNLArgs = (pstPNL_ForceSetPanelDCLK)pArgs;
694*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_ForceSetPanelDCLK(pInstance, pPNLArgs->u16PanelDCLK, pPNLArgs->bSetDCLKEnable);
695*53ee8cc1Swenshuai.xi
696*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
697*53ee8cc1Swenshuai.xi }
698*53ee8cc1Swenshuai.xi
699*53ee8cc1Swenshuai.xi case E_PNL_CMD_FORCESETPANELHSTART:
700*53ee8cc1Swenshuai.xi {
701*53ee8cc1Swenshuai.xi pstPNL_ForceSetPanelHStart pPNLArgs = (pstPNL_ForceSetPanelHStart)pArgs;
702*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_ForceSetPanelHStart(pInstance, pPNLArgs->u16PanelHStart, pPNLArgs->bSetHStartEnable);
703*53ee8cc1Swenshuai.xi
704*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
705*53ee8cc1Swenshuai.xi }
706*53ee8cc1Swenshuai.xi
707*53ee8cc1Swenshuai.xi case E_PNL_CMD_ENABLEINTERNALTERMINATION:
708*53ee8cc1Swenshuai.xi {
709*53ee8cc1Swenshuai.xi pstPNL_EnableInternalTermination pPNLArgs = (pstPNL_EnableInternalTermination)pArgs;
710*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_EnableInternalTermination(pInstance, pPNLArgs->bEnable);
711*53ee8cc1Swenshuai.xi
712*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
713*53ee8cc1Swenshuai.xi }
714*53ee8cc1Swenshuai.xi
715*53ee8cc1Swenshuai.xi case E_PNL_CMD_OUTPUTDEVICEHANDSHAKE:
716*53ee8cc1Swenshuai.xi {
717*53ee8cc1Swenshuai.xi pstPNL_OutputDeviceHandshake pPNLArgs = (pstPNL_OutputDeviceHandshake)pArgs;
718*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_OutputDeviceHandshake(pInstance);
719*53ee8cc1Swenshuai.xi
720*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
721*53ee8cc1Swenshuai.xi }
722*53ee8cc1Swenshuai.xi
723*53ee8cc1Swenshuai.xi case E_PNL_CMD_OUTPUTDEVICEOCHANDSHAKE:
724*53ee8cc1Swenshuai.xi {
725*53ee8cc1Swenshuai.xi pstPNL_OutputDeviceOCHandshake pPNLArgs = (pstPNL_OutputDeviceOCHandshake)pArgs;
726*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_OutputDeviceOCHandshake(pInstance);
727*53ee8cc1Swenshuai.xi
728*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
729*53ee8cc1Swenshuai.xi }
730*53ee8cc1Swenshuai.xi
731*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETOUTPUTINTERLACETIMING:
732*53ee8cc1Swenshuai.xi {
733*53ee8cc1Swenshuai.xi pstPNL_SetOutputInterlaceTiming pPNLArgs = (pstPNL_SetOutputInterlaceTiming)pArgs;
734*53ee8cc1Swenshuai.xi pPNLArgs->eReturn = psPNLInstPri->fpPNL_SetOutputInterlaceTiming(pInstance, pPNLArgs->bEnable);
735*53ee8cc1Swenshuai.xi
736*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
737*53ee8cc1Swenshuai.xi }
738*53ee8cc1Swenshuai.xi
739*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETOUTPUTINTERLACETIMING:
740*53ee8cc1Swenshuai.xi {
741*53ee8cc1Swenshuai.xi pstPNL_GetOutputInterlaceTiming pPNLArgs = (pstPNL_GetOutputInterlaceTiming)pArgs;
742*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_GetOutputInterlaceTiming(pInstance);
743*53ee8cc1Swenshuai.xi
744*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
745*53ee8cc1Swenshuai.xi }
746*53ee8cc1Swenshuai.xi
747*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETPANELDATA:
748*53ee8cc1Swenshuai.xi {
749*53ee8cc1Swenshuai.xi pstPNL_GetPanelData pPNLArgs = (pstPNL_GetPanelData)pArgs;
750*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_GetPanelData(pInstance, pPNLArgs->pstPNLData);
751*53ee8cc1Swenshuai.xi
752*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
753*53ee8cc1Swenshuai.xi }
754*53ee8cc1Swenshuai.xi
755*53ee8cc1Swenshuai.xi case E_PNL_CMD_DUMPPANELDATA:
756*53ee8cc1Swenshuai.xi {
757*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_DumpPanelData(pInstance);
758*53ee8cc1Swenshuai.xi
759*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
760*53ee8cc1Swenshuai.xi }
761*53ee8cc1Swenshuai.xi
762*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETSSC:
763*53ee8cc1Swenshuai.xi {
764*53ee8cc1Swenshuai.xi pstPNL_SetSSC pPNLArgs = (pstPNL_SetSSC)pArgs;
765*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetSSC(pInstance, pPNLArgs->u16Fmodulation, pPNLArgs->u16Rdeviation, pPNLArgs->bEnable);
766*53ee8cc1Swenshuai.xi
767*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
768*53ee8cc1Swenshuai.xi }
769*53ee8cc1Swenshuai.xi
770*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETPANELONTIMING:
771*53ee8cc1Swenshuai.xi {
772*53ee8cc1Swenshuai.xi pstPNL_GetPanelOnTiming pPNLArgs = (pstPNL_GetPanelOnTiming)pArgs;
773*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetPanelOnTiming(pInstance, pPNLArgs->seq);
774*53ee8cc1Swenshuai.xi
775*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
776*53ee8cc1Swenshuai.xi }
777*53ee8cc1Swenshuai.xi
778*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETPANELOFFTIMING:
779*53ee8cc1Swenshuai.xi {
780*53ee8cc1Swenshuai.xi pstPNL_GetPanelOffTiming pPNLArgs = (pstPNL_GetPanelOffTiming)pArgs;
781*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetPanelOffTiming(pInstance, pPNLArgs->seq);
782*53ee8cc1Swenshuai.xi
783*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
784*53ee8cc1Swenshuai.xi }
785*53ee8cc1Swenshuai.xi
786*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETPANELDIMCTRL:
787*53ee8cc1Swenshuai.xi {
788*53ee8cc1Swenshuai.xi pstPNL_GetPanelDimCtrl pPNLArgs = (pstPNL_GetPanelDimCtrl)pArgs;
789*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetPanelDimCtrl(pInstance, pPNLArgs->dim_type);
790*53ee8cc1Swenshuai.xi
791*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
792*53ee8cc1Swenshuai.xi }
793*53ee8cc1Swenshuai.xi
794*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETALLGAMMATBL:
795*53ee8cc1Swenshuai.xi {
796*53ee8cc1Swenshuai.xi pstPNL_GetAllGammaTbl pPNLArgs = (pstPNL_GetAllGammaTbl)pArgs;
797*53ee8cc1Swenshuai.xi pPNLArgs->ppu8Return = psPNLInstPri->fpPNL_GetAllGammaTbl(pInstance);
798*53ee8cc1Swenshuai.xi
799*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
800*53ee8cc1Swenshuai.xi }
801*53ee8cc1Swenshuai.xi
802*53ee8cc1Swenshuai.xi case E_PNL_CMD_ENABLEPANEL:
803*53ee8cc1Swenshuai.xi {
804*53ee8cc1Swenshuai.xi pstPNL_EnablePanel pPNLArgs = (pstPNL_EnablePanel)pArgs;
805*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_EnablePanel(pInstance, pPNLArgs->bPanelOn);
806*53ee8cc1Swenshuai.xi
807*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
808*53ee8cc1Swenshuai.xi }
809*53ee8cc1Swenshuai.xi
810*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETGAMMATBL:
811*53ee8cc1Swenshuai.xi {
812*53ee8cc1Swenshuai.xi pstPNL_SetGammaTbl pPNLArgs = (pstPNL_SetGammaTbl)pArgs;
813*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_SetGammaTbl(pInstance, pPNLArgs->eGammaType, pPNLArgs->pu8GammaTab, pPNLArgs->Gamma_Map_Mode);
814*53ee8cc1Swenshuai.xi
815*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
816*53ee8cc1Swenshuai.xi }
817*53ee8cc1Swenshuai.xi
818*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETGAMMATBL:
819*53ee8cc1Swenshuai.xi {
820*53ee8cc1Swenshuai.xi pstPNL_GetGammaTbl pPNLArgs = (pstPNL_GetGammaTbl)pArgs;
821*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_GetGammaTbl(pInstance, pPNLArgs->eGammaType, pPNLArgs->pu8GammaTab, pPNLArgs->Gamma_Map_Mode);
822*53ee8cc1Swenshuai.xi
823*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
824*53ee8cc1Swenshuai.xi }
825*53ee8cc1Swenshuai.xi
826*53ee8cc1Swenshuai.xi case E_PNL_CMD_SETGAMMAVALUE:
827*53ee8cc1Swenshuai.xi {
828*53ee8cc1Swenshuai.xi pstPNL_SetGammaValue pPNLArgs = (pstPNL_SetGammaValue)pArgs;
829*53ee8cc1Swenshuai.xi pPNLArgs->bReturn = psPNLInstPri->fpPNL_SetGammaValue(pInstance, pPNLArgs->u8Channel, pPNLArgs->u16Offset, pPNLArgs->u16GammaValue);
830*53ee8cc1Swenshuai.xi
831*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
832*53ee8cc1Swenshuai.xi }
833*53ee8cc1Swenshuai.xi
834*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETLPLLMODE:
835*53ee8cc1Swenshuai.xi {
836*53ee8cc1Swenshuai.xi pstPNL_GetLPLLMode pPNLArgs = (pstPNL_GetLPLLMode)pArgs;
837*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetLPLLMode(pInstance);
838*53ee8cc1Swenshuai.xi
839*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
840*53ee8cc1Swenshuai.xi }
841*53ee8cc1Swenshuai.xi
842*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETDEFVFREQ:
843*53ee8cc1Swenshuai.xi {
844*53ee8cc1Swenshuai.xi pstPNL_GetDefVFreq pPNLArgs = (pstPNL_GetDefVFreq)pArgs;
845*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetDefVFreq(pInstance);
846*53ee8cc1Swenshuai.xi
847*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
848*53ee8cc1Swenshuai.xi }
849*53ee8cc1Swenshuai.xi
850*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETPANELNAME:
851*53ee8cc1Swenshuai.xi {
852*53ee8cc1Swenshuai.xi pstPNL_GetName pPNLArgs = (pstPNL_GetName)pArgs;
853*53ee8cc1Swenshuai.xi pPNLArgs->pPNLName = psPNLInstPri->fpPNL_GetPanelName(pInstance);
854*53ee8cc1Swenshuai.xi
855*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
856*53ee8cc1Swenshuai.xi }
857*53ee8cc1Swenshuai.xi
858*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETHSTART:
859*53ee8cc1Swenshuai.xi {
860*53ee8cc1Swenshuai.xi pstPNL_GetHstart pPNLArgs = (pstPNL_GetHstart)pArgs;
861*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetHStart(pInstance);
862*53ee8cc1Swenshuai.xi
863*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
864*53ee8cc1Swenshuai.xi }
865*53ee8cc1Swenshuai.xi
866*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETVSTART:
867*53ee8cc1Swenshuai.xi {
868*53ee8cc1Swenshuai.xi pstPNL_GetVstart pPNLArgs = (pstPNL_GetVstart)pArgs;
869*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetVStart(pInstance);
870*53ee8cc1Swenshuai.xi
871*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
872*53ee8cc1Swenshuai.xi }
873*53ee8cc1Swenshuai.xi
874*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETWIDTH:
875*53ee8cc1Swenshuai.xi {
876*53ee8cc1Swenshuai.xi pstPNL_GetWidth pPNLArgs = (pstPNL_GetWidth)pArgs;
877*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetWidth(pInstance);
878*53ee8cc1Swenshuai.xi
879*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
880*53ee8cc1Swenshuai.xi }
881*53ee8cc1Swenshuai.xi
882*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETHEIGHT:
883*53ee8cc1Swenshuai.xi {
884*53ee8cc1Swenshuai.xi pstPNL_GetWidth pPNLArgs = (pstPNL_GetWidth)pArgs;
885*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetHeight(pInstance);
886*53ee8cc1Swenshuai.xi
887*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
888*53ee8cc1Swenshuai.xi }
889*53ee8cc1Swenshuai.xi
890*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETHTOTAL:
891*53ee8cc1Swenshuai.xi {
892*53ee8cc1Swenshuai.xi pstPNL_GetHtotal pPNLArgs = (pstPNL_GetHtotal)pArgs;
893*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetHtotal(pInstance);
894*53ee8cc1Swenshuai.xi
895*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
896*53ee8cc1Swenshuai.xi }
897*53ee8cc1Swenshuai.xi
898*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETVTOTAL:
899*53ee8cc1Swenshuai.xi {
900*53ee8cc1Swenshuai.xi pstPNL_GetVtotal pPNLArgs = (pstPNL_GetVtotal)pArgs;
901*53ee8cc1Swenshuai.xi pPNLArgs->u16Return = psPNLInstPri->fpPNL_GetVtotal(pInstance);
902*53ee8cc1Swenshuai.xi
903*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
904*53ee8cc1Swenshuai.xi }
905*53ee8cc1Swenshuai.xi
906*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETHSYNCWIDTH:
907*53ee8cc1Swenshuai.xi {
908*53ee8cc1Swenshuai.xi pstPNL_GetHsyncWidth pPNLArgs = (pstPNL_GetHsyncWidth)pArgs;
909*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetHsyncwidth(pInstance);
910*53ee8cc1Swenshuai.xi
911*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
912*53ee8cc1Swenshuai.xi }
913*53ee8cc1Swenshuai.xi
914*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETHSYNCBACKPORCH:
915*53ee8cc1Swenshuai.xi {
916*53ee8cc1Swenshuai.xi pstPNL_GetHsyncBackPorch pPNLArgs = (pstPNL_GetHsyncBackPorch)pArgs;
917*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetHsyncBackPorch(pInstance);
918*53ee8cc1Swenshuai.xi
919*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
920*53ee8cc1Swenshuai.xi }
921*53ee8cc1Swenshuai.xi
922*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETVSYNCBACKPORCH:
923*53ee8cc1Swenshuai.xi {
924*53ee8cc1Swenshuai.xi pstPNL_GetVsyncBackPorch pPNLArgs = (pstPNL_GetVsyncBackPorch)pArgs;
925*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetVsyncBackPorch(pInstance);
926*53ee8cc1Swenshuai.xi
927*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
928*53ee8cc1Swenshuai.xi }
929*53ee8cc1Swenshuai.xi
930*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETLPLLTYPE:
931*53ee8cc1Swenshuai.xi {
932*53ee8cc1Swenshuai.xi pstPNL_GetLPLLType pPNLArgs = (pstPNL_GetLPLLType)pArgs;
933*53ee8cc1Swenshuai.xi pPNLArgs->u8Return = psPNLInstPri->fpPNL_GetLPLLType(pInstance);
934*53ee8cc1Swenshuai.xi
935*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
936*53ee8cc1Swenshuai.xi }
937*53ee8cc1Swenshuai.xi
938*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETARC:
939*53ee8cc1Swenshuai.xi {
940*53ee8cc1Swenshuai.xi pstPNL_GetARC pPNLArgs = (pstPNL_GetARC)pArgs;
941*53ee8cc1Swenshuai.xi pPNLArgs->ePanelAspectRatio= psPNLInstPri->fpPNL_GetARC(pInstance);
942*53ee8cc1Swenshuai.xi
943*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
944*53ee8cc1Swenshuai.xi }
945*53ee8cc1Swenshuai.xi
946*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETMINSET:
947*53ee8cc1Swenshuai.xi {
948*53ee8cc1Swenshuai.xi pstPNL_GetMinSET pPNLArgs = (pstPNL_GetMinSET)pArgs;
949*53ee8cc1Swenshuai.xi pPNLArgs->u32Return = psPNLInstPri->fpPNL_GetMinSET(pInstance);
950*53ee8cc1Swenshuai.xi
951*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
952*53ee8cc1Swenshuai.xi }
953*53ee8cc1Swenshuai.xi
954*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETMAXSET:
955*53ee8cc1Swenshuai.xi {
956*53ee8cc1Swenshuai.xi pstPNL_GetMaxSET pPNLArgs = (pstPNL_GetMaxSET)pArgs;
957*53ee8cc1Swenshuai.xi pPNLArgs->u32Return = psPNLInstPri->fpPNL_GetMaxSET(pInstance);
958*53ee8cc1Swenshuai.xi
959*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
960*53ee8cc1Swenshuai.xi }
961*53ee8cc1Swenshuai.xi
962*53ee8cc1Swenshuai.xi case E_PNL_CMD_GETOUTTIMINGMODE:
963*53ee8cc1Swenshuai.xi {
964*53ee8cc1Swenshuai.xi pstPNL_GetOutTimingMode pPNLArgs = (pstPNL_GetOutTimingMode)pArgs;
965*53ee8cc1Swenshuai.xi pPNLArgs->ePanelOutTimingMode= psPNLInstPri->fpPNL_GetOutTimingMode(pInstance);
966*53ee8cc1Swenshuai.xi
967*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
968*53ee8cc1Swenshuai.xi }
969*53ee8cc1Swenshuai.xi
970*53ee8cc1Swenshuai.xi case E_PNL_CMD_CHECKVBY1HANDSHAKESTATUS:
971*53ee8cc1Swenshuai.xi {
972*53ee8cc1Swenshuai.xi pstPNL_CheckVBY1HandshakeStatus pPNLArgs = (pstPNL_CheckVBY1HandshakeStatus)pArgs;
973*53ee8cc1Swenshuai.xi pPNLArgs->bResult = psPNLInstPri->fpPNL_CheckVBY1HandshakeStatus(pInstance);
974*53ee8cc1Swenshuai.xi
975*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
976*53ee8cc1Swenshuai.xi }
977*53ee8cc1Swenshuai.xi
978*53ee8cc1Swenshuai.xi case E_PNL_CMD_SET_VIDEOHWTRAINING_MODE:
979*53ee8cc1Swenshuai.xi {
980*53ee8cc1Swenshuai.xi pstPNL_MOD_Video_HWTrainingMode pPNLArgs = (pstPNL_MOD_Video_HWTrainingMode)pArgs;
981*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetVideoHWTraining(pInstance, pPNLArgs->bEnable);
982*53ee8cc1Swenshuai.xi
983*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
984*53ee8cc1Swenshuai.xi }
985*53ee8cc1Swenshuai.xi
986*53ee8cc1Swenshuai.xi case E_PNL_CMD_SET_OSDHWTRAINING_MODE:
987*53ee8cc1Swenshuai.xi {
988*53ee8cc1Swenshuai.xi pstPNL_MOD_OSD_HWTrainingMode pPNLArgs = (pstPNL_MOD_OSD_HWTrainingMode)pArgs;
989*53ee8cc1Swenshuai.xi psPNLInstPri->fpPNL_SetOSDHWTraining(pInstance, pPNLArgs->bEnable);
990*53ee8cc1Swenshuai.xi
991*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
992*53ee8cc1Swenshuai.xi }
993*53ee8cc1Swenshuai.xi
994*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_VIDEOHWTRAINING_MODE:
995*53ee8cc1Swenshuai.xi {
996*53ee8cc1Swenshuai.xi pstPNL_GetVideoHWTraining_status pPNLArgs = (pstPNL_GetVideoHWTraining_status)pArgs;
997*53ee8cc1Swenshuai.xi pPNLArgs->bStatus= psPNLInstPri->fpPNL_GetVideoHWTraining_Status(pInstance);
998*53ee8cc1Swenshuai.xi
999*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
1000*53ee8cc1Swenshuai.xi }
1001*53ee8cc1Swenshuai.xi
1002*53ee8cc1Swenshuai.xi case E_PNL_CMD_GET_OSDHWTRAINING_MODE:
1003*53ee8cc1Swenshuai.xi {
1004*53ee8cc1Swenshuai.xi pstPNL_GetOSDHWTraining_status pPNLArgs = (pstPNL_GetOSDHWTraining_status)pArgs;
1005*53ee8cc1Swenshuai.xi pPNLArgs->bStatus = psPNLInstPri->fpPNL_GetOSDHWTraining_Status(pInstance);
1006*53ee8cc1Swenshuai.xi
1007*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
1008*53ee8cc1Swenshuai.xi }
1009*53ee8cc1Swenshuai.xi case E_PNL_CMD_Setting:
1010*53ee8cc1Swenshuai.xi {
1011*53ee8cc1Swenshuai.xi pstPNL_Setting pPNLArgs = (pstPNL_Setting)pArgs;
1012*53ee8cc1Swenshuai.xi pPNLArgs->eReturnValue = psPNLInstPri->fpPNL_Setting(pInstance, pPNLArgs->u32Cmd, pPNLArgs->pCmdArgs, pPNLArgs->u32CmdArgsSize);
1013*53ee8cc1Swenshuai.xi
1014*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
1015*53ee8cc1Swenshuai.xi }
1016*53ee8cc1Swenshuai.xi default:
1017*53ee8cc1Swenshuai.xi printf("Error Command = %td\n", (ptrdiff_t)u32Cmd);
1018*53ee8cc1Swenshuai.xi break;
1019*53ee8cc1Swenshuai.xi }
1020*53ee8cc1Swenshuai.xi
1021*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_FAIL;
1022*53ee8cc1Swenshuai.xi #else
1023*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
1024*53ee8cc1Swenshuai.xi #endif
1025*53ee8cc1Swenshuai.xi }
1026*53ee8cc1Swenshuai.xi
PNLClose(void * pInstance)1027*53ee8cc1Swenshuai.xi MS_U32 PNLClose(void* pInstance)
1028*53ee8cc1Swenshuai.xi {
1029*53ee8cc1Swenshuai.xi UtopiaInstanceDelete(pInstance);
1030*53ee8cc1Swenshuai.xi
1031*53ee8cc1Swenshuai.xi return UTOPIA_STATUS_SUCCESS;
1032*53ee8cc1Swenshuai.xi }
1033*53ee8cc1Swenshuai.xi
1034*53ee8cc1Swenshuai.xi #endif
1035