source: svn/newcon3bcm2_21bu/nexus/modules/frontend/common/include/nexus_frontend_upstream.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: 7.4 KB
Line 
1/***************************************************************************
2*     (c)2004-2009 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_upstream.h $
39* $brcm_Revision: 4 $
40* $brcm_Date: 8/13/09 2:57p $
41*
42* API Description:
43*   API name: Frontend UpStream
44*    Generic APIs for upstream tuner device control
45*
46* Revision History:
47*
48* $brcm_Log: /nexus/modules/frontend/common/include/nexus_frontend_upstream.h $
49*
50* 4   8/13/09 2:57p erickson
51* PR57518: added NEXUS_FrontendUpstreamTestModeSettings
52*
53* 3   1/23/08 8:37p vobadm
54* PR35457: update docs
55*
56* 2   1/23/08 5:16p erickson
57* PR35457: update docs
58*
59* 1   1/18/08 2:19p jgarrett
60* PR 38808: Merging to main branch
61*
62* Nexus_Devel/2   10/5/07 5:51p jgarrett
63* PR 35551: successful build
64*
65* Nexus_Devel/1   10/4/07 2:41p jgarrett
66* PR 35551: Adding initial version
67*
68***************************************************************************/
69#ifndef NEXUS_FRONTEND_UPSTREAM_H__
70#define NEXUS_FRONTEND_UPSTREAM_H__
71
72#ifdef __cplusplus
73extern "C" {
74#endif
75
76/***************************************************************************
77Summary:
78Upstream Tuner Mode
79***************************************************************************/
80typedef enum NEXUS_FrontendUpstreamMode
81{
82    NEXUS_FrontendUpstreamMode_eAnnexA,
83    NEXUS_FrontendUpstreamMode_eDvs167 = NEXUS_FrontendUpstreamMode_eAnnexA,
84    NEXUS_FrontendUpstreamMode_eDavic = NEXUS_FrontendUpstreamMode_eAnnexA,
85    NEXUS_FrontendUpstreamMode_eDvs178,
86    NEXUS_FrontendUpstreamMode_eStarvue = NEXUS_FrontendUpstreamMode_eDvs178,
87    NEXUS_FrontendUpstreamMode_eDocsis,
88    NEXUS_FrontendUpstreamMode_ePodAnnexA,
89    NEXUS_FrontendUpstreamMode_ePodDvs167 = NEXUS_FrontendUpstreamMode_ePodAnnexA,
90    NEXUS_FrontendUpstreamMode_ePodDavic = NEXUS_FrontendUpstreamMode_ePodAnnexA,
91    NEXUS_FrontendUpstreamMode_ePodDvs178,
92    NEXUS_FrontendUpstreamMode_ePodStarvue = NEXUS_FrontendUpstreamMode_ePodDvs178,
93    NEXUS_FrontendUpstreamMode_eSingleCw,
94    NEXUS_FrontendUpstreamMode_eDoubleCw,
95    NEXUS_FrontendUpstreamMode_ePn23, 
96    NEXUS_FrontendUpstreamMode_eMax
97} NEXUS_FrontendUpstreamMode;
98
99/***************************************************************************
100Summary:
101Upstream Tuning Parameters
102***************************************************************************/
103typedef struct NEXUS_FrontendUpstreamTestModeSettings
104{
105    bool bypassFilters;                 /* 0 = Bypass filter. 1 = Don't bypass filter. Applies only to single tone and double tone test modes. */
106    bool nyquistAlphaValue;             /* 0 = 25% Nyquist Alpha. 1 = 50% Nyquist Alpha. Applies to all test modes. */
107    bool spectrumInverted;              /* 0 = Spectrum not inverted. 1 = Spectrum inverted. Applies only to pn23 test mode. */
108    unsigned int qamMode;               /* 0 = QAM2; 1 = QAM4; 2 = QAM16; 3 = QAM64; 4= QAM256. Applies only to pn23 test mode.*/
109    unsigned long rfFreq2;              /* Sets the second Rf frequency for two tone testing. */
110} NEXUS_FrontendUpstreamTestModeSettings;
111
112/***************************************************************************
113Summary:
114Upstream Tuning Parameters
115***************************************************************************/
116typedef struct NEXUS_FrontendUpstreamSettings
117{
118    NEXUS_FrontendUpstreamMode mode;
119    unsigned frequency;                 /* In Hz */
120    unsigned symbolRate;                /* In Baud */
121    unsigned powerLevel;                /* In dBmV */
122    NEXUS_FrontendUpstreamTestModeSettings testModeSettings;
123} NEXUS_FrontendUpstreamSettings;
124
125/***************************************************************************
126Summary:
127    Initialize an upstream settings structure to defaults
128***************************************************************************/
129void NEXUS_Frontend_GetDefaultUpstreamSettings(
130    NEXUS_FrontendUpstreamSettings *pSettings
131    );
132
133/***************************************************************************
134Summary:
135    Tune an upstream tuner
136***************************************************************************/
137NEXUS_Error NEXUS_Frontend_TuneUpstream(
138    NEXUS_FrontendHandle handle,
139    const NEXUS_FrontendUpstreamSettings *pSettings
140    );
141
142/***************************************************************************
143Summary:
144Upstream Tuning Status
145***************************************************************************/
146typedef struct NEXUS_FrontendUpstreamStatus
147{
148    NEXUS_FrontendUpstreamMode mode;
149    unsigned frequency;                 /* In Hz */
150    unsigned symbolRate;                /* In Baud */
151    unsigned powerLevel;                /* In dBmV */
152    unsigned sysXtalFreq;               /* in Hz, Sys. Xtal freq */   
153} NEXUS_FrontendUpstreamStatus;
154
155/***************************************************************************
156Summary:
157    Get the current status of an upstream tuner
158***************************************************************************/
159NEXUS_Error NEXUS_Frontend_GetUpstreamStatus(
160    NEXUS_FrontendHandle handle,
161    NEXUS_FrontendUpstreamStatus *pStatus
162    );
163
164#ifdef __cplusplus
165}
166#endif
167
168#endif /* #ifndef NEXUS_FRONTEND_UPSTREAM_H__ */
169
Note: See TracBrowser for help on using the repository browser.