Jsphinx.addnodesdocument)}( rawsourcechildren](docutils.nodessubstitution_definition)}(h&.. |AArch32| replace:: :term:`AArch32`h]h pending_xref)}(h:term:`AArch32`h]h inline)}(hhh]h TextAArch32}(hhparenthuba attributes}(ids]classes](xrefstdstd-termenames]dupnames]backrefs]utagnamehh!hubah"}(h$]h&]h+]h-]h/]refdoc!getting_started/image-terminology refdomainh)reftypeterm refexplicitrefwarn reftargetAArch32uh1hsource lineKh!h ubah"}(h$]h&]h+]AArch32ah-]h/]uh1h hAhBhCKh!hhhubh )}(h&.. |AArch64| replace:: :term:`AArch64`h]h)}(h:term:`AArch64`h]h)}(hhQh]hAArch64}(hhh!hSubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!hOubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainh]reftypeterm refexplicitrefwarnh?AArch64uh1hhAhBhCKh!hKubah"}(h$]h&]h+]AArch64ah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |AMU| replace:: :term:`AMU`h]h)}(h :term:`AMU`h]h)}(hh|h]hAMU}(hhh!h~ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!hzubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainhreftypeterm refexplicitrefwarnh?AMUuh1hhAhBhCKh!hvubah"}(h$]h&]h+]AMUah-]h/]uh1h hAhBhCKh!hhhubh )}(h&.. |AMUs| replace:: :term:`AMUs `h]h)}(h:term:`AMUs `h]h)}(hhh]hAMUs}(hhh!hubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!hubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainhreftypeterm refexplicitrefwarnh?AMUuh1hhAhBhCKh!hubah"}(h$]h&]h+]AMUsah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |API| replace:: :term:`API`h]h)}(h :term:`API`h]h)}(hhh]hAPI}(hhh!hubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!hubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainhތreftypeterm refexplicitrefwarnh?APIuh1hhAhBhCKh!hubah"}(h$]h&]h+]APIah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |BTI| replace:: :term:`BTI`h]h)}(h :term:`BTI`h]h)}(hhh]hBTI}(hhh!hubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!hubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?BTIuh1hhAhBhCKh!hubah"}(h$]h&]h+]BTIah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |CoT| replace:: :term:`CoT`h]h)}(h :term:`CoT`h]h)}(hj(h]hCoT}(hhh!j*ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j&ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj4reftypeterm refexplicitrefwarnh?CoTuh1hhAhBhCKh!j"ubah"}(h$]h&]h+]CoTah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |COT| replace:: :term:`COT`h]h)}(h :term:`COT`h]h)}(hjSh]hCOT}(hhh!jUubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jQubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj_reftypeterm refexplicitrefwarnh?COTuh1hhAhBhCKh!jMubah"}(h$]h&]h+]COTah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |CSS| replace:: :term:`CSS`h]h)}(h :term:`CSS`h]h)}(hj~h]hCSS}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j|ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?CSSuh1hhAhBhCK h!jxubah"}(h$]h&]h+]CSSah-]h/]uh1h hAhBhCK h!hhhubh )}(h.. |CVE| replace:: :term:`CVE`h]h)}(h :term:`CVE`h]h)}(hjh]hCVE}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?CVEuh1hhAhBhCK h!jubah"}(h$]h&]h+]CVEah-]h/]uh1h hAhBhCK h!hhhubh )}(h.. |DTB| replace:: :term:`DTB`h]h)}(h :term:`DTB`h]h)}(hjh]hDTB}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?DTBuh1hhAhBhCK h!jubah"}(h$]h&]h+]DTBah-]h/]uh1h hAhBhCK h!hhhubh )}(h .. |DS-5| replace:: :term:`DS-5`h]h)}(h :term:`DS-5`h]h)}(hjh]hDS-5}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?DS-5uh1hhAhBhCK h!jubah"}(h$]h&]h+]DS-5ah-]h/]uh1h hAhBhCK h!hhhubh )}(h.. |DSU| replace:: :term:`DSU`h]h)}(h :term:`DSU`h]h)}(hj*h]hDSU}(hhh!j,ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j(ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj6reftypeterm refexplicitrefwarnh?DSUuh1hhAhBhCK h!j$ubah"}(h$]h&]h+]DSUah-]h/]uh1h hAhBhCK h!hhhubh )}(h.. |DT| replace:: :term:`DT`h]h)}(h :term:`DT`h]h)}(hjUh]hDT}(hhh!jWubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jSubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjareftypeterm refexplicitrefwarnh?DTuh1hhAhBhCKh!jOubah"}(h$]h&]h+]DTah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |EL| replace:: :term:`EL`h]h)}(h :term:`EL`h]h)}(hjh]hEL}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j~ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?ELuh1hhAhBhCKh!jzubah"}(h$]h&]h+]ELah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |EHF| replace:: :term:`EHF`h]h)}(h :term:`EHF`h]h)}(hjh]hEHF}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?EHFuh1hhAhBhCKh!jubah"}(h$]h&]h+]EHFah-]h/]uh1h hAhBhCKh!hhhubh )}(h".. |FCONF| replace:: :term:`FCONF`h]h)}(h :term:`FCONF`h]h)}(hjh]hFCONF}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?FCONFuh1hhAhBhCKh!jubah"}(h$]h&]h+]FCONFah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |FDT| replace:: :term:`FDT`h]h)}(h :term:`FDT`h]h)}(hjh]hFDT}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?FDTuh1hhAhBhCKh!jubah"}(h$]h&]h+]FDTah-]h/]uh1h hAhBhCKh!hhhubh )}(h .. |FF-A| replace:: :term:`FF-A`h]h)}(h :term:`FF-A`h]h)}(hj,h]hFF-A}(hhh!j.ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j*ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj8reftypeterm refexplicitrefwarnh?FF-Auh1hhAhBhCKh!j&ubah"}(h$]h&]h+]FF-Aah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |FIP| replace:: :term:`FIP`h]h)}(h :term:`FIP`h]h)}(hjWh]hFIP}(hhh!jYubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jUubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjcreftypeterm refexplicitrefwarnh?FIPuh1hhAhBhCKh!jQubah"}(h$]h&]h+]FIPah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |FVP| replace:: :term:`FVP`h]h)}(h :term:`FVP`h]h)}(hjh]hFVP}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?FVPuh1hhAhBhCKh!j|ubah"}(h$]h&]h+]FVPah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |FWU| replace:: :term:`FWU`h]h)}(h :term:`FWU`h]h)}(hjh]hFWU}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?FWUuh1hhAhBhCKh!jubah"}(h$]h&]h+]FWUah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |GIC| replace:: :term:`GIC`h]h)}(h :term:`GIC`h]h)}(hjh]hGIC}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?GICuh1hhAhBhCKh!jubah"}(h$]h&]h+]GICah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |ISA| replace:: :term:`ISA`h]h)}(h :term:`ISA`h]h)}(hjh]hISA}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?ISAuh1hhAhBhCKh!jubah"}(h$]h&]h+]ISAah-]h/]uh1h hAhBhCKh!hhhubh )}(h$.. |Linaro| replace:: :term:`Linaro`h]h)}(h:term:`Linaro`h]h)}(hj.h]hLinaro}(hhh!j0ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j,ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj:reftypeterm refexplicitrefwarnh?Linarouh1hhAhBhCKh!j(ubah"}(h$]h&]h+]Linaroah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |MMU| replace:: :term:`MMU`h]h)}(h :term:`MMU`h]h)}(hjYh]hMMU}(hhh!j[ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jWubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjereftypeterm refexplicitrefwarnh?MMUuh1hhAhBhCKh!jSubah"}(h$]h&]h+]MMUah-]h/]uh1h hAhBhCKh!hhhubh )}(h .. |MPAM| replace:: :term:`MPAM`h]h)}(h :term:`MPAM`h]h)}(hjh]hMPAM}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?MPAMuh1hhAhBhCKh!j~ubah"}(h$]h&]h+]MPAMah-]h/]uh1h hAhBhCKh!hhhubh )}(h .. |MPMM| replace:: :term:`MPMM`h]h)}(h :term:`MPMM`h]h)}(hjh]hMPMM}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?MPMMuh1hhAhBhCKh!jubah"}(h$]h&]h+]MPMMah-]h/]uh1h hAhBhCKh!hhhubh )}(h".. |MPIDR| replace:: :term:`MPIDR`h]h)}(h :term:`MPIDR`h]h)}(hjh]hMPIDR}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?MPIDRuh1hhAhBhCKh!jubah"}(h$]h&]h+]MPIDRah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |MTE| replace:: :term:`MTE`h]h)}(h :term:`MTE`h]h)}(hjh]hMTE}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?MTEuh1hhAhBhCKh!jubah"}(h$]h&]h+]MTEah-]h/]uh1h hAhBhCKh!hhhubh )}(h.. |OEN| replace:: :term:`OEN`h]h)}(h :term:`OEN`h]h)}(hj0h]hOEN}(hhh!j2ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j.ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj<reftypeterm refexplicitrefwarnh?OENuh1hhAhBhCKh!j*ubah"}(h$]h&]h+]OENah-]h/]uh1h hAhBhCKh!hhhubh )}(h$.. |OP-TEE| replace:: :term:`OP-TEE`h]h)}(h:term:`OP-TEE`h]h)}(hj[h]hOP-TEE}(hhh!j]ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jYubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjgreftypeterm refexplicitrefwarnh?OP-TEEuh1hhAhBhCK h!jUubah"}(h$]h&]h+]OP-TEEah-]h/]uh1h hAhBhCK h!hhhubh )}(h.. |OTE| replace:: :term:`OTE`h]h)}(h :term:`OTE`h]h)}(hjh]hOTE}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?OTEuh1hhAhBhCK!h!jubah"}(h$]h&]h+]OTEah-]h/]uh1h hAhBhCK!h!hhhubh )}(h.. |PDD| replace:: :term:`PDD`h]h)}(h :term:`PDD`h]h)}(hjh]hPDD}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?PDDuh1hhAhBhCK"h!jubah"}(h$]h&]h+]PDDah-]h/]uh1h hAhBhCK"h!hhhubh )}(h".. |PAUTH| replace:: :term:`PAUTH`h]h)}(h :term:`PAUTH`h]h)}(hjh]hPAUTH}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?PAUTHuh1hhAhBhCK#h!jubah"}(h$]h&]h+]PAUTHah-]h/]uh1h hAhBhCK#h!hhhubh )}(h.. |PMF| replace:: :term:`PMF`h]h)}(h :term:`PMF`h]h)}(hjh]hPMF}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?PMFuh1hhAhBhCK$h!jubah"}(h$]h&]h+]PMFah-]h/]uh1h hAhBhCK$h!hhhubh )}(h .. |PSCI| replace:: :term:`PSCI`h]h)}(h :term:`PSCI`h]h)}(hj2h]hPSCI}(hhh!j4ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j0ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj>reftypeterm refexplicitrefwarnh?PSCIuh1hhAhBhCK%h!j,ubah"}(h$]h&]h+]PSCIah-]h/]uh1h hAhBhCK%h!hhhubh )}(h.. |RAS| replace:: :term:`RAS`h]h)}(h :term:`RAS`h]h)}(hj]h]hRAS}(hhh!j_ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j[ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjireftypeterm refexplicitrefwarnh?RASuh1hhAhBhCK&h!jWubah"}(h$]h&]h+]RASah-]h/]uh1h hAhBhCK&h!hhhubh )}(h.. |ROT| replace:: :term:`ROT`h]h)}(h :term:`ROT`h]h)}(hjh]hROT}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?ROTuh1hhAhBhCK'h!jubah"}(h$]h&]h+]ROTah-]h/]uh1h hAhBhCK'h!hhhubh )}(h .. |SCMI| replace:: :term:`SCMI`h]h)}(h :term:`SCMI`h]h)}(hjh]hSCMI}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SCMIuh1hhAhBhCK(h!jubah"}(h$]h&]h+]SCMIah-]h/]uh1h hAhBhCK(h!hhhubh )}(h.. |SCP| replace:: :term:`SCP`h]h)}(h :term:`SCP`h]h)}(hjh]hSCP}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SCPuh1hhAhBhCK)h!jubah"}(h$]h&]h+]SCPah-]h/]uh1h hAhBhCK)h!hhhubh )}(h .. |SDEI| replace:: :term:`SDEI`h]h)}(h :term:`SDEI`h]h)}(hj h]hSDEI}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SDEIuh1hhAhBhCK*h!jubah"}(h$]h&]h+]SDEIah-]h/]uh1h hAhBhCK*h!hhhubh )}(h.. |SDS| replace:: :term:`SDS`h]h)}(h :term:`SDS`h]h)}(hj4h]hSDS}(hhh!j6ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j2ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj@reftypeterm refexplicitrefwarnh?SDSuh1hhAhBhCK+h!j.ubah"}(h$]h&]h+]SDSah-]h/]uh1h hAhBhCK+h!hhhubh )}(h.. |SEA| replace:: :term:`SEA`h]h)}(h :term:`SEA`h]h)}(hj_h]hSEA}(hhh!jaubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j]ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjkreftypeterm refexplicitrefwarnh?SEAuh1hhAhBhCK,h!jYubah"}(h$]h&]h+]SEAah-]h/]uh1h hAhBhCK,h!hhhubh )}(h.. |SiP| replace:: :term:`SiP`h]h)}(h :term:`SiP`h]h)}(hjh]hSiP}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SiPuh1hhAhBhCK-h!jubah"}(h$]h&]h+]SiPah-]h/]uh1h hAhBhCK-h!hhhubh )}(h.. |SIP| replace:: :term:`SIP`h]h)}(h :term:`SIP`h]h)}(hjh]hSIP}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SIPuh1hhAhBhCK.h!jubah"}(h$]h&]h+]SIPah-]h/]uh1h hAhBhCK.h!hhhubh )}(h.. |SMC| replace:: :term:`SMC`h]h)}(h :term:`SMC`h]h)}(hjh]hSMC}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SMCuh1hhAhBhCK/h!jubah"}(h$]h&]h+]SMCah-]h/]uh1h hAhBhCK/h!hhhubh )}(h".. |SMCCC| replace:: :term:`SMCCC`h]h)}(h :term:`SMCCC`h]h)}(hj h]hSMCCC}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SMCCCuh1hhAhBhCK0h!jubah"}(h$]h&]h+]SMCCCah-]h/]uh1h hAhBhCK0h!hhhubh )}(h.. |SoC| replace:: :term:`SoC`h]h)}(h :term:`SoC`h]h)}(hj6h]hSoC}(hhh!j8ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j4ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjBreftypeterm refexplicitrefwarnh?SoCuh1hhAhBhCK1h!j0ubah"}(h$]h&]h+]SoCah-]h/]uh1h hAhBhCK1h!hhhubh )}(h.. |SP| replace:: :term:`SP`h]h)}(h :term:`SP`h]h)}(hjah]hSP}(hhh!jcubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j_ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjmreftypeterm refexplicitrefwarnh?SPuh1hhAhBhCK2h!j[ubah"}(h$]h&]h+]SPah-]h/]uh1h hAhBhCK2h!hhhubh )}(h.. |SPD| replace:: :term:`SPD`h]h)}(h :term:`SPD`h]h)}(hjh]hSPD}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SPDuh1hhAhBhCK3h!jubah"}(h$]h&]h+]SPDah-]h/]uh1h hAhBhCK3h!hhhubh )}(h.. |SPM| replace:: :term:`SPM`h]h)}(h :term:`SPM`h]h)}(hjh]hSPM}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SPMuh1hhAhBhCK4h!jubah"}(h$]h&]h+]SPMah-]h/]uh1h hAhBhCK4h!hhhubh )}(h .. |SSBS| replace:: :term:`SSBS`h]h)}(h :term:`SSBS`h]h)}(hjh]hSSBS}(hhh!jubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftypeterm refexplicitrefwarnh?SSBSuh1hhAhBhCK5h!jubah"}(h$]h&]h+]SSBSah-]h/]uh1h hAhBhCK5h!hhhubh )}(h.. |SVE| replace:: :term:`SVE`h]h)}(h :term:`SVE`h]h)}(hj h]hSVE}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?SVEuh1hhAhBhCK6h!j ubah"}(h$]h&]h+]SVEah-]h/]uh1h hAhBhCK6h!hhhubh )}(h.. |TBB| replace:: :term:`TBB`h]h)}(h :term:`TBB`h]h)}(hj8 h]hTBB}(hhh!j: ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j6 ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjD reftypeterm refexplicitrefwarnh?TBBuh1hhAhBhCK7h!j2 ubah"}(h$]h&]h+]TBBah-]h/]uh1h hAhBhCK7h!hhhubh )}(h .. |TBBR| replace:: :term:`TBBR`h]h)}(h :term:`TBBR`h]h)}(hjc h]hTBBR}(hhh!je ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!ja ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjo reftypeterm refexplicitrefwarnh?TBBRuh1hhAhBhCK8h!j] ubah"}(h$]h&]h+]TBBRah-]h/]uh1h hAhBhCK8h!hhhubh )}(h.. |TEE| replace:: :term:`TEE`h]h)}(h :term:`TEE`h]h)}(hj h]hTEE}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TEEuh1hhAhBhCK9h!j ubah"}(h$]h&]h+]TEEah-]h/]uh1h hAhBhCK9h!hhhubh )}(h .. |TF-A| replace:: :term:`TF-A`h]h)}(h :term:`TF-A`h]h)}(hj h]hTF-A}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TF-Auh1hhAhBhCK:h!j ubah"}(h$]h&]h+]TF-Aah-]h/]uh1h hAhBhCK:h!hhhubh )}(h .. |TF-M| replace:: :term:`TF-M`h]h)}(h :term:`TF-M`h]h)}(hj h]hTF-M}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TF-Muh1hhAhBhCK;h!j ubah"}(h$]h&]h+]TF-Mah-]h/]uh1h hAhBhCK;h!hhhubh )}(h.. |TLB| replace:: :term:`TLB`h]h)}(h :term:`TLB`h]h)}(hj h]hTLB}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TLBuh1hhAhBhCKh!j_ ubah"}(h$]h&]h+]TRNGah-]h/]uh1h hAhBhCK>h!hhhubh )}(h.. |TSP| replace:: :term:`TSP`h]h)}(h :term:`TSP`h]h)}(hj h]hTSP}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TSPuh1hhAhBhCK?h!j ubah"}(h$]h&]h+]TSPah-]h/]uh1h hAhBhCK?h!hhhubh )}(h.. |TZC| replace:: :term:`TZC`h]h)}(h :term:`TZC`h]h)}(hj h]hTZC}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?TZCuh1hhAhBhCK@h!j ubah"}(h$]h&]h+]TZCah-]h/]uh1h hAhBhCK@h!hhhubh )}(h".. |UBSAN| replace:: :term:`UBSAN`h]h)}(h :term:`UBSAN`h]h)}(hj h]hUBSAN}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?UBSANuh1hhAhBhCKAh!j ubah"}(h$]h&]h+]UBSANah-]h/]uh1h hAhBhCKAh!hhhubh )}(h .. |UEFI| replace:: :term:`UEFI`h]h)}(h :term:`UEFI`h]h)}(hj h]hUEFI}(hhh!j ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainj reftypeterm refexplicitrefwarnh?UEFIuh1hhAhBhCKBh!j ubah"}(h$]h&]h+]UEFIah-]h/]uh1h hAhBhCKBh!hhhubh )}(h .. |WDOG| replace:: :term:`WDOG`h]h)}(h :term:`WDOG`h]h)}(hj< h]hWDOG}(hhh!j> ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!j: ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjH reftypeterm refexplicitrefwarnh?WDOGuh1hhAhBhCKCh!j6 ubah"}(h$]h&]h+]WDOGah-]h/]uh1h hAhBhCKCh!hhhubh )}(h!.. |XLAT| replace:: :term:`XLAT` h]h)}(h :term:`XLAT`h]h)}(hjg h]hXLAT}(hhh!ji ubah"}(h$]h&](h(stdstd-termeh+]h-]h/]uh1hh!je ubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjs reftypeterm refexplicitrefwarnh?XLATuh1hhAhBhCKDh!ja ubah"}(h$]h&]h+]XLATah-]h/]uh1h hAhBhCKDh!hhhubh section)}(hhh](h title)}(hImage Terminologyh]hImage Terminology}(hj h!j hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAb/home/test/workspace/code/optee_3.16/trusted-firmware-a/docs/getting_started/image-terminology.rsthCKubh paragraph)}(hThis page contains the current name, abbreviated name and purpose of the various images referred to in the Trusted Firmware project.h]hThis page contains the current name, abbreviated name and purpose of the various images referred to in the Trusted Firmware project.}(hj h!j hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!j hhubj )}(hhh](j )}(h General Notesh]h General Notes}(hj h!j hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCKubh bullet_list)}(hhh](h list_item)}(hX[Some of the names and abbreviated names have changed to accommodate new requirements. The changed names are as backward compatible as possible to minimize confusion. Where applicable, the previous names are indicated. Some code, documentation and build artefacts may still refer to the previous names; these will inevitably take time to catch up. h]j )}(hXZSome of the names and abbreviated names have changed to accommodate new requirements. The changed names are as backward compatible as possible to minimize confusion. Where applicable, the previous names are indicated. Some code, documentation and build artefacts may still refer to the previous names; these will inevitably take time to catch up.h]hXZSome of the names and abbreviated names have changed to accommodate new requirements. The changed names are as backward compatible as possible to minimize confusion. Where applicable, the previous names are indicated. Some code, documentation and build artefacts may still refer to the previous names; these will inevitably take time to catch up.}(hj h!j ubah"}(h$]h&]h+]h-]h/]uh1j hAj hCK h!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubj )}(hX4The main name change is to prefix each image with the processor it corresponds to (for example ``AP_``, ``SCP_``, ...). In situations where there is no ambiguity (for example, within AP specific code/documentation), it is permitted to omit the processor prefix (for example, just BL1 instead of ``AP_BL1``). h]j )}(hX3The main name change is to prefix each image with the processor it corresponds to (for example ``AP_``, ``SCP_``, ...). In situations where there is no ambiguity (for example, within AP specific code/documentation), it is permitted to omit the processor prefix (for example, just BL1 instead of ``AP_BL1``).h](h_The main name change is to prefix each image with the processor it corresponds to (for example }(h_The main name change is to prefix each image with the processor it corresponds to (for example h!j ubh literal)}(h``AP_``h]hAP_}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubh, }(h, h!j ubj )}(h``SCP_``h]hSCP_}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubh, …). In situations where there is no ambiguity (for example, within AP specific code/documentation), it is permitted to omit the processor prefix (for example, just BL1 instead of }(h, ...). In situations where there is no ambiguity (for example, within AP specific code/documentation), it is permitted to omit the processor prefix (for example, just BL1 instead of h!j ubj )}(h ``AP_BL1``h]hAP_BL1}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubh).}(h).h!j ubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubj )}(hXwPreviously, the format for 3rd level images had 2 forms; ``BL3`` was either suffixed with a dash ("-") followed by a number (for example, ``BL3-1``) or a subscript number, depending on whether rich text formatting was available. This was confusing and often the dash gets omitted in practice. Therefore the new form is to just omit the dash and not use subscript formatting. h]j )}(hXvPreviously, the format for 3rd level images had 2 forms; ``BL3`` was either suffixed with a dash ("-") followed by a number (for example, ``BL3-1``) or a subscript number, depending on whether rich text formatting was available. This was confusing and often the dash gets omitted in practice. Therefore the new form is to just omit the dash and not use subscript formatting.h](h9Previously, the format for 3rd level images had 2 forms; }(h9Previously, the format for 3rd level images had 2 forms; h!j: ubj )}(h``BL3``h]hBL3}(hhh!jC ubah"}(h$]h&]h+]h-]h/]uh1j h!j: ubhN was either suffixed with a dash (“-“) followed by a number (for example, }(hJ was either suffixed with a dash ("-") followed by a number (for example, h!j: ubj )}(h ``BL3-1``h]hBL3-1}(hhh!jV ubah"}(h$]h&]h+]h-]h/]uh1j h!j: ubh) or a subscript number, depending on whether rich text formatting was available. This was confusing and often the dash gets omitted in practice. Therefore the new form is to just omit the dash and not use subscript formatting.}(h) or a subscript number, depending on whether rich text formatting was available. This was confusing and often the dash gets omitted in practice. Therefore the new form is to just omit the dash and not use subscript formatting.h!j: ubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!j6 ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubj )}(hThe names no longer contain dash ("-") characters at all. In some places (for example, function names) it's not possible to use this character. All dashes are either removed or replaced by underscores ("_"). h]j )}(hThe names no longer contain dash ("-") characters at all. In some places (for example, function names) it's not possible to use this character. All dashes are either removed or replaced by underscores ("_").h]hThe names no longer contain dash (“-“) characters at all. In some places (for example, function names) it’s not possible to use this character. All dashes are either removed or replaced by underscores (“_”).}(hj{ h!jy ubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!ju ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubj )}(hThe abbreviation BL stands for BootLoader. This is a historical anomaly. Clearly, many of these images are not BootLoaders, they are simply firmware images. However, the BL abbreviation is now widely used and is retained for backwards compatibility. h]j )}(hThe abbreviation BL stands for BootLoader. This is a historical anomaly. Clearly, many of these images are not BootLoaders, they are simply firmware images. However, the BL abbreviation is now widely used and is retained for backwards compatibility.h]hThe abbreviation BL stands for BootLoader. This is a historical anomaly. Clearly, many of these images are not BootLoaders, they are simply firmware images. However, the BL abbreviation is now widely used and is retained for backwards compatibility.}(hj h!j ubah"}(h$]h&]h+]h-]h/]uh1j hAj hCK h!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubj )}(hThe image names are not case sensitive. For example, ``bl1`` is interchangeable with ``BL1``, although mixed case should be avoided. h]j )}(hThe image names are not case sensitive. For example, ``bl1`` is interchangeable with ``BL1``, although mixed case should be avoided.h](h5The image names are not case sensitive. For example, }(h5The image names are not case sensitive. For example, h!j ubj )}(h``bl1``h]hbl1}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubh is interchangeable with }(h is interchangeable with h!j ubj )}(h``BL1``h]hBL1}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubh(, although mixed case should be avoided.}(h(, although mixed case should be avoided.h!j ubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCK%h!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCNubeh"}(h$]h&]h+]h-]h/]bullet-uh1j hAj hCK h!j hhubeh"}(h$] general-notesah&]h+] general notesah-]h/]uh1j h!j hhhAj hCKubj )}(hhh](j )}(hTrusted Firmware Imagesh]hTrusted Firmware Images}(hj h!j hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCK)ubj )}(hhh](j )}(hAP Boot ROM: ``AP_BL1``h](h AP Boot ROM: }(h AP Boot ROM: h!j hhhANhCNubj )}(h ``AP_BL1``h]hAP_BL1}(hhh!j ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubeh"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCK,ubj )}(hXTypically, this is the first code to execute on the AP and cannot be modified. Its primary purpose is to perform the minimum initialization necessary to load and authenticate an updateable AP firmware image into an executable RAM location, then hand-off control to that image.h]hXTypically, this is the first code to execute on the AP and cannot be modified. Its primary purpose is to perform the minimum initialization necessary to load and authenticate an updateable AP firmware image into an executable RAM location, then hand-off control to that image.}(hj' h!j% hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCK.h!j hhubeh"}(h$]ap-boot-rom-ap-bl1ah&]h+]ap boot rom: ap_bl1ah-]h/]uh1j h!j hhhAj hCK,ubj )}(hhh](j )}(hAP RAM Firmware: ``AP_BL2``h](hAP RAM Firmware: }(hAP RAM Firmware: h!j> hhhANhCNubj )}(h ``AP_BL2``h]hAP_BL2}(hhh!jG ubah"}(h$]h&]h+]h-]h/]uh1j h!j> ubeh"}(h$]h&]h+]h-]h/]uh1j h!j; hhhAj hCK4ubj )}(hX5This is the 2nd stage AP firmware. It is currently also known as the "Trusted Boot Firmware". Its primary purpose is to perform any additional initialization required to load and authenticate all 3rd level firmware images into their executable RAM locations, then hand-off control to the EL3 Runtime Firmware.h]hX9This is the 2nd stage AP firmware. It is currently also known as the “Trusted Boot Firmware”. Its primary purpose is to perform any additional initialization required to load and authenticate all 3rd level firmware images into their executable RAM locations, then hand-off control to the EL3 Runtime Firmware.}(hj] h!j[ hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCK6h!j; hhubeh"}(h$]ap-ram-firmware-ap-bl2ah&]h+]ap ram firmware: ap_bl2ah-]h/]uh1j h!j hhhAj hCK4ubj )}(hhh](j )}(h!EL3 Runtime Firmware: ``AP_BL31``h](hEL3 Runtime Firmware: }(hEL3 Runtime Firmware: h!jt hhhANhCNubj )}(h ``AP_BL31``h]hAP_BL31}(hhh!j} ubah"}(h$]h&]h+]h-]h/]uh1j h!jt ubeh"}(h$]h&]h+]h-]h/]uh1j h!jq hhhAj hCKh!jq hhubeh"}(h$]el3-runtime-firmware-ap-bl31ah&]h+]el3 runtime firmware: ap_bl31ah-]h/]uh1j h!j hhhAj hCK AP_BL32 -> AP_BL33``). Some systems may have additional images and/or a different load/execution ordering. The abbreviated names of the existing images are retained for backward compatibility but new 3rd level images should be suffixed with an underscore followed by text identifier, not a number.h](heThe abbreviated names of the existing 3rd level images imply a load/execution ordering (for example, }(heThe abbreviated names of the existing 3rd level images imply a load/execution ordering (for example, h!jIhhhANhCNubj )}(h!``AP_BL31 -> AP_BL32 -> AP_BL33``h]hAP_BL31 -> AP_BL32 -> AP_BL33}(hhh!jRubah"}(h$]h&]h+]h-]h/]uh1j h!jIubhX). Some systems may have additional images and/or a different load/execution ordering. The abbreviated names of the existing images are retained for backward compatibility but new 3rd level images should be suffixed with an underscore followed by text identifier, not a number.}(hX). Some systems may have additional images and/or a different load/execution ordering. The abbreviated names of the existing images are retained for backward compatibility but new 3rd level images should be suffixed with an underscore followed by text identifier, not a number.h!jIhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKTh!j)hhubj )}(hIn systems where 3rd level images are provided by different vendors, the abbreviated name should identify the vendor as well as the image function. For example, ``AP_BL3_ARM_RAS``.h](hIn systems where 3rd level images are provided by different vendors, the abbreviated name should identify the vendor as well as the image function. For example, }(hIn systems where 3rd level images are provided by different vendors, the abbreviated name should identify the vendor as well as the image function. For example, h!jkhhhANhCNubj )}(h``AP_BL3_ARM_RAS``h]hAP_BL3_ARM_RAS}(hhh!jtubah"}(h$]h&]h+]h-]h/]uh1j h!jkubh.}(h.h!jkhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCK[h!j)hhubeh"}(h$]$other-ap-3rd-level-images-ap-bl3-xxxah&]h+]%other ap 3rd level images: ap_bl3_xxxah-]h/]uh1j h!j hhhAj hCKRubj )}(hhh](j )}(h*Realm Monitor Management Firmware: ``RMM``h](h#Realm Monitor Management Firmware: }(h#Realm Monitor Management Firmware: h!jhhhANhCNubj )}(h``RMM``h]hRMM}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCK`ubj )}(hThis is the Realm-EL2 firmware. It is required if :ref:`Realm Management Extension (RME)` feature is enabled. If a path to RMM image is not provided, TF-A builds Test Realm Payload (TRP) image by default and uses it as the RMM image.h](h2This is the Realm-EL2 firmware. It is required if }(h2This is the Realm-EL2 firmware. It is required if h!jhhhANhCNubh)}(h':ref:`Realm Management Extension (RME)`h]h)}(hjh]h Realm Management Extension (RME)}(hhh!jubah"}(h$]h&](h(stdstd-refeh+]h-]h/]uh1hh!jubah"}(h$]h&]h+]h-]h/]refdoch9 refdomainjreftyperef refexplicitrefwarnh? realm management extension (rme)uh1hhAj hCKbh!jubh feature is enabled. If a path to RMM image is not provided, TF-A builds Test Realm Payload (TRP) image by default and uses it as the RMM image.}(h feature is enabled. If a path to RMM image is not provided, TF-A builds Test Realm Payload (TRP) image by default and uses it as the RMM image.h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKbh!jhhubeh"}(h$]%realm-monitor-management-firmware-rmmah&]h+]&realm monitor management firmware: rmmah-]h/]uh1j h!j hhhAj hCK`ubj )}(hhh](j )}(h.SCP Boot ROM: ``SCP_BL1`` (previously ``BL0``)h](hSCP Boot ROM: }(hSCP Boot ROM: h!jhhhANhCNubj )}(h ``SCP_BL1``h]hSCP_BL1}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh (previously }(h (previously h!jhhhANhCNubj )}(h``BL0``h]hBL0}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh)}(h)h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKhubj )}(hXTypically, this is the first code to execute on the SCP and cannot be modified. Its primary purpose is to perform the minimum initialization necessary to load and authenticate an updateable SCP firmware image into an executable RAM location, then hand-off control to that image. This may be performed in conjunction with other processor firmware (for example, ``AP_BL1`` and ``AP_BL2``).h](hXhTypically, this is the first code to execute on the SCP and cannot be modified. Its primary purpose is to perform the minimum initialization necessary to load and authenticate an updateable SCP firmware image into an executable RAM location, then hand-off control to that image. This may be performed in conjunction with other processor firmware (for example, }(hXhTypically, this is the first code to execute on the SCP and cannot be modified. Its primary purpose is to perform the minimum initialization necessary to load and authenticate an updateable SCP firmware image into an executable RAM location, then hand-off control to that image. This may be performed in conjunction with other processor firmware (for example, h!j)hhhANhCNubj )}(h ``AP_BL1``h]hAP_BL1}(hhh!j2ubah"}(h$]h&]h+]h-]h/]uh1j h!j)ubh and }(h and h!j)hhhANhCNubj )}(h ``AP_BL2``h]hAP_BL2}(hhh!jEubah"}(h$]h&]h+]h-]h/]uh1j h!j)ubh).}(h).h!j)hhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKjh!jhhubj )}(hXThis image was previously abbreviated as ``BL0`` but in some systems, the SCP may directly load/authenticate its own firmware. In these systems, it doesn't make sense to interleave the image terminology for AP and SCP; both AP and SCP Boot ROMs are ``BL1`` from their own point of view.h](h)This image was previously abbreviated as }(h)This image was previously abbreviated as h!j^hhhANhCNubj )}(h``BL0``h]hBL0}(hhh!jgubah"}(h$]h&]h+]h-]h/]uh1j h!j^ubh but in some systems, the SCP may directly load/authenticate its own firmware. In these systems, it doesn’t make sense to interleave the image terminology for AP and SCP; both AP and SCP Boot ROMs are }(h but in some systems, the SCP may directly load/authenticate its own firmware. In these systems, it doesn't make sense to interleave the image terminology for AP and SCP; both AP and SCP Boot ROMs are h!j^hhhANhCNubj )}(h``BL1``h]hBL1}(hhh!jzubah"}(h$]h&]h+]h-]h/]uh1j h!j^ubh from their own point of view.}(h from their own point of view.h!j^hhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKqh!jhhubeh"}(h$]#scp-boot-rom-scp-bl1-previously-bl0ah&]h+]&scp boot rom: scp_bl1 (previously bl0)ah-]h/]uh1j h!j hhhAj hCKhubj )}(hhh](j )}(h4SCP RAM Firmware: ``SCP_BL2`` (previously ``BL3-0``)h](hSCP RAM Firmware: }(hSCP RAM Firmware: h!jhhhANhCNubj )}(h ``SCP_BL2``h]hSCP_BL2}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh (previously }(h (previously h!jhhhANhCNubj )}(h ``BL3-0``h]hBL3-0}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh)}(hj"h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKwubj )}(hThis is the 2nd stage SCP firmware. It is currently also known as the "SCP runtime firmware" but it could potentially be an intermediate firmware if the SCP needs to load/authenticate multiple 3rd level images in future.h]hThis is the 2nd stage SCP firmware. It is currently also known as the “SCP runtime firmware” but it could potentially be an intermediate firmware if the SCP needs to load/authenticate multiple 3rd level images in future.}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKyh!jhhubj )}(hThis image was previously abbreviated as BL3-0 but from the SCP's point of view, this has always been the 2nd stage firmware. The previous name is too AP-centric.h]hThis image was previously abbreviated as BL3-0 but from the SCP’s point of view, this has always been the 2nd stage firmware. The previous name is too AP-centric.}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCK}h!jhhubeh"}(h$])scp-ram-firmware-scp-bl2-previously-bl3-0ah&]h+],scp ram firmware: scp_bl2 (previously bl3-0)ah-]h/]uh1j h!j hhhAj hCKwubeh"}(h$]trusted-firmware-imagesah&]h+]trusted firmware imagesah-]h/]uh1j h!j hhhAj hCK)ubj )}(hhh](j )}(hFirmware Update (FWU) Imagesh]hFirmware Update (FWU) Images}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKubj )}(hThe terminology for these images has not been widely adopted yet but they have to be considered in a production Trusted Board Boot solution.h]hThe terminology for these images has not been widely adopted yet but they have to be considered in a production Trusted Board Boot solution.}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!jhhubj )}(hhh](j )}(h+AP Firmware Update Boot ROM: ``AP_NS_BL1U``h](hAP Firmware Update Boot ROM: }(hAP Firmware Update Boot ROM: h!j hhhANhCNubj )}(h``AP_NS_BL1U``h]h AP_NS_BL1U}(hhh!j)ubah"}(h$]h&]h+]h-]h/]uh1j h!j ubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKubj )}(hXTypically, this is the first normal world code to execute on the AP during a firmware update operation, and cannot be modified. Its primary purpose is to load subsequent firmware update images from an external interface and communicate with ``AP_BL1`` to authenticate those images.h](hTypically, this is the first normal world code to execute on the AP during a firmware update operation, and cannot be modified. Its primary purpose is to load subsequent firmware update images from an external interface and communicate with }(hTypically, this is the first normal world code to execute on the AP during a firmware update operation, and cannot be modified. Its primary purpose is to load subsequent firmware update images from an external interface and communicate with h!j=hhhANhCNubj )}(h ``AP_BL1``h]hAP_BL1}(hhh!jFubah"}(h$]h&]h+]h-]h/]uh1j h!j=ubh to authenticate those images.}(h to authenticate those images.h!j=hhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!jhhubj )}(hXDuring firmware update, there are (potentially) multiple transitions between the secure and normal world. The "level" of the BL image is relative to the world it's in so it makes sense to encode "NS" in the normal world images. The absence of "NS" implies a secure world image.h]hX#During firmware update, there are (potentially) multiple transitions between the secure and normal world. The “level” of the BL image is relative to the world it’s in so it makes sense to encode “NS” in the normal world images. The absence of “NS” implies a secure world image.}(hjah!j_hhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!jhhubeh"}(h$]&ap-firmware-update-boot-rom-ap-ns-bl1uah&]h+]'ap firmware update boot rom: ap_ns_bl1uah-]h/]uh1j h!jhhhAj hCKubj )}(hhh](j )}(h&AP Firmware Update Config: ``AP_BL2U``h](hAP Firmware Update Config: }(hAP Firmware Update Config: h!jxhhhANhCNubj )}(h ``AP_BL2U``h]hAP_BL2U}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jxubeh"}(h$]h&]h+]h-]h/]uh1j h!juhhhAj hCKubj )}(hThis image does the minimum necessary AP secure world configuration required to complete the firmware update operation. It is potentially a subset of ``AP_BL2`` functionality.h](hThis image does the minimum necessary AP secure world configuration required to complete the firmware update operation. It is potentially a subset of }(hThis image does the minimum necessary AP secure world configuration required to complete the firmware update operation. It is potentially a subset of h!jhhhANhCNubj )}(h ``AP_BL2``h]hAP_BL2}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh functionality.}(h functionality.h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!juhhubeh"}(h$]!ap-firmware-update-config-ap-bl2uah&]h+]"ap firmware update config: ap_bl2uah-]h/]uh1j h!jhhhAj hCKubj )}(hhh](j )}(h@SCP Firmware Update Config: ``SCP_BL2U`` (previously ``BL2-U0``)h](hSCP Firmware Update Config: }(hSCP Firmware Update Config: h!jhhhANhCNubj )}(h ``SCP_BL2U``h]hSCP_BL2U}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh (previously }(h (previously h!jhhhANhCNubj )}(h ``BL2-U0``h]hBL2-U0}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh)}(hj"h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKubj )}(hThis image does the minimum necessary SCP secure world configuration required to complete the firmware update operation. It is potentially a subset of ``SCP_BL2`` functionality.h](hThis image does the minimum necessary SCP secure world configuration required to complete the firmware update operation. It is potentially a subset of }(hThis image does the minimum necessary SCP secure world configuration required to complete the firmware update operation. It is potentially a subset of h!jhhhANhCNubj )}(h ``SCP_BL2``h]hSCP_BL2}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubh functionality.}(h functionality.h!jhhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!jhhubeh"}(h$]5scp-firmware-update-config-scp-bl2u-previously-bl2-u0ah&]h+]8scp firmware update config: scp_bl2u (previously bl2-u0)ah-]h/]uh1j h!jhhhAj hCKubj )}(hhh](j )}(h:AP Firmware Updater: ``AP_NS_BL2U`` (previously ``BL3-U``)h](hAP Firmware Updater: }(hAP Firmware Updater: h!j#hhhANhCNubj )}(h``AP_NS_BL2U``h]h AP_NS_BL2U}(hhh!j,ubah"}(h$]h&]h+]h-]h/]uh1j h!j#ubh (previously }(h (previously h!j#hhhANhCNubj )}(h ``BL3-U``h]hBL3-U}(hhh!j?ubah"}(h$]h&]h+]h-]h/]uh1j h!j#ubh)}(hj"h!j#hhhANhCNubeh"}(h$]h&]h+]h-]h/]uh1j h!j hhhAj hCKubj )}(hThis is the 2nd stage AP normal world firmware updater. Its primary purpose is to load a new set of firmware images from an external interface and write them into non-volatile storage.h]hThis is the 2nd stage AP normal world firmware updater. Its primary purpose is to load a new set of firmware images from an external interface and write them into non-volatile storage.}(hjYh!jWhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!j hhubeh"}(h$]/ap-firmware-updater-ap-ns-bl2u-previously-bl3-uah&]h+]2ap firmware updater: ap_ns_bl2u (previously bl3-u)ah-]h/]uh1j h!jhhhAj hCKubeh"}(h$]firmware-update-fwu-imagesah&]h+]firmware update (fwu) imagesah-]h/]uh1j h!j hhhAj hCKubj )}(hhh](j )}(hOther Processor Firmware Imagesh]hOther Processor Firmware Images}(hjzh!jxhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j h!juhhhAj hCKubj )}(hXSome systems may have additional processors to the AP and SCP. For example, a Management Control Processor (MCP). Images for these processors should follow the same terminology, with the processor abbreviation prefix, followed by underscore and the level of the firmware image.h]hXSome systems may have additional processors to the AP and SCP. For example, a Management Control Processor (MCP). Images for these processors should follow the same terminology, with the processor abbreviation prefix, followed by underscore and the level of the firmware image.}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!juhhubj )}(h For example,h]h For example,}(hjh!jhhhANhCNubah"}(h$]h&]h+]h-]h/]uh1j hAj hCKh!juhhubj )}(hhh]j )}(hMCP Boot ROM: ``MCP_BL1``h](hMCP Boot ROM: }(hMCP Boot ROM: h!jhhhANhCNubj )}(h ``MCP_BL1``h]hMCP_BL1}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKubah"}(h$]mcp-boot-rom-mcp-bl1ah&]h+]mcp boot rom: mcp_bl1ah-]h/]uh1j h!juhhhAj hCKubj )}(hhh]j )}(hMCP RAM Firmware: ``MCP_BL2``h](hMCP RAM Firmware: }(hMCP RAM Firmware: h!jhhhANhCNubj )}(h ``MCP_BL2``h]hMCP_BL2}(hhh!jubah"}(h$]h&]h+]h-]h/]uh1j h!jubeh"}(h$]h&]h+]h-]h/]uh1j h!jhhhAj hCKubah"}(h$]mcp-ram-firmware-mcp-bl2ah&]h+]mcp ram firmware: mcp_bl2ah-]h/]uh1j h!juhhhAj hCKubeh"}(h$]other-processor-firmware-imagesah&]h+]other processor firmware imagesah-]h/]uh1j h!j hhhAj hCKubeh"}(h$]image-terminologyah&]h+]image terminologyah-]h/]uh1j h!hhhhAj hCKubeh"}(h$]h&]h+]h-]h/]sourcej uh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(j N generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj%error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcej _destinationN _config_files]pep_referencesN pep_base_url https://www.python.org/dev/peps/pep_file_url_templatepep-%04drfc_referencesN rfc_base_urlhttps://tools.ietf.org/html/ tab_widthKtrim_footnote_reference_spacefile_insertion_enabled raw_enabledKsyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xformembed_stylesheetcloak_email_addressesenvNubreporterNindirect_targets]substitution_defs}(hHh hshKhhvhhhhjhjJj"jujMjjxjjjjj!jjLj$jwjOjjzjjjjj#jjNj&jyjQjj|jjjjj%jjPj(j{jSjj~jjjjj'jjRj*j}jUjjjjjjj)jjTj,jjWjjjjjjj+jjVj.jjYjjjjjjj-jjXj0jj[jjjjj jj/ j jZ j2 j j] j j j j j j j1 j j\ j4 j j_ j j j j j j j3 j j^ j6 j ja usubstitution_names}(aarch32hHaarch64hsamuhamushɌapihbtijcotjucssjcvejdtbjds-5j!dsujLdtjweljehfjfconfjfdtj#ff-ajNfipjyfvpjfwujgicjisaj%linarojPmmuj{mpamjmpmmjmpidrjmtej'oenjRop-teej}otejpddjpauthjpmfj)pscijTrasjrotjscmijscpjsdeij+sdsjVseajsipjsmcjsmcccj-socjXspjspdjspmjssbsj svej/ tbbjZ tbbrj teej tf-aj tf-mj tlbj1 tlkj\ trngj tspj tzcj ubsanj uefij3 wdogj^ xlatj urefnames}refids}nameids}(jjj j jjj8 j5 jn jk j j j j j&j#jjjjjjjjjrjojrjojjjjjjjgjjjjjju nametypes}(jNj NjNj8 Njn Nj Nj Nj&NjNjNjNjNjrNjrNjNjNjjNjNjNjNuh$}(jj j j jj j5 j jk j; j jq j j j#j jj)jjjjjjjojjojjjujjjgj jjujjjju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN decorationNhhub.