TSEC: Difference between revisions

No edit summary
Line 135: Line 135:
| 0x04
| 0x04
|-
|-
| [[#FALCON_SCRATCH0|FALCON_SCRATCH0]]
| [[#FALCON_MAILBOX0|FALCON_MAILBOX0]]
| 0x54501040
| 0x54501040
| 0x04
| 0x04
|-
|-
| [[#FALCON_SCRATCH1|FALCON_SCRATCH1]]
| [[#FALCON_MAILBOX1|FALCON_MAILBOX1]]
| 0x54501044
| 0x54501044
| 0x04
| 0x04
Line 199: Line 199:
| 0x04
| 0x04
|-
|-
| FALCON_SCRATCH2
| FALCON_OS
| 0x54501080
| 0x54501080
| 0x04
| 0x04
|-
|-
| FALCON_SCRATCH3
| FALCON_DEBUG0
| 0x54501084
| 0x54501084
| 0x04
| 0x04
Line 319: Line 319:
| 0x04
| 0x04
|-
|-
| FALCON_TLB_CMD
| [[#FALCON_IMCTL|FALCON_IMCTL]]
| 0x54501140
| 0x54501140
| 0x04
| 0x04
|-
|-
| FALCON_TLB_CMD_RES
| [[#FALCON_IMSTAT|FALCON_IMSTAT]]
| 0x54501144
| 0x54501144
| 0x04
| 0x04
|-
|-
| FALCON_BRANCH_HISTORY_CTRL
| [[#FALCON_TRACEIDX|FALCON_TRACEIDX]]
| 0x54501148
| 0x54501148
| 0x04
| 0x04
|-
|-
| FALCON_BRANCH_HISTORY_PC
| [[#FALCON_TRACEPC|FALCON_TRACEPC]]
| 0x5450114C
| 0x5450114C
| 0x04
| 0x04
Line 345: Line 345:
| FALCON_IMFILLCTL
| FALCON_IMFILLCTL
| 0x54501158
| 0x54501158
| 0x04
|-
| FALCON_IMCTL_DEBUG
| 0x5450115C
| 0x04
| 0x04
|-
|-
Line 575: Line 579:
| 0x04
| 0x04
|-
|-
| TSEC_SCP_RES
| [[#TSEC_SCP_RES|TSEC_SCP_RES]]
| 0x54501490
| 0x54501490
| 0x04
| 0x04
Line 1,181: Line 1,185:
Used for routing Falcon's IRQs.
Used for routing Falcon's IRQs.


=== FALCON_SCRATCH0 ===
=== FALCON_MAILBOX0 ===
Scratch register for reading/writing data to Falcon.
Scratch register for reading/writing data to Falcon.


=== FALCON_SCRATCH1 ===
=== FALCON_MAILBOX1 ===
Scratch register for reading/writing data to Falcon.
Scratch register for reading/writing data to Falcon.


Line 1,413: Line 1,417:
| FALCON_HWCFG2_VM_PAGES_LOG2
| FALCON_HWCFG2_VM_PAGES_LOG2
|}
|}
=== FALCON_IMCTL ===
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 0-23
| Address
|-
| 24-26
| Command
1: ITLB
2: PTLB
3: VTLB
|}
Controls the Falcon TLB.
=== FALCON_IMSTAT ===
Returns the result of the last command from [[#FALCON_IMCTL|FALCON_IMCTL]].
=== FALCON_TRACEIDX ===
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 0-7
| Index
|-
| 16-23
| Maximum valid index
|}
Controls the index for tracing with [[#FALCON_TRACEPC|FALCON_TRACEPC]].
=== FALCON_TRACEPC ===
Returns the PC of the last instruction executed.


=== FALCON_ICD_CMD ===
=== FALCON_ICD_CMD ===
Line 1,890: Line 1,931:


Used for getting the value of the mask for crypto IRQs.
Used for getting the value of the mask for crypto IRQs.
=== TSEC_SCP_RES ===
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 31
| SCP is halted
|}
Contains information on the status generated by the [[#TSEC_SCP_IRQSTAT|TSEC_SCP_IRQSTAT_HALT]] IRQ.


=== TSEC_SCP_ERR ===
=== TSEC_SCP_ERR ===