tb_fw_bindings.rst 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. Trusted Boot Firmware Configuration bindings
  2. ============================================
  3. This document defines the nodes and properties used to define the Trusted-Boot
  4. firmware configuration. Platform owners are advised to define shared bindings
  5. here. If a binding does not generalize, they should be documented
  6. alongside platform documentation. There is no guarantee of backward
  7. compatibility with the nodes and properties outlined in this context.
  8. Trusted Boot Firmware Configuration
  9. -----------------------------------
  10. - compatible [mandatory]
  11. - value type: <string>
  12. - Should be the string ``"<plat>,tb_fw"``, where ``<plat>`` is the name of the
  13. platform (i.e. ``"arm,tb_fw"``).
  14. - disable_auth [mandatory]
  15. - value type: <u32>
  16. - Flag used to dynamically disable authentication for development purposes.
  17. Has two possible values: 0 or 1. Setting the flag to 1 disables
  18. authentication.
  19. - mbedtls_heap_addr [mandatory]
  20. - value type: <u64>
  21. - Base address of the dynamically allocated Mbed TLS heap. This is given as a placeholder.
  22. - mbedtls_heap_size [mandatory]
  23. - value type: <u32>
  24. - Size of the Mbed TLS heap.
  25. IO FIP Handles
  26. --------------
  27. - compatible [mandatory]
  28. - value type: <string>
  29. - Should be the string ``"<plat>,io-fip-handle"``, where ``<plat>`` is the name of the
  30. platform (i.e. ``"arm,io-fip-handle"``).
  31. - scp_bl2_uuid [mandatory]
  32. - value type: <string>
  33. - SCP Firmware SCP_BL2 UUID
  34. - bl31_uuid [mandatory]
  35. - value type: <string>
  36. - EL3 Runtime Firmware BL31 UUID
  37. - bl32_uuid [mandatory]
  38. - value type: <string>
  39. - Secure Payload BL32 (Trusted OS) UUID
  40. - bl32_extra1_uuid [mandatory]
  41. - value type: <string>
  42. - Secure Payload BL32_EXTRA1 (Trusted OS Extra1) UUID
  43. - bl32_extra2_uuid [mandatory]
  44. - value type: <string>
  45. - Secure Payload BL32_EXTRA2 (Trusted OS Extra2) UUID
  46. - bl33_uuid [mandatory]
  47. - value type: <string>
  48. - Non-Trusted Firmware BL33 UUID
  49. - hw_cfg_uuid [mandatory]
  50. - value type: <string>
  51. - HW_CONFIG (e.g. Kernel DT) UUID
  52. - soc_fw_cfg_uuid [mandatory]
  53. - value type: <string>
  54. - SOC Firmware Configuration SOC_FW_CONFIG UUID
  55. - tos_fw_cfg_uuid [mandatory]
  56. - value type: <string>
  57. - Trusted OS Firmware Configuration TOS_FW_CONFIG UUID
  58. - nt_fw_cfg_uuid [mandatory]
  59. - value type: <string>
  60. - Non-Trusted Firmware Configuration NT_FW_CONFIG UUID
  61. - cca_cert_uuid [optional]
  62. - value type: <string>
  63. - CCA Content Certificate UUID
  64. - core_swd_cert_uuid [optional]
  65. - value type: <string>
  66. - Core SWD Key Certificate UUID
  67. - plat_cert_uuid [optional]
  68. - value type: <string>
  69. - Core SWD Key Certificate UUID
  70. - t_key_cert_uuid [optional]
  71. - value type: <string>
  72. - Trusted Key Certificate UUID
  73. - scp_fw_key_uuid [optional]
  74. - value type: <string>
  75. - SCP Firmware Key UUID
  76. - soc_fw_key_uuid [optional]
  77. - value type: <string>
  78. - SOC Firmware Key UUID
  79. - tos_fw_key_cert_uuid [optional]
  80. - value type: <string>
  81. - TOS Firmware Key UUID
  82. - nt_fw_key_cert_uuid [optional]
  83. - value type: <string>
  84. - Non-Trusted Firmware Key UUID
  85. - scp_fw_content_cert_uuid [optional]
  86. - value type: <string>
  87. - SCP Firmware Content Certificate UUID
  88. - soc_fw_content_cert_uuid [optional]
  89. - value type: <string>
  90. - SOC Firmware Content Certificate UUID
  91. - tos_fw_content_cert_uuid [optional]
  92. - value type: <string>
  93. - TOS Firmware Content Certificate UUID
  94. - nt_fw_content_cert_uuid [optional]
  95. - value type: <string>
  96. - Non-Trusted Firmware Content Certificate UUID
  97. - plat_sp_content_cert_uuid [optional]
  98. - value type: <string>
  99. - Platform Secure Partition Content Certificate UUID
  100. Secure Partitions
  101. -----------------
  102. - compatible [mandatory]
  103. - value type: <string>
  104. - Should be the string ``"<plat>,sp"``, where ``<plat>`` is the name of the
  105. platform (i.e. ``"arm,sp"``).
  106. - uuid [mandatory]
  107. - value type: <string>
  108. - A string identifying the UUID of the service implemented by this partition.
  109. The UUID format is described in RFC 4122.
  110. - load-address [mandatory]
  111. - value type: <u32>
  112. - Physical base address of the partition in memory. Absence of this field
  113. indicates that the partition is position independent and can be loaded at
  114. any address chosen at boot time.
  115. - owner [optional]
  116. - value type: <string>
  117. - A string property representing the name of the owner of the secure
  118. partition, which may be the silicon or platform provider.
  119. --------------
  120. *Copyright (c) 2024, Arm Limited and Contributors. All rights reserved.*