TSEC: Difference between revisions

MMIO == CMEM
No edit summary
Line 387: Line 387:
| 0x04
| 0x04
|-
|-
| [[#FALCON_IMEMC|FALCON_IMEMC]]
| [[#FALCON_IMEMC0|FALCON_IMEMC0]]
| 0x54501180
| 0x54501180
| 0x04
| 0x04
|-
|-
| [[#FALCON_IMEMD|FALCON_IMEMD]]
| [[#FALCON_IMEMD0|FALCON_IMEMD0]]
| 0x54501184
| 0x54501184
| 0x04
| 0x04
|-
|-
| [[#FALCON_IMEMT|FALCON_IMEMT]]
| [[#FALCON_IMEMT0|FALCON_IMEMT0]]
| 0x54501188
| 0x54501188
| 0x04
|-
| FALCON_IMEMC1
| 0x54501190
| 0x04
|-
| FALCON_IMEMD1
| 0x54501194
| 0x04
|-
| FALCON_IMEMT1
| 0x54501198
| 0x04
|-
| FALCON_IMEMC2
| 0x545011A0
| 0x04
|-
| FALCON_IMEMD2
| 0x545011A4
| 0x04
|-
| FALCON_IMEMT2
| 0x545011A8
| 0x04
|-
| FALCON_IMEMC3
| 0x545011B0
| 0x04
|-
| FALCON_IMEMD3
| 0x545011B4
| 0x04
|-
| FALCON_IMEMT3
| 0x545011B8
| 0x04
| 0x04
|-
|-
Line 1,611: Line 1,647:
|-
|-
| 0-7
| 0-7
| Index of where to start tracing from
| FALCON_TRACEIDX_IDX
|-
|-
| 16-23
| 16-23
| Maximum valid index
| FALCON_TRACEIDX_MAXIDX
|-
|-
| 24-31
| 24-31
| Number of trace reads remaining
| FALCON_TRACEIDX_CNT
|}
|}


Line 1,625: Line 1,661:
Returns the PC of the last call or branch executed.
Returns the PC of the last call or branch executed.


=== FALCON_IMEMC ===
=== FALCON_IMEMC0 ===
{| class="wikitable" border="1"
{| class="wikitable" border="1"
!  Bits
!  Bits
Line 1,631: Line 1,667:
|-
|-
| 2-7
| 2-7
| Offset in IMEM block to read/write
| FALCON_IMEMC_OFFS
|-
|-
| 8-15
| 8-15
| IMEM block to read/write
| FALCON_IMEMC_BLK
|-
|-
| 24
| 24
| Write auto-increment
| FALCON_IMEMC_AINCW
|-
|-
| 25
| 25
| Read auto-increment
| FALCON_IMEMC_AINCR
|-
|-
| 28
| 28
| Mark uploaded code as secret
| FALCON_IMEMC_SECURE
|-
|-
| 29
| 29
| Secret code upload lockdown status (read-only)
| FALCON_IMEMC_SEC_ATOMIC
|-
|-
| 30
| 30
| Secret code upload failure status (read-only)
| FALCON_IMEMC_SEC_WR_VIO
|-
|-
| 31
| 31
| Secret code upload reset scrubber status (read-only)
| FALCON_IMEMC_SEC_LOCK
|}
|}


Used for configuring access to Falcon's IMEM.
Used for configuring access to Falcon's IMEM.


=== FALCON_IMEMD ===
=== FALCON_IMEMD0 ===
Returns or takes the value for an IMEM read/write operation.
Returns or takes the value for an IMEM read/write operation.


=== FALCON_IMEMT ===
=== FALCON_IMEMT0 ===
Returns or takes the virtual page index for an IMEM read/write operation.
Returns or takes the virtual page index for an IMEM read/write operation.


Line 1,669: Line 1,705:
|-
|-
| 2-7
| 2-7
| Offset in DMEM block to read/write
| FALCON_DMEMC_OFFS
|-
|-
| 8-15
| 8-15
| DMEM block to read/write
| FALCON_DMEMC_BLK
|-
|-
| 24
| 24
| Write auto-increment
| FALCON_DMEMC_AINCW
|-
|-
| 25
| 25
| Read auto-increment
| FALCON_DMEMC_AINCR
|}
|}