<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://switchbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mwk</id>
	<title>Nintendo Switch Brew - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://switchbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mwk"/>
	<link rel="alternate" type="text/html" href="https://switchbrew.org/wiki/Special:Contributions/Mwk"/>
	<updated>2026-05-02T22:30:45Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=TSEC&amp;diff=5962</id>
		<title>TSEC</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=TSEC&amp;diff=5962"/>
		<updated>2019-01-05T20:15:53Z</updated>

		<summary type="html">&lt;p&gt;Mwk: cxset special infinite value&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;TSEC (Tegra Security Co-processor) is a dedicated unit powered by a NVIDIA Falcon microprocessor with crypto extensions.&lt;br /&gt;
&lt;br /&gt;
= Driver =&lt;br /&gt;
A host driver for communicating with the TSEC is mapped to physical address 0x54500000 with a total size of 0x40000 bytes and exposes several registers.&lt;br /&gt;
&lt;br /&gt;
== Registers ==&lt;br /&gt;
Registers from 0x54500000 to 0x54501000 are used to configure the host interface (HOST1X).&lt;br /&gt;
&lt;br /&gt;
Registers from 0x54501000 to 0x54502000 are a MMIO window for communicating with the Falcon microprocessor. From this range, the subset of registers from 0x54501400 to 0x54501FE8 are specific to the TSEC and are subdivided into:&lt;br /&gt;
* 0x54501400 to 0x54501500: SCP (Secure Crypto Processor?).&lt;br /&gt;
* 0x54501500 to 0x54501600: TRNG (True Random Number Generator).&lt;br /&gt;
* 0x54501600 to 0x54501700: TFBIF (Tegra Framebuffer Interface).&lt;br /&gt;
* 0x54501700 to 0x54501800: DMA.&lt;br /&gt;
* 0x54501800 to 0x54501900: TEGRA (miscellaneous interfaces). &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Name&lt;br /&gt;
!  Address&lt;br /&gt;
!  Width&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_INCR_SYNCPT&lt;br /&gt;
| 0x54500000&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_INCR_SYNCPT_ERR&lt;br /&gt;
| 0x54500008&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_CTXSW_INCR_SYNCPT&lt;br /&gt;
| 0x5450000C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_CTXSW&lt;br /&gt;
| 0x54500020&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_CONT_SYNCPT_EOF&lt;br /&gt;
| 0x54500028&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_THI_METHOD0|TSEC_THI_METHOD0]]&lt;br /&gt;
| 0x54500040&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_THI_METHOD1|TSEC_THI_METHOD1]]&lt;br /&gt;
| 0x54500044&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_THI_INT_STATUS|TSEC_THI_INT_STATUS]]&lt;br /&gt;
| 0x54500078&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_THI_INT_MASK|TSEC_THI_INT_MASK]]&lt;br /&gt;
| 0x5450007C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_SLCG_STATUS&lt;br /&gt;
| 0x54500084&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_SLCG_OVERRIDE_HIGH_A&lt;br /&gt;
| 0x54500088&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_SLCG_OVERRIDE_LOW_A&lt;br /&gt;
| 0x5450008C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_THI_CLK_OVERRIDE&lt;br /&gt;
| 0x54500E00&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQSSET|FALCON_IRQSSET]]&lt;br /&gt;
| 0x54501000&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQSCLR|FALCON_IRQSCLR]]&lt;br /&gt;
| 0x54501004&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQSTAT|FALCON_IRQSTAT]]&lt;br /&gt;
| 0x54501008&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQMODE|FALCON_IRQMODE]]&lt;br /&gt;
| 0x5450100C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQMSET|FALCON_IRQMSET]]&lt;br /&gt;
| 0x54501010&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQMCLR|FALCON_IRQMCLR]]&lt;br /&gt;
| 0x54501014&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQMASK|FALCON_IRQMASK]]&lt;br /&gt;
| 0x54501018&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IRQDEST|FALCON_IRQDEST]]&lt;br /&gt;
| 0x5450101C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_GPTMR_PERIOD&lt;br /&gt;
| 0x54501020&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_GPTMR_TIME&lt;br /&gt;
| 0x54501024&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_GPTMR_ENABLE&lt;br /&gt;
| 0x54501028&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_TIME_LOW&lt;br /&gt;
| 0x5450102C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_TIME_HIGH&lt;br /&gt;
| 0x54501030&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_WDTMR_TIME&lt;br /&gt;
| 0x54501034&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_WDTMR_ENABLE&lt;br /&gt;
| 0x54501038&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_SCRATCH0|FALCON_SCRATCH0]]&lt;br /&gt;
| 0x54501040&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_SCRATCH1|FALCON_SCRATCH1]]&lt;br /&gt;
| 0x54501044&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_ITFEN|FALCON_ITFEN]]&lt;br /&gt;
| 0x54501048&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_IDLESTATE|FALCON_IDLESTATE]]&lt;br /&gt;
| 0x5450104C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CURCTX&lt;br /&gt;
| 0x54501050&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_NXTCTX&lt;br /&gt;
| 0x54501054&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CMDCTX&lt;br /&gt;
| 0x54501058&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_STATUS_MASK&lt;br /&gt;
| 0x5450105C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_VM_SUPERVISOR&lt;br /&gt;
| 0x54501060&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_DATA&lt;br /&gt;
| 0x54501064&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_CMD&lt;br /&gt;
| 0x54501068&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_DATA_WR&lt;br /&gt;
| 0x5450106C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_OCCUPIED&lt;br /&gt;
| 0x54501070&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_ACK&lt;br /&gt;
| 0x54501074&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_MTHD_LIMIT&lt;br /&gt;
| 0x54501078&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_SUBENGINE_RESET&lt;br /&gt;
| 0x5450107C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_SCRATCH2&lt;br /&gt;
| 0x54501080&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_SCRATCH3&lt;br /&gt;
| 0x54501084&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_PM_TRIGGER&lt;br /&gt;
| 0x54501088&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_PM_MODE&lt;br /&gt;
| 0x5450108C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DEBUG1&lt;br /&gt;
| 0x54501090&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DEBUGINFO|FALCON_DEBUGINFO]]&lt;br /&gt;
| 0x54501094&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_BREAKPOINT0&lt;br /&gt;
| 0x54501098&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_BREAKPOINT1&lt;br /&gt;
| 0x5450109C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CGCTL&lt;br /&gt;
| 0x545010A0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_ENGCTL&lt;br /&gt;
| 0x545010A4&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_PM_SEL&lt;br /&gt;
| 0x545010A8&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_HOST_IO_INDEX&lt;br /&gt;
| 0x545010AC&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_EXCI|FALCON_EXCI]]&lt;br /&gt;
| 0x545010D0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_CPUCTL|FALCON_CPUCTL]]&lt;br /&gt;
| 0x54501100&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_BOOTVEC|FALCON_BOOTVEC]]&lt;br /&gt;
| 0x54501104&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_HWCFG|FALCON_HWCFG]]&lt;br /&gt;
| 0x54501108&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMACTL|FALCON_DMACTL]]&lt;br /&gt;
| 0x5450110C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMATRF_EXTBASE|FALCON_DMATRF_EXTBASE]]&lt;br /&gt;
| 0x54501110&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMATRF_VOFF|FALCON_DMATRF_VOFF]]&lt;br /&gt;
| 0x54501114&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMATRFCMD|FALCON_DMATRFCMD]]&lt;br /&gt;
| 0x54501118&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMATRF_POFF|FALCON_DMATRF_POFF]]&lt;br /&gt;
| 0x5450111C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_DMATRFSTAT|FALCON_DMATRFSTAT]]&lt;br /&gt;
| 0x54501120&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_CRYPTTRFSTAT|FALCON_CRYPTTRFSTAT]]&lt;br /&gt;
| 0x54501124&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CPUSTAT&lt;br /&gt;
| 0x54501128&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_HWCFG2|FALCON_HWCFG2]]&lt;br /&gt;
| 0x5450112C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CPUCTL_ALIAS&lt;br /&gt;
| 0x54501130&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_TLB_CMD&lt;br /&gt;
| 0x54501140&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_TLB_CMD_RES&lt;br /&gt;
| 0x54501144&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_BRANCH_HISTORY_CTRL&lt;br /&gt;
| 0x54501148&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_BRANCH_HISTORY_PC&lt;br /&gt;
| 0x5450114C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_IMFILLRNG0&lt;br /&gt;
| 0x54501150&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_IMFILLRNG1&lt;br /&gt;
| 0x54501154&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_IMFILLCTL&lt;br /&gt;
| 0x54501158&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_EXTERRWIN&lt;br /&gt;
| 0x54501160&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_EXTERRCFG&lt;br /&gt;
| 0x54501164&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_EXTERRADDR&lt;br /&gt;
| 0x54501168&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_EXTERRSTAT&lt;br /&gt;
| 0x5450116C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CG2&lt;br /&gt;
| 0x5450117C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CODE_INDEX&lt;br /&gt;
| 0x54501180&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CODE&lt;br /&gt;
| 0x54501184&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_CODE_VIRT_ADDR&lt;br /&gt;
| 0x54501188&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX0&lt;br /&gt;
| 0x545011C0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA0&lt;br /&gt;
| 0x545011C4&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX1&lt;br /&gt;
| 0x545011C8&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA1&lt;br /&gt;
| 0x545011CC&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX2&lt;br /&gt;
| 0x545011D0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA2&lt;br /&gt;
| 0x545011D4&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX3&lt;br /&gt;
| 0x545011D8&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA3&lt;br /&gt;
| 0x545011DC&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX4&lt;br /&gt;
| 0x545011E0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA4&lt;br /&gt;
| 0x545011E4&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX5&lt;br /&gt;
| 0x545011E8&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA5&lt;br /&gt;
| 0x545011EC&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX6&lt;br /&gt;
| 0x545011F0&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA6&lt;br /&gt;
| 0x545011F4&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA_INDEX7&lt;br /&gt;
| 0x545011F8&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_DATA7&lt;br /&gt;
| 0x545011FC&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_ICD_CMD|FALCON_ICD_CMD]]&lt;br /&gt;
| 0x54501200&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_ICD_ADDR&lt;br /&gt;
| 0x54501204&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_ICD_WDATA&lt;br /&gt;
| 0x54501208&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| FALCON_ICD_RDATA&lt;br /&gt;
| 0x5450120C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#FALCON_SCTL|FALCON_SCTL]]&lt;br /&gt;
| 0x54501240&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_CTL_ACCESS|TSEC_SCP_CTL_ACCESS]]&lt;br /&gt;
| 0x54501400&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_CTL_TRNG|TSEC_SCP_CTL_TRNG]]&lt;br /&gt;
| 0x54501404&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_CTL_STAT|TSEC_SCP_CTL_STAT]]&lt;br /&gt;
| 0x54501408&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_CTL_MODE|TSEC_SCP_CTL_MODE]]&lt;br /&gt;
| 0x5450140C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_SCP_UNK0&lt;br /&gt;
| 0x54501410&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_CTL_PKEY|TSEC_SCP_CTL_PKEY]]&lt;br /&gt;
| 0x54501418&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_SEQ0_STAT|TSEC_SCP_SEQ0_STAT]]&lt;br /&gt;
| 0x54501420&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_SEQ_STAT|TSEC_SCP_SEQ_STAT]]&lt;br /&gt;
| 0x54501428&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_INSN_STAT|TSEC_SCP_INSN_STAT]]&lt;br /&gt;
| 0x54501430&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_SCP_UNK2&lt;br /&gt;
| 0x54501454&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_AES_STAT|TSEC_SCP_AES_STAT]]&lt;br /&gt;
| 0x54501458&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_SCP_UNK3&lt;br /&gt;
| 0x54501470&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_IRQSTAT|TSEC_SCP_IRQSTAT]]&lt;br /&gt;
| 0x54501480&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_IRQMASK|TSEC_SCP_IRQMASK]]&lt;br /&gt;
| 0x54501484&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_SCP_UNK4&lt;br /&gt;
| 0x54501490&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_SCP_ERR|TSEC_SCP_ERR]]&lt;br /&gt;
| 0x54501498&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_CLKDIV&lt;br /&gt;
| 0x54501500&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK0&lt;br /&gt;
| 0x54501504&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK1&lt;br /&gt;
| 0x5450150C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK2&lt;br /&gt;
| 0x54501510&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK3&lt;br /&gt;
| 0x54501514&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK4&lt;br /&gt;
| 0x54501518&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK5&lt;br /&gt;
| 0x5450151C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK6&lt;br /&gt;
| 0x54501528&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TRNG_UNK7&lt;br /&gt;
| 0x5450152C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TFBIF_UNK0&lt;br /&gt;
| 0x54501600&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_TFBIF_MCCIF_FIFOCTRL|TSEC_TFBIF_MCCIF_FIFOCTRL]]&lt;br /&gt;
| 0x54501604&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TFBIF_UNK1&lt;br /&gt;
| 0x54501608&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TFBIF_UNK2&lt;br /&gt;
| 0x5450160C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TFBIF_UNK3&lt;br /&gt;
| 0x54501630&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_TFBIF_MCCIF_FIFOCTRL1|TSEC_TFBIF_MCCIF_FIFOCTRL1]]&lt;br /&gt;
| 0x54501634&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TFBIF_UNK4&lt;br /&gt;
| 0x54501640&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_TFBIF_UNK5|TSEC_TFBIF_UNK5]]&lt;br /&gt;
| 0x54501644&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_TFBIF_UNK6|TSEC_TFBIF_UNK6]]&lt;br /&gt;
| 0x54501648&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_DMA_CMD|TSEC_DMA_CMD]]&lt;br /&gt;
| 0x54501700&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_DMA_ADDR|TSEC_DMA_ADDR]]&lt;br /&gt;
| 0x54501704&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_DMA_VAL|TSEC_DMA_VAL]]&lt;br /&gt;
| 0x54501708&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_DMA_UNK|TSEC_DMA_UNK]]&lt;br /&gt;
| 0x5450170C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TEGRA_FALCON_IP_VER&lt;br /&gt;
| 0x54501800&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TEGRA_UNK0&lt;br /&gt;
| 0x54501824&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TEGRA_UNK1&lt;br /&gt;
| 0x54501828&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| TSEC_TEGRA_UNK2&lt;br /&gt;
| 0x5450182C&lt;br /&gt;
| 0x04&lt;br /&gt;
|-&lt;br /&gt;
| [[#TSEC_TEGRA_CTL|TSEC_TEGRA_CTL]]&lt;br /&gt;
| 0x54501838&lt;br /&gt;
| 0x04&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_THI_METHOD0 ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  ID&lt;br /&gt;
!  Method&lt;br /&gt;
|-&lt;br /&gt;
| 0x200&lt;br /&gt;
| SET_APPLICATION_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x300&lt;br /&gt;
| EXECUTE&lt;br /&gt;
|-&lt;br /&gt;
| 0x500&lt;br /&gt;
| HDCP_INIT&lt;br /&gt;
|-&lt;br /&gt;
| 0x504&lt;br /&gt;
| HDCP_CREATE_SESSION&lt;br /&gt;
|-&lt;br /&gt;
| 0x508&lt;br /&gt;
| HDCP_VERIFY_CERT_RX&lt;br /&gt;
|-&lt;br /&gt;
| 0x50C&lt;br /&gt;
| HDCP_GENERATE_EKM&lt;br /&gt;
|-&lt;br /&gt;
| 0x510&lt;br /&gt;
| HDCP_REVOCATION_CHECK&lt;br /&gt;
|-&lt;br /&gt;
| 0x514&lt;br /&gt;
| HDCP_VERIFY_HPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x518&lt;br /&gt;
| HDCP_ENCRYPT_PAIRING_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0x51C&lt;br /&gt;
| HDCP_DECRYPT_PAIRING_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0x520&lt;br /&gt;
| HDCP_UPDATE_SESSION&lt;br /&gt;
|-&lt;br /&gt;
| 0x524&lt;br /&gt;
| HDCP_GENERATE_LC_INIT&lt;br /&gt;
|-&lt;br /&gt;
| 0x528&lt;br /&gt;
| HDCP_VERIFY_LPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x52C&lt;br /&gt;
| HDCP_GENERATE_SKE_INIT&lt;br /&gt;
|-&lt;br /&gt;
| 0x530&lt;br /&gt;
| HDCP_VERIFY_VPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x534&lt;br /&gt;
| HDCP_ENCRYPTION_RUN_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x538&lt;br /&gt;
| HDCP_SESSION_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x53C&lt;br /&gt;
| HDCP_COMPUTE_SPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x540&lt;br /&gt;
| HDCP_GET_CERT_RX&lt;br /&gt;
|-&lt;br /&gt;
| 0x544&lt;br /&gt;
| HDCP_EXCHANGE_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0x548&lt;br /&gt;
| HDCP_DECRYPT_KM&lt;br /&gt;
|-&lt;br /&gt;
| 0x54C&lt;br /&gt;
| HDCP_GET_HPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x550&lt;br /&gt;
| HDCP_GENERATE_EKH_KM&lt;br /&gt;
|-&lt;br /&gt;
| 0x554&lt;br /&gt;
| HDCP_VERIFY_RTT_CHALLENGE&lt;br /&gt;
|-&lt;br /&gt;
| 0x558&lt;br /&gt;
| HDCP_GET_LPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x55C&lt;br /&gt;
| HDCP_DECRYPT_KS&lt;br /&gt;
|-&lt;br /&gt;
| 0x560&lt;br /&gt;
| HDCP_DECRYPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x564&lt;br /&gt;
| HDCP_GET_RRX&lt;br /&gt;
|-&lt;br /&gt;
| 0x568&lt;br /&gt;
| HDCP_DECRYPT_REENCRYPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x56C&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x570&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x574&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x578&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x57C&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x700&lt;br /&gt;
| HDCP_VALIDATE_SRM&lt;br /&gt;
|-&lt;br /&gt;
| 0x704&lt;br /&gt;
| HDCP_VALIDATE_STREAM&lt;br /&gt;
|-&lt;br /&gt;
| 0x708&lt;br /&gt;
| HDCP_TEST_SECURE_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x70C&lt;br /&gt;
| HDCP_SET_DCP_KPUB&lt;br /&gt;
|-&lt;br /&gt;
| 0x710&lt;br /&gt;
| HDCP_SET_RX_KPUB&lt;br /&gt;
|-&lt;br /&gt;
| 0x714&lt;br /&gt;
| HDCP_SET_CERT_RX&lt;br /&gt;
|-&lt;br /&gt;
| 0x718&lt;br /&gt;
| HDCP_SET_SCRATCH_BUFFER&lt;br /&gt;
|-&lt;br /&gt;
| 0x71C&lt;br /&gt;
| HDCP_SET_SRM&lt;br /&gt;
|-&lt;br /&gt;
| 0x720&lt;br /&gt;
| HDCP_SET_RECEIVER_ID_LIST&lt;br /&gt;
|-&lt;br /&gt;
| 0x724&lt;br /&gt;
| HDCP_SET_SPRIME&lt;br /&gt;
|-&lt;br /&gt;
| 0x728&lt;br /&gt;
| HDCP_SET_ENC_INPUT_BUFFER&lt;br /&gt;
|-&lt;br /&gt;
| 0x72C&lt;br /&gt;
| HDCP_SET_ENC_OUTPUT_BUFFER&lt;br /&gt;
|-&lt;br /&gt;
| 0x730&lt;br /&gt;
| HDCP_GET_RTT_CHALLENGE&lt;br /&gt;
|-&lt;br /&gt;
| 0x734&lt;br /&gt;
| HDCP_STREAM_MANAGE&lt;br /&gt;
|-&lt;br /&gt;
| 0x738&lt;br /&gt;
| HDCP_READ_CAPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x73C&lt;br /&gt;
| HDCP_ENCRYPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x740&lt;br /&gt;
| [6.0.0+] HDCP_GET_CURRENT_NONCE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used to encode and send a method&#039;s ID over HOST1X to TSEC. This register mirrors the functionality of HOST1X&#039;s channel opcode submission.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_THI_METHOD1 ===&lt;br /&gt;
Used to encode and send a method&#039;s data over HOST1X to TSEC. This register mirrors the functionality of HOST1X&#039;s channel opcode submission.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_THI_INT_STATUS ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| TSEC_THI_INT_STATUS_FALCON_INT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_THI_INT_MASK ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| TSEC_THI_INT_MASK_FALCON_INT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQSSET ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQSSET_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQSSET_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQSSET_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQSSET_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQSSET_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQSSET_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQSSET_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQSSET_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQSSET_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for setting Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQSCLR ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQSCLR_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQSCLR_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQSCLR_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQSCLR_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQSCLR_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQSCLR_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQSCLR_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQSCLR_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQSCLR_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for clearing Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQSTAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQSTAT_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQSTAT_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQSTAT_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQSTAT_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQSTAT_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQSTAT_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQSTAT_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQSTAT_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQSTAT_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for getting the status of Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQMODE ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQMODE_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQMODE_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQMODE_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQMODE_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQMODE_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQMODE_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQMODE_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQMODE_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQMODE_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for changing the mode Falcon&#039;s IRQs. A value of 1 means level triggered while a value of 0 means edge triggered.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQMSET ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQMSET_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQMSET_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQMSET_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQMSET_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQMSET_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQMSET_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQMSET_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQMSET_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQMSET_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for setting the mask for Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQMCLR ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQMCLR_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQMCLR_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQMCLR_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQMCLR_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQMCLR_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQMCLR_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQMCLR_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQMCLR_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQMCLR_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for clearing the mask for Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQMASK ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQMASK_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQMASK_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQMASK_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQMASK_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQMASK_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQMASK_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQMASK_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQMASK_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQMASK_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for getting the value of the mask for Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IRQDEST ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IRQDEST_HOST_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_IRQDEST_HOST_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_IRQDEST_HOST_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_IRQDEST_HOST_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_IRQDEST_HOST_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_IRQDEST_HOST_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_IRQDEST_HOST_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_IRQDEST_HOST_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| FALCON_IRQDEST_HOST_EXT&lt;br /&gt;
|-&lt;br /&gt;
| 16&lt;br /&gt;
| FALCON_IRQDEST_TARGET_GPTMR&lt;br /&gt;
|-&lt;br /&gt;
| 17&lt;br /&gt;
| FALCON_IRQDEST_TARGET_WDTMR&lt;br /&gt;
|-&lt;br /&gt;
| 18&lt;br /&gt;
| FALCON_IRQDEST_TARGET_MTHD&lt;br /&gt;
|-&lt;br /&gt;
| 19&lt;br /&gt;
| FALCON_IRQDEST_TARGET_CTXSW&lt;br /&gt;
|-&lt;br /&gt;
| 20&lt;br /&gt;
| FALCON_IRQDEST_TARGET_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 21&lt;br /&gt;
| FALCON_IRQDEST_TARGET_EXTERR&lt;br /&gt;
|-&lt;br /&gt;
| 22&lt;br /&gt;
| FALCON_IRQDEST_TARGET_SWGEN0&lt;br /&gt;
|-&lt;br /&gt;
| 23&lt;br /&gt;
| FALCON_IRQDEST_TARGET_SWGEN1&lt;br /&gt;
|-&lt;br /&gt;
| 24-31&lt;br /&gt;
| FALCON_IRQDEST_TARGET_EXT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for routing Falcon&#039;s IRQs.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_SCRATCH0 ===&lt;br /&gt;
Scratch register for reading/writing data to Falcon.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_SCRATCH1 ===&lt;br /&gt;
Scratch register for reading/writing data to Falcon.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_ITFEN ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_ITFEN_CTXEN&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_ITFEN_MTHDEN&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for enabling/disabling Falcon interfaces.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_IDLESTATE ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_IDLESTATE_FALCON_BUSY&lt;br /&gt;
|-&lt;br /&gt;
| 1-15&lt;br /&gt;
| FALCON_IDLESTATE_EXT_BUSY&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for detecting if Falcon is busy or not.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DEBUGINFO ===&lt;br /&gt;
Used for UCODE self revocation. This register takes the base address of the GSC carveout shifted right by 8.&lt;br /&gt;
&lt;br /&gt;
[6.0.0+] [[NV_services|nvservices]] sets this to 0x8005FF00 &amp;gt;&amp;gt; 8 (physical DRAM address inside the GPU UCODE carveout) before starting the nvhost_tsec firmware.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_EXCI ===&lt;br /&gt;
Contains information about raised exceptions.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_CPUCTL ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_CPUCTL_IINVAL&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_CPUCTL_STARTCPU&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_CPUCTL_SRESET&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| FALCON_CPUCTL_HRESET&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_CPUCTL_HALTED&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_CPUCTL_STOPPED&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| FALCON_CPUCTL_SCP_UNK&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for signaling the Falcon CPU.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_BOOTVEC ===&lt;br /&gt;
Takes the Falcon&#039;s boot vector address.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_HWCFG ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-8&lt;br /&gt;
| FALCON_HWCFG_IMEM_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 9-17&lt;br /&gt;
| FALCON_HWCFG_DMEM_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 18-25&lt;br /&gt;
| FALCON_HWCFG_MTHD_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 26-31&lt;br /&gt;
| FALCON_HWCFG_DMATRF_SLOTS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMACTL ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_DMACTL_REQUIRE_CTX&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_DMACTL_DMEM_SCRUBBING&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| FALCON_DMACTL_IMEM_SCRUBBING&lt;br /&gt;
|-&lt;br /&gt;
| 3-6&lt;br /&gt;
| FALCON_DMACTL_DMAQ_NUM&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| FALCON_DMACTL_SECURE_STAT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for configuring the Falcon&#039;s DMA engine.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMATRF_EXTBASE ===&lt;br /&gt;
Base of the external memory buffer.&lt;br /&gt;
&lt;br /&gt;
The base of the transfer is calculated by adding [[#FALCON_DMATRF_POFF]] to the base.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMATRF_VOFF ===&lt;br /&gt;
For transfers to DMEM: the destination address.&lt;br /&gt;
For transfers to IMEM: the destination virtual IMEM page.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMATRF_POFF ===&lt;br /&gt;
For transfers to IMEM: the destination physical IMEM page.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMATRFCMD ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_DMATRFCMD_FULL&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_DMATRFCMD_IDLE&lt;br /&gt;
|-&lt;br /&gt;
| 2-3&lt;br /&gt;
| FALCON_DMATRFCMD_SEC&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| FALCON_DMATRFCMD_IMEM&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_DMATRFCMD_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 8-10&lt;br /&gt;
| FALCON_DMATRFCMD_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 12-14&lt;br /&gt;
| FALCON_DMATRFCMD_CTXDMA&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for configuring DMA transfers.&lt;br /&gt;
&lt;br /&gt;
=== FALCON_DMATRFSTAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| FALCON_DMATRFSTAT_PENDING&lt;br /&gt;
|-&lt;br /&gt;
| 16-18&lt;br /&gt;
| FALCON_DMATRFSTAT_NUM_STORES_PENDING&lt;br /&gt;
|-&lt;br /&gt;
| 24-26&lt;br /&gt;
| FALCON_DMATRFSTAT_NUM_LOADS_PENDING&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_CRYPTTRFSTAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| FALCON_CRYPTTRFSTAT_PENDING&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| FALCON_CRYPTTRFSTAT_ENABLED&lt;br /&gt;
|-&lt;br /&gt;
| 16-18&lt;br /&gt;
| FALCON_CRYPTTRFSTAT_NUM_STORES_PENDING&lt;br /&gt;
|-&lt;br /&gt;
| 24-26&lt;br /&gt;
| FALCON_CRYPTTRFSTAT_NUM_LOADS_PENDING&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_HWCFG2 ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-3&lt;br /&gt;
| FALCON_HWCFG2_VERSION&lt;br /&gt;
|-&lt;br /&gt;
| 4-5&lt;br /&gt;
| FALCON_HWCFG2_SCP_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 6-7&lt;br /&gt;
| FALCON_HWCFG2_SUBVERSION&lt;br /&gt;
|-&lt;br /&gt;
| 8-11&lt;br /&gt;
| FALCON_HWCFG2_IMEM_PORTS&lt;br /&gt;
|-&lt;br /&gt;
| 12-15&lt;br /&gt;
| FALCON_HWCFG2_DMEM_PORTS&lt;br /&gt;
|-&lt;br /&gt;
| 16-19&lt;br /&gt;
| FALCON_HWCFG2_VM_PAGES_LOG2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_ICD_CMD ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-3&lt;br /&gt;
| FALCON_ICD_CMD_OPC&lt;br /&gt;
 0x0: BREAK&lt;br /&gt;
 0x1: CONTINUE_FROM_PC&lt;br /&gt;
 0x2: CONTINUE_FROM_ADDR&lt;br /&gt;
 0x3: CONTINUE_UNK1_FROM_PC&lt;br /&gt;
 0x4: CONTINUE_UNK1_FROM_ADDR&lt;br /&gt;
 0x5: SINGLE_STEP_FROM_PC&lt;br /&gt;
 0x6: SINGLE_STEP_FROM_ADDR&lt;br /&gt;
 0x7: SET_BREAK_MASK&lt;br /&gt;
 0x8: REG_READ&lt;br /&gt;
 0x9: REG_WRITE&lt;br /&gt;
 0xA: DATA_READ&lt;br /&gt;
 0xB: DATA_WRITE&lt;br /&gt;
 0xC: IO_READ&lt;br /&gt;
 0xD: IO_WRITE&lt;br /&gt;
 0xE: STATUS_READ&lt;br /&gt;
|-&lt;br /&gt;
| 6-7&lt;br /&gt;
| FALCON_ICD_CMD_DATA_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 8-12&lt;br /&gt;
| FALCON_ICD_CMD_IDX&lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
| FALCON_ICD_CMD_ERROR&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
| FALCON_ICD_CMD_DONE&lt;br /&gt;
|-&lt;br /&gt;
| 16-31&lt;br /&gt;
| FALCON_ICD_CMD_BREAK_MASK&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FALCON_SCTL ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-1&lt;br /&gt;
| FALCON_SCTL_SEC_MODE&lt;br /&gt;
 0: Non-secure&lt;br /&gt;
 1: Light Secure&lt;br /&gt;
 2: Heavy Secure&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_CTL_ACCESS ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 20&lt;br /&gt;
| Enable TSEC_SCP_INSN_STAT register&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_CTL_TRNG ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| Enable the TRNG&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_CTL_STAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 20&lt;br /&gt;
| TSEC_SCP_CTL_STAT_DEBUG_MODE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_CTL_MODE ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Disable reads for the TRNG register block&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| Disable reads for the TFBIF register block&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| Disable reads for the DMA register block&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| Disable reads for the TEGRA register block&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| Disable writes for the TRNG register block&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| Disable writes for the TFBIF register block&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| Disable writes for the DMA register block&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| Disable writes for the TEGRA register block&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Controls accesses to the other sub-engines and can only be cleared in Heavy Secure mode.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_CTL_PKEY ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| TSEC_SCP_CTL_PKEY_REQUEST_RELOAD&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| TSEC_SCP_CTL_PKEY_LOADED&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_SEQ0_STAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 8-11&lt;br /&gt;
| Size of current cs0begin macro&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_SEQ_STAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Set if crypto sequence recording (cs0begin/cs1begin) is active&lt;br /&gt;
|-&lt;br /&gt;
| 4-7&lt;br /&gt;
| Number of instructions left for the crypto sequence&lt;br /&gt;
|-&lt;br /&gt;
| 12-15&lt;br /&gt;
| Active crypto key register&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains information on the last crypto sequence (cs0 or cs1) executed.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_INSN_STAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-7&lt;br /&gt;
| Crypto fuc5 destination register or immediate value&lt;br /&gt;
|-&lt;br /&gt;
| 8-15&lt;br /&gt;
| Crypto fuc5 source register or immediate value&lt;br /&gt;
|-&lt;br /&gt;
| 16-30&lt;br /&gt;
| Crypto fuc5 operation&lt;br /&gt;
 0x0000: none (fuc5 opcode 0x00) &lt;br /&gt;
 0x0010: cmov (fuc5 opcode 0x84)&lt;br /&gt;
 0x0020: cxsin (fuc5 opcode 0x88) or xdst (with cxset)&lt;br /&gt;
 0x0030: cxsout (fuc5 opcode 0x8C) or xdld (with cxset) &lt;br /&gt;
 0x0040: crng (fuc5 opcode 0x90)&lt;br /&gt;
 0x0050: cs0begin (fuc5 opcode 0x94)&lt;br /&gt;
 0x0060: cs0exec (fuc5 opcode 0x98)&lt;br /&gt;
 0x0070: cs1begin (fuc5 opcode 0x9C)&lt;br /&gt;
 0x0080: cs1exec (fuc5 opcode 0xA0)&lt;br /&gt;
 0x0090: invalid (fuc5 opcode 0xA4)&lt;br /&gt;
 0x00A0: cchmod (fuc5 opcode 0xA8)&lt;br /&gt;
 0x00B0: cxor (fuc5 opcode 0xAC)&lt;br /&gt;
 0x00C0: cadd (fuc5 opcode 0xB0)&lt;br /&gt;
 0x00D0: cand (fuc5 opcode 0xB4)&lt;br /&gt;
 0x00E0: crev (fuc5 opcode 0xB8)&lt;br /&gt;
 0x00F0: cprecmac (fuc5 opcode 0xBC)&lt;br /&gt;
 0x0100: csecret (fuc5 opcode 0xC0)&lt;br /&gt;
 0x0110: ckeyreg (fuc5 opcode 0xC4)&lt;br /&gt;
 0x0120: ckexp (fuc5 opcode 0xC8)&lt;br /&gt;
 0x0130: ckrexp (fuc5 opcode 0xCC)&lt;br /&gt;
 0x0140: cenc (fuc5 opcode 0xD0)&lt;br /&gt;
 0x0150: cdec (fuc5 opcode 0xD4)&lt;br /&gt;
 0x0160: csigauth (fuc5 opcode 0xD8)&lt;br /&gt;
 0x0170: csigenc (fuc5 opcode 0xDC)&lt;br /&gt;
 0x0180: csigclr (fuc5 opcode 0xE0)&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| Set if running in secure mode (cauth)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains information on the last crypto instruction executed.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_AES_STAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-4&lt;br /&gt;
| First opcode&lt;br /&gt;
|-&lt;br /&gt;
| 5-9&lt;br /&gt;
| Second opcode&lt;br /&gt;
|-&lt;br /&gt;
| 15-16&lt;br /&gt;
| AES operation&lt;br /&gt;
 0: Encryption&lt;br /&gt;
 1: Decryption&lt;br /&gt;
 2: Key expansion&lt;br /&gt;
 3: Key reverse expansion&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains information on the last AES sequence executed.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_IRQSTAT ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| TSEC_SCP_IRQSTAT_TRNG&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| TSEC_SCP_IRQSTAT_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 16&lt;br /&gt;
| TSEC_SCP_IRQSTAT_INSN_ERROR&lt;br /&gt;
|-&lt;br /&gt;
| 20&lt;br /&gt;
| TSEC_SCP_IRQSTAT_SINGLE_STEP&lt;br /&gt;
|-&lt;br /&gt;
| 24&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 28&lt;br /&gt;
| Unknown&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for getting the status of crypto IRQs.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_IRQMASK ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| TSEC_SCP_IRQMASK_TRNG&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| TSEC_SCP_IRQMASK_HALT&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 16&lt;br /&gt;
| TSEC_SCP_IRQMASK_INSN_ERROR&lt;br /&gt;
|-&lt;br /&gt;
| 20&lt;br /&gt;
| TSEC_SCP_IRQMASK_SINGLE_STEP&lt;br /&gt;
|-&lt;br /&gt;
| 24&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 28&lt;br /&gt;
| Unknown&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Used for getting the value of the mask for crypto IRQs.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_SCP_ERR ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Invalid instruction&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| Empty crypto sequence&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Crypto sequence is too long&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| Crypto sequence was not finished&lt;br /&gt;
|-&lt;br /&gt;
| 16&lt;br /&gt;
| Invalid cauth signature (during csigenc, csigclr or csigunk)&lt;br /&gt;
|-&lt;br /&gt;
| 24&lt;br /&gt;
| Forbidden instruction&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains information on crypto errors generated by the [[#TSEC_SCP_IRQSTAT|TSEC_SCP_IRQSTAT_INSN_ERROR]] IRQ.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_TFBIF_MCCIF_FIFOCTRL ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_RCLK_OVERRIDE&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_WCLK_OVERRIDE&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_WRCL_MCLE2X&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_RDMC_RDFAST&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_WRMC_CLLE2X&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_RDCL_RDFAST&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_CCLK_OVERRIDE&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_RCLK_OVR_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL_WCLK_OVR_MODE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_MCCIF_FIFOCTRL1 ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-15&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL1_SRD2MC_REORDER_DEPTH_LIMIT&lt;br /&gt;
|-&lt;br /&gt;
| 16-31&lt;br /&gt;
| TSEC_TFBIF_MCCIF_FIFOCTRL1_SWR2MC_REORDER_DEPTH_LIMIT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== TSEC_TFBIF_UNK5 ===&lt;br /&gt;
Used to control accesses to DRAM.&lt;br /&gt;
&lt;br /&gt;
[6.0.0+] The nvhost_tsec firmware sets this register to 0x10 or 0x111110 before reading memory from the GPU UCODE carveout.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_TFBIF_UNK6 ===&lt;br /&gt;
Used to control accesses to DRAM.&lt;br /&gt;
&lt;br /&gt;
[6.0.0+] The nvhost_tsec firmware sets this register to (data_size &amp;lt;&amp;lt; 4) before reading memory from the GPU UCODE carveout.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_DMA_CMD ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| TSEC_DMA_CMD_READ&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| TSEC_DMA_CMD_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 4-7&lt;br /&gt;
| TSEC_DMA_CMD_UNK&lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
| TSEC_DMA_CMD_BUSY&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
| TSEC_DMA_CMD_ERROR&lt;br /&gt;
|-&lt;br /&gt;
| 31&lt;br /&gt;
| TSEC_DMA_CMD_INIT&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
A DMA read/write operation requires bits TSEC_DMA_CMD_INIT and TSEC_DMA_CMD_READ/TSEC_DMA_CMD_WRITE to be set in TSEC_DMA_CMD.&lt;br /&gt;
&lt;br /&gt;
During the transfer, the TSEC_DMA_CMD_BUSY bit is set.&lt;br /&gt;
&lt;br /&gt;
Accessing an invalid address causes bit TSEC_DMA_CMD_ERROR to be set.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_DMA_ADDR ===&lt;br /&gt;
Takes the address for DMA transfers between TSEC and HOST1X (master and clients).&lt;br /&gt;
&lt;br /&gt;
=== TSEC_DMA_VAL ===&lt;br /&gt;
Takes the value for DMA transfers between TSEC and HOST1X (master and clients).&lt;br /&gt;
&lt;br /&gt;
=== TSEC_DMA_UNK ===&lt;br /&gt;
Always 0xFFF.&lt;br /&gt;
&lt;br /&gt;
=== TSEC_TEGRA_CTL ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 16&lt;br /&gt;
| TSEC_TEGRA_CTL_TKFI_KFUSE&lt;br /&gt;
|-&lt;br /&gt;
| 17&lt;br /&gt;
| TSEC_TEGRA_CTL_TKFI_RESTART_FSM_KFUSE&lt;br /&gt;
|-&lt;br /&gt;
| 24&lt;br /&gt;
| TSEC_TEGRA_CTL_TMPI_FORCE_IDLE_INPUTS_I2C&lt;br /&gt;
|-&lt;br /&gt;
| 25&lt;br /&gt;
| TSEC_TEGRA_CTL_TMPI_RESTART_FSM_HOST1X&lt;br /&gt;
|-&lt;br /&gt;
| 26&lt;br /&gt;
| TSEC_TEGRA_CTL_TMPI_RESTART_FSM_APB&lt;br /&gt;
|-&lt;br /&gt;
| 27&lt;br /&gt;
| TSEC_TEGRA_CTL_TMPI_DISABLE_OUTPUT_I2C&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Authenticated Mode ==&lt;br /&gt;
===== Entry =====&lt;br /&gt;
From non-secure mode, upon jumping to a page marked as secret, a secret fault occurs. This causes the CPU to verify the region specified in $cauth against the MAC loaded in $c6. If the comparison is successful, the valid bit (bit0) is set on all pages in the $cauth region, and $pc is set to the base of the $cauth region. If the comparsion fails, the CPU is halted.&lt;br /&gt;
&lt;br /&gt;
===== Exit =====&lt;br /&gt;
The CPU automatically goes back to non-secure mode when returning back into non-secret pages. When this happens, the valid bit (bit0) in the TLB flags is cleared for all secret pages.&lt;br /&gt;
&lt;br /&gt;
== Crypto processing ==&lt;br /&gt;
Part of the information here (which hasn&#039;t made it into envytools documentation yet) was shared by [https://wiki.0x04.net/wiki/Marcin_Ko%C5%9Bcielnicki mwk] from reverse engineering falcon processors over the years.&lt;br /&gt;
&lt;br /&gt;
=== Register ACLs ===&lt;br /&gt;
Falcon tracks permission metadata about each crypto reg. Permissions include read/write ability per execution mode, as well as ability to use the reg for encrypt/decrypt, among other permissions. Permissions are propagated when registers are referenced by instructions (e.g. moving a value from read-protected $cX to $cY will result in $cY also being read-protected).&lt;br /&gt;
&lt;br /&gt;
=== cauth ===&lt;br /&gt;
$cauth is a special purpose register in the CPU.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-7 || Start of region to authenticate (in 0x100 pages)&lt;br /&gt;
|-&lt;br /&gt;
| 8-15 || Unused&lt;br /&gt;
|-&lt;br /&gt;
| 16 || Use secret xfers (?)&lt;br /&gt;
|-&lt;br /&gt;
| 17 || Region is signed and encrypted and double the size (?)&lt;br /&gt;
|-&lt;br /&gt;
| 18 ||&lt;br /&gt;
|-&lt;br /&gt;
| 19 ||&lt;br /&gt;
|-&lt;br /&gt;
| 20-23 || Unused&lt;br /&gt;
|-&lt;br /&gt;
| 31-24 || Size of region to authenticate (in 0x100 pages)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== csigauth ===&lt;br /&gt;
&amp;lt;code&amp;gt;00000000: f5 3c XY d8     csigauth $cY $cX&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This instruction takes 2 crypto registers as operands and is automatically executed when jumping to a code region previously uploaded as secret.&lt;br /&gt;
&lt;br /&gt;
Under certain circumstances, it is possible to observe this instruction being briefly written to [[#TSEC_SCP_INSN_STAT|TSEC_SCP_INSN_STAT]] as &amp;quot;csigauth $c4 $c6&amp;quot; while the opcodes in [[#TSEC_SCP_AES_STAT|TSEC_SCP_AES_STAT]] are set to &amp;quot;cxsin&amp;quot; and &amp;quot;csigauth&amp;quot;, respectively. Also, via [[#TSEC_SCP_SEQ0_STAT|TSEC_SCP_SEQ0_STAT]] it can be observed that a 3-sized macro sequence is loaded into cs0 during a secure mode transition.&lt;br /&gt;
&lt;br /&gt;
=== csigclr ===&lt;br /&gt;
&amp;lt;code&amp;gt;00000000: f5 3c 00 e0     csigclr&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This instruction takes no operands and appears to clear the saved cauth signature used by the csigenc instruction.&lt;br /&gt;
&lt;br /&gt;
=== cchmod ===&lt;br /&gt;
&amp;lt;code&amp;gt;00000000: f5 3c XY a8     cchmod $cY 0X&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;00000000: f5 3c XY a9     cchmod $cY 1X&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This instruction takes a crypto register and a 5 bit immediate value. It appears to set the [[#Register ACLs|crypto registers&#039; ACL]] bits as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Allow register to be used as key in NS or LS mode&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| Allow register to be used as key in HS mode&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| Set register as readable in NS or LS mode&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| Set register as readable in HS mode&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| Set register as writable in NS or LS mode&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== crng ===&lt;br /&gt;
&amp;lt;code&amp;gt;00000000: f5 3c 0X 90     crng $cX&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This instruction initializes a crypto register with random data.&lt;br /&gt;
&lt;br /&gt;
Executing this instruction only succeeds if the TRNG is enabled for the SCP, which requires taking the following steps:&lt;br /&gt;
* Write 0x7FFF to TSEC_TRNG_CLKDIV.&lt;br /&gt;
* Write 0x3FF0000 to TSEC_TRNG_UNK0.&lt;br /&gt;
* Write 0xFF00 to TSEC_TRNG_UNK7.&lt;br /&gt;
* Write 0x1000 to [[#TSEC_SCP_CTL_TRNG|TSEC_SCP_CTL_TRNG]].&lt;br /&gt;
&lt;br /&gt;
=== cxset ===&lt;br /&gt;
cxset instruction provides a way to change behavior of a variable amount of successively executed DMA-related instructions.&lt;br /&gt;
&lt;br /&gt;
for example: &amp;lt;code&amp;gt;000000de: f4 3c 02              cxset 0x2&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
can be read as: &amp;lt;code&amp;gt;dma_override(type=crypto_reg, count=2)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The argument to cxset specifies the type of behavior change in the top 3 bits, and the number of DMA-related instructions the effect lasts for in the lower 5 bits.&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Bits || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0-4 || Number of instructions it is valid for (0x1f is a special value meaning infinitely many instructions -- until overriden by another cxset)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Crypto destination/source select (0=crypto register, 1=crypto stream)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || External memory override (0=Disabled, 1=Enabled)&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Internal memory select (0=DMEM, 1=IMEM)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== DMA-Related Instructions ====&lt;br /&gt;
At least the following instructions may have changed behavior, and count against the cxset &amp;quot;count&amp;quot; argument: &amp;lt;code&amp;gt;xdwait&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;xdst&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;xdld&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example, if override type=0b000, then the &amp;quot;length&amp;quot; argument to &amp;lt;code&amp;gt;xdst&amp;lt;/code&amp;gt; is instead treated as the index of the target $cX register.&lt;br /&gt;
&lt;br /&gt;
=== Secrets ===&lt;br /&gt;
Falcon&#039;s Authenticated Mode has access to 64 128-bit keys which are burned at factory. These keys can be loaded by using the $csecret instruction which takes the target crypto register and the key index as arguments.&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Index || Notes || Console-unique&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Used by [[TSEC_Firmware#Keygen|Keygen]], nvhost_tsec, nvhost_nvdec_bl020_prod, nvhost_nvdec020_prod, nvhost_nvdec020_ns and acr_ucode firmwares. || No&lt;br /&gt;
|-&lt;br /&gt;
| 0x01 || Used by nvhost_nvdec_bl020_prod firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x03 || Used by nvhost_tsec, nvhost_nvdec020_prod and nvhost_nvdec020_ns firmwares. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || Used by nvhost_tsec, nvhost_nvdec020_prod and nvhost_nvdec020_ns firmwares. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x05 || Used by nvhost_tsec, nvhost_nvdec_bl020_prod, nvhost_nvdec020_prod, nvhost_nvdec020_ns and acr_ucode firmwares. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x07 || Used by [6.0.0+] nvhost_tsec firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x09 || Used by nvhost_tsec firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x0B || Used by nvhost_tsec, nvhost_nvdec020_prod and nvhost_nvdec020_ns firmwares. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x0F || Used by nvhost_tsec firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || Used by [1.0.0-5.1.0] nvhost_tsec firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x15 || Used by nvhost_nvdec_bl020_prod, [5.0.0+] nvhost_nvdec020_prod, [5.0.0+] nvhost_nvdec020_ns and [6.0.0+] nvhost_tsec firmwares. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x26 || Used by [[TSEC_Firmware#KeygenLdr|KeygenLdr]]. || No&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C || Used by nvhost_tsec firmware. ||&lt;br /&gt;
|-&lt;br /&gt;
| 0x3F || Used by [[TSEC_Firmware#Keygen|Keygen]], nvhost_tsec, nvhost_nvdec020_prod and nvhost_nvdec020_ns firmwares. || Yes&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mwk</name></author>
	</entry>
</feed>