1<?xml version="1.0" encoding="utf-8" standalone="no"?> 2<device xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="1.1" xs:noNamespaceSchemaLocation="svd_schema.xsd"> 3 <peripheral> 4 <name>TRNG</name> 5 <description>Random Number Generator.</description> 6 <baseAddress>0x4004D000</baseAddress> 7 <addressBlock> 8 <offset>0x00</offset> 9 <size>0x1000</size> 10 <usage>registers</usage> 11 </addressBlock> 12 <interrupt> 13 <name>TRNG</name> 14 <description>TRNG interrupt.</description> 15 <value>4</value> 16 </interrupt> 17 <registers> 18 <register> 19 <name>CN</name> 20 <description>TRNG Control Register.</description> 21 <addressOffset>0x00</addressOffset> 22 <resetValue>0x00000003</resetValue> 23 <fields> 24 <field> 25 <name>ODHT</name> 26 <description>Start On-Demand health test</description> 27 <bitOffset>0</bitOffset> 28 <bitWidth>1</bitWidth> 29 </field> 30 <field> 31 <name>RND_IRQ_EN</name> 32 <description>To enable IRQ generation when a new 32-bit Random number is ready.</description> 33 <bitOffset>1</bitOffset> 34 <bitWidth>1</bitWidth> 35 <enumeratedValues> 36 <enumeratedValue> 37 <name>disable</name> 38 <description>Disable</description> 39 <value>0</value> 40 </enumeratedValue> 41 <enumeratedValue> 42 <name>enable</name> 43 <description>Enable</description> 44 <value>1</value> 45 </enumeratedValue> 46 </enumeratedValues> 47 </field> 48 <field> 49 <name>HEALTH_EN</name> 50 <description>To enable IRQ generation when a health test fails</description> 51 <bitOffset>2</bitOffset> 52 <bitWidth>1</bitWidth> 53 <access>read-only</access> 54 <enumeratedValues> 55 <enumeratedValue> 56 <name>disable</name> 57 <description>disable</description> 58 <value>0</value> 59 </enumeratedValue> 60 <enumeratedValue> 61 <name>enable</name> 62 <description>enable</description> 63 <value>1</value> 64 </enumeratedValue> 65 </enumeratedValues> 66 </field> 67 <field> 68 <name>AESKG_MEU</name> 69 <description>AES Key Generate. When enabled, the key for securing NVSRAM is generated and transferred to the secure key register automatically without user visibility or intervention. This bit is cleared by hardware once the key has been transferred to the secure key register.</description> 70 <bitOffset>3</bitOffset> 71 <bitWidth>1</bitWidth> 72 </field> 73 <field derivedFrom="AESKG_MEU"> 74 <name>AESKG_MEMPROTE</name> 75 <description>AES Key Generate. When enabled, the key for securing NVSRAM is generated and transferred to the secure key register automatically without user visibility or intervention. This bit is cleared by hardware once the key has been transferred to the secure key register.</description> 76 <bitOffset>4</bitOffset> 77 <bitWidth>1</bitWidth> 78 </field> 79 <field derivedFrom="AESKG_MEU"> 80 <name>AESKG_MEMPROTA</name> 81 <description>AES Key Generate. When enabled, the key for securing NVSRAM is generated and transferred to the secure key register automatically without user visibility or intervention. This bit is cleared by hardware once the key has been transferred to the secure key register.</description> 82 <bitOffset>5</bitOffset> 83 <bitWidth>1</bitWidth> 84 </field> 85 </fields> 86 </register> 87 <register> 88 <name>ST</name> 89 <description>Data. The content of this register is valid only when RNG_IS = 1. When TRNG is disabled, read returns 0x0000 0000.</description> 90 <addressOffset>0x04</addressOffset> 91 <access>read-only</access> 92 <fields> 93 <field> 94 <name>RND_RDY</name> 95 <description>32-bit random data is ready to read from TRNG_DATA register. Reading TRNG_DATA when RND_RDY=0 will return all 0's. IRQ is generated when RND_RDY=1 if TRNG_CN.RND_IRQ_EN=1.</description> 96 <bitOffset>0</bitOffset> 97 <bitWidth>1</bitWidth> 98 <enumeratedValues> 99 <enumeratedValue> 100 <name>Busy</name> 101 <description>TRNG Busy</description> 102 <value>0</value> 103 </enumeratedValue> 104 <enumeratedValue> 105 <name>Ready</name> 106 <description>32 bit random data is ready</description> 107 <value>1</value> 108 </enumeratedValue> 109 </enumeratedValues> 110 </field> 111 <field> 112 <name>ODHTS</name> 113 <description>On-Demand health test status</description> 114 <bitOffset>1</bitOffset> 115 <bitWidth>1</bitWidth> 116 <enumeratedValues> 117 <enumeratedValue> 118 <name>Done</name> 119 <description>On demand health test done</description> 120 <value>0</value> 121 </enumeratedValue> 122 <enumeratedValue> 123 <name>Busy</name> 124 <description>On demand health test on going</description> 125 <value>1</value> 126 </enumeratedValue> 127 </enumeratedValues> 128 </field> 129 <field> 130 <name>HTS</name> 131 <description>Health test status. This bit shall be read when On-demand health test is completed (ODHTS=0) to check the result. This bit is also set when a continuous health test reports an error, IRQ is generated if HEALTH_EN=1. Write 1 to clear this bit.</description> 132 <bitOffset>2</bitOffset> 133 <bitWidth>1</bitWidth> 134 <enumeratedValues> 135 <enumeratedValue> 136 <name>Pass</name> 137 <description>Pass</description> 138 <value>0</value> 139 </enumeratedValue> 140 <enumeratedValue> 141 <name>Fail</name> 142 <description>Fail</description> 143 <value>1</value> 144 </enumeratedValue> 145 </enumeratedValues> 146 </field> 147 <field> 148 <name>SRCFAIL</name> 149 <description>Entropy source has failed. IRQ is generated if HEALTH_EN=1. Write 1 to clear this bit.</description> 150 <bitOffset>3</bitOffset> 151 <bitWidth>1</bitWidth> 152 <enumeratedValues> 153 <enumeratedValue> 154 <name>Works</name> 155 <description>Entopy source works correctly</description> 156 <value>0</value> 157 </enumeratedValue> 158 <enumeratedValue> 159 <name>Fail</name> 160 <description>Entropy Source has failed</description> 161 <value>1</value> 162 </enumeratedValue> 163 </enumeratedValues> 164 </field> 165 <field> 166 <name>AESKGD_MEU_S</name> 167 <description>Automatically AES transfer on going</description> 168 <bitOffset>4</bitOffset> 169 <bitWidth>1</bitWidth> 170 </field> 171 </fields> 172 </register> 173 <register> 174 <name>DATA</name> 175 <description>Data. The content of this register is valid only when RNG_IS = 1. When TRNG is disabled, read returns 0x0000 0000.</description> 176 <addressOffset>0x08</addressOffset> 177 <access>read-only</access> 178 <fields> 179 <field> 180 <name>DATA</name> 181 <description>Data. The content of this register is valid only when RNG_IS =1. When TNRG is disabled, read returns 0x0000 0000.</description> 182 <bitOffset>0</bitOffset> 183 <bitWidth>32</bitWidth> 184 </field> 185 </fields> 186 </register> 187 </registers> 188 </peripheral> 189 <!-- TRNG: Random Number Generator --> 190</device>