source: svn/newcon3bcm2_21bu/magnum/commonutils/vdb/3548/B3/bvdb_viddispmode_priv.c

Last change on this file was 76, checked in by megakiss, 10 years ago

1W 대기전력을 만족시키기 위하여 POWEROFF시 튜너를 Standby 상태로 함

  • Property svn:executable set to *
File size: 8.4 KB
Line 
1/***************************************************************************
2 *     Copyright (c) 2003-2009, Broadcom Corporation
3 *     All Rights Reserved
4 *     Confidential Property of Broadcom Corporation
5 *
6 *  THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
7 *  AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
8 *  EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
9 *
10 * $brcm_Workfile: bvdb_viddispmode_priv.c $
11 * $brcm_Revision: Hydra_Software_Devel/9 $
12 * $brcm_Date: 4/13/09 3:40p $
13 *
14 * Module Description:
15 *
16 * Revision History:
17 *
18 * $brcm_Log: /magnum/commonutils/vdb/3548/B0/bvdb_viddispmode_priv.c $
19 *
20 * Hydra_Software_Devel/9   4/13/09 3:40p jessem
21 * PR 51743: Modified  BVDB_GetDisplaySrcAs and BVDB_GetVideoDisplayModes
22 * to handle source aspect ratio and aspect ratio correction.
23 *
24 * Hydra_Software_Devel/8   3/6/09 4:15p jessem
25 * PR 52520: Added BVDB_Input parameter to BVDB_GetVideoDisplayMode to
26 * handle monitor out cases.  Corrected ulMinWinHeight field for all
27 * monitor modes for all configs in astConfigVideoDispModeInfo.
28 *
29 * Hydra_Software_Devel/7   2/25/09 5:57p jessem
30 * PR 52520: Added support to BVDB_GetVideoDisplayMode.
31 *
32 * Hydra_Software_Devel/6   2/17/09 6:52p jessem
33 * PR 50031, PR 51848: Added config 8. Added BVDB_GetNumberOfConfigs() and
34 * BVDB_GetMemoryAllocation() functions to VDB API and support for these
35 * new functions.
36 *
37 * Hydra_Software_Devel/5   1/5/09 12:39p jessem
38 * PR 50327: Add featuers to config 3.
39 *
40 * Hydra_Software_Devel/4   12/12/08 12:33p jessem
41 * PR 50327: Added MON 3 and 4 display modes. Updated description of
42 * BVDB_VideoDisplayModeInfo struct.
43 *
44 * Hydra_Software_Devel/3   11/13/08 7:03p jessem
45 * PR 48588: Added config 4 for 1080p/1080i/720p switchable output format.
46 *
47 * Hydra_Software_Devel/2   10/17/08 2:55p jessem
48 * PR 46299: Replaced old A0 config support with 800MHZ WXGA and 1080P
49 * configs support.
50 *
51 * Hydra_Software_Devel/1   10/2/08 3:47p jessem
52 * PR 46299: Initial version
53 *
54 *
55 ***************************************************************************/ 
56#include <stdio.h>
57#include <string.h>
58
59#include "bstd.h"
60#include "bdbg.h"
61#include "bvdb.h"
62#include "bvdb_priv.h"
63#include "bvdb_viddispmode_priv.h"
64
65BDBG_MODULE(BVDB);
66
67BVDB_VideoDisplayModeInfo astFull[] = 
68{
69        { 6,  6, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
70                         BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull,         75,  75, 100, 100 },
71        { 6,  6, BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull,
72                         BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull,        100,  75, 100, 100 },
73        { 6,  6, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
74                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 },
75        { 6, 30, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
76                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 },
77        { 6, 16, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
78                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 },
79        { 0,  0, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
80                         BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull,         75,  75, 100, 100 },
81        { 0,  0, BVDB_DisplaySourceAs_eDot,       BVDB_DisplaySourceAs_eDot, 
82                         BVDB_DisplaySourceAs_eDot,       BVDB_DisplaySourceAs_eDot,           1,   1, 100, 100 }, /* Dot-by-Dot */
83        {30, 30, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox, 
84                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 },
85        {10, 10, BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull, 
86                         BVDB_DisplaySourceAs_ePillarbox, BVDB_DisplaySourceAs_eFull,        100,  75, 100, 100 },
87        {75, 50, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eFull, 
88                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eFull,        100, 100, 100, 100 },
89        {50, 50, BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eFull, 
90                         BVDB_DisplaySourceAs_eFull,      BVDB_DisplaySourceAs_eFull,        100, 100, 100, 100 }
91};
92
93BVDB_VideoDisplayModeInfo astPig[] = 
94{
95        { 6, 30, BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,
96                         BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,           1,   1,  50,  50 },
97        { 0,  0, BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,
98                         BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,           1,   1,  50,  50 },
99        {75, 50, BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,
100                         BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,          20,  20,  99,  99 },
101        {50, 50, BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,
102                         BVDB_DisplaySourceAs_ePig,       BVDB_DisplaySourceAs_ePig,          50,  50,  99,  99 }
103};
104
105BVDB_VideoDisplayModeInfo astPip[] = 
106{
107        { 6, 30, BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,
108                         BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,           1,   1,  50,  50 },
109        { 6, 30, BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,
110                         BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,           1,   1,  50,  50 },
111        { 0,  0, BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,
112                         BVDB_DisplaySourceAs_ePip,       BVDB_DisplaySourceAs_ePip,           1,   1,  50,  50 }               
113};     
114     
115BVDB_VideoDisplayModeInfo astMonitor[] = 
116{
117        {75, 50, BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eFull,
118                         BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eFull,        100, 100, 100, 100 }, /* clip amount follows main window (used max clip) */
119        {30, 30, BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eFull,
120                         BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eFull,        100, 100, 100, 100 },
121        {75, 50, BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eLetterbox,
122                         BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 }, /* clip amount follows main window (used max clip) */
123        {30, 30, BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eLetterbox,
124                         BVDB_DisplaySourceAs_eInvalid,   BVDB_DisplaySourceAs_eLetterbox,    75, 100, 100, 100 }
125};
126
127BERR_Code BVDB_P_GetVideoDispModeInfo
128        ( BVDB_VideoDisplayMode      *pstVidDispMode,
129          BVDB_VideoDisplayModeInfo  *pstInfo )
130{
131        BERR_Code err = BERR_SUCCESS;
132
133        if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_1_MASK)
134                *pstInfo = astFull[0];
135        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_2_MASK)
136                *pstInfo = astFull[1];
137        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_3_MASK)
138                *pstInfo = astFull[2];
139        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_4_MASK)
140                *pstInfo = astFull[3];
141        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_5_MASK)
142                *pstInfo = astFull[4];
143        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_6_MASK)
144                *pstInfo = astFull[5];
145        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_7_MASK)
146                *pstInfo = astFull[6];
147        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_8_MASK)
148                *pstInfo = astFull[7];
149        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_9_MASK)
150                *pstInfo = astFull[8];
151        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_10_MASK)
152                *pstInfo = astFull[9];
153        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_FULL_11_MASK)
154                *pstInfo = astFull[10];
155        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIG_1_MASK)
156                *pstInfo = astPig[0];
157        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIG_2_MASK)
158                *pstInfo = astPig[1];
159        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIG_3_MASK)
160                *pstInfo = astPig[2];
161        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIG_4_MASK)
162                *pstInfo = astPig[3];
163        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIP_1_MASK)
164                *pstInfo = astPip[0];
165        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIP_2_MASK)
166                *pstInfo = astPip[1];
167        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_PIP_3_MASK)
168                *pstInfo = astPip[2];
169        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_MON_1_MASK)
170                *pstInfo = astMonitor[0];       
171        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_MON_2_MASK)
172                *pstInfo = astMonitor[1];
173        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_MON_3_MASK)
174                *pstInfo = astMonitor[2];       
175        else if (*(uint32_t *)pstVidDispMode & BVDB_DISPLAY_MODE_MON_4_MASK)
176                *pstInfo = astMonitor[3];
177        else
178        {
179                pstInfo = NULL;
180        }
181        return err;
182}
Note: See TracBrowser for help on using the repository browser.