xref: /rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/efuse_def.h (revision 2939f68add3269bf0e67f7a25c4a1b404a25c616)
1*90eac170SKonstantin Porotchkin /*
2*90eac170SKonstantin Porotchkin  * Copyright (C) 2021 Marvell International Ltd.
3*90eac170SKonstantin Porotchkin  *
4*90eac170SKonstantin Porotchkin  * SPDX-License-Identifier:     BSD-3-Clause
5*90eac170SKonstantin Porotchkin  * https://spdx.org/licenses
6*90eac170SKonstantin Porotchkin  */
7*90eac170SKonstantin Porotchkin 
8*90eac170SKonstantin Porotchkin #ifndef EFUSE_DEF_H
9*90eac170SKonstantin Porotchkin #define EFUSE_DEF_H
10*90eac170SKonstantin Porotchkin 
11*90eac170SKonstantin Porotchkin #include <platform_def.h>
12*90eac170SKonstantin Porotchkin 
13*90eac170SKonstantin Porotchkin #define MVEBU_AP_EFUSE_SRV_CTRL_REG	(MVEBU_AP_GEN_MGMT_BASE + 0x8)
14*90eac170SKonstantin Porotchkin #define EFUSE_SRV_CTRL_LD_SELECT_OFFS	6
15*90eac170SKonstantin Porotchkin #define EFUSE_SRV_CTRL_LD_SELECT_MASK	(1 << EFUSE_SRV_CTRL_LD_SELECT_OFFS)
16*90eac170SKonstantin Porotchkin 
17*90eac170SKonstantin Porotchkin #define MVEBU_AP_LD_EFUSE_BASE		(MVEBU_AP_GEN_MGMT_BASE + 0xF00)
18*90eac170SKonstantin Porotchkin /* Bits [31:0] - 32 data bits total */
19*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_31_0_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE)
20*90eac170SKonstantin Porotchkin /* Bits [62:32] - 31 data bits total 32nd bit is parity for bits [62:0]*/
21*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_62_32_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0x4)
22*90eac170SKonstantin Porotchkin /* Bits [94:63] - 32 data bits total */
23*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_94_63_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0x8)
24*90eac170SKonstantin Porotchkin /* Bits [125:95] - 31 data bits total, 32nd bit is parity for bits [125:63] */
25*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_125_95_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0xC)
26*90eac170SKonstantin Porotchkin /* Bits [157:126] - 32 data bits total */
27*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_126_157_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0x10)
28*90eac170SKonstantin Porotchkin /* Bits [188:158] - 31 data bits total, 32nd bit is parity for bits [188:126] */
29*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_188_158_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0x14)
30*90eac170SKonstantin Porotchkin /* Bits [220:189] - 32 data bits total */
31*90eac170SKonstantin Porotchkin #define MVEBU_AP_LDX_220_189_EFUSE_OFFS	(MVEBU_AP_LD_EFUSE_BASE + 0x18)
32*90eac170SKonstantin Porotchkin 
33*90eac170SKonstantin Porotchkin #endif /* EFUSE_DEF_H */
34