blob: c0e70f141843e4619c955c4e25d7ee8e610d058f [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001/****************************************************************************
2 *
3 * (C)Copyright 2015 Marvell. All Rights Reserved.
4 *
5 * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF MARVELL.
6 * The copyright notice above does not evidence any actual or intended
7 * publication of such source code. This Module contains Proprietary
8 * Information of Marvell and should be treated as Confidential. The
9 * information in this file is provided for the exclusive use of the
10 * licensees of Marvell. Such users have the right to use, modify, and
11 * incorporate this code into products for purposes authorized by the
12 * license agreement provided they include this notice and the associated
13 * copyright notice with any such product.
14 *
15 * The information in this file is provided "AS IS" without warranty.
16 *
17 ***************************************************************************/
18#ifndef _PROVISIONING_H_
19#define _PROVISIONING_H_
20
21#include "tim.h"
22
23typedef enum _fuse_type_enum {
24 enum_fuse_type_dummy = 1,
25 enum_fuse_type_ap,
26 enum_fuse_type_cp,
27} fuse_type_enum;
28
29typedef struct _fuse_burn_flags_t {
30 UINT_T fuse_burn_flag;
31 UINT_T fuse_ecc_flag;
32 UINT_T fuse_lock_block_flag;
33} fuse_burn_flags_t, *pfuse_burn_flags_t;
34
35
36typedef struct
37{
38 UINT_T (*pBindPlatform) (pTIM ptim, void* parameter);
39 UINT_T (*pVerifyPlatform) (pTIM ptim);
40 UINT_T (*pBindJTAGKey) (pTIM ptim, void* parameter);
41 UINT_T (*pVerifyJTAGKey) (pTIM ptim);
42 UINT_T (*pAutoConfigPlatform) (pTIM ptim, void* parameter);
43} PROVISIONING_FUNCTIONS, *pPROVISIONING_FUNCTIONS;
44
45
46pPROVISIONING_FUNCTIONS GetProvisioningFunctionsPointer(void);
47void ProvisioningInitialization(void);
48
49#endif /* _PROVISIONING_H_ */