address_offset : 0x0 Bytes (0x0)
size : 0x4000 byte (0x0)
mem_usage : registers
protection :
Bits 15:0 of public device ID. (ECC)
The CHIPID0..3 rows contain a 64-bit random identifier for this chip, which can be read from the USB bootloader PICOBOOT interface or from the get_sys_info ROM API.
The number of random bits makes the occurrence of twins exceedingly unlikely: for example, a fleet of a hundred million devices has a 99.97% probability of no twinned IDs. This is estimated to be lower than the occurrence of process errors in the assignment of sequential random IDs, and for practical purposes CHIPID may be treated as unique.
address_offset : 0x0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CHIPID0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of private per-device random number (ECC)
The RANDID0..7 rows form a 128-bit random number generated during device test.
This ID is not exposed through the USB PICOBOOT GET_INFO command or the ROM `get_sys_info()` API. However note that the USB PICOBOOT OTP access point can read the entirety of page 0, so this value is not meaningfully private unless the USB PICOBOOT interface is disabled via the DISABLE_BOOTSEL_USB_PICOBOOT_IFC flag in BOOT_FLAGS0.
address_offset : 0x10 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID0 :
bits : 0 - 15 (16 bit)
access : read-only
Page 1 critical boot flags (RBIT-8)
address_offset : 0x100 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
SECURE_BOOT_ENABLE : Enable boot signature enforcement, and permanently disable the RISC-V cores.
bits : 0 - 0 (1 bit)
access : read-only
SECURE_DEBUG_DISABLE : Disable Secure debug access
bits : 1 - 1 (1 bit)
access : read-only
DEBUG_DISABLE : Disable all debug access
bits : 2 - 2 (1 bit)
access : read-only
BOOT_ARCH : Set the default boot architecture, 0=ARM 1=RISC-V. Ignored if ARM_DISABLE, RISCV_DISABLE or SECURE_BOOT_ENABLE is set.
bits : 3 - 3 (1 bit)
access : read-only
GLITCH_DETECTOR_ENABLE : Arm the glitch detectors to reset the system if an abnormal clock/power event is observed.
bits : 4 - 4 (1 bit)
access : read-only
GLITCH_DETECTOR_SENS : Increase the sensitivity of the glitch detectors from their default.
bits : 5 - 6 (2 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x104 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x108 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x10C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R3 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x110 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R4 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x114 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R5 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x118 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R6 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT1
address_offset : 0x11C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT1_R7 :
bits : 0 - 23 (24 bit)
access : read-only
Disable/Enable boot paths/features in the RP2350 mask ROM. Disables always supersede enables. Enables are provided where there are other configurations in OTP that must be valid. (RBIT-3)
address_offset : 0x120 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DISABLE_BOOTSEL_EXEC2 :
bits : 0 - 0 (1 bit)
access : read-only
ENABLE_BOOTSEL_LED : Enable bootloader activity LED. If set, bootsel_led_cfg is assumed to be valid
bits : 1 - 1 (1 bit)
access : read-only
ENABLE_BOOTSEL_NON_DEFAULT_PLL_XOSC_CFG : Enable loading of the non-default XOSC and PLL configuration before entering BOOTSEL mode.
Ensure that BOOTSEL_XOSC_CFG and BOOTSEL_PLL_CFG are correctly programmed before setting this bit.
If this bit is set, user software may use the contents of BOOTSEL_PLL_CFG to calculated the expected XOSC frequency based on the fixed USB boot frequency of 48 MHz.
bits : 2 - 2 (1 bit)
access : read-only
FLASH_IO_VOLTAGE_1V8 : If 1, configure the QSPI pads for 1.8 V operation when accessing flash for the first time from the bootrom, using the VOLTAGE_SELECT register for the QSPI pads bank. This slightly improves the input timing of the pads at low voltages, but does not affect their output characteristics.
If 0, leave VOLTAGE_SELECT in its reset state (suitable for operation at and above 2.5 V)
bits : 3 - 3 (1 bit)
access : read-only
FAST_SIGCHECK_ROSC_DIV : Enable quartering of ROSC divisor during signature check, to reduce secure boot time
bits : 4 - 4 (1 bit)
access : read-only
FLASH_DEVINFO_ENABLE : Mark FLASH_DEVINFO as containing valid, ECC'd data which describes external flash devices.
bits : 5 - 5 (1 bit)
access : read-only
OVERRIDE_FLASH_PARTITION_SLOT_SIZE : Override the limit for default flash metadata scanning.
The value is specified in FLASH_PARTITION_SLOT_SIZE. Make sure FLASH_PARTITION_SLOT_SIZE is valid before setting this bit
bits : 6 - 6 (1 bit)
access : read-only
SINGLE_FLASH_BINARY : Restrict flash boot path to use of a single binary at the start of flash
bits : 7 - 7 (1 bit)
access : read-only
DISABLE_AUTO_SWITCH_ARCH : Disable auto-switch of CPU architecture on boot when the (only) binary to be booted is for the other Arm/RISC-V architecture and both architectures are enabled
bits : 8 - 8 (1 bit)
access : read-only
SECURE_PARTITION_TABLE : Require a partition table to be signed
bits : 9 - 9 (1 bit)
access : read-only
HASHED_PARTITION_TABLE : Require a partition table to be hashed (if not signed)
bits : 10 - 10 (1 bit)
access : read-only
ROLLBACK_REQUIRED : Require binaries to have a rollback version. Set automatically the first time a binary with a rollback version is booted.
bits : 11 - 11 (1 bit)
access : read-only
DISABLE_FLASH_BOOT :
bits : 12 - 12 (1 bit)
access : read-only
DISABLE_OTP_BOOT : Takes precedence over ENABLE_OTP_BOOT.
bits : 13 - 13 (1 bit)
access : read-only
ENABLE_OTP_BOOT : Enable OTP boot. A number of OTP rows specified by OTPBOOT_LEN will be loaded, starting from OTPBOOT_SRC, into the SRAM location specified by OTPBOOT_DST1 and OTPBOOT_DST0.
The loaded program image is stored with ECC, 16 bits per row, and must contain a valid IMAGE_DEF. Do not set this bit without first programming an image into OTP and configuring OTPBOOT_LEN, OTPBOOT_SRC, OTPBOOT_DST0 and OTPBOOT_DST1.
Note that OTPBOOT_LEN and OTPBOOT_SRC must be even numbers of OTP rows. Equivalently, the image must be a multiple of 32 bits in size, and must start at a 32-bit-aligned address in the ECC read data address window.
bits : 14 - 14 (1 bit)
access : read-only
DISABLE_POWER_SCRATCH :
bits : 15 - 15 (1 bit)
access : read-only
DISABLE_WATCHDOG_SCRATCH :
bits : 16 - 16 (1 bit)
access : read-only
DISABLE_BOOTSEL_USB_MSD_IFC :
bits : 17 - 17 (1 bit)
access : read-only
DISABLE_BOOTSEL_USB_PICOBOOT_IFC :
bits : 18 - 18 (1 bit)
access : read-only
DISABLE_BOOTSEL_UART_BOOT :
bits : 19 - 19 (1 bit)
access : read-only
DISABLE_XIP_ACCESS_ON_SRAM_ENTRY : Disable all access to XIP after entering an SRAM binary.
Note that this will cause bootrom APIs that access XIP to fail, including APIs that interact with the partition table.
bits : 20 - 20 (1 bit)
access : read-only
DISABLE_SRAM_WINDOW_BOOT :
bits : 21 - 21 (1 bit)
access : read-only
Redundant copy of BOOT_FLAGS0
address_offset : 0x124 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOT_FLAGS0_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of BOOT_FLAGS0
address_offset : 0x128 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOT_FLAGS0_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Disable/Enable boot paths/features in the RP2350 mask ROM. Disables always supersede enables. Enables are provided where there are other configurations in OTP that must be valid. (RBIT-3)
address_offset : 0x12C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_VALID : Mark each of the possible boot keys as valid. The bootrom will check signatures against all valid boot keys, and ignore invalid boot keys.
Each bit in this field corresponds to one of the four 256-bit boot key hashes that may be stored in page 2 of the OTP.
A KEY_VALID bit is ignored if the corresponding KEY_INVALID bit is set. Boot keys are considered valid only when KEY_VALID is set and KEY_INVALID is clear.
Do not mark a boot key as KEY_VALID if it does not contain a valid SHA-256 hash of your secp256k1 public key. Verify keys after programming, before setting the KEY_VALID bits -- a boot key with uncorrectable ECC faults will render your device unbootable if secure boot is enabled.
Do not enable secure boot without first installing a valid key. This will render your device unbootable.
bits : 0 - 3 (4 bit)
access : read-only
KEY_INVALID : Mark a boot key as invalid, or prevent it from ever becoming valid. The bootrom will ignore any boot key marked as invalid during secure boot signature checks.
Each bit in this field corresponds to one of the four 256-bit boot key hashes that may be stored in page 2 of the OTP.
When provisioning boot keys, it's recommended to mark any boot key slots you don't intend to use as KEY_INVALID, so that spurious keys can not be installed at a later time.
bits : 8 - 11 (4 bit)
access : read-only
DOUBLE_TAP_DELAY : Adjust how long to wait for a second reset when double tap BOOTSEL mode is enabled via DOUBLE_TAP. The minimum is 50 milliseconds, and each unit of this field adds an additional 50 milliseconds.
For example, settings this field to its maximum value of 7 will cause the chip to wait for 400 milliseconds at boot to check for a second reset which requests entry to BOOTSEL mode.
200 milliseconds (DOUBLE_TAP_DELAY=3) is a good intermediate value.
bits : 16 - 18 (3 bit)
access : read-only
DOUBLE_TAP : Enable entering BOOTSEL mode via double-tap of the RUN/RSTn pin. Adds a significant delay to boot time, as configured by DOUBLE_TAP_DELAY.
This functions by waiting at startup (i.e. following a reset) to see if a second reset is applied soon afterward. The second reset is detected by the bootrom with help of the POWMAN_CHIP_RESET_DOUBLE_TAP flag, which is not reset by the external reset pin, and the bootrom enters BOOTSEL mode (NSBOOT) to await further instruction over USB or UART.
bits : 19 - 19 (1 bit)
access : read-only
Redundant copy of BOOT_FLAGS1
address_offset : 0x130 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOT_FLAGS1_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of BOOT_FLAGS1
address_offset : 0x134 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOT_FLAGS1_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Default boot version thermometer counter, bits 23:0 (RBIT-3)
address_offset : 0x138 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION0 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of DEFAULT_BOOT_VERSION0
address_offset : 0x13C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION0_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Bits 31:16 of private per-device random number (ECC)
address_offset : 0x14 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID1 :
bits : 0 - 15 (16 bit)
access : read-only
Redundant copy of DEFAULT_BOOT_VERSION0
address_offset : 0x140 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION0_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Default boot version thermometer counter, bits 47:24 (RBIT-3)
address_offset : 0x144 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of DEFAULT_BOOT_VERSION1
address_offset : 0x148 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION1_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of DEFAULT_BOOT_VERSION1
address_offset : 0x14C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
DEFAULT_BOOT_VERSION1_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Stores information about external flash device(s). (ECC)
Assumed to be valid if BOOT_FLAGS0_FLASH_DEVINFO_ENABLE is set.
address_offset : 0x150 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CS1_GPIO : Indicate a GPIO number to be used for the secondary flash chip select (CS1), which selects the external QSPI device mapped at system addresses 0x11000000 through 0x11ffffff. There is no such configuration for CS0, as the primary chip select has a dedicated pin.
On RP2350 the permissible GPIO numbers are 0, 8, 19 and 47.
Ignored if CS1_size is zero. If CS1_SIZE is nonzero, the bootrom will automatically configure this GPIO as a second chip select upon entering the flash boot path, or entering any other path that may use the QSPI flash interface, such as BOOTSEL mode (nsboot).
bits : 0 - 5 (6 bit)
access : read-only
D8H_ERASE_SUPPORTED : If true, all attached devices are assumed to support (or ignore, in the case of PSRAM) a block erase command with a command prefix of D8h, an erase size of 64 kiB, and a 24-bit address. Almost all 25-series flash devices support this command.
If set, the bootrom will use the D8h erase command where it is able, to accelerate bulk erase operations. This makes flash programming faster.
When BOOT_FLAGS0_FLASH_DEVINFO_ENABLE is not set, this field defaults to false.
bits : 7 - 7 (1 bit)
access : read-only
CS0_SIZE : The size of the flash/PSRAM device on chip select 0 (addressable at 0x10000000 through 0x10ffffff).
A value of zero is decoded as a size of zero (no device). Nonzero values are decoded as 4kiB << CS0_SIZE. For example, four megabytes is encoded with a CS0_SIZE value of 10, and 16 megabytes is encoded with a CS0_SIZE value of 12.
When BOOT_FLAGS0_FLASH_DEVINFO_ENABLE is not set, a default of 12 (16 MiB) is used.
bits : 8 - 11 (4 bit)
access : read-only
Enumeration:
0 : NONE
1 : 8K
2 : 16K
3 : 32K
4 : 64k
5 : 128K
6 : 256K
7 : 512K
8 : 1M
9 : 2M
10 : 4M
11 : 8M
12 : 16M
End of enumeration elements list.
CS1_SIZE : The size of the flash/PSRAM device on chip select 1 (addressable at 0x11000000 through 0x11ffffff).
A value of zero is decoded as a size of zero (no device). Nonzero values are decoded as 4kiB << CS1_SIZE. For example, four megabytes is encoded with a CS1_SIZE value of 10, and 16 megabytes is encoded with a CS1_SIZE value of 12.
When BOOT_FLAGS0_FLASH_DEVINFO_ENABLE is not set, a default of zero is used.
bits : 12 - 15 (4 bit)
access : read-only
Enumeration:
0 : NONE
1 : 8K
2 : 16K
3 : 32K
4 : 64k
5 : 128K
6 : 256K
7 : 512K
8 : 1M
9 : 2M
10 : 4M
11 : 8M
12 : 16M
End of enumeration elements list.
Gap between partition table slot 0 and slot 1 at the start of flash (the default size is 4096 bytes) (ECC) Enabled by the OVERRIDE_FLASH_PARTITION_SLOT_SIZE bit in BOOT_FLAGS, the size is 4096 * (value + 1)
address_offset : 0x154 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
FLASH_PARTITION_SLOT_SIZE :
bits : 0 - 15 (16 bit)
access : read-only
Pin configuration for LED status, used by USB bootloader. (ECC)
Must be valid if BOOT_FLAGS0_ENABLE_BOOTSEL_LED is set.
address_offset : 0x158 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PIN : GPIO index to use for bootloader activity LED.
bits : 0 - 5 (6 bit)
access : read-only
ACTIVELOW : LED is active-low. (Default: active-high.)
bits : 8 - 8 (1 bit)
access : read-only
Optional PLL configuration for BOOTSEL mode. (ECC)
This should be configured to produce an exact 48 MHz based on the crystal oscillator frequency. User mode software may also use this value to calculate the expected crystal frequency based on an assumed 48 MHz PLL output.
If no configuration is given, the crystal is assumed to be 12 MHz.
The PLL frequency can be calculated as:
PLL out = (XOSC frequency / (REFDIV+1)) x FBDIV / (POSTDIV1 x POSTDIV2)
Conversely the crystal frequency can be calculated as:
XOSC frequency = 48 MHz x (REFDIV+1) x (POSTDIV1 x POSTDIV2) / FBDIV
(Note the +1 on REFDIV is because the value stored in this OTP location is the actual divisor value minus one.)
Used if and only if ENABLE_BOOTSEL_NON_DEFAULT_PLL_XOSC_CFG is set in BOOT_FLAGS0. That bit should be set only after this row and BOOTSEL_XOSC_CFG are both correctly programmed.
address_offset : 0x15C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
FBDIV : PLL feedback divisor, in the range 16..320 inclusive.
bits : 0 - 8 (9 bit)
access : read-only
POSTDIV1 : PLL post-divide 1 divisor, in the range 1..7 inclusive.
bits : 9 - 11 (3 bit)
access : read-only
POSTDIV2 : PLL post-divide 2 divisor, in the range 1..7 inclusive.
bits : 12 - 14 (3 bit)
access : read-only
REFDIV : PLL reference divisor, minus one.
Programming a value of 0 means a reference divisor of 1. Programming a value of 1 means a reference divisor of 2 (for exceptionally fast XIN inputs)
bits : 15 - 15 (1 bit)
access : read-only
Non-default crystal oscillator configuration for the USB bootloader. (ECC)
These values may also be used by user code configuring the crystal oscillator.
Used if and only if ENABLE_BOOTSEL_NON_DEFAULT_PLL_XOSC_CFG is set in BOOT_FLAGS0. That bit should be set only after this row and BOOTSEL_PLL_CFG are both correctly programmed.
address_offset : 0x160 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
STARTUP : Value of the XOSC_STARTUP register
bits : 0 - 13 (14 bit)
access : read-only
RANGE : Value of the XOSC_CTRL_FREQ_RANGE register.
bits : 14 - 15 (2 bit)
access : read-only
Enumeration:
0 : 1_15MHZ
1 : 10_30MHZ
2 : 25_60MHZ
3 : 40_100MHZ
End of enumeration elements list.
USB boot specific feature flags (RBIT-3)
address_offset : 0x164 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
WL_USB_DEVICE_VID_VALUE_VALID : valid flag for USB_DEVICE_VID_VALUE entry of the USB_WHITE_LABEL struct (index 0)
bits : 0 - 0 (1 bit)
access : read-only
WL_USB_DEVICE_PID_VALUE_VALID : valid flag for USB_DEVICE_PID_VALUE entry of the USB_WHITE_LABEL struct (index 1)
bits : 1 - 1 (1 bit)
access : read-only
WL_USB_DEVICE_SERIAL_NUMBER_VALUE_VALID : valid flag for USB_DEVICE_BCD_DEVICEVALUE entry of the USB_WHITE_LABEL struct (index 2)
bits : 2 - 2 (1 bit)
access : read-only
WL_USB_DEVICE_LANG_ID_VALUE_VALID : valid flag for USB_DEVICE_LANG_ID_VALUE entry of the USB_WHITE_LABEL struct (index 3)
bits : 3 - 3 (1 bit)
access : read-only
WL_USB_DEVICE_MANUFACTURER_STRDEF_VALID : valid flag for USB_DEVICE_MANUFACTURER_STRDEF entry of the USB_WHITE_LABEL struct (index 4)
bits : 4 - 4 (1 bit)
access : read-only
WL_USB_DEVICE_PRODUCT_STRDEF_VALID : valid flag for USB_DEVICE_PRODUCT_STRDEF entry of the USB_WHITE_LABEL struct (index 5)
bits : 5 - 5 (1 bit)
access : read-only
WL_USB_DEVICE_SERIAL_NUMBER_STRDEF_VALID : valid flag for USB_DEVICE_SERIAL_NUMBER_STRDEF entry of the USB_WHITE_LABEL struct (index 6)
bits : 6 - 6 (1 bit)
access : read-only
WL_USB_CONFIG_ATTRIBUTES_MAX_POWER_VALUES_VALID : valid flag for USB_CONFIG_ATTRIBUTES_MAX_POWER_VALUES entry of the USB_WHITE_LABEL struct (index 7)
bits : 7 - 7 (1 bit)
access : read-only
WL_VOLUME_LABEL_STRDEF_VALID : valid flag for VOLUME_LABEL_STRDEF entry of the USB_WHITE_LABEL struct (index 8)
bits : 8 - 8 (1 bit)
access : read-only
WL_SCSI_INQUIRY_VENDOR_STRDEF_VALID : valid flag for SCSI_INQUIRY_VENDOR_STRDEF entry of the USB_WHITE_LABEL struct (index 9)
bits : 9 - 9 (1 bit)
access : read-only
WL_SCSI_INQUIRY_PRODUCT_STRDEF_VALID : valid flag for SCSI_INQUIRY_PRODUCT_STRDEF entry of the USB_WHITE_LABEL struct (index 10)
bits : 10 - 10 (1 bit)
access : read-only
WL_SCSI_INQUIRY_VERSION_STRDEF_VALID : valid flag for SCSI_INQUIRY_VERSION_STRDEF entry of the USB_WHITE_LABEL struct (index 11)
bits : 11 - 11 (1 bit)
access : read-only
WL_INDEX_HTM_REDIRECT_URL_STRDEF_VALID : valid flag for INDEX_HTM_REDIRECT_URL_STRDEF entry of the USB_WHITE_LABEL struct (index 12)
bits : 12 - 12 (1 bit)
access : read-only
WL_INDEX_HTM_REDIRECT_NAME_STRDEF_VALID : valid flag for INDEX_HTM_REDIRECT_NAME_STRDEF entry of the USB_WHITE_LABEL struct (index 13)
bits : 13 - 13 (1 bit)
access : read-only
WL_INFO_UF2_TXT_MODEL_STRDEF_VALID : valid flag for INFO_UF2_TXT_MODEL_STRDEF entry of the USB_WHITE_LABEL struct (index 14)
bits : 14 - 14 (1 bit)
access : read-only
WL_INFO_UF2_TXT_BOARD_ID_STRDEF_VALID : valid flag for the USB_WHITE_LABEL_ADDR field
bits : 15 - 15 (1 bit)
access : read-only
WHITE_LABEL_ADDR_VALID : valid flag for INFO_UF2_TXT_BOARD_ID_STRDEF entry of the USB_WHITE_LABEL struct (index 15)
bits : 22 - 22 (1 bit)
access : read-only
DP_DM_SWAP : Swap DM/DP during USB boot, to support board layouts with mirrored USB routing (deliberate or accidental).
bits : 23 - 23 (1 bit)
access : read-only
Redundant copy of USB_BOOT_FLAGS
address_offset : 0x168 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
USB_BOOT_FLAGS_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of USB_BOOT_FLAGS
address_offset : 0x16C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
USB_BOOT_FLAGS_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Row index of the USB_WHITE_LABEL structure within OTP (ECC)
The table has 16 rows, each of which are also ECC and marked valid by the corresponding valid bit in USB_BOOT_FLAGS (ECC).
The entries are either _VALUEs where the 16 bit value is used as is, or _STRDEFs which acts as a pointers to a string value.
The value stored in a _STRDEF is two separate bytes: The low seven bits of the first (LSB) byte indicates the number of characters in the string, and the top bit of the first (LSB) byte if set to indicate that each character in the string is two bytes (Unicode) versus one byte if unset. The second (MSB) byte represents the location of the string data, and is encoded as the number of rows from this USB_WHITE_LABEL_ADDR i.e. the row of the start of the string is USB_WHITE_LABEL_ADDR value + msb_byte.
In each case, the corresponding valid bit enables replacing the default value for the corresponding item provided by the boot rom.
Note that Unicode _STRDEFs are only supported for USB_DEVICE_PRODUCT_STRDEF, USB_DEVICE_SERIAL_NUMBER_STRDEF and USB_DEVICE_MANUFACTURER_STRDEF. Unicode values will be ignored if specified for other fields, and non-unicode values for these three items will be converted to Unicode characters by setting the upper 8 bits to zero.
Note that if the USB_WHITE_LABEL structure or the corresponding strings are not readable by BOOTSEL mode based on OTP permissions, or if alignment requirements are not met, then the corresponding default values are used.
The index values indicate where each field is located (row USB_WHITE_LABEL_ADDR value + index):
address_offset : 0x170 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
USB_WHITE_LABEL_ADDR :
bits : 0 - 15 (16 bit)
access : read-only
Enumeration:
0 : INDEX_USB_DEVICE_VID_VALUE
1 : INDEX_USB_DEVICE_PID_VALUE
2 : INDEX_USB_DEVICE_BCD_DEVICE_VALUE
3 : INDEX_USB_DEVICE_LANG_ID_VALUE
4 : INDEX_USB_DEVICE_MANUFACTURER_STRDEF
5 : INDEX_USB_DEVICE_PRODUCT_STRDEF
6 : INDEX_USB_DEVICE_SERIAL_NUMBER_STRDEF
7 : INDEX_USB_CONFIG_ATTRIBUTES_MAX_POWER_VALUES
8 : INDEX_VOLUME_LABEL_STRDEF
9 : INDEX_SCSI_INQUIRY_VENDOR_STRDEF
10 : INDEX_SCSI_INQUIRY_PRODUCT_STRDEF
11 : INDEX_SCSI_INQUIRY_VERSION_STRDEF
12 : INDEX_INDEX_HTM_REDIRECT_URL_STRDEF
13 : INDEX_INDEX_HTM_REDIRECT_NAME_STRDEF
14 : INDEX_INFO_UF2_TXT_MODEL_STRDEF
15 : INDEX_INFO_UF2_TXT_BOARD_ID_STRDEF
End of enumeration elements list.
OTP start row for the OTP boot image. (ECC)
If OTP boot is enabled, the bootrom will load from this location into SRAM and then directly enter the loaded image. Note that the image must be signed if SECURE_BOOT_ENABLE is set. The image itself is assumed to be ECC-protected.
This must be an even number. Equivalently, the OTP boot image must start at a word-aligned location in the ECC read data address window.
address_offset : 0x178 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
OTPBOOT_SRC :
bits : 0 - 15 (16 bit)
access : read-only
Length in rows of the OTP boot image. (ECC)
OTPBOOT_LEN must be even. The total image size must be a multiple of 4 bytes (32 bits).
address_offset : 0x17C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
OTPBOOT_LEN :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of private per-device random number (ECC)
address_offset : 0x18 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of the OTP boot image load destination (and entry point). (ECC)
This must be a location in main SRAM (main SRAM is addresses 0x20000000 through 0x20082000) and must be word-aligned.
address_offset : 0x180 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
OTPBOOT_DST0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of the OTP boot image load destination (and entry point). (ECC)
This must be a location in main SRAM (main SRAM is addresses 0x20000000 through 0x20082000) and must be word-aligned.
address_offset : 0x184 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
OTPBOOT_DST1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of private per-device random number (ECC)
address_offset : 0x1C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of private per-device random number (ECC)
address_offset : 0x20 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x200 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x204 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x208 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x20C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x210 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x214 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x218 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x21C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 143:128 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x220 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_8 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 159:144 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x224 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_9 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 175:160 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x228 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_10 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 191:176 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x22C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_11 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 207:192 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x230 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_12 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 223:208 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x234 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_13 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 239:224 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x238 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_14 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 255:240 of SHA-256 hash of boot key 0 (ECC)
address_offset : 0x23C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY0_15 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of private per-device random number (ECC)
address_offset : 0x24 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x240 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x244 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x248 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x24C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x250 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x254 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x258 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x25C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 143:128 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x260 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_8 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 159:144 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x264 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_9 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 175:160 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x268 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_10 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 191:176 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x26C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_11 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 207:192 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x270 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_12 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 223:208 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x274 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_13 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 239:224 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x278 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_14 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 255:240 of SHA-256 hash of boot key 1 (ECC)
address_offset : 0x27C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY1_15 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of private per-device random number (ECC)
address_offset : 0x28 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x280 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x284 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x288 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x28C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x290 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x294 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x298 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x29C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 143:128 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2A0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_8 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 159:144 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2A4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_9 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 175:160 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2A8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_10 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 191:176 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2AC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_11 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 207:192 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2B0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_12 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 223:208 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2B4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_13 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 239:224 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2B8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_14 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 255:240 of SHA-256 hash of boot key 2 (ECC)
address_offset : 0x2BC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY2_15 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of private per-device random number (ECC)
address_offset : 0x2C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RANDID7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2C0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2C4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2C8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2CC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2D0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2D4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2D8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2DC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 143:128 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2E0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_8 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 159:144 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2E4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_9 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 175:160 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2E8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_10 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 191:176 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2EC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_11 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 207:192 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2F0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_12 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 223:208 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2F4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_13 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 239:224 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2F8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_14 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 255:240 of SHA-256 hash of boot key 3 (ECC)
address_offset : 0x2FC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
BOOTKEY3_15 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 1 (ECC)
address_offset : 0x3D20 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 1 (ECC)
address_offset : 0x3D24 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 1 (ECC)
address_offset : 0x3D28 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 1 (ECC)
address_offset : 0x3D2C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 1 (ECC)
address_offset : 0x3D30 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 1 (ECC)
address_offset : 0x3D34 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 1 (ECC)
address_offset : 0x3D38 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 1 (ECC)
address_offset : 0x3D3C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY1_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 2 (ECC)
address_offset : 0x3D40 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 2 (ECC)
address_offset : 0x3D44 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 2 (ECC)
address_offset : 0x3D48 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 2 (ECC)
address_offset : 0x3D4C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 2 (ECC)
address_offset : 0x3D50 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 2 (ECC)
address_offset : 0x3D54 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 2 (ECC)
address_offset : 0x3D58 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 2 (ECC)
address_offset : 0x3D5C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY2_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 3 (ECC)
address_offset : 0x3D60 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 3 (ECC)
address_offset : 0x3D64 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 3 (ECC)
address_offset : 0x3D68 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 3 (ECC)
address_offset : 0x3D6C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 3 (ECC)
address_offset : 0x3D70 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 3 (ECC)
address_offset : 0x3D74 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 3 (ECC)
address_offset : 0x3D78 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 3 (ECC)
address_offset : 0x3D7C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY3_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 4 (ECC)
address_offset : 0x3D80 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 4 (ECC)
address_offset : 0x3D84 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 4 (ECC)
address_offset : 0x3D88 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 4 (ECC)
address_offset : 0x3D8C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 4 (ECC)
address_offset : 0x3D90 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 4 (ECC)
address_offset : 0x3D94 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 4 (ECC)
address_offset : 0x3D98 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 4 (ECC)
address_offset : 0x3D9C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY4_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 5 (ECC)
address_offset : 0x3DA0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 5 (ECC)
address_offset : 0x3DA4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 5 (ECC)
address_offset : 0x3DA8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 5 (ECC)
address_offset : 0x3DAC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 5 (ECC)
address_offset : 0x3DB0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 5 (ECC)
address_offset : 0x3DB4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 5 (ECC)
address_offset : 0x3DB8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 5 (ECC)
address_offset : 0x3DBC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY5_7 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 15:0 of OTP access key 6 (ECC)
address_offset : 0x3DC0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_0 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 31:16 of OTP access key 6 (ECC)
address_offset : 0x3DC4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_1 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 47:32 of OTP access key 6 (ECC)
address_offset : 0x3DC8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of OTP access key 6 (ECC)
address_offset : 0x3DCC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_3 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 79:64 of OTP access key 6 (ECC)
address_offset : 0x3DD0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_4 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 95:80 of OTP access key 6 (ECC)
address_offset : 0x3DD4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_5 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 111:96 of OTP access key 6 (ECC)
address_offset : 0x3DD8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_6 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 127:112 of OTP access key 6 (ECC)
address_offset : 0x3DDC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY6_7 :
bits : 0 - 15 (16 bit)
access : read-only
Valid flag for key 1. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DE4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Valid flag for key 2. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DE8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Valid flag for key 3. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DEC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Valid flag for key 4. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DF0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Valid flag for key 5. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DF4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Valid flag for key 6. Once the valid flag is set, the key can no longer be read or written, and becomes a valid fixed key for protecting OTP pages.
address_offset : 0x3DF8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
VALID :
bits : 0 - 0 (1 bit)
access : read-only
VALID_R1 : Redundant copy of VALID, with 3-way majority vote
bits : 8 - 8 (1 bit)
access : read-only
VALID_R2 : Redundant copy of VALID, with 3-way majority vote
bits : 16 - 16 (1 bit)
access : read-only
Lock configuration LSBs for page 0 (rows 0x0 through 0x3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E00 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 0 (rows 0x0 through 0x3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E04 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 1 (rows 0x40 through 0x7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E08 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 1 (rows 0x40 through 0x7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E0C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 2 (rows 0x80 through 0xbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E10 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 2 (rows 0x80 through 0xbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E14 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 3 (rows 0xc0 through 0xff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E18 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 3 (rows 0xc0 through 0xff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E1C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 4 (rows 0x100 through 0x13f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E20 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 4 (rows 0x100 through 0x13f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E24 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 5 (rows 0x140 through 0x17f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E28 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 5 (rows 0x140 through 0x17f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E2C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 6 (rows 0x180 through 0x1bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E30 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 6 (rows 0x180 through 0x1bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E34 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 7 (rows 0x1c0 through 0x1ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E38 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 7 (rows 0x1c0 through 0x1ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E3C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 8 (rows 0x200 through 0x23f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E40 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 8 (rows 0x200 through 0x23f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E44 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 9 (rows 0x240 through 0x27f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E48 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 9 (rows 0x240 through 0x27f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E4C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 10 (rows 0x280 through 0x2bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E50 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 10 (rows 0x280 through 0x2bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E54 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 11 (rows 0x2c0 through 0x2ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E58 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 11 (rows 0x2c0 through 0x2ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E5C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 12 (rows 0x300 through 0x33f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E60 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 12 (rows 0x300 through 0x33f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E64 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 13 (rows 0x340 through 0x37f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E68 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 13 (rows 0x340 through 0x37f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E6C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 14 (rows 0x380 through 0x3bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E70 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 14 (rows 0x380 through 0x3bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E74 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 15 (rows 0x3c0 through 0x3ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E78 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 15 (rows 0x3c0 through 0x3ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E7C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 16 (rows 0x400 through 0x43f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E80 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 16 (rows 0x400 through 0x43f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E84 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 17 (rows 0x440 through 0x47f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E88 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 17 (rows 0x440 through 0x47f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E8C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 18 (rows 0x480 through 0x4bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E90 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 18 (rows 0x480 through 0x4bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E94 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 19 (rows 0x4c0 through 0x4ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E98 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 19 (rows 0x4c0 through 0x4ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3E9C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 20 (rows 0x500 through 0x53f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EA0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 20 (rows 0x500 through 0x53f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EA4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 21 (rows 0x540 through 0x57f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EA8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 21 (rows 0x540 through 0x57f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EAC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 22 (rows 0x580 through 0x5bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EB0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 22 (rows 0x580 through 0x5bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EB4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 23 (rows 0x5c0 through 0x5ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EB8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 23 (rows 0x5c0 through 0x5ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EBC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 24 (rows 0x600 through 0x63f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EC0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 24 (rows 0x600 through 0x63f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EC4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 25 (rows 0x640 through 0x67f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EC8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 25 (rows 0x640 through 0x67f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3ECC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 26 (rows 0x680 through 0x6bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3ED0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 26 (rows 0x680 through 0x6bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3ED4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 27 (rows 0x6c0 through 0x6ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3ED8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 27 (rows 0x6c0 through 0x6ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EDC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 28 (rows 0x700 through 0x73f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EE0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 28 (rows 0x700 through 0x73f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EE4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 29 (rows 0x740 through 0x77f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EE8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 29 (rows 0x740 through 0x77f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EEC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 30 (rows 0x780 through 0x7bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EF0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 30 (rows 0x780 through 0x7bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EF4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 31 (rows 0x7c0 through 0x7ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EF8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 31 (rows 0x7c0 through 0x7ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3EFC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 32 (rows 0x800 through 0x83f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F00 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 32 (rows 0x800 through 0x83f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F04 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 33 (rows 0x840 through 0x87f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F08 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 33 (rows 0x840 through 0x87f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F0C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 34 (rows 0x880 through 0x8bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F10 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 34 (rows 0x880 through 0x8bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F14 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 35 (rows 0x8c0 through 0x8ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F18 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 35 (rows 0x8c0 through 0x8ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F1C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 36 (rows 0x900 through 0x93f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F20 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 36 (rows 0x900 through 0x93f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F24 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 37 (rows 0x940 through 0x97f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F28 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 37 (rows 0x940 through 0x97f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F2C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 38 (rows 0x980 through 0x9bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F30 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 38 (rows 0x980 through 0x9bf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F34 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 39 (rows 0x9c0 through 0x9ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F38 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 39 (rows 0x9c0 through 0x9ff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F3C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 40 (rows 0xa00 through 0xa3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F40 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 40 (rows 0xa00 through 0xa3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F44 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 41 (rows 0xa40 through 0xa7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F48 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 41 (rows 0xa40 through 0xa7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F4C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 42 (rows 0xa80 through 0xabf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F50 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 42 (rows 0xa80 through 0xabf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F54 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 43 (rows 0xac0 through 0xaff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F58 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 43 (rows 0xac0 through 0xaff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F5C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 44 (rows 0xb00 through 0xb3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F60 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 44 (rows 0xb00 through 0xb3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F64 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 45 (rows 0xb40 through 0xb7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F68 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 45 (rows 0xb40 through 0xb7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F6C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 46 (rows 0xb80 through 0xbbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F70 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 46 (rows 0xb80 through 0xbbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F74 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 47 (rows 0xbc0 through 0xbff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F78 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 47 (rows 0xbc0 through 0xbff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F7C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 48 (rows 0xc00 through 0xc3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F80 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 48 (rows 0xc00 through 0xc3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F84 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 49 (rows 0xc40 through 0xc7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F88 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 49 (rows 0xc40 through 0xc7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F8C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 50 (rows 0xc80 through 0xcbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F90 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 50 (rows 0xc80 through 0xcbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F94 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 51 (rows 0xcc0 through 0xcff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F98 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 51 (rows 0xcc0 through 0xcff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3F9C Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 52 (rows 0xd00 through 0xd3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FA0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 52 (rows 0xd00 through 0xd3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FA4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 53 (rows 0xd40 through 0xd7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FA8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 53 (rows 0xd40 through 0xd7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FAC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 54 (rows 0xd80 through 0xdbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FB0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 54 (rows 0xd80 through 0xdbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FB4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 55 (rows 0xdc0 through 0xdff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FB8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 55 (rows 0xdc0 through 0xdff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FBC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 56 (rows 0xe00 through 0xe3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FC0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 56 (rows 0xe00 through 0xe3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FC4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 57 (rows 0xe40 through 0xe7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FC8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 57 (rows 0xe40 through 0xe7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FCC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 58 (rows 0xe80 through 0xebf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FD0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 58 (rows 0xe80 through 0xebf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FD4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 59 (rows 0xec0 through 0xeff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FD8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 59 (rows 0xec0 through 0xeff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FDC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 60 (rows 0xf00 through 0xf3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FE0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 60 (rows 0xf00 through 0xf3f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FE4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 61 (rows 0xf40 through 0xf7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FE8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 61 (rows 0xf40 through 0xf7f). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FEC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 62 (rows 0xf80 through 0xfbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FF0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 62 (rows 0xf80 through 0xfbf). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FF4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration LSBs for page 63 (rows 0xfc0 through 0xfff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FF8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
KEY_W : Index 1-6 of a hardware key which must be entered to grant write access, or 0 if no such key is required.
bits : 0 - 2 (3 bit)
access : read-only
KEY_R : Index 1-6 of a hardware key which must be entered to grant read access, or 0 if no such key is required.
bits : 3 - 5 (3 bit)
access : read-only
NO_KEY_STATE : State when at least one key is registered for this page and no matching key has been entered.
bits : 6 - 6 (1 bit)
access : read-only
Enumeration:
0 : read_only
1 : inaccessible
End of enumeration elements list.
RMA : Decommission for RMA of a suspected faulty device. This re-enables the factory test JTAG interface, and makes pages 3 through 61 of the OTP permanently inaccessible.
bits : 7 - 7 (1 bit)
access : read-only
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Lock configuration MSBs for page 63 (rows 0xfc0 through 0xfff). Locks are stored with 3-way majority vote encoding, so that bits can be set independently.
This OTP location is always readable, and is write-protected by its own permissions.
address_offset : 0x3FFC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LOCK_S : Lock state for Secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
bits : 0 - 1 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page is fully accessible by Secure software.
1 : read_only
Page can be read by Secure software, but can not be written.
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Secure software.
End of enumeration elements list.
LOCK_NS : Lock state for Non-secure accesses to this page. Thermometer-coded, so lock state can be advanced permanently from any state to any less-permissive state by programming OTP. Software can also advance the lock state temporarily (until next OTP reset) using the SW_LOCKx registers.
Note that READ_WRITE and READ_ONLY are equivalent in hardware, as the SBPI programming interface is not accessible to Non-secure software. However, Secure software may check these bits to apply write permissions to a Non-secure OTP programming API.
bits : 2 - 3 (2 bit)
access : read-only
Enumeration:
0 : read_write
Page can be read by Non-secure software, and Secure software may permit Non-secure writes.
1 : read_only
Page can be read by Non-secure software
2 : reserved
Do not use. Behaves the same as INACCESSIBLE.
3 : inaccessible
Page can not be accessed by Non-secure software.
End of enumeration elements list.
LOCK_BL : Dummy lock bits reserved for bootloaders (including the RP2350 USB bootloader) to store their own OTP access permissions. No hardware effect, and no corresponding SW_LOCKx registers.
bits : 4 - 5 (2 bit)
access : read-only
Enumeration:
0 : read_write
Bootloader permits user reads and writes to this page
1 : read_only
Bootloader permits user reads of this page
2 : reserved
Do not use. Behaves the same as INACCESSIBLE
3 : inaccessible
Bootloader does not permit user access to this page
End of enumeration elements list.
R1 : Redundant copy of bits 7:0
bits : 8 - 15 (8 bit)
access : read-only
R2 : Redundant copy of bits 7:0
bits : 16 - 23 (8 bit)
access : read-only
Bits 31:16 of public device ID (ECC)
address_offset : 0x4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CHIPID1 :
bits : 0 - 15 (16 bit)
access : read-only
Ring oscillator frequency in kHz, measured during manufacturing (ECC)
This is measured at 1.1 V, at room temperature, with the ROSC configuration registers in their reset state.
address_offset : 0x40 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ROSC_CALIB :
bits : 0 - 15 (16 bit)
access : read-only
Low-power oscillator frequency in Hz, measured during manufacturing (ECC)
This is measured at 1.1V, at room temperature, with the LPOSC trim register in its reset state.
address_offset : 0x44 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
LPOSC_CALIB :
bits : 0 - 15 (16 bit)
access : read-only
The number of main user GPIOs (bank 0). Should read 48 in the QFN80 package, and 30 in the QFN60 package. (ECC)
address_offset : 0x60 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
NUM_GPIOS :
bits : 0 - 7 (8 bit)
access : read-only
Bits 47:32 of public device ID (ECC)
address_offset : 0x8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CHIPID2 :
bits : 0 - 15 (16 bit)
access : read-only
Bits 63:48 of public device ID (ECC)
address_offset : 0xC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CHIPID3 :
bits : 0 - 15 (16 bit)
access : read-only
Lower 16 bits of CRC32 of OTP addresses 0x00 through 0x6b (polynomial 0x4c11db7, input reflected, output reflected, seed all-ones, final XOR all-ones) (ECC)
address_offset : 0xD8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
INFO_CRC0 :
bits : 0 - 15 (16 bit)
access : read-only
Upper 16 bits of CRC32 of OTP addresses 0x00 through 0x6b (ECC)
address_offset : 0xDC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
INFO_CRC1 :
bits : 0 - 15 (16 bit)
access : read-only
Page 0 critical boot flags (RBIT-8)
address_offset : 0xE0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ARM_DISABLE : Permanently disable ARM processors (Cortex-M33)
bits : 0 - 0 (1 bit)
access : read-only
RISCV_DISABLE : Permanently disable RISC-V processors (Hazard3)
bits : 1 - 1 (1 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xE4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R1 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xE8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R2 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xEC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R3 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xF0 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R4 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xF4 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R5 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xF8 Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R6 :
bits : 0 - 23 (24 bit)
access : read-only
Redundant copy of CRIT0
address_offset : 0xFC Bytes (0x0)
size : 32 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CRIT0_R7 :
bits : 0 - 23 (24 bit)
access : read-only
Is something missing? Is something wrong? can you help correct it ? Please contact us at info@chipselect.org !
This website is sponsored by
Embeetle, an IDE designed from scratch for embedded software developers.