pub struct OTP { /* private fields */ }Expand description
SNPS OTP control IF (SBPI and RPi wrapper control)
Implementations§
Source§impl OTP
impl OTP
Sourcepub const PTR: *const RegisterBlock = {0x40120000 as *const rp235x_hal::rp235x_pac::otp::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x40120000 as *const rp235x_hal::rp235x_pac::otp::RegisterBlock}
Pointer to the register block
Sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
Sourcepub unsafe fn steal() -> OTP
pub unsafe fn steal() -> OTP
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
Sourcepub fn sw_lock0(&self) -> &Reg<SW_LOCK0_SPEC>
pub fn sw_lock0(&self) -> &Reg<SW_LOCK0_SPEC>
0x00 - Software lock register for page 0. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock1(&self) -> &Reg<SW_LOCK1_SPEC>
pub fn sw_lock1(&self) -> &Reg<SW_LOCK1_SPEC>
0x04 - Software lock register for page 1. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock2(&self) -> &Reg<SW_LOCK2_SPEC>
pub fn sw_lock2(&self) -> &Reg<SW_LOCK2_SPEC>
0x08 - Software lock register for page 2. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock3(&self) -> &Reg<SW_LOCK3_SPEC>
pub fn sw_lock3(&self) -> &Reg<SW_LOCK3_SPEC>
0x0c - Software lock register for page 3. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock4(&self) -> &Reg<SW_LOCK4_SPEC>
pub fn sw_lock4(&self) -> &Reg<SW_LOCK4_SPEC>
0x10 - Software lock register for page 4. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock5(&self) -> &Reg<SW_LOCK5_SPEC>
pub fn sw_lock5(&self) -> &Reg<SW_LOCK5_SPEC>
0x14 - Software lock register for page 5. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock6(&self) -> &Reg<SW_LOCK6_SPEC>
pub fn sw_lock6(&self) -> &Reg<SW_LOCK6_SPEC>
0x18 - Software lock register for page 6. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock7(&self) -> &Reg<SW_LOCK7_SPEC>
pub fn sw_lock7(&self) -> &Reg<SW_LOCK7_SPEC>
0x1c - Software lock register for page 7. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock8(&self) -> &Reg<SW_LOCK8_SPEC>
pub fn sw_lock8(&self) -> &Reg<SW_LOCK8_SPEC>
0x20 - Software lock register for page 8. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock9(&self) -> &Reg<SW_LOCK9_SPEC>
pub fn sw_lock9(&self) -> &Reg<SW_LOCK9_SPEC>
0x24 - Software lock register for page 9. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock10(&self) -> &Reg<SW_LOCK10_SPEC>
pub fn sw_lock10(&self) -> &Reg<SW_LOCK10_SPEC>
0x28 - Software lock register for page 10. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock11(&self) -> &Reg<SW_LOCK11_SPEC>
pub fn sw_lock11(&self) -> &Reg<SW_LOCK11_SPEC>
0x2c - Software lock register for page 11. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock12(&self) -> &Reg<SW_LOCK12_SPEC>
pub fn sw_lock12(&self) -> &Reg<SW_LOCK12_SPEC>
0x30 - Software lock register for page 12. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock13(&self) -> &Reg<SW_LOCK13_SPEC>
pub fn sw_lock13(&self) -> &Reg<SW_LOCK13_SPEC>
0x34 - Software lock register for page 13. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock14(&self) -> &Reg<SW_LOCK14_SPEC>
pub fn sw_lock14(&self) -> &Reg<SW_LOCK14_SPEC>
0x38 - Software lock register for page 14. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock15(&self) -> &Reg<SW_LOCK15_SPEC>
pub fn sw_lock15(&self) -> &Reg<SW_LOCK15_SPEC>
0x3c - Software lock register for page 15. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock16(&self) -> &Reg<SW_LOCK16_SPEC>
pub fn sw_lock16(&self) -> &Reg<SW_LOCK16_SPEC>
0x40 - Software lock register for page 16. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock17(&self) -> &Reg<SW_LOCK17_SPEC>
pub fn sw_lock17(&self) -> &Reg<SW_LOCK17_SPEC>
0x44 - Software lock register for page 17. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock18(&self) -> &Reg<SW_LOCK18_SPEC>
pub fn sw_lock18(&self) -> &Reg<SW_LOCK18_SPEC>
0x48 - Software lock register for page 18. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock19(&self) -> &Reg<SW_LOCK19_SPEC>
pub fn sw_lock19(&self) -> &Reg<SW_LOCK19_SPEC>
0x4c - Software lock register for page 19. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock20(&self) -> &Reg<SW_LOCK20_SPEC>
pub fn sw_lock20(&self) -> &Reg<SW_LOCK20_SPEC>
0x50 - Software lock register for page 20. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock21(&self) -> &Reg<SW_LOCK21_SPEC>
pub fn sw_lock21(&self) -> &Reg<SW_LOCK21_SPEC>
0x54 - Software lock register for page 21. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock22(&self) -> &Reg<SW_LOCK22_SPEC>
pub fn sw_lock22(&self) -> &Reg<SW_LOCK22_SPEC>
0x58 - Software lock register for page 22. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock23(&self) -> &Reg<SW_LOCK23_SPEC>
pub fn sw_lock23(&self) -> &Reg<SW_LOCK23_SPEC>
0x5c - Software lock register for page 23. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock24(&self) -> &Reg<SW_LOCK24_SPEC>
pub fn sw_lock24(&self) -> &Reg<SW_LOCK24_SPEC>
0x60 - Software lock register for page 24. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock25(&self) -> &Reg<SW_LOCK25_SPEC>
pub fn sw_lock25(&self) -> &Reg<SW_LOCK25_SPEC>
0x64 - Software lock register for page 25. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock26(&self) -> &Reg<SW_LOCK26_SPEC>
pub fn sw_lock26(&self) -> &Reg<SW_LOCK26_SPEC>
0x68 - Software lock register for page 26. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock27(&self) -> &Reg<SW_LOCK27_SPEC>
pub fn sw_lock27(&self) -> &Reg<SW_LOCK27_SPEC>
0x6c - Software lock register for page 27. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock28(&self) -> &Reg<SW_LOCK28_SPEC>
pub fn sw_lock28(&self) -> &Reg<SW_LOCK28_SPEC>
0x70 - Software lock register for page 28. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock29(&self) -> &Reg<SW_LOCK29_SPEC>
pub fn sw_lock29(&self) -> &Reg<SW_LOCK29_SPEC>
0x74 - Software lock register for page 29. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock30(&self) -> &Reg<SW_LOCK30_SPEC>
pub fn sw_lock30(&self) -> &Reg<SW_LOCK30_SPEC>
0x78 - Software lock register for page 30. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock31(&self) -> &Reg<SW_LOCK31_SPEC>
pub fn sw_lock31(&self) -> &Reg<SW_LOCK31_SPEC>
0x7c - Software lock register for page 31. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock32(&self) -> &Reg<SW_LOCK32_SPEC>
pub fn sw_lock32(&self) -> &Reg<SW_LOCK32_SPEC>
0x80 - Software lock register for page 32. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock33(&self) -> &Reg<SW_LOCK33_SPEC>
pub fn sw_lock33(&self) -> &Reg<SW_LOCK33_SPEC>
0x84 - Software lock register for page 33. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock34(&self) -> &Reg<SW_LOCK34_SPEC>
pub fn sw_lock34(&self) -> &Reg<SW_LOCK34_SPEC>
0x88 - Software lock register for page 34. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock35(&self) -> &Reg<SW_LOCK35_SPEC>
pub fn sw_lock35(&self) -> &Reg<SW_LOCK35_SPEC>
0x8c - Software lock register for page 35. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock36(&self) -> &Reg<SW_LOCK36_SPEC>
pub fn sw_lock36(&self) -> &Reg<SW_LOCK36_SPEC>
0x90 - Software lock register for page 36. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock37(&self) -> &Reg<SW_LOCK37_SPEC>
pub fn sw_lock37(&self) -> &Reg<SW_LOCK37_SPEC>
0x94 - Software lock register for page 37. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock38(&self) -> &Reg<SW_LOCK38_SPEC>
pub fn sw_lock38(&self) -> &Reg<SW_LOCK38_SPEC>
0x98 - Software lock register for page 38. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock39(&self) -> &Reg<SW_LOCK39_SPEC>
pub fn sw_lock39(&self) -> &Reg<SW_LOCK39_SPEC>
0x9c - Software lock register for page 39. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock40(&self) -> &Reg<SW_LOCK40_SPEC>
pub fn sw_lock40(&self) -> &Reg<SW_LOCK40_SPEC>
0xa0 - Software lock register for page 40. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock41(&self) -> &Reg<SW_LOCK41_SPEC>
pub fn sw_lock41(&self) -> &Reg<SW_LOCK41_SPEC>
0xa4 - Software lock register for page 41. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock42(&self) -> &Reg<SW_LOCK42_SPEC>
pub fn sw_lock42(&self) -> &Reg<SW_LOCK42_SPEC>
0xa8 - Software lock register for page 42. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock43(&self) -> &Reg<SW_LOCK43_SPEC>
pub fn sw_lock43(&self) -> &Reg<SW_LOCK43_SPEC>
0xac - Software lock register for page 43. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock44(&self) -> &Reg<SW_LOCK44_SPEC>
pub fn sw_lock44(&self) -> &Reg<SW_LOCK44_SPEC>
0xb0 - Software lock register for page 44. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock45(&self) -> &Reg<SW_LOCK45_SPEC>
pub fn sw_lock45(&self) -> &Reg<SW_LOCK45_SPEC>
0xb4 - Software lock register for page 45. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock46(&self) -> &Reg<SW_LOCK46_SPEC>
pub fn sw_lock46(&self) -> &Reg<SW_LOCK46_SPEC>
0xb8 - Software lock register for page 46. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock47(&self) -> &Reg<SW_LOCK47_SPEC>
pub fn sw_lock47(&self) -> &Reg<SW_LOCK47_SPEC>
0xbc - Software lock register for page 47. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock48(&self) -> &Reg<SW_LOCK48_SPEC>
pub fn sw_lock48(&self) -> &Reg<SW_LOCK48_SPEC>
0xc0 - Software lock register for page 48. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock49(&self) -> &Reg<SW_LOCK49_SPEC>
pub fn sw_lock49(&self) -> &Reg<SW_LOCK49_SPEC>
0xc4 - Software lock register for page 49. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock50(&self) -> &Reg<SW_LOCK50_SPEC>
pub fn sw_lock50(&self) -> &Reg<SW_LOCK50_SPEC>
0xc8 - Software lock register for page 50. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock51(&self) -> &Reg<SW_LOCK51_SPEC>
pub fn sw_lock51(&self) -> &Reg<SW_LOCK51_SPEC>
0xcc - Software lock register for page 51. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock52(&self) -> &Reg<SW_LOCK52_SPEC>
pub fn sw_lock52(&self) -> &Reg<SW_LOCK52_SPEC>
0xd0 - Software lock register for page 52. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock53(&self) -> &Reg<SW_LOCK53_SPEC>
pub fn sw_lock53(&self) -> &Reg<SW_LOCK53_SPEC>
0xd4 - Software lock register for page 53. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock54(&self) -> &Reg<SW_LOCK54_SPEC>
pub fn sw_lock54(&self) -> &Reg<SW_LOCK54_SPEC>
0xd8 - Software lock register for page 54. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock55(&self) -> &Reg<SW_LOCK55_SPEC>
pub fn sw_lock55(&self) -> &Reg<SW_LOCK55_SPEC>
0xdc - Software lock register for page 55. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock56(&self) -> &Reg<SW_LOCK56_SPEC>
pub fn sw_lock56(&self) -> &Reg<SW_LOCK56_SPEC>
0xe0 - Software lock register for page 56. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock57(&self) -> &Reg<SW_LOCK57_SPEC>
pub fn sw_lock57(&self) -> &Reg<SW_LOCK57_SPEC>
0xe4 - Software lock register for page 57. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock58(&self) -> &Reg<SW_LOCK58_SPEC>
pub fn sw_lock58(&self) -> &Reg<SW_LOCK58_SPEC>
0xe8 - Software lock register for page 58. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock59(&self) -> &Reg<SW_LOCK59_SPEC>
pub fn sw_lock59(&self) -> &Reg<SW_LOCK59_SPEC>
0xec - Software lock register for page 59. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock60(&self) -> &Reg<SW_LOCK60_SPEC>
pub fn sw_lock60(&self) -> &Reg<SW_LOCK60_SPEC>
0xf0 - Software lock register for page 60. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock61(&self) -> &Reg<SW_LOCK61_SPEC>
pub fn sw_lock61(&self) -> &Reg<SW_LOCK61_SPEC>
0xf4 - Software lock register for page 61. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock62(&self) -> &Reg<SW_LOCK62_SPEC>
pub fn sw_lock62(&self) -> &Reg<SW_LOCK62_SPEC>
0xf8 - Software lock register for page 62. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sw_lock63(&self) -> &Reg<SW_LOCK63_SPEC>
pub fn sw_lock63(&self) -> &Reg<SW_LOCK63_SPEC>
0xfc - Software lock register for page 63. Locks are initialised from the OTP lock pages at reset. This register can be written to further advance the lock state of each page (until next reset), and read to check the current lock state of a page.
Sourcepub fn sbpi_instr(&self) -> &Reg<SBPI_INSTR_SPEC>
pub fn sbpi_instr(&self) -> &Reg<SBPI_INSTR_SPEC>
0x100 - Dispatch instructions to the SBPI interface, used for programming the OTP fuses.
Sourcepub fn sbpi_wdata_0(&self) -> &Reg<SBPI_WDATA_0_SPEC>
pub fn sbpi_wdata_0(&self) -> &Reg<SBPI_WDATA_0_SPEC>
0x104 - SBPI write payload bytes 3..0
Sourcepub fn sbpi_wdata_1(&self) -> &Reg<SBPI_WDATA_1_SPEC>
pub fn sbpi_wdata_1(&self) -> &Reg<SBPI_WDATA_1_SPEC>
0x108 - SBPI write payload bytes 7..4
Sourcepub fn sbpi_wdata_2(&self) -> &Reg<SBPI_WDATA_2_SPEC>
pub fn sbpi_wdata_2(&self) -> &Reg<SBPI_WDATA_2_SPEC>
0x10c - SBPI write payload bytes 11..8
Sourcepub fn sbpi_wdata_3(&self) -> &Reg<SBPI_WDATA_3_SPEC>
pub fn sbpi_wdata_3(&self) -> &Reg<SBPI_WDATA_3_SPEC>
0x110 - SBPI write payload bytes 15..12
Sourcepub fn sbpi_rdata_0(&self) -> &Reg<SBPI_RDATA_0_SPEC>
pub fn sbpi_rdata_0(&self) -> &Reg<SBPI_RDATA_0_SPEC>
0x114 - Read payload bytes 3..0. Once read, the data in the register will automatically clear to 0.
Sourcepub fn sbpi_rdata_1(&self) -> &Reg<SBPI_RDATA_1_SPEC>
pub fn sbpi_rdata_1(&self) -> &Reg<SBPI_RDATA_1_SPEC>
0x118 - Read payload bytes 7..4. Once read, the data in the register will automatically clear to 0.
Sourcepub fn sbpi_rdata_2(&self) -> &Reg<SBPI_RDATA_2_SPEC>
pub fn sbpi_rdata_2(&self) -> &Reg<SBPI_RDATA_2_SPEC>
0x11c - Read payload bytes 11..8. Once read, the data in the register will automatically clear to 0.
Sourcepub fn sbpi_rdata_3(&self) -> &Reg<SBPI_RDATA_3_SPEC>
pub fn sbpi_rdata_3(&self) -> &Reg<SBPI_RDATA_3_SPEC>
0x120 - Read payload bytes 15..12. Once read, the data in the register will automatically clear to 0.
Sourcepub fn sbpi_status(&self) -> &Reg<SBPI_STATUS_SPEC>
pub fn sbpi_status(&self) -> &Reg<SBPI_STATUS_SPEC>
0x124 -
Sourcepub fn usr(&self) -> &Reg<USR_SPEC>
pub fn usr(&self) -> &Reg<USR_SPEC>
0x128 - Controls for APB data read interface (USER interface)
Sourcepub fn bist(&self) -> &Reg<BIST_SPEC>
pub fn bist(&self) -> &Reg<BIST_SPEC>
0x134 - During BIST, count address locations that have at least one leaky bit
Sourcepub fn crt_key_w0(&self) -> &Reg<CRT_KEY_W0_SPEC>
pub fn crt_key_w0(&self) -> &Reg<CRT_KEY_W0_SPEC>
0x138 - Word 0 (bits 31..0) of the key. Write only, read returns 0x0
Sourcepub fn crt_key_w1(&self) -> &Reg<CRT_KEY_W1_SPEC>
pub fn crt_key_w1(&self) -> &Reg<CRT_KEY_W1_SPEC>
0x13c - Word 1 (bits 63..32) of the key. Write only, read returns 0x0
Sourcepub fn crt_key_w2(&self) -> &Reg<CRT_KEY_W2_SPEC>
pub fn crt_key_w2(&self) -> &Reg<CRT_KEY_W2_SPEC>
0x140 - Word 2 (bits 95..64) of the key. Write only, read returns 0x0
Sourcepub fn crt_key_w3(&self) -> &Reg<CRT_KEY_W3_SPEC>
pub fn crt_key_w3(&self) -> &Reg<CRT_KEY_W3_SPEC>
0x144 - Word 3 (bits 127..96) of the key. Write only, read returns 0x0
Sourcepub fn critical(&self) -> &Reg<CRITICAL_SPEC>
pub fn critical(&self) -> &Reg<CRITICAL_SPEC>
0x148 - Quickly check values of critical flags read during boot up
Sourcepub fn key_valid(&self) -> &Reg<KEY_VALID_SPEC>
pub fn key_valid(&self) -> &Reg<KEY_VALID_SPEC>
0x14c - Which keys were valid (enrolled) at boot time
Sourcepub fn debugen(&self) -> &Reg<DEBUGEN_SPEC>
pub fn debugen(&self) -> &Reg<DEBUGEN_SPEC>
0x150 - Enable a debug feature that has been disabled. Debug features are disabled if one of the relevant critical boot flags is set in OTP (DEBUG_DISABLE or SECURE_DEBUG_DISABLE), OR if a debug key is marked valid in OTP, and the matching key value has not been supplied over SWD. Specifically: - The DEBUG_DISABLE flag disables all debug features. This can be fully overridden by setting all bits of this register. - The SECURE_DEBUG_DISABLE flag disables secure processor debug. This can be fully overridden by setting the PROC0_SECURE and PROC1_SECURE bits of this register. - If a single debug key has been registered, and no matching key value has been supplied over SWD, then all debug features are disabled. This can be fully overridden by setting all bits of this register. - If both debug keys have been registered, and the Non-secure key’s value (key 6) has been supplied over SWD, secure processor debug is disabled. This can be fully overridden by setting the PROC0_SECURE and PROC1_SECURE bits of this register. - If both debug keys have been registered, and the Secure key’s value (key 5) has been supplied over SWD, then no debug features are disabled by the key mechanism. However, note that in this case debug features may still be disabled by the critical boot flags.
Sourcepub fn debugen_lock(&self) -> &Reg<DEBUGEN_LOCK_SPEC>
pub fn debugen_lock(&self) -> &Reg<DEBUGEN_LOCK_SPEC>
0x154 - Write 1s to lock corresponding bits in DEBUGEN. This register is reset by the processor cold reset.
Sourcepub fn archsel(&self) -> &Reg<ARCHSEL_SPEC>
pub fn archsel(&self) -> &Reg<ARCHSEL_SPEC>
0x158 - Architecture select (Arm/RISC-V). The default and allowable values of this register are constrained by the critical boot flags. This register is reset by the earliest reset in the switched core power domain (before a processor cold reset). Cores sample their architecture select signal on a warm reset. The source of the warm reset could be the system power-up state machine, the watchdog timer, Arm SYSRESETREQ or from RISC-V hartresetreq. Note that when an Arm core is deselected, its cold reset domain is also held in reset, since in particular the SYSRESETREQ bit becomes inaccessible once the core is deselected. Note also the RISC-V cores do not have a cold reset domain, since their corresponding controls are located in the Debug Module.
Sourcepub fn archsel_status(&self) -> &Reg<ARCHSEL_STATUS_SPEC>
pub fn archsel_status(&self) -> &Reg<ARCHSEL_STATUS_SPEC>
0x15c - Get the current architecture select state of each core. Cores sample the current value of the ARCHSEL register when their warm reset is released, at which point the corresponding bit in this register will also update.
Sourcepub fn bootdis(&self) -> &Reg<BOOTDIS_SPEC>
pub fn bootdis(&self) -> &Reg<BOOTDIS_SPEC>
0x160 - Tell the bootrom to ignore scratch register boot vectors (both power manager and watchdog) on the next power up. If an early boot stage has soft-locked some OTP pages in order to protect their contents from later stages, there is a risk that Secure code running at a later stage can unlock the pages by performing a watchdog reset that resets the OTP. This register can be used to ensure that the bootloader runs as normal on the next power up, preventing Secure code at a later stage from accessing OTP in its unlocked state. Should be used in conjunction with the power manager BOOTDIS register.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OTP
impl RefUnwindSafe for OTP
impl !Sync for OTP
impl Unpin for OTP
impl UnwindSafe for OTP
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more