source: svn/newcon3bcm2_21bu/nexus/modules/frontend/7552/include/nexus_frontend_7552.h

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.0 KB
Line 
1/***************************************************************************
2*     (c)2010-2012 Broadcom Corporation
3
4*  This program is the proprietary software of Broadcom Corporation and/or its licensors,
5*  and may only be used, duplicated, modified or distributed pursuant to the terms and
6*  conditions of a separate, written license agreement executed between you and Broadcom
7*  (an "Authorized License").  Except as set forth in an Authorized License, Broadcom grants
8*  no license (express or implied), right to use, or waiver of any kind with respect to the
9*  Software, and Broadcom expressly reserves all rights in and to the Software and all
10*  intellectual property rights therein.  IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU
11*  HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY
12*  NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE. 
13*   
14*  Except as expressly set forth in the Authorized License,
15*   
16*  1.     This program, including its structure, sequence and organization, constitutes the valuable trade
17*  secrets of Broadcom, and you shall use all reasonable efforts to protect the confidentiality thereof,
18*  and to use this information only in connection with your use of Broadcom integrated circuit products.
19*   
20*  2.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS"
21*  AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR
22*  WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO
23*  THE SOFTWARE.  BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES
24*  OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE,
25*  LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION
26*  OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF
27*  USE OR PERFORMANCE OF THE SOFTWARE.
28
29*  3.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR ITS
30*  LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, INDIRECT, OR
31*  EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY RELATING TO YOUR
32*  USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM HAS BEEN ADVISED OF
33*  THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT
34*  ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE
35*  LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF
36*  ANY LIMITED REMEDY.
37*
38* $brcm_Workfile: nexus_frontend_7552.h $
39* $brcm_Revision: 7 $
40* $brcm_Date: 1/11/12 5:32p $
41*
42* API Description:
43*   API name: Frontend 7552
44*    APIs to open, close, and setup initial settings for a BCM7552
45*    Demodulator Device.
46*
47* Revision History:
48*
49* $brcm_Log: /nexus/modules/frontend/7552/include/nexus_frontend_7552.h $
50*
51* 7   1/11/12 5:32p mphillip
52* SW7552-147: Merge changes to main
53*
54* NEXUS_AOB_7552/3   1/11/12 5:26p vishk
55* SW7552-147: 7552B0: Add Nexus OOB support undo #if 0
56*
57* NEXUS_AOB_7552/2   1/11/12 5:05p vishk
58* SW7552-147: 7552B0: Add Nexus OOB support
59*
60* 6   8/29/11 6:41p bandrews
61* SW7552-112: add changes for loopthru and rf input selection; pre-CR
62*  check-in so development can continue
63*
64* 5   6/8/11 2:03p jtna
65* SW7552-35: update
66*
67* 5   6/8/11 2:01p jtna
68* SW7552-35: update
69*
70* 4   5/31/11 5:01p jtna
71* SW7552-35: update
72*
73* 3   5/31/11 3:02p jtna
74* SW7552-35: update
75*
76* 2   5/27/11 8:16p jtna
77* SW7552-35: update
78*
79* 1   5/26/11 7:17p jtna
80* SW7552-35: initial branch-out
81*
82***************************************************************************/
83#ifndef NEXUS_FRONTEND_7552_H__
84#define NEXUS_FRONTEND_7552_H__
85
86#ifdef __cplusplus
87extern "C" {
88#endif
89
90#include "nexus_frontend.h"
91
92/**
937552 has a single tuner for OFDM and QAM, but separate demods that connect to different input bands.
94The app or platform code should open one OFDM handle and one QAM handle, but can only use one at a time. */
95typedef enum NEXUS_7552ChannelType
96{
97    NEXUS_7552ChannelType_eOfdm,
98    NEXUS_7552ChannelType_eQam,
99    NEXUS_7552ChannelType_eOutOfBand,
100    NEXUS_7552ChannelType_eMax
101} NEXUS_7552ChannelType;
102
103/***************************************************************************
104Summary:
105Settings for a BCM7552 OFDM Device
106***************************************************************************/
107typedef struct NEXUS_7552FrontendSettings
108{
109    NEXUS_7552ChannelType type;
110    bool supportIsdbt;      /* allocate memory for ISDB-T if true, set at open-time only */
111} NEXUS_7552FrontendSettings;
112
113/***************************************************************************
114Summary:
115    Get the default settings for a BCM7552 OFDM demodulator
116***************************************************************************/
117void NEXUS_Frontend_GetDefault7552Settings(
118    NEXUS_7552FrontendSettings *pSettings   /* [out] */
119    );
120
121/***************************************************************************
122Summary:
123    Open a handle to a BCM7552 OFDM frontend device.
124***************************************************************************/
125NEXUS_FrontendHandle NEXUS_Frontend_Open7552(  /* attr{destructor=NEXUS_Frontend_Close} */
126    const NEXUS_7552FrontendSettings *pSettings
127    );
128
129#define NEXUS_7552QamFrontendSettings NEXUS_7552FrontendSettings
130#define NEXUS_7552OfdmFrontendSettings NEXUS_7552FrontendSettings
131#define NEXUS_Frontend_GetDefault7552QamSettings NEXUS_Frontend_GetDefault7552Settings
132#define NEXUS_Frontend_GetDefault7552OfdmSettings NEXUS_Frontend_GetDefault7552Settings
133#define NEXUS_Frontend_Open7552Qam NEXUS_Frontend_Open7552
134#define NEXUS_Frontend_Open7552Ofdm NEXUS_Frontend_Open7552
135
136/***************************************************************************
137Summary:
138Power mode configuration of the 7552's wide band tuner.
139***************************************************************************/
140typedef enum NEXUS_7552TunerRfInput
141{
142    NEXUS_7552TunerRfInput_eOff,         /* Tuner is off. */
143    NEXUS_7552TunerRfInput_eExternalLna, /* Tuner Rf input through UHF path. This Rf path does not use internal LNA. */
144    NEXUS_7552TunerRfInput_eInternalLna, /* Tuner Rf input through UHF path. This Rf path does uses internal LNA. */
145    NEXUS_7552TunerRfInput_eStandardIf,  /* Tuner input is not RF. Insted a (36 or 44MHz) standard IF signal is input.  */
146    NEXUS_7552TunerRfInput_eLowIf,       /* Tuner input is not RF. Insted a (4 to 5MHz) Low IF signal is input.  */
147    NEXUS_7552TunerRfInput_eBaseband,    /* Tuner input is baseband.  */
148    NEXUS_7552TunerRfInput_eMax
149} NEXUS_7552TunerRfInput;
150
151/***************************************************************************
152Summary:
153Config settings for a BCM7552 Device Channel
154***************************************************************************/
155typedef struct NEXUS_7552ConfigSettings
156{
157    NEXUS_7552TunerRfInput rfInput;        /* Determines how Rf is input to the tuner. */
158    bool enableRfLoopThrough;              /* True = Enables RF loop through. */
159} NEXUS_7552ConfigSettings;
160
161/***************************************************************************
162Summary:
163Get the default config settings to a BCM7552 device.
164***************************************************************************/
165void NEXUS_Frontend_GetDefault7552ConfigSettings(
166    NEXUS_7552ConfigSettings *pConfigSettings   /* [out] */
167    );
168
169/***************************************************************************
170Summary:
171Get the config settings to a BCM7552 device.
172***************************************************************************/
173NEXUS_Error NEXUS_Frontend_7552_GetConfigSettings(
174    NEXUS_FrontendHandle handle,                 
175    NEXUS_7552ConfigSettings *pConfigSettings    /* [out] */
176    );
177
178/***************************************************************************
179Summary:
180Set the config settings to a BCM7552 device.
181***************************************************************************/
182NEXUS_Error NEXUS_Frontend_7552_SetConfigSettings(
183    NEXUS_FrontendHandle handle,                 
184    const NEXUS_7552ConfigSettings *pConfigSettings   
185    ); 
186
187
188#ifdef __cplusplus
189}
190#endif
191
192#endif /* #ifndef NEXUS_FRONTEND_7552_H__ */
193
Note: See TracBrowser for help on using the repository browser.