mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
Move a set of helpers used in warmboot code to more appropriate AP and FUSE locations. Signed-off-by: Ion Agorria <ion@agorria.com>
51 lines
1.1 KiB
C
51 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* (C) Copyright 2010,2011
|
|
* NVIDIA Corporation <www.nvidia.com>
|
|
*/
|
|
|
|
#ifndef _FUSE_H_
|
|
#define _FUSE_H_
|
|
|
|
/* FUSE registers */
|
|
struct fuse_regs {
|
|
u32 reserved0[64]; /* 0x00 - 0xFC: */
|
|
u32 production_mode; /* 0x100: FUSE_PRODUCTION_MODE */
|
|
u32 reserved1[3]; /* 0x104 - 0x10c: */
|
|
u32 sku_info; /* 0x110 */
|
|
u32 reserved2[13]; /* 0x114 - 0x144: */
|
|
u32 fa; /* 0x148: FUSE_FA */
|
|
u32 reserved3[21]; /* 0x14C - 0x19C: */
|
|
u32 security_mode; /* 0x1A0: FUSE_SECURITY_MODE */
|
|
u32 sbk[4]; /* 0x1A4 - 0x1B4 */
|
|
};
|
|
|
|
/* Defines the supported operating modes */
|
|
enum fuse_operating_mode {
|
|
MODE_UNDEFINED = 0,
|
|
MODE_PRODUCTION = 3,
|
|
MODE_ODM_PRODUCTION_SECURE = 4,
|
|
MODE_ODM_PRODUCTION_OPEN = 5,
|
|
};
|
|
|
|
/**
|
|
* Initializes fuse hardware
|
|
*/
|
|
void tegra_fuse_init(void);
|
|
|
|
/**
|
|
* Calculate SoC UID
|
|
*
|
|
* Return: uid if ok, 0 on error
|
|
*/
|
|
unsigned long long tegra_chip_uid(void);
|
|
|
|
/**
|
|
* Gives the current operating mode from fuses
|
|
*
|
|
* @return current operating mode
|
|
*/
|
|
enum fuse_operating_mode tegra_fuse_get_operation_mode(void);
|
|
|
|
#endif /* ifndef _FUSE_H_ */
|