//PF8200 - OTP Editor
//file generated on Thu Mar 30 09:25:12 2023
//Device Type : PF8200-B
//OTP ID : KC
//Part Marking : SC33PF8200KCES
//Customer : NXP

SET_DPIN:PF8x00:PWRON:low
SET_DPIN:PF8x00:WDI:low
SET_DPIN:PF8x00:TBBEN:high
SET_DPIN:PF8x00:USBEN:high
SET_DPIN:PF8x00:BSTEN:high
SET_DPIN:PF8x00:VDDOTPEN:high

//MAIN_OTP
SET_REG:PF8x00:OTP_MIRROR:OTP_FSOB_SELECT:0x1b
SET_REG:PF8x00:OTP_MIRROR:OTP_I2C:0x08
SET_REG:PF8x00:OTP_MIRROR:OTP_CTRL1:0x34
SET_REG:PF8x00:OTP_MIRROR:OTP_CTRL2:0x96
SET_REG:PF8x00:OTP_MIRROR:OTP_CTRL3:0x81
SET_REG:PF8x00:OTP_MIRROR:OTP_FREQ_CTRL:0x80
SET_REG:PF8x00:OTP_MIRROR:OTP_COINCELL_CTRL:0x0e
SET_REG:PF8x00:OTP_MIRROR:OTP_PWRON:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_WD_CONFIG:0x20
SET_REG:PF8x00:OTP_MIRROR:OTP_WD_EXPIRE:0x07
SET_REG:PF8x00:OTP_MIRROR:OTP_WD_COUNTER:0xa7
SET_REG:PF8x00:OTP_MIRROR:OTP_FAULT_COUNTER:0x87
SET_REG:PF8x00:OTP_MIRROR:OTP_FAULT_TIMERS:0x28
SET_REG:PF8x00:OTP_MIRROR:OTP_PWRDN_DLY1:0xff
SET_REG:PF8x00:OTP_MIRROR:OTP_PWRDN_DLY2:0xc3
SET_REG:PF8x00:OTP_MIRROR:OTP_PWRUP_CTRL:0x61
SET_REG:PF8x00:OTP_MIRROR:OTP_RESETBMCU_PWRUP:0x4d
SET_REG:PF8x00:OTP_MIRROR:OTP_PGOOD_PWRUP:0x16
SET_REG:PF8x00:OTP_MIRROR:OTP_SW1_VOLT:0xb1
SET_REG:PF8x00:OTP_MIRROR:OTP_SW1_PWRUP:0x0a
SET_REG:PF8x00:OTP_MIRROR:OTP_SW1_CONFIG1:0xfe
SET_REG:PF8x00:OTP_MIRROR:OTP_SW1_CONFIG2:0x3c
SET_REG:PF8x00:OTP_MIRROR:OTP_SW2_VOLT:0xb1
SET_REG:PF8x00:OTP_MIRROR:OTP_SW2_PWRUP:0x0a
SET_REG:PF8x00:OTP_MIRROR:OTP_SW2_CONFIG1:0xfe
SET_REG:PF8x00:OTP_MIRROR:OTP_SW2_CONFIG2:0x1c
SET_REG:PF8x00:OTP_MIRROR:OTP_SW3_VOLT:0x40
SET_REG:PF8x00:OTP_MIRROR:OTP_SW3_PWRUP:0x17
SET_REG:PF8x00:OTP_MIRROR:OTP_SW3_CONFIG1:0xfa
SET_REG:PF8x00:OTP_MIRROR:OTP_SW3_CONFIG2:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_SW4_VOLT:0x40
SET_REG:PF8x00:OTP_MIRROR:OTP_SW4_PWRUP:0x17
SET_REG:PF8x00:OTP_MIRROR:OTP_SW4_CONFIG1:0xfa
SET_REG:PF8x00:OTP_MIRROR:OTP_SW4_CONFIG2:0x08
SET_REG:PF8x00:OTP_MIRROR:OTP_SW5_VOLT:0x70
SET_REG:PF8x00:OTP_MIRROR:OTP_SW5_PWRUP:0x17
SET_REG:PF8x00:OTP_MIRROR:OTP_SW5_CONFIG1:0xfa
SET_REG:PF8x00:OTP_MIRROR:OTP_SW5_CONFIG2:0x14
SET_REG:PF8x00:OTP_MIRROR:OTP_SW6_VOLT:0x70
SET_REG:PF8x00:OTP_MIRROR:OTP_SW6_PWRUP:0x17
SET_REG:PF8x00:OTP_MIRROR:OTP_SW6_CONFIG1:0xfa
SET_REG:PF8x00:OTP_MIRROR:OTP_SW6_CONFIG2:0x24
SET_REG:PF8x00:OTP_MIRROR:OTP_SW7_VOLT:0x15
SET_REG:PF8x00:OTP_MIRROR:OTP_SW7_PWRUP:0x0a
SET_REG:PF8x00:OTP_MIRROR:OTP_SW7_CONFIG1:0xfe
SET_REG:PF8x00:OTP_MIRROR:OTP_SW7_CONFIG2:0x28
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO1_VOLT:0xf2
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO1_PWRUP:0x1b
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO1_CONFIG:0x40
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO2_VOLT:0xf7
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO2_PWRUP:0x0a
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO2_CONFIG:0xc0
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO3_VOLT:0xfb
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO3_PWRUP:0x0e
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO3_CONFIG:0x80
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO4_VOLT:0xf2
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO4_PWRUP:0x12
SET_REG:PF8x00:OTP_MIRROR:OTP_LDO4_CONFIG:0x80
SET_REG:PF8x00:OTP_MIRROR:OTP_VSNVS_CONFIG:0x01
SET_REG:PF8x00:OTP_MIRROR:OTP_OV_BYPASS1:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_OV_BYPASS2:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_UV_BYPASS1:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_UV_BYPASS2:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_ILIM_BYPASS1:0x7f
SET_REG:PF8x00:OTP_MIRROR:OTP_ILIM_BYPASS2:0x0f
SET_REG:PF8x00:OTP_MIRROR:OTP_PROG_IDH:0x09
SET_REG:PF8x00:OTP_MIRROR:OTP_PROG_IDL:0x8c
SET_REG:PF8x00:OTP_MIRROR:OTP_DEBUG1:0x01
SET_REG:PF8x00:OTP_MIRROR:OTP_SW_COMP1:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_SW_COMP2:0x00
SET_REG:PF8x00:OTP_MIRROR:OTP_SW_COMP3:0x00

// CONFIGURE OTP CONTROLLER
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x80
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x00
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xAC
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA9
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x02
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xDC
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA9
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x08
SET_REG:PF8x00:OTP_PAGE2:FDATA:0x38
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA9
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x09
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xDC
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA9
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x0C
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xD2
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA9
SET_REG:PF8x00:OTP_PAGE2:MAX_PGM_TRIES:0x08
SET_REG:PF8x00:OTP_PAGE2:MRR_SVDR_IN:0x13
SET_REG:PF8x00:OTP_PAGE2:MR_SCREF_RD_1:0x00
SET_REG:PF8x00:OTP_PAGE2:MREF_IREF_RD_1:0x02
SET_REG:PF8x00:OTP_PAGE2:MR_SCREF_RD_2:0x00
SET_REG:PF8x00:OTP_PAGE2:MREF_IREF_RD_2:0x00
SET_REG:PF8x00:OTP_PAGE2:MR_TEST_L:0xBB
SET_REG:PF8x00:OTP_PAGE2:MREF_TEST_H:0x08
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x00
SET_REG:PF8x00:OTP_PAGE2:FADDR_STOP:0x48

// SET CRC VALUES
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA5
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA4
GET_REG:PF8x00:OTP_MIRROR:OTP_S0_CRC_LSB
GET_REG:PF8x00:OTP_MIRROR:OTP_S0_CRC_MSB

// PROGRAM OTP FUSES
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x96
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS

// BURN WRITE PROTECT BITS
SET_REG:PF8x00:OTP_PAGE2:FADDR_STOP:0xFF
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0xFC
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xAA
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x87
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0xFD
SET_REG:PF8x00:OTP_PAGE2:FDATA:0x55
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x87
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0xFE
SET_REG:PF8x00:OTP_PAGE2:FDATA:0xAA
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x87
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0xFF
SET_REG:PF8x00:OTP_PAGE2:FDATA:0x55
SET_REG:PF8x00:OTP_PAGE2:FCMD:0x87
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS

SET_DPIN:PF8x00:USBEN:low
SET_DPIN:PF8x00:BSTEN:low
SET_DPIN:PF8x00:VDDOTPEN:low

//Verify Mirror Registers = Fuse Value
GET_REG:PF8x00:functional:DEVICE_ID
SET_REG:PF8x00:OTP_PAGE2:FADDR_START:0x00
SET_REG:PF8x00:OTP_PAGE2:FADDR_STOP:0x48
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xAB
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA0
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA1
SET_REG:PF8x00:OTP_PAGE2:FCMD:0xA4
GET_REG:PF8x00:OTP_MIRROR:OTP_S0_CRC_LSB
GET_REG:PF8x00:OTP_MIRROR:OTP_S0_CRC_MSB
GET_REG:PF8x00:OTP_PAGE2:SECT_STATUS
GET_REG:PF8x00:OTP_PAGE2:FSTATUS

//If SECT_STATUS = 0x3F & FSTATUS = 0x00 part is programmed correctly.
//Verify CRC_LSB and CRC_MSB match the values in section "SET CRC VALUES" .
SET_DPIN:PF8x00:TBBEN:low


//Rev,A