close Warning: Can't use blame annotator:
No changeset 2 in the repository

source: svn/newcon3bcm2_21bu/magnum/syslib/hdcplib/7552/bhdcplib_keyloader.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: 2.7 KB
RevLine 
1/***************************************************************************
2 *     Copyright (c) 2002-2012, 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: bhdcplib_keyloader.c $
11 * $brcm_Revision: Hydra_Software_Devel/6 $
12 * $brcm_Date: 1/14/12 10:04p $
13 *
14 * Module Description:
15 *
16 * Revision History:
17 *
18 * $brcm_Log: /magnum/syslib/hdcplib/7422/bhdcplib_keyloader.c $
19 *
20 * Hydra_Software_Devel/6   1/14/12 10:04p rgreen
21 * SWSECURITY-71:  Move keyloading setup to HSM; Use
22 * BHSM_FastLoadEncryptedHdcpKey to load keys
23 *
24 * Mot_MTN1.xx_7425Bx_Int/ericz_Mot_MTN1.xx_7425Bx_3/1   12/14/11 12:35p ericz
25 * CsP465507: Build errors with "export NEXUS_HDCP_SUPPORT=y" set for
26 * DCX3600_7425 target
27 *
28 * Hydra_Software_Devel/5   10/23/11 12:30p rgreen
29 * SW7425-1583:  Add BERR_TRACE when HSM reports a HDCP key load error
30 *
31 * Hydra_Software_Devel/4   10/17/11 5:38p vle
32 * SW7425-1351: update hdcplib keyloader for 40nm B0 parts
33 *
34 * Hydra_Software_Devel/3   1/31/11 7:33p vle
35 * SW7422-129: Fix build warnings.
36 *
37 * Hydra_Software_Devel/2   1/7/11 5:26p vle
38 * SW7422-129: Add HDCP keyloader support for 7422 and other 40nm
39 * platforms.
40 *
41 * Hydra_Software_Devel/1   12/15/10 6:18p rgreen
42 * SW7422-129: Initial checkin
43 *
44 ***************************************************************************/
45
46#include "bstd.h"
47#include "bkni.h"
48#include "bhdcplib_keyloader.h"
49
50#include "bhsm.h"
51#include "bhsm_keyladder.h"
52
53
54#define BHDCPLib_KEY_OFFSET 0x80
55
56BDBG_MODULE(BHDCPLIB_KEYLOADER) ;
57
58
59
60BERR_Code BHDCPlib_FastLoadEncryptedHdcpKeys(
61        BHDCPlib_Handle hHDCPlib)
62{
63        BERR_Code errCode = BERR_SUCCESS;
64        uint8_t i;
65        BHSM_EncryptedHdcpKeyStruct * EncryptedHdcpKeys ;
66       
67        BDBG_ASSERT(hHDCPlib) ;
68
69        BDBG_WRN(("$brcm_Revision: Hydra_Software_Devel/6 $")) ; 
70
71        /* Get HDCP Encrypted Keys */
72        EncryptedHdcpKeys = (BHSM_EncryptedHdcpKeyStruct *) 
73                &hHDCPlib->stHdcpConfiguration.TxKeySet.TxKeyStructure ;
74
75        for (i =0; i< BAVC_HDMI_HDCP_N_PRIVATE_KEYS; i++)
76        {
77                /* skip keys that are not specified to be used by the RxBksv */
78                if (!(hHDCPlib->stHdcpConfiguration.RxInfo.RxBksv[i / 8] & (1 << (i % 8))))
79                        continue ;
80
81                errCode = BHSM_FastLoadEncryptedHdcpKey( 
82                        hHDCPlib->stDependencies.hHsm, i + BHDCPLib_KEY_OFFSET, &(EncryptedHdcpKeys[i]) ) ;
83
84                if (errCode != BERR_SUCCESS) 
85                {
86                        BDBG_ERR(("BHSM_FastLoadEncryptedHdcpKey errCode: %x", errCode )) ;
87                        BERR_TRACE(errCode) ;
88                        break ;
89                }       
90        }
91
92        return( errCode );
93}
94
Note: See TracBrowser for help on using the repository browser.