source: svn/newcon3bcm2_21bu/nexus/modules/security/7552/src/nexus_security_module.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: 6.6 KB
Line 
1/***************************************************************************
2 *     (c)2007-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_security_module.h $
39 * $brcm_Revision: 24 $
40 * $brcm_Date: 10/17/11 5:35p $
41 *
42 * Module Description:
43 *
44 * Revision History:
45 *
46 * $brcm_Log: /nexus/modules/security/7400/src/nexus_security_module.h $
47 *
48 * 24   10/17/11 5:35p atruong
49 * SWSECURITY-69: Support for 40-nm B0 Zeus 2.0 platforms
50 *
51 * 23   9/20/11 4:16p erickson
52 * SW7346-495: add NSK2AVK
53 *
54 * 22   7/12/11 12:37a atruong
55 * SW7231-272: Undo some cleanup related to module inclusion
56 *
57 * 21   7/1/11 5:11p yili
58 * SW7231-272:Minor cleanup
59 *
60 * 20   3/4/11 5:43p mphillip
61 * SW7422-269: Merge module header bugfix to main
62 *
63 * SW7422-269/1   3/3/11 4:57p mphillip
64 * SW7422-269: Preliminary IV handling
65 *
66 * 19   1/21/11 2:24p yili
67 * SW7405-4221:Add support for new applications
68 *
69 * 18   12/22/10 5:48p mphillip
70 * SW7422-104: Merge 40nm support to /main
71 *
72 * SW7422-104/1   12/16/10 6:14p mphillip
73 * SW7422-104: Initial support for 7422
74 *
75 * 17   10/14/10 1:38p erickson
76 * SW7420-1168: Support for new BSP USER_HMAC_SHA command interface
77 *
78 * 16   8/4/10 3:04p mphillip
79 * SW7405-4325: Merge keyslot refactoring to main
80 *
81 * SW7405-4325/1   8/4/10 2:31p mphillip
82 * SW7405-4325: Move keyslot memory management into core
83 *
84 * 15   6/30/10 3:25p mphillip
85 * SW7550-415: Make security handle details internal to the module.
86 *
87 * 14   3/14/10 11:44p atruong
88 * SW7400-2678: Nexus AV Keyladder to support DirecTV
89 *
90 * 13   10/27/09 2:32p yili
91 * SW7340-42:Add raw command
92 *
93 * 12   10/9/09 2:46a atruong
94 * SW7405-3173: Nexus API call for reading OTP IDs
95 *
96 * 11   8/25/09 3:28p atruong
97 * SW7405-2938: NEXUS API calls for BHSM Random Number Generator
98 *
99 * 10   8/25/09 11:12a haoboy
100 * SW7405-2870:Add support for secure RSA operations in Nexus
101 *
102 * 9   8/25/09 1:09a atruong
103 * SW7420-223: 7420B0 ASKM Support
104 *
105 * 8   7/20/09 8:54a erickson
106 * PR56912: added secure access extension
107 *
108 * 7   4/14/09 10:35a erickson
109 * PR53745: fix warning
110 *
111 * 6   3/16/09 11:18a yili
112 * PR52990:Add region verification
113 *
114 * 5   9/3/08 3:29p erickson
115 * PR45612: update
116 *
117 * 4   7/17/08 2:19p mphillip
118 * PR44912: Keyladder includes for building
119 *
120 * 3   6/24/08 4:57p vsilyaev
121 * PR 40027: Added security module to 93556/93549 platform
122 *
123 * 2   6/17/08 12:33a mphillip
124 * PR40027: Keyslot changes for shim
125 *
126 * 1   1/18/08 2:21p jgarrett
127 * PR 38808: Merging to main branch
128 *
129 * Nexus_Devel/1   11/15/07 3:54p erickson
130 * PR37137: added Security module
131 *
132 **************************************************************************/
133#ifndef NEXUS_SECURITY_MODULE_H__
134#define NEXUS_SECURITY_MODULE_H__
135
136#include "nexus_security_thunks.h"
137#include "nexus_base.h"
138#include "nexus_security.h"
139#include "nexus_security_misc.h"
140#include "nexus_security_init.h"
141
142#include "priv/nexus_core_security.h"
143
144#if NEXUS_KEYLADDER
145#include "nexus_keyladder.h"
146#endif
147
148#if NEXUS_OTPMSP
149#include "nexus_otpmsp.h"
150#endif
151
152#ifdef NEXUS_SECURITY_REGVERIFY
153#include "nexus_security_regver.h"
154#endif
155
156
157#if NEXUS_USERCMD
158#include "nexus_random_number.h"
159#include "nexus_read_otp_id.h"
160#include "nexus_hmac_sha_cmd.h"
161#if (BCHP_CHIP == 7422) || (BCHP_CHIP==7425) || (BCHP_CHIP == 7344) || (BCHP_CHIP==7231) || (BCHP_CHIP == 7346) || (BCHP_CHIP==7358) || (BCHP_CHIP==7552)
162#include "nexus_bsp_config.h"
163#endif
164#endif
165
166#if NEXUS_SECURITY_RAWCMD
167#include "nexus_security_rawcommand.h"
168#endif
169
170#if NEXUS_SECURITY_SECUREACCESS
171#include "nexus_secureaccess.h"
172#endif
173
174#if NEXUS_SECURITY_SECURERSA
175#include "nexus_security_rsa.h"
176#endif   
177
178#if NEXUS_SECURITY_IPLICENSING
179#include "nexus_iplicensing.h"
180#endif
181
182#if NEXUS_SECURITY_AVKEYLADDER
183#include "nexus_avkeyladder.h"
184#endif
185
186#ifdef NEXUS_SECURITY_MSIPTV
187#include "nexus_security_msiptv.h"
188#endif
189
190#ifdef __cplusplus
191extern "C" {
192#endif
193
194#ifdef NEXUS_MODULE_SELF
195#error Cant be in two modules at the same time
196#endif
197
198#define NEXUS_MODULE_NAME security
199#define NEXUS_MODULE_SELF NEXUS_P_SecurityModule
200
201#include "bhsm.h"
202typedef struct NEXUS_Security_P_Handle
203{
204    BHSM_Handle hHsm;
205    NEXUS_SecurityModuleSettings *pSettings;
206} NEXUS_Security_P_Handle;
207
208
209
210/* global handle. there is no global data. */
211extern NEXUS_ModuleHandle NEXUS_P_SecurityModule;
212
213#ifdef __cplusplus
214}
215#endif
216
217#endif
Note: See TracBrowser for help on using the repository browser.