xref: /utopia/UTPA2-700.0.x/modules/pq/drv/pq/drvPQ_cus.h (revision 53ee8cc121a030b8d368113ac3e966b4705770ef)
1 //<MStar Software>
2 //******************************************************************************
3 // MStar Software
4 // Copyright (c) 2010 - 2012 MStar Semiconductor, Inc. All rights reserved.
5 // All software, firmware and related documentation herein ("MStar Software") are
6 // intellectual property of MStar Semiconductor, Inc. ("MStar") and protected by
7 // law, including, but not limited to, copyright law and international treaties.
8 // Any use, modification, reproduction, retransmission, or republication of all
9 // or part of MStar Software is expressly prohibited, unless prior written
10 // permission has been granted by MStar.
11 //
12 // By accessing, browsing and/or using MStar Software, you acknowledge that you
13 // have read, understood, and agree, to be bound by below terms ("Terms") and to
14 // comply with all applicable laws and regulations:
15 //
16 // 1. MStar shall retain any and all right, ownership and interest to MStar
17 //    Software and any modification/derivatives thereof.
18 //    No right, ownership, or interest to MStar Software and any
19 //    modification/derivatives thereof is transferred to you under Terms.
20 //
21 // 2. You understand that MStar Software might include, incorporate or be
22 //    supplied together with third party`s software and the use of MStar
23 //    Software may require additional licenses from third parties.
24 //    Therefore, you hereby agree it is your sole responsibility to separately
25 //    obtain any and all third party right and license necessary for your use of
26 //    such third party`s software.
27 //
28 // 3. MStar Software and any modification/derivatives thereof shall be deemed as
29 //    MStar`s confidential information and you agree to keep MStar`s
30 //    confidential information in strictest confidence and not disclose to any
31 //    third party.
32 //
33 // 4. MStar Software is provided on an "AS IS" basis without warranties of any
34 //    kind. Any warranties are hereby expressly disclaimed by MStar, including
35 //    without limitation, any warranties of merchantability, non-infringement of
36 //    intellectual property rights, fitness for a particular purpose, error free
37 //    and in conformity with any international standard.  You agree to waive any
38 //    claim against MStar for any loss, damage, cost or expense that you may
39 //    incur related to your use of MStar Software.
40 //    In no event shall MStar be liable for any direct, indirect, incidental or
41 //    consequential damages, including without limitation, lost of profit or
42 //    revenues, lost or damage of data, and unauthorized system use.
43 //    You agree that this Section 4 shall still apply without being affected
44 //    even if MStar Software has been modified by MStar in accordance with your
45 //    request or instruction for your use, except otherwise agreed by both
46 //    parties in writing.
47 //
48 // 5. If requested, MStar may from time to time provide technical supports or
49 //    services in relation with MStar Software to you for your use of
50 //    MStar Software in conjunction with your or your customer`s product
51 //    ("Services").
52 //    You understand and agree that, except otherwise agreed by both parties in
53 //    writing, Services are provided on an "AS IS" basis and the warranty
54 //    disclaimer set forth in Section 4 above shall apply.
55 //
56 // 6. Nothing contained herein shall be construed as by implication, estoppels
57 //    or otherwise:
58 //    (a) conferring any license or right to use MStar name, trademark, service
59 //        mark, symbol or any other identification;
60 //    (b) obligating MStar or any of its affiliates to furnish any person,
61 //        including without limitation, you and your customers, any assistance
62 //        of any kind whatsoever, or any information; or
63 //    (c) conferring any license or right under any intellectual property right.
64 //
65 // 7. These terms shall be governed by and construed in accordance with the laws
66 //    of Taiwan, R.O.C., excluding its conflict of law rules.
67 //    Any and all dispute arising out hereof or related hereto shall be finally
68 //    settled by arbitration referred to the Chinese Arbitration Association,
69 //    Taipei in accordance with the ROC Arbitration Law and the Arbitration
70 //    Rules of the Association by three (3) arbitrators appointed in accordance
71 //    with the said Rules.
72 //    The place of arbitration shall be in Taipei, Taiwan and the language shall
73 //    be English.
74 //    The arbitration award shall be final and binding to both parties.
75 //
76 //******************************************************************************
77 //<MStar Software>
78 ////////////////////////////////////////////////////////////////////////////////
79 //
80 // Copyright (c) 2008-2009 MStar Semiconductor, Inc.
81 // All rights reserved.
82 //
83 // Unless otherwise stipulated in writing, any and all information contained
84 // herein regardless in any format shall remain the sole proprietary of
85 // MStar Semiconductor Inc. and be kept in strict confidence
86 // ("MStar Confidential Information") by the recipient.
87 // Any unauthorized act including without limitation unauthorized disclosure,
88 // copying, use, reproduction, sale, distribution, modification, disassembling,
89 // reverse engineering and compiling of the contents of MStar Confidential
90 // Information is unlawful and strictly prohibited. MStar hereby reserves the
91 // rights to any and all damages, losses, costs and expenses resulting therefrom.
92 //
93 ////////////////////////////////////////////////////////////////////////////////
94 
95 ///////////////////////////////////////////////////////////////////////////////////////////////////
96 ///
97 /// @file    drvPQ.h
98 /// @brief  PQ interface
99 /// @author MStar Semiconductor Inc.
100 ///////////////////////////////////////////////////////////////////////////////////////////////////
101 
102 #ifndef _DRVPQ_CUS_H_
103 #define _DRVPQ_CUS_H_
104 
105 #ifdef _MDRV_PQ_CUS_C_
106 #define INTERFACE
107 #else
108 #define INTERFACE extern
109 #endif
110 #ifdef __cplusplus
111 extern "C"
112 {
113 #endif
114 
115 //-------------------------------------------------------------------------------------------------
116 //  Macro and Define
117 //-------------------------------------------------------------------------------------------------
118 
119 //-------------------------------------------------------------------------------------------------
120 //  Type and Structure
121 //-------------------------------------------------------------------------------------------------
122 /**
123 *   PQ GRule Support List
124 */
125 typedef enum
126 {
127     /// PQ GRule Support Film
128     E_PQ_SUPPORTED_FILM,
129     /// PQ GRule Support NR
130     E_PQ_SUPPORTED_NR,
131     /// PQ GRule Support MPEG NR
132     E_PQ_SUPPORTED_MPEG_NR,
133     /// PQ GRule Support Black Level
134     E_PQ_SUPPORTED_BLACK_LEVEL,
135     /// PQ GRule Support Ultra Clear
136     E_PQ_SUPPORTED_ULTRA_CLEAR,
137     /// PQ GRule Support HDR
138     E_PQ_SUPPORTED_HDR,
139     /// PQ GRule Support Max number
140     E_PQ_SUPPORTED_MAX,
141 } PQ_SUPPORTED_TYPE;
142 
143 /**
144  * PQ MPEG_NR_FUNCTION_TYPE
145  */
146 typedef enum
147 {
148     /// off
149     PQ_MPEG_NR_MIN,
150     /// off
151     PQ_MPEG_NR_OFF = PQ_MPEG_NR_MIN,
152     /// Low
153     PQ_MPEG_NR_LOW,
154     /// Middle
155     PQ_MPEG_NR_MID,
156     /// High
157     PQ_MPEG_NR_HIGH,
158     /// Auto
159     PQ_MPEG_NR_AUTO,
160     /// Default
161     PQ_MPEG_NR_DEFAULT,
162     /// The max support number of PQ MPEG Noise reduction
163     PQ_MPEG_NR_NUM,
164 }PQ_MPEG_NR_FUNCTION_TYPE;
165 
166 /**
167  * PQ PQ_XVYCC_TYPE
168  */
169 typedef enum
170 {
171     PQ_XVYCC_NORMAL,
172     PQ_XVYCC_ON_XVYCC,
173     PQ_XVYCC_ON_SRGB,
174     PQ_XVYCC_NUM,
175 }PQ_XVYCC_TYPE;
176 
177 typedef struct
178 {
179     MS_U32 u32Version;
180     MS_U32 u32Id;
181 } PQ_DEVICE_ID;
182 
183 /**
184  * EN_PQ_CFD_CTRL_TYPE
185  */
186 typedef enum
187 {
188     /// Initialize
189     E_PQ_CFD_CTRL_SET_INIT = 0,
190     /// VGA
191     E_PQ_CFD_CTRL_SET_VGA = 1,
192     /// TV (ATV)
193     E_PQ_CFD_CTRL_SET_TV = 2,
194     /// CVBS (AV)
195     E_PQ_CFD_CTRL_SET_CVBS = 3,
196     /// S-Video
197     E_PQ_CFD_CTRL_SET_SVIDEO = 4,
198     /// YPbPr
199     E_PQ_CFD_CTRL_SET_YPBPR = 5,
200     /// Scart
201     E_PQ_CFD_CTRL_SET_SCART = 6,
202     /// HDMI
203     E_PQ_CFD_CTRL_SET_HDMI = 7,
204     /// DTV
205     E_PQ_CFD_CTRL_SET_DTV = 8,
206     /// DVI
207     E_PQ_CFD_CTRL_SET_DVI = 9,
208     /// MM
209     E_PQ_CFD_CTRL_SET_MM = 10,
210     /// Panel
211     E_PQ_CFD_CTRL_SET_PANEL = 11,
212     /// HDR
213     E_PQ_CFD_CTRL_SET_HDR = 12,
214     /// EDID
215     E_PQ_CFD_CTRL_SET_EDID = 13,
216     /// OSD
217     E_PQ_CFD_CTRL_SET_OSD = 14,
218     /// Fire
219     E_PQ_CFD_CTRL_SET_FIRE = 15,
220     /// DLC
221     E_PQ_CFD_CTRL_SET_DLC = 16,
222     /// Linear RGB
223     E_PQ_CFD_CTRL_SET_LINEAR_RGB = 17,
224 
225     E_PQ_CFD_CTRL_MAX,
226 } EN_PQ_CFD_CTRL_TYPE;
227 
228 typedef struct
229 {
230     /// Structure version
231     MS_U32 u32Version;
232     /// Structure length
233     MS_U16 u16Length;
234 
235     /// Window (main or sub window)
236     MS_U8 u8Win;
237 
238     /// Color format, reference EN_KDRV_XC_CFD_COLOR_FORMAT.
239     MS_U8 u8ColorFormat;
240     /// Color data format, reference EN_KDRV_XC_CFD_COLOR_DATA_FORMAT.
241     MS_U8 u8ColorDataFormat;
242     /// Full range
243     MS_BOOL bIsFullRange;
244     /// Color primaries
245     MS_U8 u8ColorPrimaries;
246     /// Transfer characteristics
247     MS_U8 u8TransferCharacteristics;
248     /// Matrix coefficients
249     MS_U8 u8MatrixCoefficients;
250 
251 } ST_PQ_CFD_ANALOG;
252 
253 typedef struct
254 {
255     /// Structure version
256     MS_U32 u32Version;
257     /// Structure length
258     MS_U16 u16Length;
259 
260     /// Window (main or sub window)
261     MS_U8 u8Win;
262     /// Linear RGB enable
263     MS_BOOL bEnable;
264 } ST_PQ_CFD_LINEAR_RGB;
265 
266 /// CFD control information, reference mdrv_xc_st.h in kernel.
267 typedef struct  __attribute__((packed))
268 {
269     /// Control type, reference EN_MAPI_CFD_CTRL_TYPE
270     EN_PQ_CFD_CTRL_TYPE enCtrlType;
271     /// Control parameter
272     void *pParam;
273 #if !defined (__aarch64__)
274     /// Dummy parameter
275     void *pDummy;
276 #endif
277     /// Control parameter length
278     MS_U32 u32ParamLen;
279     /// Error code
280     MS_U16 u16ErrCode;
281 } ST_PQ_CFD_CONTROL_INFO;
282 
283 //-------------------------------------------------------------------------------------------------
284 //  Function and Variable
285 //-------------------------------------------------------------------------------------------------
286 //
287 //-------------------------------------------------------------------------------------------------
288 /// map inputsource type into index for QMap
289 /// @param  eWindow                          \b IN: PQ Window Main or sub
290 /// @param  enInputSourceType                   \b IN: the query input source type
291 /// @return corresponding index
292 //-------------------------------------------------------------------------------------------------
293 //INTERFACE MS_U16 QM_InputSourceToIndex(void* pInstance, PQ_WIN eWindow, MS_U8 enInputSourceType);
294 
295 #ifdef UFO_XC_PQ_SUPPORT_REPEATER_COLOR_THROUGH_MODE
296 //-------------------------------------------------------------------------------------------------
297 /// Set ColorthroughMode
298 /// @param  eWindow                      \b IN: PQ Window Main or sub
299 /// @param  bEn                          \b IN: enable/disable ColorthroughMode
300 //-------------------------------------------------------------------------------------------------
301 INTERFACE void MDrv_PQ_SetColorThroughMode(PQ_WIN eWindow, MS_BOOL bEn);
302 #endif
303 
304 //INTERFACE MS_U16 QM_InputSourceToIndex_UFSC(PQ_WIN eWindow, MS_U8 enInputSourceType);
305 //-------------------------------------------------------------------------------------------------
306 /// Load FilmMode Table
307 /// @param  eWindow                          \b IN: TBD
308 /// @param  enFilmModeType               \b IN: TBD
309 //-------------------------------------------------------------------------------------------------
310 INTERFACE void MDrv_PQ_LoadFilmModeTable(PQ_WIN eWindow, PQ_FILM_MODE_FUNCTION_TYPE enFilmModeType);
311 
312 //-------------------------------------------------------------------------------------------------
313 /// Load DynamicContrast Table
314 /// @param  eWindow                          \b IN: TBD
315 /// @param  enDynamicContrastType   \b IN: TBD
316 //-------------------------------------------------------------------------------------------------
317 INTERFACE void MDrv_PQ_LoadDynamicContrastTable(PQ_WIN eWindow, PQ_DYNAMIC_CONTRAST_FUNCTION_TYPE enDynamicContrastType);
318 
319 //-------------------------------------------------------------------------------------------------
320 /// Load NR Table
321 /// @param  eWindow                          \b IN: TBD
322 /// @param  en3DNRType                       \b IN: TBD
323 //-------------------------------------------------------------------------------------------------
324 INTERFACE void MDrv_PQ_LoadNRTable(PQ_WIN eWindow, PQ_3D_NR_FUNCTION_TYPE en3DNRType);
325 
326 //-------------------------------------------------------------------------------------------------
327 /// Load MPEG NR Table
328 /// @param  eWindow                          \b IN: TBD
329 /// @param  enMPEGNRType                \b IN: TBD
330 //-------------------------------------------------------------------------------------------------
331 INTERFACE void MDrv_PQ_LoadMPEGNRTable(PQ_WIN eWindow, PQ_MPEG_NR_FUNCTION_TYPE enMPEGNRType);
332 
333 //-------------------------------------------------------------------------------------------------
334 /// Load UltraClear Table
335 /// @param  eWindow                          \b IN: TBD
336 /// @param  enCtrlType                       \b IN: TBD
337 //-------------------------------------------------------------------------------------------------
338 INTERFACE void MDrv_PQ_Load_ULTRACLEAR_Table(PQ_WIN eWindow, PQ_FEATURE_SWITCH_TYPE enCtrlType);
339 
340 //-------------------------------------------------------------------------------------------------
341 /// Load XvYCC Table
342 /// @param  eWindow                          \b IN: TBD
343 /// @param  enXvyccType                       \b IN: TBD
344 //-------------------------------------------------------------------------------------------------
345 INTERFACE void MDrv_PQ_Load_XVYCC_Table(PQ_WIN eWindow, PQ_XVYCC_TYPE enXvyccType);
346 
347 //-------------------------------------------------------------------------------------------------
348 /// Set Dynamic Scaling on/off
349 /// @param  enType                             \b IN: TBD
350 /// @retval Support or not
351 //-------------------------------------------------------------------------------------------------
352 INTERFACE MS_BOOL MDrv_PQ_GRULE_Get_Support_Status(PQ_SUPPORTED_TYPE enType);
353 
354 //-------------------------------------------------------------------------------------------------
355 /// Set Memory format
356 /// @param  eWindow                          \b IN: TBD
357 /// @param  bMemFmt422                       \b IN: TBD
358 /// @param  bFBL                             \b IN: TBD
359 /// @param  u8BitsPerPixel                   \b IN: TBD
360 /// @return TBD
361 //-------------------------------------------------------------------------------------------------
362 INTERFACE PQ_DEINTERLACE_MODE MDrv_PQ_SetMemFormat(PQ_WIN eWindow,
363                                                 MS_BOOL bMemFmt422,
364                                                 MS_BOOL bFBL,
365                                                 MS_U8 *u8BitsPerPixel);
366 
367 //-------------------------------------------------------------------------------------------------
368 /// Reduce Bandwidth for OSD
369 /// @param  eWindow                          \b IN: TBD
370 /// @param  bOSD_On                          \b IN: TBD
371 //-------------------------------------------------------------------------------------------------
372 INTERFACE void MDrv_PQ_ReduceBW_ForOSD(PQ_WIN eWindow, MS_BOOL bOSD_On);
373 
374 //-------------------------------------------------------------------------------------------------
375 /// Set PQ array of the display type.
376 /// @param  u16DisplayWidth                \b IN: Panel width
377 /// @param  enDisplaType                   \b IN: One, PIP, POP
378 //-------------------------------------------------------------------------------------------------
379 INTERFACE void MDrv_PQ_Init_DisplayType(MS_U16 u16DisplayWidth, PQ_DISPLAY_TYPE enDisplaType);
380 
381 //-------------------------------------------------------------------------------------------------
382 /// Set PQ array of the display type.
383 /// @param  u16DisplayWidth                \b IN: Panel width
384 /// @param  enDisplaType                   \b IN: One, PIP, POP
385 //-------------------------------------------------------------------------------------------------
386 INTERFACE void MDrv_PQ_Set_DisplayType(MS_U16 u16DisplayWidth, PQ_DISPLAY_TYPE enDisplaType);
387 
388 //------------------------------------------------------------------------------------------------
389 /// Update the Panel ID in PQDS case
390 /// @param *pInstance
391 /// @param u16DisplayWidth                   \b IN: Panel width
392 /// @return NONE
393 //------------------------------------------------------------------------------------------------
394 void MDrv_PQDS_Update_PanelID(void *pInstance, MS_U16 u16DisplayWidth);
395 
396 //-------------------------------------------------------------------------------------------------
397 /// get OSD BW Grule MADI setting
398 /// @param  eWindow                        \b IN: PQ Window Main or sub
399 /// @param  *pu16TabIdx_MADi               \b IN: MADI table Index
400 /// @param   *pu16TabIdx_MADi_Motion       \b IN: MADI motion table Index
401 /// @return TRUE: Success, FALSE: failed
402 //-------------------------------------------------------------------------------------------------
403 INTERFACE MS_BOOL MDrv_PQ_GetMADiFromOSDBWGrule(PQ_WIN eWindow, MS_U16 *pu16TabIdx_MADi, MS_U16 *pu16TabIdx_MADi_Motion);
404 
405 //-------------------------------------------------------------------------------------------------
406 /// get InGeneral MADI setting
407 /// @param  eWindow                        \b IN: PQ Window Main or sub
408 /// @param  *pu16TabIdx_MADi               \b IN: MADI table Index
409 /// @param   *pu16TabIdx_MADi_Motion       \b IN: MADI motion table Index
410 /// @return TRUE: Success, FALSE: failed
411 //-------------------------------------------------------------------------------------------------
412 INTERFACE MS_BOOL MDrv_PQ_GetMADiInGeneral(PQ_WIN eWindow,MS_U16 *pu16TabIdx_MADi,MS_U16 *pu16TabIdx_MADi_Motion);
413 
414 //-------------------------------------------------------------------------------------------------
415 /// Load PTP Table
416 /// @param  eWindow                          \b IN: PQ Window Main or sub
417 /// @param  enPTP_Type                       \b IN: QMap PTP type
418 //-------------------------------------------------------------------------------------------------
419 INTERFACE void MDrv_PQ_LoadPTPTable(PQ_WIN eWindow, PQ_PTP_FUNCTION_TYPE enPTP_Type);
420 
421 //-------------------------------------------------------------------------------------------------
422 /// Check current input timing is suitable for PTP or not
423 /// @param  pstXC_SetWin_Info                \b IN: Set Win Info
424 /// @param  eWindow                          \b IN: PQ Window Main or sub
425 /// @return TRUE: suitable for PTP, FALSE: not suitable
426 //-------------------------------------------------------------------------------------------------
427 INTERFACE MS_BOOL MDrv_PQ_Check_PointToPoint_Condition(XC_SETWIN_INFO *pstXC_SetWin_Info, PQ_WIN eWindow);
428 
429 //-------------------------------------------------------------------------------------------------
430 /// Enable/Disable PostCCS
431 /// @param  eWindow                          \b IN: PQ Window Main or sub
432 /// @param  bEnable                        \b IN: Enable/Disable
433 /// @return TRUE: Success, FALSE: Fail
434 //-------------------------------------------------------------------------------------------------
435 INTERFACE MS_BOOL MDrv_PQ_SetPostCCSOnOff(PQ_WIN eWindow, MS_BOOL bEnable);
436 
437 //-------------------------------------------------------------------------------------------------
438 /// Adaptive tuning
439 //-------------------------------------------------------------------------------------------------
440 INTERFACE void MDrv_PQ_AdaptiveTuning(void);
441 
442 #ifdef UFO_XC_PQ_SUPPORT_SWDRIVING_MULTI_DEVICES
443 //-------------------------------------------------------------------------------------------------
444 /// Adaptive tuning for dual XC
445 //-------------------------------------------------------------------------------------------------
446 INTERFACE void MDrv_PQ_EX_AdaptiveTuning(PQ_DEVICE_ID *pDeviceId);
447 #endif
448 
449 //-------------------------------------------------------------------------------------------------
450 /// Film Mode Any Candence Enable
451 /// @param  bEnable                           \b IN: enable or disable
452 //-------------------------------------------------------------------------------------------------
453 INTERFACE void MDrv_PQ_FilmMode_AnyCandence_Enable(MS_BOOL bEnable);
454 
455 //-------------------------------------------------------------------------------------------------
456 /// Load table by context
457 /// @param  eWindow                             \b IN: TBD
458 //-------------------------------------------------------------------------------------------------
459 INTERFACE void MDrv_BW_LoadTableByContext(PQ_WIN eWindow);
460 
461 //-------------------------------------------------------------------------------------------------
462 /// Bandwidth load initial table
463 //-------------------------------------------------------------------------------------------------
464 INTERFACE void MDrv_BW_LoadInitTable(void);
465 
466 //-------------------------------------------------------------------------------------------------
467 /// Set H264 information
468 /// @param  bEn                                \b IN: it's H264? TRUE or FALSE
469 /// @return MS_BOOL
470 //-------------------------------------------------------------------------------------------------
471 INTERFACE MS_BOOL MDrv_PQ_SetH264_OnOff(MS_BOOL bEn);
472 
473 //-------------------------------------------------------------------------------------------------
474 /// Set G3D information
475 /// @param  bEn                                \b IN: it's G3D? TRUE or FALSE
476 /// @return MS_BOOL
477 //-------------------------------------------------------------------------------------------------
478 INTERFACE MS_BOOL MDrv_PQ_SetG3D_OnOff(MS_BOOL bEn);
479 
480 //-------------------------------------------------------------------------------------------------
481 /// Set 4kx2k MVC information
482 /// @param  bEn                                \b IN: it's H264? TRUE or FALSE
483 /// @return MS_BOOL
484 //-------------------------------------------------------------------------------------------------
485 INTERFACE MS_BOOL MDrv_PQ_SetMVC4kx1k_OnOff(MS_BOOL bEn);
486 
487 //-------------------------------------------------------------------------------------------------
488 /// Set Network mm information
489 /// @param  bEn                                \b IN: it's network mm case? TRUE or FALSE
490 /// @return MS_BOOL
491 //-------------------------------------------------------------------------------------------------
492 INTERFACE MS_BOOL MDrv_PQ_SetNetworkMM_OnOff(MS_BOOL bEn);
493 
494 
495 //-------------------------------------------------------------------------------------------------
496 /// Set MM information
497 /// @param  bEn                                \b IN: it's MM? TRUE or FALSE
498 /// @return MS_BOOL
499 //-------------------------------------------------------------------------------------------------
500 INTERFACE MS_BOOL MDrv_PQ_SetMM_OnOff(MS_BOOL bEn);
501 
502 //-------------------------------------------------------------------------------------------------
503 /// Set Rmvb information
504 /// @param  bEn                                \b IN: it's Rmvb? TRUE or FALSE
505 /// @return MS_BOOL
506 //-------------------------------------------------------------------------------------------------
507 INTERFACE MS_BOOL MDrv_PQ_SetRmvb_OnOff(MS_BOOL bEn, PQ_WIN ePQWindow);
508 
509 //-------------------------------------------------------------------------------------------------
510 /// Set VIP all function bypass
511 /// @param  bEnable                                \b IN: VIP all function bypass TRUE or FALSE
512 /// @param  eWindow                                \b IN: PQ Window
513 /// @return MS_BOOL
514 //-------------------------------------------------------------------------------------------------
515 INTERFACE MS_BOOL MDrv_PQ_SetVIPBypass_OnOff(MS_BOOL bEnable,PQ_WIN eWindow);
516 
517 //-------------------------------------------------------------------------------------------------
518 /// Enable or diable peaking
519 /// @param  bEnable                          \b IN: Enable or diable peaking
520 /// @param  eWindow                          \b IN: PQ Window
521 /// @return  MS_BOOL
522 //-------------------------------------------------------------------------------------------------
523 INTERFACE MS_BOOL MDrv_PQ_SetPeaking_OnOff(MS_BOOL bEnable, PQ_WIN eWindow);
524 
525 //------------------------------------------------------------------------------
526 /// Film mode fake out customization setting
527 /// @return                             \b Out: OK or Fail
528 //------------------------------------------------------------------------------
529 INTERFACE MS_BOOL MDrv_PQ_SetFakeOutEnable(MS_BOOL bEnable);
530 //------------------------------------------------------------------------------------------------
531 /// Reset BW table to deafult
532 /// @param NONE
533 /// @return NONE
534 //------------------------------------------------------------------------------------------------
535 void MDrv_BW_resetToDefault(void);
536 
537 //-------------------------------------------------------------------------------------------------
538 /// Bandwidth load BW table depends on special customer mode
539 //-------------------------------------------------------------------------------------------------
540 INTERFACE void MDrv_BW_CusMode_LoadTable(MS_U8 u8TabIdx);
541 
542 #undef INTERFACE
543 
544 #ifdef __cplusplus
545 }
546 #endif
547 
548 #endif /* _DRVPQ_CUS_H_ */
549