source: svn/newcon3bcm2_21bu/nexus/modules/frontend/common/src/nexus_frontend_init.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: 5.1 KB
Line 
1/***************************************************************************
2*     (c)2004-2011 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_init.c $
39* $brcm_Revision: 5 $
40* $brcm_Date: 8/3/11 11:09a $
41*
42* API Description:
43*   API name: Frontend Module
44*    Frontend module private APIs and module data.
45*
46* Revision History:
47*
48* $brcm_Log: /nexus/modules/frontend/common/src/nexus_frontend_init.c $
49*
50* 5   8/3/11 11:09a gmohile
51* SW7125-1014 : Add module to active priority scheduler
52*
53* 4   1/26/09 11:29a erickson
54* PR51468: global variable naming convention
55*
56* 3   8/18/08 10:28a katrep
57* PR45674: Compiler warnings in DEBUG=n builds
58*
59* 2   4/2/08 11:31a erickson
60* PR40198: fix DEBUG=n warning
61*
62* 1   1/18/08 2:19p jgarrett
63* PR 38808: Merging to main branch
64*
65* Nexus_Devel/2   10/11/07 9:24a erickson
66* PR36017: clean up on Uninit
67*
68* Nexus_Devel/1   10/5/07 5:52p jgarrett
69* PR 35551: Adding initial version
70*
71***************************************************************************/
72
73#include "nexus_frontend_module.h"
74#include "nexus_frontend_init.h"
75
76NEXUS_ModuleHandle g_NEXUS_frontendModule;
77
78/***************************************************************************
79Summary:
80    Get Default settings for the frontend module
81See Also:
82    NEXUS_FrontendModule_Init
83 ***************************************************************************/
84void NEXUS_FrontendModule_GetDefaultSettings(
85    NEXUS_FrontendModuleSettings *pSettings /* [out] */
86    )
87{
88    BKNI_Memset(pSettings, 0, sizeof(*pSettings));
89}
90
91/***************************************************************************
92Summary:
93    Initialize the frontend module
94See Also:
95    NEXUS_FrontendModule_Uninit
96 ***************************************************************************/
97NEXUS_ModuleHandle NEXUS_FrontendModule_Init(
98    const NEXUS_FrontendModuleSettings *pSettings
99    )
100{
101    NEXUS_ModuleSettings moduleSettings;
102    int rc=0;
103
104    BSTD_UNUSED(pSettings);
105    BDBG_ASSERT(NULL != pSettings);
106    BDBG_ASSERT(NULL != pSettings->i2cModule);
107    BDBG_ASSERT(NULL == g_NEXUS_frontendModule);
108
109    NEXUS_Module_GetDefaultSettings(&moduleSettings);
110    moduleSettings.priority = NEXUS_ModulePriority_eIdleActiveStandby; /* frontend interfaces are very slow */
111    g_NEXUS_frontendModule = NEXUS_Module_Create("frontend", &moduleSettings);
112
113    if ( NULL == g_NEXUS_frontendModule )
114    {
115        rc=BERR_TRACE(BERR_OS_ERROR);
116        return NULL;
117    }
118
119    NEXUS_Frontend_P_Init();
120
121    return g_NEXUS_frontendModule;
122}
123
124/***************************************************************************
125Summary:
126    Un-Initialize the frontend module
127See Also:
128    NEXUS_FrontendModule_Init
129 ***************************************************************************/
130void NEXUS_FrontendModule_Uninit(void)
131{
132    NEXUS_Module_Destroy(g_NEXUS_frontendModule);
133    g_NEXUS_frontendModule = NULL;
134}
135
Note: See TracBrowser for help on using the repository browser.