cot.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /*
  2. * Copyright (c) 2020, Arm Limited. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #ifndef DUALROOT_COT_H
  7. #define DUALROOT_COT_H
  8. /* Certificates. */
  9. enum {
  10. /* Certificates owned by the silicon provider. */
  11. TRUSTED_BOOT_FW_CERT,
  12. TRUSTED_KEY_CERT,
  13. SCP_FW_KEY_CERT,
  14. SCP_FW_CONTENT_CERT,
  15. SOC_FW_KEY_CERT,
  16. SOC_FW_CONTENT_CERT,
  17. TRUSTED_OS_FW_KEY_CERT,
  18. TRUSTED_OS_FW_CONTENT_CERT,
  19. SIP_SECURE_PARTITION_CONTENT_CERT,
  20. FWU_CERT,
  21. /* Certificates owned by the platform owner. */
  22. NON_TRUSTED_FW_CONTENT_CERT,
  23. PLAT_SECURE_PARTITION_CONTENT_CERT,
  24. };
  25. /* Certificate extensions. */
  26. enum {
  27. /* Extensions used in certificates owned by the silicon provider. */
  28. TRUSTED_FW_NVCOUNTER_EXT,
  29. TRUSTED_BOOT_FW_HASH_EXT,
  30. TRUSTED_BOOT_FW_CONFIG_HASH_EXT,
  31. HW_CONFIG_HASH_EXT,
  32. FW_CONFIG_HASH_EXT,
  33. TRUSTED_WORLD_PK_EXT,
  34. SCP_FW_CONTENT_CERT_PK_EXT,
  35. SCP_FW_HASH_EXT,
  36. SOC_FW_CONTENT_CERT_PK_EXT,
  37. SOC_AP_FW_HASH_EXT,
  38. SOC_FW_CONFIG_HASH_EXT,
  39. TRUSTED_OS_FW_CONTENT_CERT_PK_EXT,
  40. TRUSTED_OS_FW_HASH_EXT,
  41. TRUSTED_OS_FW_EXTRA1_HASH_EXT,
  42. TRUSTED_OS_FW_EXTRA2_HASH_EXT,
  43. TRUSTED_OS_FW_CONFIG_HASH_EXT,
  44. SP_PKG1_HASH_EXT,
  45. SP_PKG2_HASH_EXT,
  46. SP_PKG3_HASH_EXT,
  47. SP_PKG4_HASH_EXT,
  48. SP_PKG5_HASH_EXT,
  49. SP_PKG6_HASH_EXT,
  50. SP_PKG7_HASH_EXT,
  51. SP_PKG8_HASH_EXT,
  52. SCP_FWU_CFG_HASH_EXT,
  53. AP_FWU_CFG_HASH_EXT,
  54. FWU_HASH_EXT,
  55. /* Extensions used in certificates owned by the platform owner. */
  56. PROT_PK_EXT,
  57. NON_TRUSTED_FW_NVCOUNTER_EXT,
  58. NON_TRUSTED_FW_CONTENT_CERT_PK_EXT,
  59. NON_TRUSTED_WORLD_BOOTLOADER_HASH_EXT,
  60. NON_TRUSTED_FW_CONFIG_HASH_EXT,
  61. };
  62. /* Keys. */
  63. enum {
  64. /* Keys owned by the silicon provider. */
  65. ROT_KEY,
  66. TRUSTED_WORLD_KEY,
  67. SCP_FW_CONTENT_CERT_KEY,
  68. SOC_FW_CONTENT_CERT_KEY,
  69. TRUSTED_OS_FW_CONTENT_CERT_KEY,
  70. /* Keys owned by the platform owner. */
  71. PROT_KEY,
  72. };
  73. #endif /* DUALROOT_COT_H */