diff options
author | Bill Richardson <wfrichar@chromium.org> | 2015-11-05 10:51:41 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2015-11-06 01:15:52 -0800 |
commit | e99775311728eb01e47d5c5d29156f13842ca721 (patch) | |
tree | 801d0a1713b230b16074f4df98299ecd24141de4 | |
parent | 6a5c36bd4a3a9a5e9a8a796ee26afdbd981c9d28 (diff) | |
download | chrome-ec-e99775311728eb01e47d5c5d29156f13842ca721.tar.gz |
Cr50: Update to the "final" FPGA image 20151104_041733@78962
In fact this provides support for three FPGA images:
20151104_011218 - full crypto, no USB
20151104_041733 - tiny crypto, full USB
20151104_065845 - full crypto, full USB (only for hard-to-get boards)
We can tell these FPGA images apart at run-time by looking at
some SWDP registers:
register crypto usb full
GREG32(SWDP, BUILD_TIME) 0x2bd2 0xa305 0x10135
GREG32(SWDP, FPGA_CONFIG) 0x1 0x2 0x3
This CL includes a run-time check for the USB features so that
it's safe to build the firmware with CONFIG_USB and run it on a
non-USB FPGA image.
Here are the differences I could find in the top-level image
header files:
All three FPGA images define different (apparently arbitrary)
default values for the PMU_PWRDN_SCRATCHn registers, but other
than that, the usb and full images differ only in the BUILD_TIME
and FPGA_CONFIG register values.
I'm not sure why, but function uart_init() in file
chip/g/polling_uart.c writes to one of the PMU_PWRDN_SCRATCHn
registers, but nothing seems to read it again.
The crypto image defines these values which don't appear in the
other images:
#define PINMUX_USB0_EXT_DM_PULLUP_EN_SEL 0x4f
#define PINMUX_USB0_EXT_DP_RPU1_ENB_SEL 0x50
#define PINMUX_USB0_EXT_DP_RPU2_ENB_SEL 0x51
#define PINMUX_USB0_EXT_FS_EDGE_SEL_SEL 0x52
#define PINMUX_USB0_EXT_RX_DMI_SEL 0x53
#define PINMUX_USB0_EXT_RX_DPI_SEL 0x54
#define PINMUX_USB0_EXT_RX_RCV_SEL 0x55
#define PINMUX_USB0_EXT_SUSPENDB_SEL 0x56
#define PINMUX_USB0_EXT_TX_DMO_SEL 0x57
#define PINMUX_USB0_EXT_TX_DPO_SEL 0x58
#define PINMUX_USB0_EXT_TX_OEB_SEL 0x59
#define PINMUX_USB0_EXT_DM_PULLUP_EN_SEL_OFFSET 0x230
#define PINMUX_USB0_EXT_DM_PULLUP_EN_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_DP_RPU1_ENB_SEL_OFFSET 0x234
#define PINMUX_USB0_EXT_DP_RPU1_ENB_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_DP_RPU2_ENB_SEL_OFFSET 0x238
#define PINMUX_USB0_EXT_DP_RPU2_ENB_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_FS_EDGE_SEL_SEL_OFFSET 0x23c
#define PINMUX_USB0_EXT_FS_EDGE_SEL_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_RX_DMI_SEL_OFFSET 0x240
#define PINMUX_USB0_EXT_RX_DMI_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_RX_DPI_SEL_OFFSET 0x244
#define PINMUX_USB0_EXT_RX_DPI_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_RX_RCV_SEL_OFFSET 0x248
#define PINMUX_USB0_EXT_RX_RCV_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_SUSPENDB_SEL_OFFSET 0x24c
#define PINMUX_USB0_EXT_SUSPENDB_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_TX_DMO_SEL_OFFSET 0x250
#define PINMUX_USB0_EXT_TX_DMO_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_TX_DPO_SEL_OFFSET 0x254
#define PINMUX_USB0_EXT_TX_DPO_SEL_DEFAULT 0x0
#define PINMUX_USB0_EXT_TX_OEB_SEL_OFFSET 0x258
#define PINMUX_USB0_EXT_TX_OEB_SEL_DEFAULT 0x0
The crypto image also differs in this:
#define PINMUX_VOLT0_TST_NEG_GLITCH_DET_SEL_OFFSET 0x25c
instead of this:
#define PINMUX_VOLT0_TST_NEG_GLITCH_DET_SEL_OFFSET 0x230
The rest of the differences between the crypto and usb versions
are in these values, which I don't think we care about. At least,
I can't find any place where they're used.
PINMUX_EXITEDGE0_DIOAn_OFFSET
PINMUX_EXITEDGE0_DIOBn_OFFSET
PINMUX_EXITEDGE0_DIOMn_OFFSET
PINMUX_EXITEDGE0_VIOn_OFFSET
PINMUX_EXITEDGE0_OFFSET
PINMUX_EXITEN0_DIOAn_OFFSET
PINMUX_EXITEN0_DIOBn_OFFSET
PINMUX_EXITEN0_DIOMn_OFFSET
PINMUX_EXITEN0_VIOn_OFFSET
PINMUX_EXITEN0_OFFSET
PINMUX_EXITINV0_DIOAn_OFFSET
PINMUX_EXITINV0_DIOBn_OFFSET
PINMUX_EXITINV0_DIOMn_OFFSET
PINMUX_EXITINV0_VIOn_OFFSET
PINMUX_EXITINV0_OFFSET
PINMUX_HOLD_OFFSET
PINMUX_SEL_COUNT
PINMUX_VOLT0_TST_NEG_GLITCH_DET_SEL
PINMUX_VOLT0_TST_POS_GLITCH_DET_SEL
PINMUX_VOLT0_TST_POS_GLITCH_DET_SEL_OFFSET
PINMUX_XO0_TESTBUSn_SEL
PINMUX_XO0_TESTBUSn_SEL_OFFSET
I used the header from the usb image to update chip/g/cr50_fpga_regdefs.h
BRANCH=none
BUG=chrome-os-partner:43791
CQ-DEPEND=CL:310978
TEST=make buildall
I also built a single Cr50 firmware and tried it on both the
crypto and usb FPGA images. Both worked as expected.
Change-Id: Ia8a064758f71f86771729437ae3e81226fd55789
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/311211
-rw-r--r-- | chip/g/cr50_fpga_regdefs.h | 1096 | ||||
-rw-r--r-- | chip/g/usb.c | 7 | ||||
-rw-r--r-- | util/signer/codesigner.cc | 45 | ||||
-rw-r--r-- | util/signer/common/image.h | 6 | ||||
-rw-r--r-- | util/signer/common/signed_header.h | 10 | ||||
-rw-r--r-- | util/signer/image.cc | 17 | ||||
-rw-r--r-- | util/signer/publickey.cc | 19 |
7 files changed, 641 insertions, 559 deletions
diff --git a/chip/g/cr50_fpga_regdefs.h b/chip/g/cr50_fpga_regdefs.h index 0821d341b5..3fe6ae0272 100644 --- a/chip/g/cr50_fpga_regdefs.h +++ b/chip/g/cr50_fpga_regdefs.h @@ -1133,476 +1133,480 @@ #define GC_FUSE_LB3_POST_WARMUP_OVRD_DEFAULT 0x55555550 #define GC_FUSE_LB3_POST_WARMUP_CNT_OFFSET 0x90 #define GC_FUSE_LB3_POST_WARMUP_CNT_DEFAULT 0x55555554 -#define GC_FUSE_MBIST_POST_SEQ_OFFSET 0x94 +#define GC_FUSE_LB4_POST_OVRD_OFFSET 0x94 +#define GC_FUSE_LB4_POST_OVRD_DEFAULT 0x55555550 +#define GC_FUSE_LB4_POST_PATCNT_OFFSET 0x98 +#define GC_FUSE_LB4_POST_PATCNT_DEFAULT 0x55555554 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_OFFSET 0x9c +#define GC_FUSE_LB4_POST_WARMUP_OVRD_DEFAULT 0x55555550 +#define GC_FUSE_LB4_POST_WARMUP_CNT_OFFSET 0xa0 +#define GC_FUSE_LB4_POST_WARMUP_CNT_DEFAULT 0x55555554 +#define GC_FUSE_MBIST_POST_SEQ_OFFSET 0xa4 #define GC_FUSE_MBIST_POST_SEQ_DEFAULT 0x54000000 -#define GC_FUSE_LBIST_POST_SEQ_OFFSET 0x98 +#define GC_FUSE_LBIST_POST_SEQ_OFFSET 0xa8 #define GC_FUSE_LBIST_POST_SEQ_DEFAULT 0x54000000 -#define GC_FUSE_LBIST_VIA_TAP_DIS_OFFSET 0x9c +#define GC_FUSE_LBIST_VIA_TAP_DIS_OFFSET 0xac #define GC_FUSE_LBIST_VIA_TAP_DIS_DEFAULT 0x55555550 -#define GC_FUSE_MBIST_VIA_TAP_DIS_OFFSET 0xa0 +#define GC_FUSE_MBIST_VIA_TAP_DIS_OFFSET 0xb0 #define GC_FUSE_MBIST_VIA_TAP_DIS_DEFAULT 0x55555550 -#define GC_FUSE_TAP_DISABLE_OFFSET 0xa4 +#define GC_FUSE_TAP_DISABLE_OFFSET 0xb4 #define GC_FUSE_TAP_DISABLE_DEFAULT 0x55555550 -#define GC_FUSE_RNGBIST_AR_EN_OFFSET 0xa8 +#define GC_FUSE_RNGBIST_AR_EN_OFFSET 0xb8 #define GC_FUSE_RNGBIST_AR_EN_DEFAULT 0x55555550 -#define GC_FUSE_TESTMODE_KEYS_EN_OFFSET 0xac +#define GC_FUSE_TESTMODE_KEYS_EN_OFFSET 0xbc #define GC_FUSE_TESTMODE_KEYS_EN_DEFAULT 0x55555550 -#define GC_FUSE_PKG_ID_OFFSET 0xb0 +#define GC_FUSE_PKG_ID_OFFSET 0xc0 #define GC_FUSE_PKG_ID_DEFAULT 0x55555550 -#define GC_FUSE_BIN_ID_OFFSET 0xb4 +#define GC_FUSE_BIN_ID_OFFSET 0xc4 #define GC_FUSE_BIN_ID_DEFAULT 0x55555550 -#define GC_FUSE_RC_JTR_OSC48_CC_TRIM_OFFSET 0xb8 +#define GC_FUSE_RC_JTR_OSC48_CC_TRIM_OFFSET 0xc8 #define GC_FUSE_RC_JTR_OSC48_CC_TRIM_DEFAULT 0x55555500 -#define GC_FUSE_RC_JTR_OSC48_CC_EN_OFFSET 0xbc +#define GC_FUSE_RC_JTR_OSC48_CC_EN_OFFSET 0xcc #define GC_FUSE_RC_JTR_OSC48_CC_EN_DEFAULT 0x55555550 -#define GC_FUSE_RC_JTR_OSC60_CC_TRIM_OFFSET 0xc0 +#define GC_FUSE_RC_JTR_OSC60_CC_TRIM_OFFSET 0xd0 #define GC_FUSE_RC_JTR_OSC60_CC_TRIM_DEFAULT 0x55555500 -#define GC_FUSE_RC_JTR_OSC60_CC_EN_OFFSET 0xc4 +#define GC_FUSE_RC_JTR_OSC60_CC_EN_OFFSET 0xd4 #define GC_FUSE_RC_JTR_OSC60_CC_EN_DEFAULT 0x55555550 -#define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_OFFSET 0xc8 +#define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_OFFSET 0xd8 #define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_DEFAULT 0x55555500 -#define GC_FUSE_RC_TIMER_OSC48_CC_EN_OFFSET 0xcc +#define GC_FUSE_RC_TIMER_OSC48_CC_EN_OFFSET 0xdc #define GC_FUSE_RC_TIMER_OSC48_CC_EN_DEFAULT 0x55555550 -#define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_OFFSET 0xd0 +#define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_OFFSET 0xe0 #define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_DEFAULT 0x55555540 -#define GC_FUSE_RC_TIMER_OSC48_FC_EN_OFFSET 0xd4 +#define GC_FUSE_RC_TIMER_OSC48_FC_EN_OFFSET 0xe4 #define GC_FUSE_RC_TIMER_OSC48_FC_EN_DEFAULT 0x55555550 -#define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_OFFSET 0xd8 +#define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_OFFSET 0xe8 #define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_DEFAULT 0x55555500 -#define GC_FUSE_RC_RTC_OSC256K_CC_EN_OFFSET 0xdc +#define GC_FUSE_RC_RTC_OSC256K_CC_EN_OFFSET 0xec #define GC_FUSE_RC_RTC_OSC256K_CC_EN_DEFAULT 0x55555550 -#define GC_FUSE_SEL_VREG_REG_EN_OFFSET 0xe0 +#define GC_FUSE_SEL_VREG_REG_EN_OFFSET 0xf0 #define GC_FUSE_SEL_VREG_REG_EN_DEFAULT 0x55555550 -#define GC_FUSE_SEL_VREF_REG_OFFSET 0xe4 +#define GC_FUSE_SEL_VREF_REG_OFFSET 0xf4 #define GC_FUSE_SEL_VREF_REG_DEFAULT 0x55555550 -#define GC_FUSE_SEL_VREF_BATMON_EN_OFFSET 0xe8 +#define GC_FUSE_SEL_VREF_BATMON_EN_OFFSET 0xf8 #define GC_FUSE_SEL_VREF_BATMON_EN_DEFAULT 0x55555550 -#define GC_FUSE_SEL_VREF_BATMON_OFFSET 0xec +#define GC_FUSE_SEL_VREF_BATMON_OFFSET 0xfc #define GC_FUSE_SEL_VREF_BATMON_DEFAULT 0x55555550 -#define GC_FUSE_X_OSC_LDO_CTRL_EN_OFFSET 0xf0 +#define GC_FUSE_X_OSC_LDO_CTRL_EN_OFFSET 0x100 #define GC_FUSE_X_OSC_LDO_CTRL_EN_DEFAULT 0x55555550 -#define GC_FUSE_X_OSC_LDO_CTRL_OFFSET 0xf4 +#define GC_FUSE_X_OSC_LDO_CTRL_OFFSET 0x104 #define GC_FUSE_X_OSC_LDO_CTRL_DEFAULT 0x55555550 -#define GC_FUSE_TEMP_OFFSET_CAL_OFFSET 0xf8 +#define GC_FUSE_TEMP_OFFSET_CAL_OFFSET 0x108 #define GC_FUSE_TEMP_OFFSET_CAL_DEFAULT 0x55555000 -#define GC_FUSE_TRNG_LDO_CTRL_EN_OFFSET 0xfc +#define GC_FUSE_TRNG_LDO_CTRL_EN_OFFSET 0x10c #define GC_FUSE_TRNG_LDO_CTRL_EN_DEFAULT 0x55555550 -#define GC_FUSE_TRNG_LDO_CTRL_OFFSET 0x100 +#define GC_FUSE_TRNG_LDO_CTRL_OFFSET 0x110 #define GC_FUSE_TRNG_LDO_CTRL_DEFAULT 0x55555540 -#define GC_FUSE_TRNG_ANALOG_CTRL_EN_OFFSET 0x104 +#define GC_FUSE_TRNG_ANALOG_CTRL_EN_OFFSET 0x114 #define GC_FUSE_TRNG_ANALOG_CTRL_EN_DEFAULT 0x55555550 -#define GC_FUSE_TRNG_ANALOG_CTRL_OFFSET 0x108 +#define GC_FUSE_TRNG_ANALOG_CTRL_OFFSET 0x118 #define GC_FUSE_TRNG_ANALOG_CTRL_DEFAULT 0x55555550 -#define GC_FUSE_EXT_XTAL_PDB_OFFSET 0x10c +#define GC_FUSE_EXT_XTAL_PDB_OFFSET 0x11c #define GC_FUSE_EXT_XTAL_PDB_DEFAULT 0x55555554 -#define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_OFFSET 0x110 +#define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_OFFSET 0x120 #define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_DEFAULT 0x55555550 -#define GC_FUSE_OBFUSCATION_EN_OFFSET 0x114 +#define GC_FUSE_OBFUSCATION_EN_OFFSET 0x124 #define GC_FUSE_OBFUSCATION_EN_DEFAULT 0x55555550 -#define GC_FUSE_HIK_CREATE_LOCK_OFFSET 0x118 +#define GC_FUSE_HIK_CREATE_LOCK_OFFSET 0x128 #define GC_FUSE_HIK_CREATE_LOCK_DEFAULT 0x55555550 -#define GC_FUSE_BNK2_INTG_CHKSUM_OFFSET 0x11c +#define GC_FUSE_BNK2_INTG_CHKSUM_OFFSET 0x12c #define GC_FUSE_BNK2_INTG_CHKSUM_DEFAULT 0x55000000 -#define GC_FUSE_BNK2_INTG_LOCK_OFFSET 0x120 +#define GC_FUSE_BNK2_INTG_LOCK_OFFSET 0x130 #define GC_FUSE_BNK2_INTG_LOCK_DEFAULT 0x55555550 -#define GC_FUSE_TESTMODE_OTPW_DIS_OFFSET 0x124 +#define GC_FUSE_TESTMODE_OTPW_DIS_OFFSET 0x134 #define GC_FUSE_TESTMODE_OTPW_DIS_DEFAULT 0x55555550 -#define GC_FUSE_HKEY_WDOG_TIMER_EN_OFFSET 0x128 +#define GC_FUSE_HKEY_WDOG_TIMER_EN_OFFSET 0x138 #define GC_FUSE_HKEY_WDOG_TIMER_EN_DEFAULT 0x55555550 -#define GC_FUSE_FLASH_PERSO_PAGE_LOCK_OFFSET 0x12c +#define GC_FUSE_FLASH_PERSO_PAGE_LOCK_OFFSET 0x13c #define GC_FUSE_FLASH_PERSO_PAGE_LOCK_DEFAULT 0x55555550 -#define GC_FUSE_ALERT_RSP_CFG_OFFSET 0x130 +#define GC_FUSE_ALERT_RSP_CFG_OFFSET 0x140 #define GC_FUSE_ALERT_RSP_CFG_DEFAULT 0x55555500 -#define GC_FUSE_BNK3_INTG_CHKSUM_OFFSET 0x134 +#define GC_FUSE_BNK3_INTG_CHKSUM_OFFSET 0x144 #define GC_FUSE_BNK3_INTG_CHKSUM_DEFAULT 0x55000000 -#define GC_FUSE_BNK3_INTG_LOCK_OFFSET 0x138 +#define GC_FUSE_BNK3_INTG_LOCK_OFFSET 0x148 #define GC_FUSE_BNK3_INTG_LOCK_DEFAULT 0x55555550 -#define GC_FUSE_FW_DEFINED_DATA_BLK0_OFFSET 0x13c +#define GC_FUSE_FW_DEFINED_DATA_BLK0_OFFSET 0x14c #define GC_FUSE_FW_DEFINED_DATA_BLK0_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_BLK1_OFFSET 0x140 -#define GC_FUSE_FW_DEFINED_DATA_BLK1_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_OFFSET 0x144 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_OFFSET 0x148 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_DEFAULT 0x55555550 -#define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_OFFSET 0x14c +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_OFFSET 0x150 +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_DEFAULT 0x55550000 +#define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_OFFSET 0x154 #define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_DEFAULT 0x55555000 -#define GC_FUSE_FW_DEFINED_BROM_CONFIG0_OFFSET 0x150 +#define GC_FUSE_FW_DEFINED_BROM_CONFIG0_OFFSET 0x158 #define GC_FUSE_FW_DEFINED_BROM_CONFIG0_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_BROM_CONFIG1_OFFSET 0x154 +#define GC_FUSE_FW_DEFINED_BROM_CONFIG1_OFFSET 0x15c #define GC_FUSE_FW_DEFINED_BROM_CONFIG1_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_OFFSET 0x158 +#define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_OFFSET 0x160 #define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_OFFSET 0x15c +#define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_OFFSET 0x164 #define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_CLK10HZ_COUNT_OFFSET 0x160 +#define GC_FUSE_RBOX_CLK10HZ_COUNT_OFFSET 0x168 #define GC_FUSE_RBOX_CLK10HZ_COUNT_DEFAULT 0x55550000 -#define GC_FUSE_RBOX_SHORT_DELAY_COUNT_OFFSET 0x164 +#define GC_FUSE_RBOX_SHORT_DELAY_COUNT_OFFSET 0x16c #define GC_FUSE_RBOX_SHORT_DELAY_COUNT_DEFAULT 0x55550000 -#define GC_FUSE_RBOX_LONG_DELAY_COUNT_OFFSET 0x168 +#define GC_FUSE_RBOX_LONG_DELAY_COUNT_OFFSET 0x170 #define GC_FUSE_RBOX_LONG_DELAY_COUNT_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_DEBOUNCE_PERIOD_OFFSET 0x16c +#define GC_FUSE_RBOX_DEBOUNCE_PERIOD_OFFSET 0x174 #define GC_FUSE_RBOX_DEBOUNCE_PERIOD_DEFAULT 0x55550000 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_OFFSET 0x170 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_OFFSET 0x178 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_OFFSET 0x174 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_OFFSET 0x17c #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_OFFSET 0x178 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_OFFSET 0x180 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_KEY_COMBO0_VAL_OFFSET 0x17c +#define GC_FUSE_RBOX_KEY_COMBO0_VAL_OFFSET 0x184 #define GC_FUSE_RBOX_KEY_COMBO0_VAL_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_KEY_COMBO1_VAL_OFFSET 0x180 +#define GC_FUSE_RBOX_KEY_COMBO1_VAL_OFFSET 0x188 #define GC_FUSE_RBOX_KEY_COMBO1_VAL_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_KEY_COMBO2_VAL_OFFSET 0x184 +#define GC_FUSE_RBOX_KEY_COMBO2_VAL_OFFSET 0x18c #define GC_FUSE_RBOX_KEY_COMBO2_VAL_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_KEY_COMBO0_HOLD_OFFSET 0x188 +#define GC_FUSE_RBOX_KEY_COMBO0_HOLD_OFFSET 0x190 #define GC_FUSE_RBOX_KEY_COMBO0_HOLD_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_KEY_COMBO1_HOLD_OFFSET 0x18c +#define GC_FUSE_RBOX_KEY_COMBO1_HOLD_OFFSET 0x194 #define GC_FUSE_RBOX_KEY_COMBO1_HOLD_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_KEY_COMBO2_HOLD_OFFSET 0x190 +#define GC_FUSE_RBOX_KEY_COMBO2_HOLD_OFFSET 0x198 #define GC_FUSE_RBOX_KEY_COMBO2_HOLD_DEFAULT 0x55555500 -#define GC_FUSE_RBOX_BLOCK_KEY0_SEL_OFFSET 0x194 +#define GC_FUSE_RBOX_BLOCK_KEY0_SEL_OFFSET 0x19c #define GC_FUSE_RBOX_BLOCK_KEY0_SEL_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_BLOCK_KEY1_SEL_OFFSET 0x198 +#define GC_FUSE_RBOX_BLOCK_KEY1_SEL_OFFSET 0x1a0 #define GC_FUSE_RBOX_BLOCK_KEY1_SEL_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_BLOCK_KEY0_VAL_OFFSET 0x19c +#define GC_FUSE_RBOX_BLOCK_KEY0_VAL_OFFSET 0x1a4 #define GC_FUSE_RBOX_BLOCK_KEY0_VAL_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_BLOCK_KEY1_VAL_OFFSET 0x1a0 +#define GC_FUSE_RBOX_BLOCK_KEY1_VAL_OFFSET 0x1a8 #define GC_FUSE_RBOX_BLOCK_KEY1_VAL_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_AC_PRESENT_OFFSET 0x1a4 +#define GC_FUSE_RBOX_POL_AC_PRESENT_OFFSET 0x1ac #define GC_FUSE_RBOX_POL_AC_PRESENT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_PWRB_IN_OFFSET 0x1a8 +#define GC_FUSE_RBOX_POL_PWRB_IN_OFFSET 0x1b0 #define GC_FUSE_RBOX_POL_PWRB_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_PWRB_OUT_OFFSET 0x1ac +#define GC_FUSE_RBOX_POL_PWRB_OUT_OFFSET 0x1b4 #define GC_FUSE_RBOX_POL_PWRB_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_KEY0_IN_OFFSET 0x1b0 +#define GC_FUSE_RBOX_POL_KEY0_IN_OFFSET 0x1b8 #define GC_FUSE_RBOX_POL_KEY0_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_KEY0_OUT_OFFSET 0x1b4 +#define GC_FUSE_RBOX_POL_KEY0_OUT_OFFSET 0x1bc #define GC_FUSE_RBOX_POL_KEY0_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_KEY1_IN_OFFSET 0x1b8 +#define GC_FUSE_RBOX_POL_KEY1_IN_OFFSET 0x1c0 #define GC_FUSE_RBOX_POL_KEY1_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_KEY1_OUT_OFFSET 0x1bc +#define GC_FUSE_RBOX_POL_KEY1_OUT_OFFSET 0x1c4 #define GC_FUSE_RBOX_POL_KEY1_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_EC_RST_OFFSET 0x1c0 +#define GC_FUSE_RBOX_POL_EC_RST_OFFSET 0x1c8 #define GC_FUSE_RBOX_POL_EC_RST_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_POL_BATT_DISABLE_OFFSET 0x1c4 +#define GC_FUSE_RBOX_POL_BATT_DISABLE_OFFSET 0x1cc #define GC_FUSE_RBOX_POL_BATT_DISABLE_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_AC_PRESENT_OFFSET 0x1c8 +#define GC_FUSE_RBOX_TERM_AC_PRESENT_OFFSET 0x1d0 #define GC_FUSE_RBOX_TERM_AC_PRESENT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_ENTERING_RW_OFFSET 0x1cc +#define GC_FUSE_RBOX_TERM_ENTERING_RW_OFFSET 0x1d4 #define GC_FUSE_RBOX_TERM_ENTERING_RW_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_PWRB_IN_OFFSET 0x1d0 +#define GC_FUSE_RBOX_TERM_PWRB_IN_OFFSET 0x1d8 #define GC_FUSE_RBOX_TERM_PWRB_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_PWRB_OUT_OFFSET 0x1d4 +#define GC_FUSE_RBOX_TERM_PWRB_OUT_OFFSET 0x1dc #define GC_FUSE_RBOX_TERM_PWRB_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_KEY0_IN_OFFSET 0x1d8 +#define GC_FUSE_RBOX_TERM_KEY0_IN_OFFSET 0x1e0 #define GC_FUSE_RBOX_TERM_KEY0_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_KEY0_OUT_OFFSET 0x1dc +#define GC_FUSE_RBOX_TERM_KEY0_OUT_OFFSET 0x1e4 #define GC_FUSE_RBOX_TERM_KEY0_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_KEY1_IN_OFFSET 0x1e0 +#define GC_FUSE_RBOX_TERM_KEY1_IN_OFFSET 0x1e8 #define GC_FUSE_RBOX_TERM_KEY1_IN_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_TERM_KEY1_OUT_OFFSET 0x1e4 +#define GC_FUSE_RBOX_TERM_KEY1_OUT_OFFSET 0x1ec #define GC_FUSE_RBOX_TERM_KEY1_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DRIVE_PWRB_OUT_OFFSET 0x1e8 +#define GC_FUSE_RBOX_DRIVE_PWRB_OUT_OFFSET 0x1f0 #define GC_FUSE_RBOX_DRIVE_PWRB_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DRIVE_KEY0_OUT_OFFSET 0x1ec +#define GC_FUSE_RBOX_DRIVE_KEY0_OUT_OFFSET 0x1f4 #define GC_FUSE_RBOX_DRIVE_KEY0_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DRIVE_KEY1_OUT_OFFSET 0x1f0 +#define GC_FUSE_RBOX_DRIVE_KEY1_OUT_OFFSET 0x1f8 #define GC_FUSE_RBOX_DRIVE_KEY1_OUT_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DRIVE_EC_RST_OFFSET 0x1f4 +#define GC_FUSE_RBOX_DRIVE_EC_RST_OFFSET 0x1fc #define GC_FUSE_RBOX_DRIVE_EC_RST_DEFAULT 0x55555554 -#define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_OFFSET 0x1f8 +#define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_OFFSET 0x200 #define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_DEFAULT 0x55555554 -#define GC_FUSE_BNK4_INTG_CHKSUM_OFFSET 0x1fc +#define GC_FUSE_BNK4_INTG_CHKSUM_OFFSET 0x204 #define GC_FUSE_BNK4_INTG_CHKSUM_DEFAULT 0x55000000 -#define GC_FUSE_BNK4_INTG_LOCK_OFFSET 0x200 +#define GC_FUSE_BNK4_INTG_LOCK_OFFSET 0x208 #define GC_FUSE_BNK4_INTG_LOCK_DEFAULT 0x55555550 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_OFFSET 0x204 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_OFFSET 0x20c #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_OFFSET 0x208 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_OFFSET 0x210 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_OFFSET 0x20c +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_OFFSET 0x214 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_OFFSET 0x210 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_OFFSET 0x218 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_OFFSET 0x214 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_OFFSET 0x21c #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_OFFSET 0x218 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_OFFSET 0x220 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_OFFSET 0x21c -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_DEFAULT 0x55555500 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_OFFSET 0x220 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_DEFAULT 0x55555540 -#define GC_FUSE_PROG_BNK0_INTG_CHKSUM_OFFSET 0x224 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_OFFSET 0x224 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_DEFAULT 0x55555540 +#define GC_FUSE_PROG_BNK0_INTG_CHKSUM_OFFSET 0x228 #define GC_FUSE_PROG_BNK0_INTG_CHKSUM_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK0_INTG_LOCK_OFFSET 0x228 +#define GC_FUSE_PROG_BNK0_INTG_LOCK_OFFSET 0x22c #define GC_FUSE_PROG_BNK0_INTG_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP0_OFFSET 0x22c +#define GC_FUSE_PROG_DS_GRP0_OFFSET 0x230 #define GC_FUSE_PROG_DS_GRP0_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP1_OFFSET 0x230 +#define GC_FUSE_PROG_DS_GRP1_OFFSET 0x234 #define GC_FUSE_PROG_DS_GRP1_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP2_OFFSET 0x234 +#define GC_FUSE_PROG_DS_GRP2_OFFSET 0x238 #define GC_FUSE_PROG_DS_GRP2_DEFAULT 0x0 -#define GC_FUSE_PROG_DEV_ID0_OFFSET 0x238 +#define GC_FUSE_PROG_DEV_ID0_OFFSET 0x23c #define GC_FUSE_PROG_DEV_ID0_DEFAULT 0x0 -#define GC_FUSE_PROG_DEV_ID1_OFFSET 0x23c +#define GC_FUSE_PROG_DEV_ID1_OFFSET 0x240 #define GC_FUSE_PROG_DEV_ID1_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK1_INTG_CHKSUM_OFFSET 0x240 +#define GC_FUSE_PROG_BNK1_INTG_CHKSUM_OFFSET 0x244 #define GC_FUSE_PROG_BNK1_INTG_CHKSUM_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK1_INTG_LOCK_OFFSET 0x244 +#define GC_FUSE_PROG_BNK1_INTG_LOCK_OFFSET 0x248 #define GC_FUSE_PROG_BNK1_INTG_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_OVRD_OFFSET 0x248 +#define GC_FUSE_PROG_LB0_POST_OVRD_OFFSET 0x24c #define GC_FUSE_PROG_LB0_POST_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_PATCNT_OFFSET 0x24c +#define GC_FUSE_PROG_LB0_POST_PATCNT_OFFSET 0x250 #define GC_FUSE_PROG_LB0_POST_PATCNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_OFFSET 0x250 +#define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_OFFSET 0x254 #define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_OFFSET 0x254 +#define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_OFFSET 0x258 #define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_OVRD_OFFSET 0x258 +#define GC_FUSE_PROG_LB1_POST_OVRD_OFFSET 0x25c #define GC_FUSE_PROG_LB1_POST_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_PATCNT_OFFSET 0x25c +#define GC_FUSE_PROG_LB1_POST_PATCNT_OFFSET 0x260 #define GC_FUSE_PROG_LB1_POST_PATCNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_OFFSET 0x260 +#define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_OFFSET 0x264 #define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_OFFSET 0x264 +#define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_OFFSET 0x268 #define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_OVRD_OFFSET 0x268 +#define GC_FUSE_PROG_LB2_POST_OVRD_OFFSET 0x26c #define GC_FUSE_PROG_LB2_POST_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_PATCNT_OFFSET 0x26c +#define GC_FUSE_PROG_LB2_POST_PATCNT_OFFSET 0x270 #define GC_FUSE_PROG_LB2_POST_PATCNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_OFFSET 0x270 +#define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_OFFSET 0x274 #define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_OFFSET 0x274 +#define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_OFFSET 0x278 #define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_OVRD_OFFSET 0x278 +#define GC_FUSE_PROG_LB3_POST_OVRD_OFFSET 0x27c #define GC_FUSE_PROG_LB3_POST_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_PATCNT_OFFSET 0x27c +#define GC_FUSE_PROG_LB3_POST_PATCNT_OFFSET 0x280 #define GC_FUSE_PROG_LB3_POST_PATCNT_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_OFFSET 0x280 +#define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_OFFSET 0x284 #define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_OFFSET 0x284 +#define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_OFFSET 0x288 #define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_POST_SEQ_OFFSET 0x288 +#define GC_FUSE_PROG_LB4_POST_OVRD_OFFSET 0x28c +#define GC_FUSE_PROG_LB4_POST_OVRD_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_PATCNT_OFFSET 0x290 +#define GC_FUSE_PROG_LB4_POST_PATCNT_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_OFFSET 0x294 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_OFFSET 0x298 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_DEFAULT 0x0 +#define GC_FUSE_PROG_MBIST_POST_SEQ_OFFSET 0x29c #define GC_FUSE_PROG_MBIST_POST_SEQ_DEFAULT 0x0 -#define GC_FUSE_PROG_LBIST_POST_SEQ_OFFSET 0x28c +#define GC_FUSE_PROG_LBIST_POST_SEQ_OFFSET 0x2a0 #define GC_FUSE_PROG_LBIST_POST_SEQ_DEFAULT 0x0 -#define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_OFFSET 0x290 +#define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_OFFSET 0x2a4 #define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_OFFSET 0x294 +#define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_OFFSET 0x2a8 #define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_OFFSET 0x298 +#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_OFFSET 0x2ac #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_OFFSET 0x29c +#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_OFFSET 0x2b0 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_DEFAULT 0x0 -#define GC_FUSE_PROG_TAP_DISABLE_OFFSET 0x2a0 +#define GC_FUSE_PROG_TAP_DISABLE_OFFSET 0x2b4 #define GC_FUSE_PROG_TAP_DISABLE_DEFAULT 0x0 -#define GC_FUSE_PROG_RNGBIST_AR_EN_OFFSET 0x2a4 +#define GC_FUSE_PROG_RNGBIST_AR_EN_OFFSET 0x2b8 #define GC_FUSE_PROG_RNGBIST_AR_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_TESTMODE_KEYS_EN_OFFSET 0x2a8 +#define GC_FUSE_PROG_TESTMODE_KEYS_EN_OFFSET 0x2bc #define GC_FUSE_PROG_TESTMODE_KEYS_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_PKG_ID_OFFSET 0x2ac +#define GC_FUSE_PROG_PKG_ID_OFFSET 0x2c0 #define GC_FUSE_PROG_PKG_ID_DEFAULT 0x0 -#define GC_FUSE_PROG_BIN_ID_OFFSET 0x2b0 +#define GC_FUSE_PROG_BIN_ID_OFFSET 0x2c4 #define GC_FUSE_PROG_BIN_ID_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_OFFSET 0x2b4 +#define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_OFFSET 0x2c8 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_OFFSET 0x2b8 +#define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_OFFSET 0x2cc #define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_OFFSET 0x2bc +#define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_OFFSET 0x2d0 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_OFFSET 0x2c0 +#define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_OFFSET 0x2d4 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_OFFSET 0x2c4 +#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_OFFSET 0x2d8 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_OFFSET 0x2c8 +#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_OFFSET 0x2dc #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_OFFSET 0x2cc +#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_OFFSET 0x2e0 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_OFFSET 0x2d0 +#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_OFFSET 0x2e4 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_OFFSET 0x2d4 +#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_OFFSET 0x2e8 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_OFFSET 0x2d8 +#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_OFFSET 0x2ec #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREG_REG_EN_OFFSET 0x2dc +#define GC_FUSE_PROG_SEL_VREG_REG_EN_OFFSET 0x2f0 #define GC_FUSE_PROG_SEL_VREG_REG_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_REG_OFFSET 0x2e0 +#define GC_FUSE_PROG_SEL_VREF_REG_OFFSET 0x2f4 #define GC_FUSE_PROG_SEL_VREF_REG_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_BATMON_EN_OFFSET 0x2e4 +#define GC_FUSE_PROG_SEL_VREF_BATMON_EN_OFFSET 0x2f8 #define GC_FUSE_PROG_SEL_VREF_BATMON_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_BATMON_OFFSET 0x2e8 +#define GC_FUSE_PROG_SEL_VREF_BATMON_OFFSET 0x2fc #define GC_FUSE_PROG_SEL_VREF_BATMON_DEFAULT 0x0 -#define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_OFFSET 0x2ec +#define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_OFFSET 0x300 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_X_OSC_LDO_CTRL_OFFSET 0x2f0 +#define GC_FUSE_PROG_X_OSC_LDO_CTRL_OFFSET 0x304 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_DEFAULT 0x0 -#define GC_FUSE_PROG_TEMP_OFFSET_CAL_OFFSET 0x2f4 +#define GC_FUSE_PROG_TEMP_OFFSET_CAL_OFFSET 0x308 #define GC_FUSE_PROG_TEMP_OFFSET_CAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_OFFSET 0x2f8 +#define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_OFFSET 0x30c #define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_LDO_CTRL_OFFSET 0x2fc +#define GC_FUSE_PROG_TRNG_LDO_CTRL_OFFSET 0x310 #define GC_FUSE_PROG_TRNG_LDO_CTRL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_OFFSET 0x300 +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_OFFSET 0x314 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_OFFSET 0x304 +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_OFFSET 0x318 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_DEFAULT 0x0 -#define GC_FUSE_PROG_EXT_XTAL_PDB_OFFSET 0x308 +#define GC_FUSE_PROG_EXT_XTAL_PDB_OFFSET 0x31c #define GC_FUSE_PROG_EXT_XTAL_PDB_DEFAULT 0x0 -#define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_OFFSET 0x30c +#define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_OFFSET 0x320 #define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_DEFAULT 0x0 -#define GC_FUSE_PROG_OBFUSCATION_EN_OFFSET 0x310 +#define GC_FUSE_PROG_OBFUSCATION_EN_OFFSET 0x324 #define GC_FUSE_PROG_OBFUSCATION_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS0_OFFSET 0x314 +#define GC_FUSE_PROG_OBS0_OFFSET 0x328 #define GC_FUSE_PROG_OBS0_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS1_OFFSET 0x318 +#define GC_FUSE_PROG_OBS1_OFFSET 0x32c #define GC_FUSE_PROG_OBS1_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS2_OFFSET 0x31c +#define GC_FUSE_PROG_OBS2_OFFSET 0x330 #define GC_FUSE_PROG_OBS2_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS3_OFFSET 0x320 +#define GC_FUSE_PROG_OBS3_OFFSET 0x334 #define GC_FUSE_PROG_OBS3_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS4_OFFSET 0x324 +#define GC_FUSE_PROG_OBS4_OFFSET 0x338 #define GC_FUSE_PROG_OBS4_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS5_OFFSET 0x328 +#define GC_FUSE_PROG_OBS5_OFFSET 0x33c #define GC_FUSE_PROG_OBS5_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS6_OFFSET 0x32c +#define GC_FUSE_PROG_OBS6_OFFSET 0x340 #define GC_FUSE_PROG_OBS6_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS7_OFFSET 0x330 +#define GC_FUSE_PROG_OBS7_OFFSET 0x344 #define GC_FUSE_PROG_OBS7_DEFAULT 0x0 -#define GC_FUSE_PROG_HIK_CREATE_LOCK_OFFSET 0x334 +#define GC_FUSE_PROG_HIK_CREATE_LOCK_OFFSET 0x348 #define GC_FUSE_PROG_HIK_CREATE_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK2_INTG_CHKSUM_OFFSET 0x338 +#define GC_FUSE_PROG_BNK2_INTG_CHKSUM_OFFSET 0x34c #define GC_FUSE_PROG_BNK2_INTG_CHKSUM_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK2_INTG_LOCK_OFFSET 0x33c +#define GC_FUSE_PROG_BNK2_INTG_LOCK_OFFSET 0x350 #define GC_FUSE_PROG_BNK2_INTG_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_TESTMODE_OTPW_DIS_OFFSET 0x340 +#define GC_FUSE_PROG_TESTMODE_OTPW_DIS_OFFSET 0x354 #define GC_FUSE_PROG_TESTMODE_OTPW_DIS_DEFAULT 0x0 -#define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_OFFSET 0x344 +#define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_OFFSET 0x358 #define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_DEFAULT 0x0 -#define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_OFFSET 0x348 +#define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_OFFSET 0x35c #define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_ALERT_RSP_CFG_OFFSET 0x34c +#define GC_FUSE_PROG_ALERT_RSP_CFG_OFFSET 0x360 #define GC_FUSE_PROG_ALERT_RSP_CFG_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK3_INTG_CHKSUM_OFFSET 0x350 +#define GC_FUSE_PROG_BNK3_INTG_CHKSUM_OFFSET 0x364 #define GC_FUSE_PROG_BNK3_INTG_CHKSUM_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK3_INTG_LOCK_OFFSET 0x354 +#define GC_FUSE_PROG_BNK3_INTG_LOCK_OFFSET 0x368 #define GC_FUSE_PROG_BNK3_INTG_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_OFFSET 0x358 +#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_OFFSET 0x36c #define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_OFFSET 0x35c -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_OFFSET 0x360 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_OFFSET 0x364 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_OFFSET 0x368 +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_OFFSET 0x370 +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_DEFAULT 0x0 +#define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_OFFSET 0x374 #define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_OFFSET 0x36c +#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_OFFSET 0x378 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_OFFSET 0x370 +#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_OFFSET 0x37c #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_OFFSET 0x374 +#define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_OFFSET 0x380 #define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_OFFSET 0x378 +#define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_OFFSET 0x384 #define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_OFFSET 0x37c +#define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_OFFSET 0x388 #define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_OFFSET 0x380 +#define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_OFFSET 0x38c #define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_OFFSET 0x384 +#define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_OFFSET 0x390 #define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_OFFSET 0x388 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_OFFSET 0x394 #define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_OFFSET 0x38c +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_OFFSET 0x398 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_OFFSET 0x390 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_OFFSET 0x39c #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_OFFSET 0x394 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_OFFSET 0x3a0 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_OFFSET 0x398 +#define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_OFFSET 0x3a4 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_OFFSET 0x39c +#define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_OFFSET 0x3a8 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_OFFSET 0x3a0 +#define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_OFFSET 0x3ac #define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_OFFSET 0x3a4 +#define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_OFFSET 0x3b0 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_OFFSET 0x3a8 +#define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_OFFSET 0x3b4 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_OFFSET 0x3ac +#define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_OFFSET 0x3b8 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_OFFSET 0x3b0 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_OFFSET 0x3bc #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_OFFSET 0x3b4 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_OFFSET 0x3c0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_OFFSET 0x3b8 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_OFFSET 0x3c4 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_OFFSET 0x3bc +#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_OFFSET 0x3c8 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_OFFSET 0x3c0 +#define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_OFFSET 0x3cc #define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_PWRB_IN_OFFSET 0x3c4 +#define GC_FUSE_PROG_RBOX_POL_PWRB_IN_OFFSET 0x3d0 #define GC_FUSE_PROG_RBOX_POL_PWRB_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_OFFSET 0x3c8 +#define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_OFFSET 0x3d4 #define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY0_IN_OFFSET 0x3cc +#define GC_FUSE_PROG_RBOX_POL_KEY0_IN_OFFSET 0x3d8 #define GC_FUSE_PROG_RBOX_POL_KEY0_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_OFFSET 0x3d0 +#define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_OFFSET 0x3dc #define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY1_IN_OFFSET 0x3d4 +#define GC_FUSE_PROG_RBOX_POL_KEY1_IN_OFFSET 0x3e0 #define GC_FUSE_PROG_RBOX_POL_KEY1_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_OFFSET 0x3d8 +#define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_OFFSET 0x3e4 #define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_EC_RST_OFFSET 0x3dc +#define GC_FUSE_PROG_RBOX_POL_EC_RST_OFFSET 0x3e8 #define GC_FUSE_PROG_RBOX_POL_EC_RST_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_OFFSET 0x3e0 +#define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_OFFSET 0x3ec #define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_OFFSET 0x3e4 +#define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_OFFSET 0x3f0 #define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_OFFSET 0x3e8 +#define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_OFFSET 0x3f4 #define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_OFFSET 0x3ec +#define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_OFFSET 0x3f8 #define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_OFFSET 0x3f0 +#define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_OFFSET 0x3fc #define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_OFFSET 0x3f4 +#define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_OFFSET 0x400 #define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_OFFSET 0x3f8 +#define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_OFFSET 0x404 #define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_OFFSET 0x3fc +#define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_OFFSET 0x408 #define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_OFFSET 0x400 +#define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_OFFSET 0x40c #define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_OFFSET 0x404 +#define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_OFFSET 0x410 #define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_OFFSET 0x408 +#define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_OFFSET 0x414 #define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_OFFSET 0x40c +#define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_OFFSET 0x418 #define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_OFFSET 0x410 +#define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_OFFSET 0x41c #define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_OFFSET 0x414 +#define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_OFFSET 0x420 #define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK4_INTG_CHKSUM_OFFSET 0x418 +#define GC_FUSE_PROG_BNK4_INTG_CHKSUM_OFFSET 0x424 #define GC_FUSE_PROG_BNK4_INTG_CHKSUM_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK4_INTG_LOCK_OFFSET 0x41c +#define GC_FUSE_PROG_BNK4_INTG_LOCK_OFFSET 0x428 #define GC_FUSE_PROG_BNK4_INTG_LOCK_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_OFFSET 0x420 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_OFFSET 0x42c #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_OFFSET 0x424 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_OFFSET 0x430 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_OFFSET 0x428 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_OFFSET 0x434 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_OFFSET 0x42c +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_OFFSET 0x438 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_OFFSET 0x430 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_OFFSET 0x43c #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_OFFSET 0x434 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_OFFSET 0x440 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_OFFSET 0x438 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_OFFSET 0x444 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_OFFSET 0x43c -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_DEFAULT 0x0 #define GC_GLOBALSEC_CPU0_D_REGION0_CTRL_OFFSET 0x0 #define GC_GLOBALSEC_CPU0_D_REGION0_CTRL_DEFAULT 0x7 #define GC_GLOBALSEC_CPU0_D_REGION1_CTRL_OFFSET 0x4 @@ -3991,37 +3995,37 @@ #define GC_PMU_RST1_OFFSET 0x9c #define GC_PMU_RST1_DEFAULT 0x0 #define GC_PMU_PWRDN_SCRATCH0_OFFSET 0xa0 -#define GC_PMU_PWRDN_SCRATCH0_DEFAULT 0x6dcadfc4 +#define GC_PMU_PWRDN_SCRATCH0_DEFAULT 0x106e0415 #define GC_PMU_PWRDN_SCRATCH1_OFFSET 0xa4 -#define GC_PMU_PWRDN_SCRATCH1_DEFAULT 0x3c5efbfb +#define GC_PMU_PWRDN_SCRATCH1_DEFAULT 0x530f5692 #define GC_PMU_PWRDN_SCRATCH2_OFFSET 0xa8 -#define GC_PMU_PWRDN_SCRATCH2_DEFAULT 0x2090fb0d +#define GC_PMU_PWRDN_SCRATCH2_DEFAULT 0x9967e607 #define GC_PMU_PWRDN_SCRATCH3_OFFSET 0xac -#define GC_PMU_PWRDN_SCRATCH3_DEFAULT 0x561d44c7 +#define GC_PMU_PWRDN_SCRATCH3_DEFAULT 0x7cb2ebc0 #define GC_PMU_PWRDN_SCRATCH4_OFFSET 0xb0 -#define GC_PMU_PWRDN_SCRATCH4_DEFAULT 0x52e631b +#define GC_PMU_PWRDN_SCRATCH4_DEFAULT 0x73c83a26 #define GC_PMU_PWRDN_SCRATCH5_OFFSET 0xb4 -#define GC_PMU_PWRDN_SCRATCH5_DEFAULT 0x4fe0eda3 +#define GC_PMU_PWRDN_SCRATCH5_DEFAULT 0x4f60988f #define GC_PMU_PWRDN_SCRATCH6_OFFSET 0xb8 -#define GC_PMU_PWRDN_SCRATCH6_DEFAULT 0x232352d7 +#define GC_PMU_PWRDN_SCRATCH6_DEFAULT 0x16ca833b #define GC_PMU_PWRDN_SCRATCH7_OFFSET 0xbc -#define GC_PMU_PWRDN_SCRATCH7_DEFAULT 0x943d90d4 +#define GC_PMU_PWRDN_SCRATCH7_DEFAULT 0x9a860aee #define GC_PMU_PWRDN_SCRATCH8_OFFSET 0xc0 -#define GC_PMU_PWRDN_SCRATCH8_DEFAULT 0x511d8933 +#define GC_PMU_PWRDN_SCRATCH8_DEFAULT 0x426fc244 #define GC_PMU_PWRDN_SCRATCH9_OFFSET 0xc4 -#define GC_PMU_PWRDN_SCRATCH9_DEFAULT 0x1fa46c1b +#define GC_PMU_PWRDN_SCRATCH9_DEFAULT 0x5011eb #define GC_PMU_PWRDN_SCRATCH10_OFFSET 0xc8 -#define GC_PMU_PWRDN_SCRATCH10_DEFAULT 0x38bf05bc +#define GC_PMU_PWRDN_SCRATCH10_DEFAULT 0x49e406cf #define GC_PMU_PWRDN_SCRATCH11_OFFSET 0xcc -#define GC_PMU_PWRDN_SCRATCH11_DEFAULT 0x53dd4e04 +#define GC_PMU_PWRDN_SCRATCH11_DEFAULT 0x1485f1bc #define GC_PMU_PWRDN_SCRATCH12_OFFSET 0xd0 -#define GC_PMU_PWRDN_SCRATCH12_DEFAULT 0x6505d80 +#define GC_PMU_PWRDN_SCRATCH12_DEFAULT 0x3aa74e9 #define GC_PMU_PWRDN_SCRATCH13_OFFSET 0xd4 -#define GC_PMU_PWRDN_SCRATCH13_DEFAULT 0x4f6e92d0 +#define GC_PMU_PWRDN_SCRATCH13_DEFAULT 0x4f7b244b #define GC_PMU_PWRDN_SCRATCH14_OFFSET 0xd8 -#define GC_PMU_PWRDN_SCRATCH14_DEFAULT 0x24f5edda +#define GC_PMU_PWRDN_SCRATCH14_DEFAULT 0x5531c318 #define GC_PMU_PWRDN_SCRATCH15_OFFSET 0xdc -#define GC_PMU_PWRDN_SCRATCH15_DEFAULT 0x411941a7 +#define GC_PMU_PWRDN_SCRATCH15_DEFAULT 0x117b0355 #define GC_PMU_PWRDN_SCRATCH16_OFFSET 0xe0 #define GC_PMU_PWRDN_SCRATCH16_DEFAULT 0x0 #define GC_PMU_PWRDN_SCRATCH17_OFFSET 0xe4 @@ -4499,11 +4503,11 @@ #define GC_SWDP_HEADER_MD5SUM_OFFSET 0x28 #define GC_SWDP_HEADER_MD5SUM_DEFAULT 0x0 #define GC_SWDP_P4_LAST_SYNC_OFFSET 0x2c -#define GC_SWDP_P4_LAST_SYNC_DEFAULT 0x13157 +#define GC_SWDP_P4_LAST_SYNC_DEFAULT 0x13472 #define GC_SWDP_BUILD_DATE_OFFSET 0x30 -#define GC_SWDP_BUILD_DATE_DEFAULT 0x1337af5 +#define GC_SWDP_BUILD_DATE_DEFAULT 0x1337b40 #define GC_SWDP_BUILD_TIME_OFFSET 0x34 -#define GC_SWDP_BUILD_TIME_DEFAULT 0xa2f1 +#define GC_SWDP_BUILD_TIME_DEFAULT 0xa305 #define GC_SWDP_TEST_PORT_DISABLE_OFFSET 0x38 #define GC_SWDP_TEST_PORT_DISABLE_DEFAULT 0x0 #define GC_SWDP_FPGA_CONFIG_OFFSET 0x3c @@ -4737,7 +4741,7 @@ #define GC_TIMEUS_CUR_MINOR_CNTR3_OFFSET 0x418 #define GC_TIMEUS_CUR_MINOR_CNTR3_DEFAULT 0x0 #define GC_TRNG_VERSION_OFFSET 0x0 -#define GC_TRNG_VERSION_DEFAULT 0x2c012f4d +#define GC_TRNG_VERSION_DEFAULT 0x2d013316 #define GC_TRNG_INT_ENABLE_OFFSET 0x4 #define GC_TRNG_INT_ENABLE_DEFAULT 0x0 #define GC_TRNG_INT_STATE_OFFSET 0x8 @@ -7871,1181 +7875,1191 @@ #define GC_FUSE_LB3_POST_WARMUP_CNT_VAL_SIZE 0x2 #define GC_FUSE_LB3_POST_WARMUP_CNT_VAL_DEFAULT 0x0 #define GC_FUSE_LB3_POST_WARMUP_CNT_VAL_OFFSET 0x90 +#define GC_FUSE_LB4_POST_OVRD_VAL_LSB 0x0 +#define GC_FUSE_LB4_POST_OVRD_VAL_MASK 0x7 +#define GC_FUSE_LB4_POST_OVRD_VAL_SIZE 0x3 +#define GC_FUSE_LB4_POST_OVRD_VAL_DEFAULT 0x0 +#define GC_FUSE_LB4_POST_OVRD_VAL_OFFSET 0x94 +#define GC_FUSE_LB4_POST_PATCNT_VAL_LSB 0x0 +#define GC_FUSE_LB4_POST_PATCNT_VAL_MASK 0x3 +#define GC_FUSE_LB4_POST_PATCNT_VAL_SIZE 0x2 +#define GC_FUSE_LB4_POST_PATCNT_VAL_DEFAULT 0x0 +#define GC_FUSE_LB4_POST_PATCNT_VAL_OFFSET 0x98 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_VAL_LSB 0x0 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_VAL_MASK 0x7 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_VAL_SIZE 0x3 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 +#define GC_FUSE_LB4_POST_WARMUP_OVRD_VAL_OFFSET 0x9c +#define GC_FUSE_LB4_POST_WARMUP_CNT_VAL_LSB 0x0 +#define GC_FUSE_LB4_POST_WARMUP_CNT_VAL_MASK 0x3 +#define GC_FUSE_LB4_POST_WARMUP_CNT_VAL_SIZE 0x2 +#define GC_FUSE_LB4_POST_WARMUP_CNT_VAL_DEFAULT 0x0 +#define GC_FUSE_LB4_POST_WARMUP_CNT_VAL_OFFSET 0xa0 #define GC_FUSE_MBIST_POST_SEQ_VAL_LSB 0x0 #define GC_FUSE_MBIST_POST_SEQ_VAL_MASK 0x1ffffff #define GC_FUSE_MBIST_POST_SEQ_VAL_SIZE 0x19 #define GC_FUSE_MBIST_POST_SEQ_VAL_DEFAULT 0x0 -#define GC_FUSE_MBIST_POST_SEQ_VAL_OFFSET 0x94 +#define GC_FUSE_MBIST_POST_SEQ_VAL_OFFSET 0xa4 #define GC_FUSE_LBIST_POST_SEQ_VAL_LSB 0x0 #define GC_FUSE_LBIST_POST_SEQ_VAL_MASK 0x1ffffff #define GC_FUSE_LBIST_POST_SEQ_VAL_SIZE 0x19 #define GC_FUSE_LBIST_POST_SEQ_VAL_DEFAULT 0x0 -#define GC_FUSE_LBIST_POST_SEQ_VAL_OFFSET 0x98 +#define GC_FUSE_LBIST_POST_SEQ_VAL_OFFSET 0xa8 #define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_LSB 0x0 #define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_MASK 0x7 #define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_SIZE 0x3 #define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_OFFSET 0x9c +#define GC_FUSE_LBIST_VIA_TAP_DIS_VAL_OFFSET 0xac #define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_LSB 0x0 #define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_MASK 0x7 #define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_SIZE 0x3 #define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_OFFSET 0xa0 +#define GC_FUSE_MBIST_VIA_TAP_DIS_VAL_OFFSET 0xb0 #define GC_FUSE_TAP_DISABLE_VAL_LSB 0x0 #define GC_FUSE_TAP_DISABLE_VAL_MASK 0x7 #define GC_FUSE_TAP_DISABLE_VAL_SIZE 0x3 #define GC_FUSE_TAP_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_TAP_DISABLE_VAL_OFFSET 0xa4 +#define GC_FUSE_TAP_DISABLE_VAL_OFFSET 0xb4 #define GC_FUSE_RNGBIST_AR_EN_VAL_LSB 0x0 #define GC_FUSE_RNGBIST_AR_EN_VAL_MASK 0x7 #define GC_FUSE_RNGBIST_AR_EN_VAL_SIZE 0x3 #define GC_FUSE_RNGBIST_AR_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RNGBIST_AR_EN_VAL_OFFSET 0xa8 +#define GC_FUSE_RNGBIST_AR_EN_VAL_OFFSET 0xb8 #define GC_FUSE_TESTMODE_KEYS_EN_VAL_LSB 0x0 #define GC_FUSE_TESTMODE_KEYS_EN_VAL_MASK 0x7 #define GC_FUSE_TESTMODE_KEYS_EN_VAL_SIZE 0x3 #define GC_FUSE_TESTMODE_KEYS_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_TESTMODE_KEYS_EN_VAL_OFFSET 0xac +#define GC_FUSE_TESTMODE_KEYS_EN_VAL_OFFSET 0xbc #define GC_FUSE_PKG_ID_VAL_LSB 0x0 #define GC_FUSE_PKG_ID_VAL_MASK 0x7 #define GC_FUSE_PKG_ID_VAL_SIZE 0x3 #define GC_FUSE_PKG_ID_VAL_DEFAULT 0x0 -#define GC_FUSE_PKG_ID_VAL_OFFSET 0xb0 +#define GC_FUSE_PKG_ID_VAL_OFFSET 0xc0 #define GC_FUSE_BIN_ID_VAL_LSB 0x0 #define GC_FUSE_BIN_ID_VAL_MASK 0x7 #define GC_FUSE_BIN_ID_VAL_SIZE 0x3 #define GC_FUSE_BIN_ID_VAL_DEFAULT 0x0 -#define GC_FUSE_BIN_ID_VAL_OFFSET 0xb4 +#define GC_FUSE_BIN_ID_VAL_OFFSET 0xc4 #define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_OFFSET 0xb8 +#define GC_FUSE_RC_JTR_OSC48_CC_TRIM_VAL_OFFSET 0xc8 #define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_LSB 0x0 #define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_MASK 0x7 #define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_OFFSET 0xbc +#define GC_FUSE_RC_JTR_OSC48_CC_EN_VAL_OFFSET 0xcc #define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_OFFSET 0xc0 +#define GC_FUSE_RC_JTR_OSC60_CC_TRIM_VAL_OFFSET 0xd0 #define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_LSB 0x0 #define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_MASK 0x7 #define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_OFFSET 0xc4 +#define GC_FUSE_RC_JTR_OSC60_CC_EN_VAL_OFFSET 0xd4 #define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_OFFSET 0xc8 +#define GC_FUSE_RC_TIMER_OSC48_CC_TRIM_VAL_OFFSET 0xd8 #define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_LSB 0x0 #define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_MASK 0x7 #define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_OFFSET 0xcc +#define GC_FUSE_RC_TIMER_OSC48_CC_EN_VAL_OFFSET 0xdc #define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_LSB 0x0 #define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_MASK 0x1f #define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_SIZE 0x5 #define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_OFFSET 0xd0 +#define GC_FUSE_RC_TIMER_OSC48_FC_TRIM_VAL_OFFSET 0xe0 #define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_LSB 0x0 #define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_MASK 0x7 #define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_SIZE 0x3 #define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_OFFSET 0xd4 +#define GC_FUSE_RC_TIMER_OSC48_FC_EN_VAL_OFFSET 0xe4 #define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_OFFSET 0xd8 +#define GC_FUSE_RC_RTC_OSC256K_CC_TRIM_VAL_OFFSET 0xe8 #define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_LSB 0x0 #define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_MASK 0x7 #define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_OFFSET 0xdc +#define GC_FUSE_RC_RTC_OSC256K_CC_EN_VAL_OFFSET 0xec #define GC_FUSE_SEL_VREG_REG_EN_VAL_LSB 0x0 #define GC_FUSE_SEL_VREG_REG_EN_VAL_MASK 0x7 #define GC_FUSE_SEL_VREG_REG_EN_VAL_SIZE 0x3 #define GC_FUSE_SEL_VREG_REG_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_SEL_VREG_REG_EN_VAL_OFFSET 0xe0 +#define GC_FUSE_SEL_VREG_REG_EN_VAL_OFFSET 0xf0 #define GC_FUSE_SEL_VREF_REG_VAL_LSB 0x0 #define GC_FUSE_SEL_VREF_REG_VAL_MASK 0xf #define GC_FUSE_SEL_VREF_REG_VAL_SIZE 0x4 #define GC_FUSE_SEL_VREF_REG_VAL_DEFAULT 0x0 -#define GC_FUSE_SEL_VREF_REG_VAL_OFFSET 0xe4 +#define GC_FUSE_SEL_VREF_REG_VAL_OFFSET 0xf4 #define GC_FUSE_SEL_VREF_BATMON_EN_VAL_LSB 0x0 #define GC_FUSE_SEL_VREF_BATMON_EN_VAL_MASK 0x7 #define GC_FUSE_SEL_VREF_BATMON_EN_VAL_SIZE 0x3 #define GC_FUSE_SEL_VREF_BATMON_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_SEL_VREF_BATMON_EN_VAL_OFFSET 0xe8 +#define GC_FUSE_SEL_VREF_BATMON_EN_VAL_OFFSET 0xf8 #define GC_FUSE_SEL_VREF_BATMON_VAL_LSB 0x0 #define GC_FUSE_SEL_VREF_BATMON_VAL_MASK 0x7 #define GC_FUSE_SEL_VREF_BATMON_VAL_SIZE 0x3 #define GC_FUSE_SEL_VREF_BATMON_VAL_DEFAULT 0x0 -#define GC_FUSE_SEL_VREF_BATMON_VAL_OFFSET 0xec +#define GC_FUSE_SEL_VREF_BATMON_VAL_OFFSET 0xfc #define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_OFFSET 0xf0 +#define GC_FUSE_X_OSC_LDO_CTRL_EN_VAL_OFFSET 0x100 #define GC_FUSE_X_OSC_LDO_CTRL_VAL_LSB 0x0 #define GC_FUSE_X_OSC_LDO_CTRL_VAL_MASK 0xf #define GC_FUSE_X_OSC_LDO_CTRL_VAL_SIZE 0x4 #define GC_FUSE_X_OSC_LDO_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_X_OSC_LDO_CTRL_VAL_OFFSET 0xf4 +#define GC_FUSE_X_OSC_LDO_CTRL_VAL_OFFSET 0x104 #define GC_FUSE_TEMP_OFFSET_CAL_VAL_LSB 0x0 #define GC_FUSE_TEMP_OFFSET_CAL_VAL_MASK 0xfff #define GC_FUSE_TEMP_OFFSET_CAL_VAL_SIZE 0xc #define GC_FUSE_TEMP_OFFSET_CAL_VAL_DEFAULT 0x0 -#define GC_FUSE_TEMP_OFFSET_CAL_VAL_OFFSET 0xf8 +#define GC_FUSE_TEMP_OFFSET_CAL_VAL_OFFSET 0x108 #define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_OFFSET 0xfc +#define GC_FUSE_TRNG_LDO_CTRL_EN_VAL_OFFSET 0x10c #define GC_FUSE_TRNG_LDO_CTRL_VAL_LSB 0x0 #define GC_FUSE_TRNG_LDO_CTRL_VAL_MASK 0x1f #define GC_FUSE_TRNG_LDO_CTRL_VAL_SIZE 0x5 #define GC_FUSE_TRNG_LDO_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_TRNG_LDO_CTRL_VAL_OFFSET 0x100 +#define GC_FUSE_TRNG_LDO_CTRL_VAL_OFFSET 0x110 #define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_OFFSET 0x104 +#define GC_FUSE_TRNG_ANALOG_CTRL_EN_VAL_OFFSET 0x114 #define GC_FUSE_TRNG_ANALOG_CTRL_VAL_LSB 0x0 -#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_MASK 0x7 -#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_SIZE 0x3 +#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_MASK 0xf +#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_SIZE 0x4 #define GC_FUSE_TRNG_ANALOG_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_OFFSET 0x108 +#define GC_FUSE_TRNG_ANALOG_CTRL_VAL_OFFSET 0x118 #define GC_FUSE_EXT_XTAL_PDB_VAL_LSB 0x0 #define GC_FUSE_EXT_XTAL_PDB_VAL_MASK 0x3 #define GC_FUSE_EXT_XTAL_PDB_VAL_SIZE 0x2 #define GC_FUSE_EXT_XTAL_PDB_VAL_DEFAULT 0x0 -#define GC_FUSE_EXT_XTAL_PDB_VAL_OFFSET 0x10c +#define GC_FUSE_EXT_XTAL_PDB_VAL_OFFSET 0x11c #define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_LSB 0x0 #define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_MASK 0x7 #define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_SIZE 0x3 #define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_DEFAULT 0x0 -#define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_OFFSET 0x110 +#define GC_FUSE_DIS_EXT_XTAL_CLK_TREE_VAL_OFFSET 0x120 #define GC_FUSE_OBFUSCATION_EN_VAL_LSB 0x0 #define GC_FUSE_OBFUSCATION_EN_VAL_MASK 0x7 #define GC_FUSE_OBFUSCATION_EN_VAL_SIZE 0x3 #define GC_FUSE_OBFUSCATION_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_OBFUSCATION_EN_VAL_OFFSET 0x114 +#define GC_FUSE_OBFUSCATION_EN_VAL_OFFSET 0x124 #define GC_FUSE_HIK_CREATE_LOCK_VAL_LSB 0x0 #define GC_FUSE_HIK_CREATE_LOCK_VAL_MASK 0x7 #define GC_FUSE_HIK_CREATE_LOCK_VAL_SIZE 0x3 #define GC_FUSE_HIK_CREATE_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_HIK_CREATE_LOCK_VAL_OFFSET 0x118 +#define GC_FUSE_HIK_CREATE_LOCK_VAL_OFFSET 0x128 #define GC_FUSE_BNK2_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_BNK2_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_BNK2_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_BNK2_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK2_INTG_CHKSUM_VAL_OFFSET 0x11c +#define GC_FUSE_BNK2_INTG_CHKSUM_VAL_OFFSET 0x12c #define GC_FUSE_BNK2_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_BNK2_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_BNK2_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_BNK2_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK2_INTG_LOCK_VAL_OFFSET 0x120 +#define GC_FUSE_BNK2_INTG_LOCK_VAL_OFFSET 0x130 #define GC_FUSE_TESTMODE_OTPW_DIS_VAL_LSB 0x0 #define GC_FUSE_TESTMODE_OTPW_DIS_VAL_MASK 0x7 #define GC_FUSE_TESTMODE_OTPW_DIS_VAL_SIZE 0x3 #define GC_FUSE_TESTMODE_OTPW_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_TESTMODE_OTPW_DIS_VAL_OFFSET 0x124 +#define GC_FUSE_TESTMODE_OTPW_DIS_VAL_OFFSET 0x134 #define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_LSB 0x0 #define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_MASK 0x7 #define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_SIZE 0x3 #define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_OFFSET 0x128 +#define GC_FUSE_HKEY_WDOG_TIMER_EN_VAL_OFFSET 0x138 #define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_LSB 0x0 #define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_MASK 0x7 #define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_SIZE 0x3 #define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_OFFSET 0x12c +#define GC_FUSE_FLASH_PERSO_PAGE_LOCK_VAL_OFFSET 0x13c #define GC_FUSE_ALERT_RSP_CFG_VAL_LSB 0x0 #define GC_FUSE_ALERT_RSP_CFG_VAL_MASK 0xff #define GC_FUSE_ALERT_RSP_CFG_VAL_SIZE 0x8 #define GC_FUSE_ALERT_RSP_CFG_VAL_DEFAULT 0x0 -#define GC_FUSE_ALERT_RSP_CFG_VAL_OFFSET 0x130 +#define GC_FUSE_ALERT_RSP_CFG_VAL_OFFSET 0x140 #define GC_FUSE_BNK3_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_BNK3_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_BNK3_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_BNK3_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK3_INTG_CHKSUM_VAL_OFFSET 0x134 +#define GC_FUSE_BNK3_INTG_CHKSUM_VAL_OFFSET 0x144 #define GC_FUSE_BNK3_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_BNK3_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_BNK3_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_BNK3_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK3_INTG_LOCK_VAL_OFFSET 0x138 +#define GC_FUSE_BNK3_INTG_LOCK_VAL_OFFSET 0x148 #define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_OFFSET 0x13c -#define GC_FUSE_FW_DEFINED_DATA_BLK1_VAL_LSB 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK1_VAL_MASK 0xff -#define GC_FUSE_FW_DEFINED_DATA_BLK1_VAL_SIZE 0x8 -#define GC_FUSE_FW_DEFINED_DATA_BLK1_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK1_VAL_OFFSET 0x140 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_VAL_LSB 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_VAL_MASK 0xff -#define GC_FUSE_FW_DEFINED_DATA_BLK2_VAL_SIZE 0x8 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK2_VAL_OFFSET 0x144 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_VAL_LSB 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_VAL_MASK 0x7 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_VAL_SIZE 0x3 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_BLK3_VAL_OFFSET 0x148 +#define GC_FUSE_FW_DEFINED_DATA_BLK0_VAL_OFFSET 0x14c +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_VAL_LSB 0x0 +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_VAL_MASK 0xffff +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_VAL_SIZE 0x10 +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_VAL_DEFAULT 0x0 +#define GC_FUSE_FW_DEFINED_BROM_ERR_RESPONSE_VAL_OFFSET 0x150 #define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_MASK 0xfff #define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_SIZE 0xc #define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_OFFSET 0x14c +#define GC_FUSE_FW_DEFINED_BROM_APPLYSEC_VAL_OFFSET 0x154 #define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_OFFSET 0x150 +#define GC_FUSE_FW_DEFINED_BROM_CONFIG0_VAL_OFFSET 0x158 #define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_OFFSET 0x154 +#define GC_FUSE_FW_DEFINED_BROM_CONFIG1_VAL_OFFSET 0x15c #define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_LSB 0x0 #define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_MASK 0x1 #define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_SIZE 0x1 #define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_OFFSET 0x158 +#define GC_FUSE_RBOX_MODE_DBG_OVRD_DIS_VAL_OFFSET 0x160 #define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_LSB 0x0 #define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_MASK 0x7f #define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_SIZE 0x7 #define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_OFFSET 0x15c +#define GC_FUSE_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_OFFSET 0x164 #define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_LSB 0x0 #define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_MASK 0xffff #define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_SIZE 0x10 #define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_OFFSET 0x160 +#define GC_FUSE_RBOX_CLK10HZ_COUNT_VAL_OFFSET 0x168 #define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_LSB 0x0 #define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_MASK 0xffff #define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_SIZE 0x10 #define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_OFFSET 0x164 +#define GC_FUSE_RBOX_SHORT_DELAY_COUNT_VAL_OFFSET 0x16c #define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_LSB 0x0 #define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_MASK 0xff #define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_SIZE 0x8 #define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_OFFSET 0x168 +#define GC_FUSE_RBOX_LONG_DELAY_COUNT_VAL_OFFSET 0x170 #define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_LSB 0x0 #define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_MASK 0xffff #define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_SIZE 0x10 #define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_OFFSET 0x16c +#define GC_FUSE_RBOX_DEBOUNCE_PERIOD_VAL_OFFSET 0x174 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_LSB 0x0 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_MASK 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_SIZE 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_OFFSET 0x170 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_OFFSET 0x178 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_LSB 0x0 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_MASK 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_SIZE 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_OFFSET 0x174 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_OFFSET 0x17c #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_LSB 0x0 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_MASK 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_SIZE 0x1 #define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_OFFSET 0x178 +#define GC_FUSE_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_OFFSET 0x180 #define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_OFFSET 0x17c +#define GC_FUSE_RBOX_KEY_COMBO0_VAL_VAL_OFFSET 0x184 #define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_OFFSET 0x180 +#define GC_FUSE_RBOX_KEY_COMBO1_VAL_VAL_OFFSET 0x188 #define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_OFFSET 0x184 +#define GC_FUSE_RBOX_KEY_COMBO2_VAL_VAL_OFFSET 0x18c #define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_OFFSET 0x188 +#define GC_FUSE_RBOX_KEY_COMBO0_HOLD_VAL_OFFSET 0x190 #define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_OFFSET 0x18c +#define GC_FUSE_RBOX_KEY_COMBO1_HOLD_VAL_OFFSET 0x194 #define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_LSB 0x0 #define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_MASK 0xff #define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_SIZE 0x8 #define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_OFFSET 0x190 +#define GC_FUSE_RBOX_KEY_COMBO2_HOLD_VAL_OFFSET 0x198 #define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_LSB 0x0 #define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_MASK 0x1 #define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_SIZE 0x1 #define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_OFFSET 0x194 +#define GC_FUSE_RBOX_BLOCK_KEY0_SEL_VAL_OFFSET 0x19c #define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_LSB 0x0 #define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_MASK 0x1 #define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_SIZE 0x1 #define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_OFFSET 0x198 +#define GC_FUSE_RBOX_BLOCK_KEY1_SEL_VAL_OFFSET 0x1a0 #define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_LSB 0x0 #define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_MASK 0x1 #define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_SIZE 0x1 #define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_OFFSET 0x19c +#define GC_FUSE_RBOX_BLOCK_KEY0_VAL_VAL_OFFSET 0x1a4 #define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_LSB 0x0 #define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_MASK 0x1 #define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_SIZE 0x1 #define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_OFFSET 0x1a0 +#define GC_FUSE_RBOX_BLOCK_KEY1_VAL_VAL_OFFSET 0x1a8 #define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_OFFSET 0x1a4 +#define GC_FUSE_RBOX_POL_AC_PRESENT_VAL_OFFSET 0x1ac #define GC_FUSE_RBOX_POL_PWRB_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_PWRB_IN_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_PWRB_IN_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_PWRB_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_PWRB_IN_VAL_OFFSET 0x1a8 +#define GC_FUSE_RBOX_POL_PWRB_IN_VAL_OFFSET 0x1b0 #define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_OFFSET 0x1ac +#define GC_FUSE_RBOX_POL_PWRB_OUT_VAL_OFFSET 0x1b4 #define GC_FUSE_RBOX_POL_KEY0_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_KEY0_IN_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_KEY0_IN_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_KEY0_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_KEY0_IN_VAL_OFFSET 0x1b0 +#define GC_FUSE_RBOX_POL_KEY0_IN_VAL_OFFSET 0x1b8 #define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_OFFSET 0x1b4 +#define GC_FUSE_RBOX_POL_KEY0_OUT_VAL_OFFSET 0x1bc #define GC_FUSE_RBOX_POL_KEY1_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_KEY1_IN_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_KEY1_IN_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_KEY1_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_KEY1_IN_VAL_OFFSET 0x1b8 +#define GC_FUSE_RBOX_POL_KEY1_IN_VAL_OFFSET 0x1c0 #define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_OFFSET 0x1bc +#define GC_FUSE_RBOX_POL_KEY1_OUT_VAL_OFFSET 0x1c4 #define GC_FUSE_RBOX_POL_EC_RST_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_EC_RST_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_EC_RST_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_EC_RST_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_EC_RST_VAL_OFFSET 0x1c0 +#define GC_FUSE_RBOX_POL_EC_RST_VAL_OFFSET 0x1c8 #define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_LSB 0x0 #define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_MASK 0x1 #define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_SIZE 0x1 #define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_OFFSET 0x1c4 +#define GC_FUSE_RBOX_POL_BATT_DISABLE_VAL_OFFSET 0x1cc #define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_OFFSET 0x1c8 +#define GC_FUSE_RBOX_TERM_AC_PRESENT_VAL_OFFSET 0x1d0 #define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_OFFSET 0x1cc +#define GC_FUSE_RBOX_TERM_ENTERING_RW_VAL_OFFSET 0x1d4 #define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_OFFSET 0x1d0 +#define GC_FUSE_RBOX_TERM_PWRB_IN_VAL_OFFSET 0x1d8 #define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_OFFSET 0x1d4 +#define GC_FUSE_RBOX_TERM_PWRB_OUT_VAL_OFFSET 0x1dc #define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_OFFSET 0x1d8 +#define GC_FUSE_RBOX_TERM_KEY0_IN_VAL_OFFSET 0x1e0 #define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_OFFSET 0x1dc +#define GC_FUSE_RBOX_TERM_KEY0_OUT_VAL_OFFSET 0x1e4 #define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_OFFSET 0x1e0 +#define GC_FUSE_RBOX_TERM_KEY1_IN_VAL_OFFSET 0x1e8 #define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_OFFSET 0x1e4 +#define GC_FUSE_RBOX_TERM_KEY1_OUT_VAL_OFFSET 0x1ec #define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_OFFSET 0x1e8 +#define GC_FUSE_RBOX_DRIVE_PWRB_OUT_VAL_OFFSET 0x1f0 #define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_OFFSET 0x1ec +#define GC_FUSE_RBOX_DRIVE_KEY0_OUT_VAL_OFFSET 0x1f4 #define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_MASK 0x3 #define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_SIZE 0x2 #define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_OFFSET 0x1f0 +#define GC_FUSE_RBOX_DRIVE_KEY1_OUT_VAL_OFFSET 0x1f8 #define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_LSB 0x0 #define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_MASK 0x3 #define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_SIZE 0x2 #define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_OFFSET 0x1f4 +#define GC_FUSE_RBOX_DRIVE_EC_RST_VAL_OFFSET 0x1fc #define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_LSB 0x0 #define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_MASK 0x3 #define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_SIZE 0x2 #define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_OFFSET 0x1f8 +#define GC_FUSE_RBOX_DRIVE_BATT_DISABLE_VAL_OFFSET 0x200 #define GC_FUSE_BNK4_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_BNK4_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_BNK4_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_BNK4_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK4_INTG_CHKSUM_VAL_OFFSET 0x1fc +#define GC_FUSE_BNK4_INTG_CHKSUM_VAL_OFFSET 0x204 #define GC_FUSE_BNK4_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_BNK4_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_BNK4_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_BNK4_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_BNK4_INTG_LOCK_VAL_OFFSET 0x200 +#define GC_FUSE_BNK4_INTG_LOCK_VAL_OFFSET 0x208 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_OFFSET 0x204 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK0_VAL_OFFSET 0x20c #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_OFFSET 0x208 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK1_VAL_OFFSET 0x210 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_OFFSET 0x20c +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK2_VAL_OFFSET 0x214 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_OFFSET 0x210 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK3_VAL_OFFSET 0x218 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_OFFSET 0x214 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK4_VAL_OFFSET 0x21c #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_LSB 0x0 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_MASK 0xff #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_SIZE 0x8 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_OFFSET 0x218 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK5_VAL_OFFSET 0x220 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_LSB 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_MASK 0xff -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_SIZE 0x8 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_MASK 0x1f +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_SIZE 0x5 #define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_OFFSET 0x21c -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_VAL_LSB 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_VAL_MASK 0x1f -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_VAL_SIZE 0x5 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_VAL_DEFAULT 0x0 -#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK7_VAL_OFFSET 0x220 +#define GC_FUSE_FW_DEFINED_DATA_EXTRA_BLK6_VAL_OFFSET 0x224 #define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_OFFSET 0x224 +#define GC_FUSE_PROG_BNK0_INTG_CHKSUM_VAL_OFFSET 0x228 #define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_OFFSET 0x228 +#define GC_FUSE_PROG_BNK0_INTG_LOCK_VAL_OFFSET 0x22c #define GC_FUSE_PROG_DS_GRP0_VAL_LSB 0x0 #define GC_FUSE_PROG_DS_GRP0_VAL_MASK 0x1ff #define GC_FUSE_PROG_DS_GRP0_VAL_SIZE 0x9 #define GC_FUSE_PROG_DS_GRP0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP0_VAL_OFFSET 0x22c +#define GC_FUSE_PROG_DS_GRP0_VAL_OFFSET 0x230 #define GC_FUSE_PROG_DS_GRP1_VAL_LSB 0x0 #define GC_FUSE_PROG_DS_GRP1_VAL_MASK 0x1ff #define GC_FUSE_PROG_DS_GRP1_VAL_SIZE 0x9 #define GC_FUSE_PROG_DS_GRP1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP1_VAL_OFFSET 0x230 +#define GC_FUSE_PROG_DS_GRP1_VAL_OFFSET 0x234 #define GC_FUSE_PROG_DS_GRP2_VAL_LSB 0x0 #define GC_FUSE_PROG_DS_GRP2_VAL_MASK 0x1ff #define GC_FUSE_PROG_DS_GRP2_VAL_SIZE 0x9 #define GC_FUSE_PROG_DS_GRP2_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DS_GRP2_VAL_OFFSET 0x234 +#define GC_FUSE_PROG_DS_GRP2_VAL_OFFSET 0x238 #define GC_FUSE_PROG_DEV_ID0_VAL_LSB 0x0 #define GC_FUSE_PROG_DEV_ID0_VAL_MASK 0xffffffff #define GC_FUSE_PROG_DEV_ID0_VAL_SIZE 0x20 #define GC_FUSE_PROG_DEV_ID0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DEV_ID0_VAL_OFFSET 0x238 +#define GC_FUSE_PROG_DEV_ID0_VAL_OFFSET 0x23c #define GC_FUSE_PROG_DEV_ID1_VAL_LSB 0x0 #define GC_FUSE_PROG_DEV_ID1_VAL_MASK 0xffffffff #define GC_FUSE_PROG_DEV_ID1_VAL_SIZE 0x20 #define GC_FUSE_PROG_DEV_ID1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DEV_ID1_VAL_OFFSET 0x23c +#define GC_FUSE_PROG_DEV_ID1_VAL_OFFSET 0x240 #define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_OFFSET 0x240 +#define GC_FUSE_PROG_BNK1_INTG_CHKSUM_VAL_OFFSET 0x244 #define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_OFFSET 0x244 +#define GC_FUSE_PROG_BNK1_INTG_LOCK_VAL_OFFSET 0x248 #define GC_FUSE_PROG_LB0_POST_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB0_POST_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB0_POST_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB0_POST_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_OVRD_VAL_OFFSET 0x248 +#define GC_FUSE_PROG_LB0_POST_OVRD_VAL_OFFSET 0x24c #define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_OFFSET 0x24c +#define GC_FUSE_PROG_LB0_POST_PATCNT_VAL_OFFSET 0x250 #define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_OFFSET 0x250 +#define GC_FUSE_PROG_LB0_POST_WARMUP_OVRD_VAL_OFFSET 0x254 #define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_OFFSET 0x254 +#define GC_FUSE_PROG_LB0_POST_WARMUP_CNT_VAL_OFFSET 0x258 #define GC_FUSE_PROG_LB1_POST_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB1_POST_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB1_POST_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB1_POST_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_OVRD_VAL_OFFSET 0x258 +#define GC_FUSE_PROG_LB1_POST_OVRD_VAL_OFFSET 0x25c #define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_OFFSET 0x25c +#define GC_FUSE_PROG_LB1_POST_PATCNT_VAL_OFFSET 0x260 #define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_OFFSET 0x260 +#define GC_FUSE_PROG_LB1_POST_WARMUP_OVRD_VAL_OFFSET 0x264 #define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_OFFSET 0x264 +#define GC_FUSE_PROG_LB1_POST_WARMUP_CNT_VAL_OFFSET 0x268 #define GC_FUSE_PROG_LB2_POST_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB2_POST_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB2_POST_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB2_POST_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_OVRD_VAL_OFFSET 0x268 +#define GC_FUSE_PROG_LB2_POST_OVRD_VAL_OFFSET 0x26c #define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_OFFSET 0x26c +#define GC_FUSE_PROG_LB2_POST_PATCNT_VAL_OFFSET 0x270 #define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_OFFSET 0x270 +#define GC_FUSE_PROG_LB2_POST_WARMUP_OVRD_VAL_OFFSET 0x274 #define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_OFFSET 0x274 +#define GC_FUSE_PROG_LB2_POST_WARMUP_CNT_VAL_OFFSET 0x278 #define GC_FUSE_PROG_LB3_POST_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB3_POST_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB3_POST_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB3_POST_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_OVRD_VAL_OFFSET 0x278 +#define GC_FUSE_PROG_LB3_POST_OVRD_VAL_OFFSET 0x27c #define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_OFFSET 0x27c +#define GC_FUSE_PROG_LB3_POST_PATCNT_VAL_OFFSET 0x280 #define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_LSB 0x0 #define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_MASK 0x7 #define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_SIZE 0x3 #define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_OFFSET 0x280 +#define GC_FUSE_PROG_LB3_POST_WARMUP_OVRD_VAL_OFFSET 0x284 #define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_LSB 0x0 #define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_MASK 0x3 #define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_SIZE 0x2 #define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_OFFSET 0x284 +#define GC_FUSE_PROG_LB3_POST_WARMUP_CNT_VAL_OFFSET 0x288 +#define GC_FUSE_PROG_LB4_POST_OVRD_VAL_LSB 0x0 +#define GC_FUSE_PROG_LB4_POST_OVRD_VAL_MASK 0x7 +#define GC_FUSE_PROG_LB4_POST_OVRD_VAL_SIZE 0x3 +#define GC_FUSE_PROG_LB4_POST_OVRD_VAL_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_OVRD_VAL_OFFSET 0x28c +#define GC_FUSE_PROG_LB4_POST_PATCNT_VAL_LSB 0x0 +#define GC_FUSE_PROG_LB4_POST_PATCNT_VAL_MASK 0x3 +#define GC_FUSE_PROG_LB4_POST_PATCNT_VAL_SIZE 0x2 +#define GC_FUSE_PROG_LB4_POST_PATCNT_VAL_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_PATCNT_VAL_OFFSET 0x290 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_VAL_LSB 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_VAL_MASK 0x7 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_VAL_SIZE 0x3 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_VAL_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_OVRD_VAL_OFFSET 0x294 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_VAL_LSB 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_VAL_MASK 0x3 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_VAL_SIZE 0x2 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_VAL_DEFAULT 0x0 +#define GC_FUSE_PROG_LB4_POST_WARMUP_CNT_VAL_OFFSET 0x298 #define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_LSB 0x0 #define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_MASK 0x1ffffff #define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_SIZE 0x19 #define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_OFFSET 0x288 +#define GC_FUSE_PROG_MBIST_POST_SEQ_VAL_OFFSET 0x29c #define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_LSB 0x0 #define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_MASK 0x1ffffff #define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_SIZE 0x19 #define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_OFFSET 0x28c +#define GC_FUSE_PROG_LBIST_POST_SEQ_VAL_OFFSET 0x2a0 #define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_LSB 0x0 #define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_MASK 0x7 #define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_SIZE 0x3 #define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_OFFSET 0x290 +#define GC_FUSE_PROG_LBIST_VIA_TAP_DIS_VAL_OFFSET 0x2a4 #define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_LSB 0x0 #define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_MASK 0x7 #define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_SIZE 0x3 #define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_OFFSET 0x294 +#define GC_FUSE_PROG_MBIST_VIA_TAP_DIS_VAL_OFFSET 0x2a8 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_OFFSET 0x298 +#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_EN_VAL_OFFSET 0x2ac #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_LSB 0x0 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_MASK 0xffffffff #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_SIZE 0x20 #define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_OFFSET 0x29c +#define GC_FUSE_PROG_MBIST_BOOTROM_MISR_VAL_OFFSET 0x2b0 #define GC_FUSE_PROG_TAP_DISABLE_VAL_LSB 0x0 #define GC_FUSE_PROG_TAP_DISABLE_VAL_MASK 0x7 #define GC_FUSE_PROG_TAP_DISABLE_VAL_SIZE 0x3 #define GC_FUSE_PROG_TAP_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TAP_DISABLE_VAL_OFFSET 0x2a0 +#define GC_FUSE_PROG_TAP_DISABLE_VAL_OFFSET 0x2b4 #define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_OFFSET 0x2a4 +#define GC_FUSE_PROG_RNGBIST_AR_EN_VAL_OFFSET 0x2b8 #define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_OFFSET 0x2a8 +#define GC_FUSE_PROG_TESTMODE_KEYS_EN_VAL_OFFSET 0x2bc #define GC_FUSE_PROG_PKG_ID_VAL_LSB 0x0 #define GC_FUSE_PROG_PKG_ID_VAL_MASK 0x7 #define GC_FUSE_PROG_PKG_ID_VAL_SIZE 0x3 #define GC_FUSE_PROG_PKG_ID_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_PKG_ID_VAL_OFFSET 0x2ac +#define GC_FUSE_PROG_PKG_ID_VAL_OFFSET 0x2c0 #define GC_FUSE_PROG_BIN_ID_VAL_LSB 0x0 #define GC_FUSE_PROG_BIN_ID_VAL_MASK 0x7 #define GC_FUSE_PROG_BIN_ID_VAL_SIZE 0x3 #define GC_FUSE_PROG_BIN_ID_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BIN_ID_VAL_OFFSET 0x2b0 +#define GC_FUSE_PROG_BIN_ID_VAL_OFFSET 0x2c4 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_OFFSET 0x2b4 +#define GC_FUSE_PROG_RC_JTR_OSC48_CC_TRIM_VAL_OFFSET 0x2c8 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_OFFSET 0x2b8 +#define GC_FUSE_PROG_RC_JTR_OSC48_CC_EN_VAL_OFFSET 0x2cc #define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_OFFSET 0x2bc +#define GC_FUSE_PROG_RC_JTR_OSC60_CC_TRIM_VAL_OFFSET 0x2d0 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_OFFSET 0x2c0 +#define GC_FUSE_PROG_RC_JTR_OSC60_CC_EN_VAL_OFFSET 0x2d4 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_OFFSET 0x2c4 +#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_TRIM_VAL_OFFSET 0x2d8 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_OFFSET 0x2c8 +#define GC_FUSE_PROG_RC_TIMER_OSC48_CC_EN_VAL_OFFSET 0x2dc #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_MASK 0x1f #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_SIZE 0x5 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_OFFSET 0x2cc +#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_TRIM_VAL_OFFSET 0x2e0 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_OFFSET 0x2d0 +#define GC_FUSE_PROG_RC_TIMER_OSC48_FC_EN_VAL_OFFSET 0x2e4 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_MASK 0xff #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_SIZE 0x8 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_OFFSET 0x2d4 +#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_TRIM_VAL_OFFSET 0x2e8 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_OFFSET 0x2d8 +#define GC_FUSE_PROG_RC_RTC_OSC256K_CC_EN_VAL_OFFSET 0x2ec #define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_OFFSET 0x2dc +#define GC_FUSE_PROG_SEL_VREG_REG_EN_VAL_OFFSET 0x2f0 #define GC_FUSE_PROG_SEL_VREF_REG_VAL_LSB 0x0 #define GC_FUSE_PROG_SEL_VREF_REG_VAL_MASK 0xf #define GC_FUSE_PROG_SEL_VREF_REG_VAL_SIZE 0x4 #define GC_FUSE_PROG_SEL_VREF_REG_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_REG_VAL_OFFSET 0x2e0 +#define GC_FUSE_PROG_SEL_VREF_REG_VAL_OFFSET 0x2f4 #define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_OFFSET 0x2e4 +#define GC_FUSE_PROG_SEL_VREF_BATMON_EN_VAL_OFFSET 0x2f8 #define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_LSB 0x0 #define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_MASK 0x7 #define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_SIZE 0x3 #define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_OFFSET 0x2e8 +#define GC_FUSE_PROG_SEL_VREF_BATMON_VAL_OFFSET 0x2fc #define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_OFFSET 0x2ec +#define GC_FUSE_PROG_X_OSC_LDO_CTRL_EN_VAL_OFFSET 0x300 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_LSB 0x0 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_MASK 0xf #define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_SIZE 0x4 #define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_OFFSET 0x2f0 +#define GC_FUSE_PROG_X_OSC_LDO_CTRL_VAL_OFFSET 0x304 #define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_LSB 0x0 #define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_MASK 0xfff #define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_SIZE 0xc #define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_OFFSET 0x2f4 +#define GC_FUSE_PROG_TEMP_OFFSET_CAL_VAL_OFFSET 0x308 #define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_OFFSET 0x2f8 +#define GC_FUSE_PROG_TRNG_LDO_CTRL_EN_VAL_OFFSET 0x30c #define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_LSB 0x0 #define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_MASK 0x1f #define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_SIZE 0x5 #define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_OFFSET 0x2fc +#define GC_FUSE_PROG_TRNG_LDO_CTRL_VAL_OFFSET 0x310 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_OFFSET 0x300 +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_EN_VAL_OFFSET 0x314 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_LSB 0x0 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_MASK 0x7 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_SIZE 0x3 +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_MASK 0xf +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_SIZE 0x4 #define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_OFFSET 0x304 +#define GC_FUSE_PROG_TRNG_ANALOG_CTRL_VAL_OFFSET 0x318 #define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_LSB 0x0 #define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_MASK 0x3 #define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_SIZE 0x2 #define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_OFFSET 0x308 +#define GC_FUSE_PROG_EXT_XTAL_PDB_VAL_OFFSET 0x31c #define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_LSB 0x0 #define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_MASK 0x7 #define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_SIZE 0x3 #define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_OFFSET 0x30c +#define GC_FUSE_PROG_DIS_EXT_XTAL_CLK_TREE_VAL_OFFSET 0x320 #define GC_FUSE_PROG_OBFUSCATION_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_OBFUSCATION_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_OBFUSCATION_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_OBFUSCATION_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBFUSCATION_EN_VAL_OFFSET 0x310 +#define GC_FUSE_PROG_OBFUSCATION_EN_VAL_OFFSET 0x324 #define GC_FUSE_PROG_OBS0_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS0_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS0_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS0_VAL_OFFSET 0x314 +#define GC_FUSE_PROG_OBS0_VAL_OFFSET 0x328 #define GC_FUSE_PROG_OBS1_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS1_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS1_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS1_VAL_OFFSET 0x318 +#define GC_FUSE_PROG_OBS1_VAL_OFFSET 0x32c #define GC_FUSE_PROG_OBS2_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS2_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS2_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS2_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS2_VAL_OFFSET 0x31c +#define GC_FUSE_PROG_OBS2_VAL_OFFSET 0x330 #define GC_FUSE_PROG_OBS3_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS3_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS3_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS3_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS3_VAL_OFFSET 0x320 +#define GC_FUSE_PROG_OBS3_VAL_OFFSET 0x334 #define GC_FUSE_PROG_OBS4_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS4_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS4_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS4_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS4_VAL_OFFSET 0x324 +#define GC_FUSE_PROG_OBS4_VAL_OFFSET 0x338 #define GC_FUSE_PROG_OBS5_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS5_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS5_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS5_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS5_VAL_OFFSET 0x328 +#define GC_FUSE_PROG_OBS5_VAL_OFFSET 0x33c #define GC_FUSE_PROG_OBS6_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS6_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS6_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS6_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS6_VAL_OFFSET 0x32c +#define GC_FUSE_PROG_OBS6_VAL_OFFSET 0x340 #define GC_FUSE_PROG_OBS7_VAL_LSB 0x0 #define GC_FUSE_PROG_OBS7_VAL_MASK 0xffffffff #define GC_FUSE_PROG_OBS7_VAL_SIZE 0x20 #define GC_FUSE_PROG_OBS7_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_OBS7_VAL_OFFSET 0x330 +#define GC_FUSE_PROG_OBS7_VAL_OFFSET 0x344 #define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_OFFSET 0x334 +#define GC_FUSE_PROG_HIK_CREATE_LOCK_VAL_OFFSET 0x348 #define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_OFFSET 0x338 +#define GC_FUSE_PROG_BNK2_INTG_CHKSUM_VAL_OFFSET 0x34c #define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_OFFSET 0x33c +#define GC_FUSE_PROG_BNK2_INTG_LOCK_VAL_OFFSET 0x350 #define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_LSB 0x0 #define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_MASK 0x7 #define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_SIZE 0x3 #define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_OFFSET 0x340 +#define GC_FUSE_PROG_TESTMODE_OTPW_DIS_VAL_OFFSET 0x354 #define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_LSB 0x0 #define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_MASK 0x7 #define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_SIZE 0x3 #define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_OFFSET 0x344 +#define GC_FUSE_PROG_HKEY_WDOG_TIMER_EN_VAL_OFFSET 0x358 #define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_OFFSET 0x348 +#define GC_FUSE_PROG_FLASH_PERSO_PAGE_LOCK_VAL_OFFSET 0x35c #define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_LSB 0x0 #define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_MASK 0xff #define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_SIZE 0x8 #define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_OFFSET 0x34c +#define GC_FUSE_PROG_ALERT_RSP_CFG_VAL_OFFSET 0x360 #define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_OFFSET 0x350 +#define GC_FUSE_PROG_BNK3_INTG_CHKSUM_VAL_OFFSET 0x364 #define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_OFFSET 0x354 +#define GC_FUSE_PROG_BNK3_INTG_LOCK_VAL_OFFSET 0x368 #define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_OFFSET 0x358 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_VAL_LSB 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_VAL_MASK 0xff -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_VAL_SIZE 0x8 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK1_VAL_OFFSET 0x35c -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_VAL_LSB 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_VAL_MASK 0xff -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_VAL_SIZE 0x8 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK2_VAL_OFFSET 0x360 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_VAL_LSB 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_VAL_MASK 0x7 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_VAL_SIZE 0x3 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK3_VAL_OFFSET 0x364 +#define GC_FUSE_PROG_FW_DEFINED_DATA_BLK0_VAL_OFFSET 0x36c +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_VAL_LSB 0x0 +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_VAL_MASK 0xffff +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_VAL_SIZE 0x10 +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_VAL_DEFAULT 0x0 +#define GC_FUSE_PROG_FW_DEFINED_BROM_ERR_RESPONSE_VAL_OFFSET 0x370 #define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_MASK 0xfff #define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_SIZE 0xc #define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_OFFSET 0x368 +#define GC_FUSE_PROG_FW_DEFINED_BROM_APPLYSEC_VAL_OFFSET 0x374 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_OFFSET 0x36c +#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG0_VAL_OFFSET 0x378 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_OFFSET 0x370 +#define GC_FUSE_PROG_FW_DEFINED_BROM_CONFIG1_VAL_OFFSET 0x37c #define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_OFFSET 0x374 +#define GC_FUSE_PROG_RBOX_MODE_DBG_OVRD_DIS_VAL_OFFSET 0x380 #define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_MASK 0x7f #define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_SIZE 0x7 #define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_OFFSET 0x378 +#define GC_FUSE_PROG_RBOX_MODE_OUTPUT_OVRD_DIS_VAL_OFFSET 0x384 #define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_MASK 0xffff #define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_SIZE 0x10 #define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_OFFSET 0x37c +#define GC_FUSE_PROG_RBOX_CLK10HZ_COUNT_VAL_OFFSET 0x388 #define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_MASK 0xffff #define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_SIZE 0x10 #define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_OFFSET 0x380 +#define GC_FUSE_PROG_RBOX_SHORT_DELAY_COUNT_VAL_OFFSET 0x38c #define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_OFFSET 0x384 +#define GC_FUSE_PROG_RBOX_LONG_DELAY_COUNT_VAL_OFFSET 0x390 #define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_MASK 0xffff #define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_SIZE 0x10 #define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_OFFSET 0x388 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_PERIOD_VAL_OFFSET 0x394 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_OFFSET 0x38c +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_PWRB_VAL_OFFSET 0x398 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_OFFSET 0x390 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY0_VAL_OFFSET 0x39c #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_OFFSET 0x394 +#define GC_FUSE_PROG_RBOX_DEBOUNCE_BYPASS_KEY1_VAL_OFFSET 0x3a0 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_OFFSET 0x398 +#define GC_FUSE_PROG_RBOX_KEY_COMBO0_VAL_VAL_OFFSET 0x3a4 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_OFFSET 0x39c +#define GC_FUSE_PROG_RBOX_KEY_COMBO1_VAL_VAL_OFFSET 0x3a8 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_OFFSET 0x3a0 +#define GC_FUSE_PROG_RBOX_KEY_COMBO2_VAL_VAL_OFFSET 0x3ac #define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_OFFSET 0x3a4 +#define GC_FUSE_PROG_RBOX_KEY_COMBO0_HOLD_VAL_OFFSET 0x3b0 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_OFFSET 0x3a8 +#define GC_FUSE_PROG_RBOX_KEY_COMBO1_HOLD_VAL_OFFSET 0x3b4 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_MASK 0xff #define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_SIZE 0x8 #define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_OFFSET 0x3ac +#define GC_FUSE_PROG_RBOX_KEY_COMBO2_HOLD_VAL_OFFSET 0x3b8 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_OFFSET 0x3b0 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_SEL_VAL_OFFSET 0x3bc #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_OFFSET 0x3b4 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_SEL_VAL_OFFSET 0x3c0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_OFFSET 0x3b8 +#define GC_FUSE_PROG_RBOX_BLOCK_KEY0_VAL_VAL_OFFSET 0x3c4 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_OFFSET 0x3bc +#define GC_FUSE_PROG_RBOX_BLOCK_KEY1_VAL_VAL_OFFSET 0x3c8 #define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_OFFSET 0x3c0 +#define GC_FUSE_PROG_RBOX_POL_AC_PRESENT_VAL_OFFSET 0x3cc #define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_OFFSET 0x3c4 +#define GC_FUSE_PROG_RBOX_POL_PWRB_IN_VAL_OFFSET 0x3d0 #define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_OFFSET 0x3c8 +#define GC_FUSE_PROG_RBOX_POL_PWRB_OUT_VAL_OFFSET 0x3d4 #define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_OFFSET 0x3cc +#define GC_FUSE_PROG_RBOX_POL_KEY0_IN_VAL_OFFSET 0x3d8 #define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_OFFSET 0x3d0 +#define GC_FUSE_PROG_RBOX_POL_KEY0_OUT_VAL_OFFSET 0x3dc #define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_OFFSET 0x3d4 +#define GC_FUSE_PROG_RBOX_POL_KEY1_IN_VAL_OFFSET 0x3e0 #define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_OFFSET 0x3d8 +#define GC_FUSE_PROG_RBOX_POL_KEY1_OUT_VAL_OFFSET 0x3e4 #define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_OFFSET 0x3dc +#define GC_FUSE_PROG_RBOX_POL_EC_RST_VAL_OFFSET 0x3e8 #define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_MASK 0x1 #define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_SIZE 0x1 #define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_OFFSET 0x3e0 +#define GC_FUSE_PROG_RBOX_POL_BATT_DISABLE_VAL_OFFSET 0x3ec #define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_OFFSET 0x3e4 +#define GC_FUSE_PROG_RBOX_TERM_AC_PRESENT_VAL_OFFSET 0x3f0 #define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_OFFSET 0x3e8 +#define GC_FUSE_PROG_RBOX_TERM_ENTERING_RW_VAL_OFFSET 0x3f4 #define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_OFFSET 0x3ec +#define GC_FUSE_PROG_RBOX_TERM_PWRB_IN_VAL_OFFSET 0x3f8 #define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_OFFSET 0x3f0 +#define GC_FUSE_PROG_RBOX_TERM_PWRB_OUT_VAL_OFFSET 0x3fc #define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_OFFSET 0x3f4 +#define GC_FUSE_PROG_RBOX_TERM_KEY0_IN_VAL_OFFSET 0x400 #define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_OFFSET 0x3f8 +#define GC_FUSE_PROG_RBOX_TERM_KEY0_OUT_VAL_OFFSET 0x404 #define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_OFFSET 0x3fc +#define GC_FUSE_PROG_RBOX_TERM_KEY1_IN_VAL_OFFSET 0x408 #define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_OFFSET 0x400 +#define GC_FUSE_PROG_RBOX_TERM_KEY1_OUT_VAL_OFFSET 0x40c #define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_OFFSET 0x404 +#define GC_FUSE_PROG_RBOX_DRIVE_PWRB_OUT_VAL_OFFSET 0x410 #define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_OFFSET 0x408 +#define GC_FUSE_PROG_RBOX_DRIVE_KEY0_OUT_VAL_OFFSET 0x414 #define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_OFFSET 0x40c +#define GC_FUSE_PROG_RBOX_DRIVE_KEY1_OUT_VAL_OFFSET 0x418 #define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_OFFSET 0x410 +#define GC_FUSE_PROG_RBOX_DRIVE_EC_RST_VAL_OFFSET 0x41c #define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_LSB 0x0 #define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_MASK 0x3 #define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_SIZE 0x2 #define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_OFFSET 0x414 +#define GC_FUSE_PROG_RBOX_DRIVE_BATT_DISABLE_VAL_OFFSET 0x420 #define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_MASK 0xffffff #define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_SIZE 0x18 #define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_OFFSET 0x418 +#define GC_FUSE_PROG_BNK4_INTG_CHKSUM_VAL_OFFSET 0x424 #define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_LSB 0x0 #define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_MASK 0x7 #define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_SIZE 0x3 #define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_OFFSET 0x41c +#define GC_FUSE_PROG_BNK4_INTG_LOCK_VAL_OFFSET 0x428 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_OFFSET 0x420 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK0_VAL_OFFSET 0x42c #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_OFFSET 0x424 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK1_VAL_OFFSET 0x430 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_OFFSET 0x428 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK2_VAL_OFFSET 0x434 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_OFFSET 0x42c +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK3_VAL_OFFSET 0x438 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_OFFSET 0x430 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK4_VAL_OFFSET 0x43c #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_LSB 0x0 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_MASK 0xff #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_SIZE 0x8 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_OFFSET 0x434 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK5_VAL_OFFSET 0x440 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_LSB 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_MASK 0xff -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_SIZE 0x8 +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_MASK 0x1f +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_SIZE 0x5 #define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_OFFSET 0x438 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_VAL_LSB 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_VAL_MASK 0x1f -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_VAL_SIZE 0x5 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_VAL_DEFAULT 0x0 -#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK7_VAL_OFFSET 0x43c +#define GC_FUSE_PROG_FW_DEFINED_DATA_EXTRA_BLK6_VAL_OFFSET 0x444 #define GC_GLOBALSEC_CPU0_D_REGION0_CTRL_EN_LSB 0x0 #define GC_GLOBALSEC_CPU0_D_REGION0_CTRL_EN_MASK 0x1 #define GC_GLOBALSEC_CPU0_D_REGION0_CTRL_EN_SIZE 0x1 @@ -18667,12 +18681,12 @@ #define GC_TRNG_VERSION_CHANGE_LSB 0x0 #define GC_TRNG_VERSION_CHANGE_MASK 0xffffff #define GC_TRNG_VERSION_CHANGE_SIZE 0x18 -#define GC_TRNG_VERSION_CHANGE_DEFAULT 0x12f4d +#define GC_TRNG_VERSION_CHANGE_DEFAULT 0x13316 #define GC_TRNG_VERSION_CHANGE_OFFSET 0x0 #define GC_TRNG_VERSION_REVISION_LSB 0x18 #define GC_TRNG_VERSION_REVISION_MASK 0xff000000 #define GC_TRNG_VERSION_REVISION_SIZE 0x8 -#define GC_TRNG_VERSION_REVISION_DEFAULT 0x2c +#define GC_TRNG_VERSION_REVISION_DEFAULT 0x2d #define GC_TRNG_VERSION_REVISION_OFFSET 0x0 #define GC_TRNG_INT_ENABLE_INTR_BUFFER_FULL_LSB 0x0 #define GC_TRNG_INT_ENABLE_INTR_BUFFER_FULL_MASK 0x1 diff --git a/chip/g/usb.c b/chip/g/usb.c index 476ec574b9..635ce69564 100644 --- a/chip/g/usb.c +++ b/chip/g/usb.c @@ -492,6 +492,13 @@ void usb_init(void) { int i; + /* TODO: Take this out if USB is known to always be present */ + if (!(GREG32(SWDP, FPGA_CONFIG) & + GC_CONST_SWDP_FPGA_CONFIG_USB_8X8CRYPTO)) { + CPRINTF("This FPGA image has no USB support\n"); + return; + } + /* TODO(wfrichar): Clean this up. Do only what's needed, and use * meaningful constants of magic numbers. */ GREG32(GLOBALSEC, DDMA0_REGION0_CTRL) = 0xffffffff; diff --git a/util/signer/codesigner.cc b/util/signer/codesigner.cc index 7a6a323c74..547c829c8f 100644 --- a/util/signer/codesigner.cc +++ b/util/signer/codesigner.cc @@ -3,12 +3,14 @@ * found in the LICENSE file. */ #include <assert.h> +#include <fcntl.h> +#include <getopt.h> +#include <inttypes.h> #include <stddef.h> #include <stdlib.h> #include <stdio.h> #include <string.h> -#include <inttypes.h> -#include <getopt.h> +#include <unistd.h> #include <common/image.h> #include <common/publickey.h> @@ -253,6 +255,9 @@ bool readJSON(const string& filename, GETVALUE("minor"); GETVALUE("applysec"); GETVALUE("config1"); + GETVALUE("err_response"); + GETVALUE("expect_response"); + GETVALUE("timestamp"); CHECKVALUE("tag"); const rapidjson::Document::ValueType& Tag = d["tag"]; @@ -275,6 +280,8 @@ string keyFilename; string xmlFilename; string jsonFilename; string outputFormat; +string signatureFilename; +string hashesFilename; void usage(int argc, char* argv[]) { fprintf(stderr, "Usage: %s options\n" @@ -284,6 +291,8 @@ void usage(int argc, char* argv[]) { "[--xml=$xml-filename] typically 'havenTop.xml'\n" "[--json=$json-filename] the signing manifest\n" "[--format=bin|hex] output file format, hex is default\n" + "[--signature=$sig-filename] replace signature with file content\n" + "[--hashes=$hashes-filename] destination file for intermediary hashes to be signed\n" "[--verbose]\n", argv[0]); } @@ -299,11 +308,13 @@ int getOptions(int argc, char* argv[]) { {"output", required_argument, NULL, 'o'}, {"verbose", no_argument, NULL, 'v'}, {"xml", required_argument, NULL, 'x'}, + {"signature", required_argument, NULL, 's'}, + {"hashes", required_argument, NULL, 'H'}, {0, 0, 0, 0} }; int c, option_index = 0; outputFormat.assign("hex"); - while ((c = getopt_long(argc, argv, "i:o:k:x:j:f:hv", + while ((c = getopt_long(argc, argv, "i:o:k:x:j:f:s:H:hv", long_options, &option_index)) != -1) { switch (c) { case 0: @@ -323,12 +334,18 @@ int getOptions(int argc, char* argv[]) { case 'x': xmlFilename.assign(optarg); break; + case 's': + signatureFilename.assign(optarg); + break; case 'j': jsonFilename.assign(optarg); break; case 'f': outputFormat.assign(optarg); break; + case 'H': + hashesFilename.assign(optarg); + break; case 'h': usage(argc, argv); return 1; @@ -401,6 +418,11 @@ int main(int argc, char* argv[]) { hdr.minor_ = values["minor"]; hdr.applysec_ = values["applysec"]; hdr.config1_ = values["config1"]; + hdr.err_response_ = values["err_response"]; + hdr.expect_response_ = values["expect_response"]; + if (values["timestamp"]) hdr.timestamp_ = values["timestamp"]; + + VERBOSE("timestamp: %ld\n", hdr.timestamp_); // Check keyId. if (values["keyid"] != hdr.keyid) { @@ -452,7 +474,7 @@ int main(int argc, char* argv[]) { } uint32_t idx = it->second; assert(idx < FUSE_MAX); - uint32_t mask = (1 << fuse_bits[x->first]) - 1; + uint32_t mask = (1ul << fuse_bits[x->first]) - 1; if ((x->second & mask) != x->second) { FATAL("specified fuse value too large\n"); } @@ -493,9 +515,22 @@ int main(int argc, char* argv[]) { } VERBOSE("\n"); + if (!signatureFilename.empty()) { + int fd = ::open(signatureFilename.c_str(), O_RDONLY); + if (fd > 0) { + int n = ::read(fd, hdr.signature, sizeof(hdr.signature)); + ::close(fd); + + if (n != sizeof(hdr.signature)) FATAL("cannot read from '%s'\n", signatureFilename.c_str()); + + VERBOSE("provided signature\n"); + } else { + FATAL("cannot open '%s'\n", signatureFilename.c_str()); + } + } // Sign image. - if (image.sign(key, &hdr, fuse_values, info_values)) { + if (image.sign(key, &hdr, fuse_values, info_values, hashesFilename)) { image.generate(outputFilename, outputFormat == "hex"); } else { FATAL("failed to sign\n"); diff --git a/util/signer/common/image.h b/util/signer/common/image.h index 1efe763d2d..ebf0c5d838 100644 --- a/util/signer/common/image.h +++ b/util/signer/common/image.h @@ -24,9 +24,11 @@ class Image { bool fromIntelHex(const std::string& filename, bool withSignature = true); bool fromElf(const std::string& filename); - bool sign(PublicKey& key, const SignedHeader* hdr, + bool sign(PublicKey& key, + const SignedHeader* hdr, const uint32_t fuses[], - const uint32_t info[]); + const uint32_t info[], + const std::string& hashesFilename); void generate(const std::string& outputFilename, bool hex_output) const; diff --git a/util/signer/common/signed_header.h b/util/signer/common/signed_header.h index dfb63010ad..98cc2c09a6 100644 --- a/util/signer/common/signed_header.h +++ b/util/signer/common/signed_header.h @@ -20,7 +20,7 @@ typedef struct SignedHeader { #ifdef __cplusplus SignedHeader() : magic(-1), image_size(0), epoch_(0x1337), major_(0), minor_(0xbabe), - p4cl_(0), applysec_(0), config1_(0) { + p4cl_(0), applysec_(0), config1_(0), err_response_(0), expect_response_(0) { memset(signature, 'S', sizeof(signature)); memset(tag, 'T', sizeof(tag)); memset(fusemap, 0, sizeof(fusemap)); @@ -58,9 +58,11 @@ typedef struct SignedHeader { uint32_t minor_; uint64_t timestamp_; // time of signing uint32_t p4cl_; - uint32_t applysec_; // bits per FUSE_FW_DEFINED_BROM_APPLYSEC - uint32_t config1_; // bits per FUSE_FW_DEFINED_BROM_CONFIG1 - uint32_t _pad[256 - 1 - 96 - 1 - 7 - 1 - 96 - 5*1 - 4 - 4 - 7*1 - 2 - 1]; + uint32_t applysec_; // bits to and with FUSE_FW_DEFINED_BROM_APPLYSEC + uint32_t config1_; // bits to mesh with FUSE_FW_DEFINED_BROM_CONFIG1 + uint32_t err_response_; // bits to or with FUSE_FW_DEFINED_BROM_ERR_RESPONSE + uint32_t expect_response_; // action to take when expectation is violated + uint32_t _pad[256 - 1 - 96 - 1 - 7 - 1 - 96 - 5*1 - 4 - 4 - 9*1 - 2 - 1]; uint32_t fuses_chk_; // top 32 bit of expected fuses hash uint32_t info_chk_; // top 32 bit of expected info hash } SignedHeader; diff --git a/util/signer/image.cc b/util/signer/image.cc index ffad1331b6..e82d3846ad 100644 --- a/util/signer/image.cc +++ b/util/signer/image.cc @@ -374,9 +374,11 @@ void Image::store(int adr, int v) { if (adr < low_) low_ = adr; } -bool Image::sign(PublicKey& key, const SignedHeader* input_hdr, +bool Image::sign(PublicKey& key, + const SignedHeader* input_hdr, const uint32_t fuses[FUSE_MAX], - const uint32_t info[INFO_MAX]) { + const uint32_t info[INFO_MAX], + const string& hashesFilename) { BIGNUM* sig = NULL; SignedHeader* hdr = (SignedHeader*)(&mem_[base_]); SHA256_CTX sha256; @@ -450,6 +452,17 @@ bool Image::sign(PublicKey& key, const SignedHeader* input_hdr, } VERBOSE("\n"); + if (!hashesFilename.empty()) { + // Write hashes to file for subsequent extraneous (re)signing. + int fd = open(hashesFilename.c_str(), O_CREAT|O_TRUNC|O_RDWR, 0600); + if (fd >= 0) { + write(fd, &hashes, sizeof(hashes)); + close(fd); + } + } + + sig = BN_bin2bn((uint8_t*)(hdr->signature), sizeof(hdr->signature), NULL); + result = key.sign(&hashes, sizeof(hashes), &sig); if (result != 1) { diff --git a/util/signer/publickey.cc b/util/signer/publickey.cc index b4bde6c6bf..4b977d123e 100644 --- a/util/signer/publickey.cc +++ b/util/signer/publickey.cc @@ -221,12 +221,21 @@ int PublicKey::sign(const void* msg, size_t msglen, BIGNUM** output) { sig = (uint8_t*)malloc(tmplen); if (publicOnly_) { - fprintf(stderr, "gnubby signing.."); fflush(stderr); - // TODO: 2k -> gnubby, 3k -> HSM? + if (nwords() == 64) { + // 2048 bit public key : gnubby + fprintf(stderr, "gnubby signing.."); fflush(stderr); - Gnubby gnubby; - result = gnubby.sign(ctx, sig, &siglen, key_); - fprintf(stderr, "Gnubby.sign: %d\n", result); + Gnubby gnubby; + result = gnubby.sign(ctx, sig, &siglen, key_); + fprintf(stderr, "Gnubby.sign: %d\n", result); + } else { + // other public key : best have signature prefilled + fprintf(stderr, "WARNING: public key size %lu; assuming preloaded signature\n", nwords()); + fprintf(stderr, " Likely you are trying to use the real rom key, try the -dev flavor\n"); + fflush(stderr); + siglen = BN_bn2bin(*output, sig); + result = 1; + } } else { VERBOSE("ossl signing.."); result = EVP_SignFinal(ctx, sig, &siglen, key_); |