RSS: Update designated initializers for LCM OTP
Instead of having arrays which needs to have their order aligned with
the OTP id values.
Change-Id: I43da2f173cba01fb76bd674f63fbcbfda7ef1f01
Signed-off-by: Raef Coles <raef.coles@arm.com>
diff --git a/platform/ext/target/arm/rss/common/otp_lcm.c b/platform/ext/target/arm/rss/common/otp_lcm.c
index 7e0f6bf..3f6faee 100644
--- a/platform/ext/target/arm/rss/common/otp_lcm.c
+++ b/platform/ext/target/arm/rss/common/otp_lcm.c
@@ -21,8 +21,8 @@
#define USER_AREA_OFFSET(x) (OTP_OFFSET(user_data) + \
offsetof(struct plat_user_area_layout_t, x))
#define USER_AREA_SIZE(x) (sizeof(((struct plat_user_area_layout_t *)0)->x))
-#define IF_IMAGE_ID(macro, x, image_id) \
- image_id < MCUBOOT_IMAGE_NUMBER ? macro(x[image_id]) : 0
+#define IF_BL2_IMAGE_EXISTS_ELSE_0(image_id, expr) \
+ image_id < MCUBOOT_IMAGE_NUMBER ? (expr) : 0
__PACKED_STRUCT plat_user_area_layout_t {
__PACKED_UNION {
@@ -94,133 +94,135 @@
};
static const uint16_t otp_offsets[PLAT_OTP_ID_MAX] = {
- OTP_OFFSET(huk),
- OTP_OFFSET(guk),
- 0,
- USER_AREA_OFFSET(dm_locked.iak_len),
- USER_AREA_OFFSET(dm_locked.iak_type),
- USER_AREA_OFFSET(dm_locked.iak_id),
+ [PLAT_OTP_ID_HUK] = OTP_OFFSET(huk),
+ [PLAT_OTP_ID_GUK] = OTP_OFFSET(guk),
- USER_AREA_OFFSET(dm_locked.implementation_id),
- USER_AREA_OFFSET(dm_locked.verification_service_url),
- USER_AREA_OFFSET(dm_locked.profile_definition),
+ [PLAT_OTP_ID_IAK_LEN] = USER_AREA_OFFSET(dm_locked.iak_len),
+ [PLAT_OTP_ID_IAK_TYPE] = USER_AREA_OFFSET(dm_locked.iak_type),
+ [PLAT_OTP_ID_IAK_ID] = USER_AREA_OFFSET(dm_locked.iak_id),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 0),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 1),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 2),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 3),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 4),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 5),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 6),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 7),
- IF_IMAGE_ID(USER_AREA_OFFSET, dm_locked.bl2_rotpk, 8),
+ [PLAT_OTP_ID_IMPLEMENTATION_ID] = USER_AREA_OFFSET(dm_locked.implementation_id),
+ [PLAT_OTP_ID_VERIFICATION_SERVICE_URL] = USER_AREA_OFFSET(dm_locked.verification_service_url),
+ [PLAT_OTP_ID_PROFILE_DEFINITION] = USER_AREA_OFFSET(dm_locked.profile_definition),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 0),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 1),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 2),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 3),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 4),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 5),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 6),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 7),
- IF_IMAGE_ID(USER_AREA_OFFSET, unlocked_area.bl2_nv_counter, 8),
+ [PLAT_OTP_ID_BL2_ROTPK_0] = IF_BL2_IMAGE_EXISTS_ELSE_0(0, USER_AREA_OFFSET(dm_locked.bl2_rotpk[0])),
+ [PLAT_OTP_ID_BL2_ROTPK_1] = IF_BL2_IMAGE_EXISTS_ELSE_0(1, USER_AREA_OFFSET(dm_locked.bl2_rotpk[1])),
+ [PLAT_OTP_ID_BL2_ROTPK_2] = IF_BL2_IMAGE_EXISTS_ELSE_0(2, USER_AREA_OFFSET(dm_locked.bl2_rotpk[2])),
+ [PLAT_OTP_ID_BL2_ROTPK_3] = IF_BL2_IMAGE_EXISTS_ELSE_0(3, USER_AREA_OFFSET(dm_locked.bl2_rotpk[3])),
+ [PLAT_OTP_ID_BL2_ROTPK_4] = IF_BL2_IMAGE_EXISTS_ELSE_0(4, USER_AREA_OFFSET(dm_locked.bl2_rotpk[4])),
+ [PLAT_OTP_ID_BL2_ROTPK_5] = IF_BL2_IMAGE_EXISTS_ELSE_0(5, USER_AREA_OFFSET(dm_locked.bl2_rotpk[5])),
+ [PLAT_OTP_ID_BL2_ROTPK_6] = IF_BL2_IMAGE_EXISTS_ELSE_0(6, USER_AREA_OFFSET(dm_locked.bl2_rotpk[6])),
+ [PLAT_OTP_ID_BL2_ROTPK_7] = IF_BL2_IMAGE_EXISTS_ELSE_0(7, USER_AREA_OFFSET(dm_locked.bl2_rotpk[7])),
+ [PLAT_OTP_ID_BL2_ROTPK_8] = IF_BL2_IMAGE_EXISTS_ELSE_0(8, USER_AREA_OFFSET(dm_locked.bl2_rotpk[8])),
+
+ [PLAT_OTP_ID_NV_COUNTER_BL2_0] = IF_BL2_IMAGE_EXISTS_ELSE_0(0, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[0])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_1] = IF_BL2_IMAGE_EXISTS_ELSE_0(1, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[1])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_2] = IF_BL2_IMAGE_EXISTS_ELSE_0(2, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[2])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_3] = IF_BL2_IMAGE_EXISTS_ELSE_0(3, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[3])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_4] = IF_BL2_IMAGE_EXISTS_ELSE_0(4, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[4])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_5] = IF_BL2_IMAGE_EXISTS_ELSE_0(5, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[5])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_6] = IF_BL2_IMAGE_EXISTS_ELSE_0(6, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[6])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_7] = IF_BL2_IMAGE_EXISTS_ELSE_0(7, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[7])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_8] = IF_BL2_IMAGE_EXISTS_ELSE_0(8, USER_AREA_OFFSET(unlocked_area.bl2_nv_counter[8])),
#ifdef PLATFORM_HAS_PS_NV_OTP_COUNTERS
- USER_AREA_OFFSET(unlocked_area.ps_nv_counter[0]),
- USER_AREA_OFFSET(unlocked_area.ps_nv_counter[1]),
- USER_AREA_OFFSET(unlocked_area.ps_nv_counter[2]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_0] = USER_AREA_OFFSET(unlocked_area.ps_nv_counter[0]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_1] = USER_AREA_OFFSET(unlocked_area.ps_nv_counter[1]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_2] = USER_AREA_OFFSET(unlocked_area.ps_nv_counter[2]),
#endif /* PLATFORM_HAS_PS_NV_OTP_COUNTERS */
- USER_AREA_OFFSET(unlocked_area.host_nv_counter[0]),
- USER_AREA_OFFSET(unlocked_area.host_nv_counter[1]),
- USER_AREA_OFFSET(unlocked_area.host_nv_counter[2]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_0] = USER_AREA_OFFSET(unlocked_area.host_nv_counter[0]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_1] = USER_AREA_OFFSET(unlocked_area.host_nv_counter[1]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_2] = USER_AREA_OFFSET(unlocked_area.host_nv_counter[2]),
- USER_AREA_OFFSET(dm_locked.bl2_encryption_key),
- USER_AREA_OFFSET(dm_locked.s_image_encryption_key),
- USER_AREA_OFFSET(dm_locked.ns_image_encryption_key),
+ [PLAT_OTP_ID_KEY_BL2_ENCRYPTION] = USER_AREA_OFFSET(dm_locked.bl2_encryption_key),
+ [PLAT_OTP_ID_KEY_SECURE_ENCRYPTION] = USER_AREA_OFFSET(dm_locked.s_image_encryption_key),
+ [PLAT_OTP_ID_KEY_NON_SECURE_ENCRYPTION] = USER_AREA_OFFSET(dm_locked.ns_image_encryption_key),
- USER_AREA_OFFSET(bl1_2_image),
- USER_AREA_OFFSET(cm_locked.bl1_2_image_len),
- OTP_OFFSET(rotpk),
- USER_AREA_OFFSET(dm_locked.bl1_rotpk_0),
+ [PLAT_OTP_ID_BL1_2_IMAGE] = USER_AREA_OFFSET(bl1_2_image),
+ [PLAT_OTP_ID_BL1_2_IMAGE_LEN] = USER_AREA_OFFSET(cm_locked.bl1_2_image_len),
+ [PLAT_OTP_ID_BL1_2_IMAGE_HASH] = OTP_OFFSET(rotpk),
+ [PLAT_OTP_ID_BL1_ROTPK_0] = USER_AREA_OFFSET(dm_locked.bl1_rotpk_0),
- USER_AREA_OFFSET(unlocked_area.bl1_nv_counter),
+ [PLAT_OTP_ID_NV_COUNTER_BL1_0] = USER_AREA_OFFSET(unlocked_area.bl1_nv_counter),
- USER_AREA_OFFSET(dm_locked.secure_debug_pk),
+ [PLAT_OTP_ID_SECURE_DEBUG_PK] = USER_AREA_OFFSET(dm_locked.secure_debug_pk),
- USER_AREA_OFFSET(dm_locked.host_rotpk_s),
- USER_AREA_OFFSET(dm_locked.host_rotpk_ns),
- USER_AREA_OFFSET(dm_locked.host_rotpk_cca),
+ [PLAT_OTP_ID_HOST_ROTPK_S] = USER_AREA_OFFSET(dm_locked.host_rotpk_s),
+ [PLAT_OTP_ID_HOST_ROTPK_NS] = USER_AREA_OFFSET(dm_locked.host_rotpk_ns),
+ [PLAT_OTP_ID_HOST_ROTPK_CCA] = USER_AREA_OFFSET(dm_locked.host_rotpk_cca),
- USER_AREA_OFFSET(cm_locked.cca_system_properties),
+ [PLAT_OTP_ID_CCA_SYSTEM_PROPERTIES] = USER_AREA_OFFSET(cm_locked.cca_system_properties),
- USER_AREA_OFFSET(unlocked_area.reprovisioning_bits),
- USER_AREA_OFFSET(cm_locked.rss_id),
+ [PLAT_OTP_ID_REPROVISIONING_BITS] = USER_AREA_OFFSET(unlocked_area.reprovisioning_bits),
+ [PLAT_OTP_ID_RSS_ID] = USER_AREA_OFFSET(cm_locked.rss_id),
};
static const uint16_t otp_sizes[PLAT_OTP_ID_MAX] = {
- OTP_SIZE(huk),
- OTP_SIZE(guk),
- sizeof(uint32_t),
- USER_AREA_SIZE(dm_locked.iak_len),
- USER_AREA_SIZE(dm_locked.iak_type),
- USER_AREA_SIZE(dm_locked.iak_id),
+ [PLAT_OTP_ID_HUK] = OTP_SIZE(huk),
+ [PLAT_OTP_ID_GUK] = OTP_SIZE(guk),
- USER_AREA_SIZE(dm_locked.implementation_id),
- USER_AREA_SIZE(dm_locked.verification_service_url),
- USER_AREA_SIZE(dm_locked.profile_definition),
+ [PLAT_OTP_ID_LCS] = sizeof(uint32_t),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 0),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 1),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 2),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 3),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 4),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 5),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 6),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 7),
- IF_IMAGE_ID(USER_AREA_SIZE, dm_locked.bl2_rotpk, 8),
+ [PLAT_OTP_ID_IAK_LEN] = USER_AREA_SIZE(dm_locked.iak_len),
+ [PLAT_OTP_ID_IAK_TYPE] = USER_AREA_SIZE(dm_locked.iak_type),
+ [PLAT_OTP_ID_IAK_ID] = USER_AREA_SIZE(dm_locked.iak_id),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 0),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 1),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 2),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 3),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 4),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 5),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 6),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 7),
- IF_IMAGE_ID(USER_AREA_SIZE, unlocked_area.bl2_nv_counter, 8),
+ [PLAT_OTP_ID_IMPLEMENTATION_ID] = USER_AREA_SIZE(dm_locked.implementation_id),
+ [PLAT_OTP_ID_VERIFICATION_SERVICE_URL] = USER_AREA_SIZE(dm_locked.verification_service_url),
+ [PLAT_OTP_ID_PROFILE_DEFINITION] = USER_AREA_SIZE(dm_locked.profile_definition),
+
+ [PLAT_OTP_ID_BL2_ROTPK_0] = IF_BL2_IMAGE_EXISTS_ELSE_0(0, USER_AREA_SIZE(dm_locked.bl2_rotpk[0])),
+ [PLAT_OTP_ID_BL2_ROTPK_1] = IF_BL2_IMAGE_EXISTS_ELSE_0(1, USER_AREA_SIZE(dm_locked.bl2_rotpk[1])),
+ [PLAT_OTP_ID_BL2_ROTPK_2] = IF_BL2_IMAGE_EXISTS_ELSE_0(2, USER_AREA_SIZE(dm_locked.bl2_rotpk[2])),
+ [PLAT_OTP_ID_BL2_ROTPK_3] = IF_BL2_IMAGE_EXISTS_ELSE_0(3, USER_AREA_SIZE(dm_locked.bl2_rotpk[3])),
+ [PLAT_OTP_ID_BL2_ROTPK_4] = IF_BL2_IMAGE_EXISTS_ELSE_0(4, USER_AREA_SIZE(dm_locked.bl2_rotpk[4])),
+ [PLAT_OTP_ID_BL2_ROTPK_5] = IF_BL2_IMAGE_EXISTS_ELSE_0(5, USER_AREA_SIZE(dm_locked.bl2_rotpk[5])),
+ [PLAT_OTP_ID_BL2_ROTPK_6] = IF_BL2_IMAGE_EXISTS_ELSE_0(6, USER_AREA_SIZE(dm_locked.bl2_rotpk[6])),
+ [PLAT_OTP_ID_BL2_ROTPK_7] = IF_BL2_IMAGE_EXISTS_ELSE_0(7, USER_AREA_SIZE(dm_locked.bl2_rotpk[7])),
+ [PLAT_OTP_ID_BL2_ROTPK_8] = IF_BL2_IMAGE_EXISTS_ELSE_0(8, USER_AREA_SIZE(dm_locked.bl2_rotpk[8])),
+
+ [PLAT_OTP_ID_NV_COUNTER_BL2_0] = IF_BL2_IMAGE_EXISTS_ELSE_0(0, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[0])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_1] = IF_BL2_IMAGE_EXISTS_ELSE_0(1, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[1])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_2] = IF_BL2_IMAGE_EXISTS_ELSE_0(2, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[2])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_3] = IF_BL2_IMAGE_EXISTS_ELSE_0(3, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[3])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_4] = IF_BL2_IMAGE_EXISTS_ELSE_0(4, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[4])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_5] = IF_BL2_IMAGE_EXISTS_ELSE_0(5, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[5])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_6] = IF_BL2_IMAGE_EXISTS_ELSE_0(6, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[6])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_7] = IF_BL2_IMAGE_EXISTS_ELSE_0(7, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[7])),
+ [PLAT_OTP_ID_NV_COUNTER_BL2_8] = IF_BL2_IMAGE_EXISTS_ELSE_0(8, USER_AREA_SIZE(unlocked_area.bl2_nv_counter[8])),
#ifdef PLATFORM_HAS_PS_NV_OTP_COUNTERS
- USER_AREA_SIZE(unlocked_area.ps_nv_counter[0]),
- USER_AREA_SIZE(unlocked_area.ps_nv_counter[1]),
- USER_AREA_SIZE(unlocked_area.ps_nv_counter[2]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_0] = USER_AREA_SIZE(unlocked_area.ps_nv_counter[0]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_1] = USER_AREA_SIZE(unlocked_area.ps_nv_counter[1]),
+ [PLAT_OTP_ID_NV_COUNTER_PS_2] = USER_AREA_SIZE(unlocked_area.ps_nv_counter[2]),
#endif /* PLATFORM_HAS_PS_NV_OTP_COUNTERS */
- USER_AREA_SIZE(unlocked_area.host_nv_counter[0]),
- USER_AREA_SIZE(unlocked_area.host_nv_counter[1]),
- USER_AREA_SIZE(unlocked_area.host_nv_counter[2]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_0] = USER_AREA_SIZE(unlocked_area.host_nv_counter[0]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_1] = USER_AREA_SIZE(unlocked_area.host_nv_counter[1]),
+ [PLAT_OTP_ID_NV_COUNTER_NS_2] = USER_AREA_SIZE(unlocked_area.host_nv_counter[2]),
- USER_AREA_SIZE(dm_locked.bl2_encryption_key),
- USER_AREA_SIZE(dm_locked.s_image_encryption_key),
- USER_AREA_SIZE(dm_locked.ns_image_encryption_key),
+ [PLAT_OTP_ID_KEY_BL2_ENCRYPTION] = USER_AREA_SIZE(dm_locked.bl2_encryption_key),
+ [PLAT_OTP_ID_KEY_SECURE_ENCRYPTION] = USER_AREA_SIZE(dm_locked.s_image_encryption_key),
+ [PLAT_OTP_ID_KEY_NON_SECURE_ENCRYPTION] = USER_AREA_SIZE(dm_locked.ns_image_encryption_key),
- USER_AREA_SIZE(bl1_2_image),
- USER_AREA_SIZE(cm_locked.bl1_2_image_len),
- OTP_SIZE(rotpk),
- USER_AREA_SIZE(dm_locked.bl1_rotpk_0),
+ [PLAT_OTP_ID_BL1_2_IMAGE] = USER_AREA_SIZE(bl1_2_image),
+ [PLAT_OTP_ID_BL1_2_IMAGE_LEN] = USER_AREA_SIZE(cm_locked.bl1_2_image_len),
+ [PLAT_OTP_ID_BL1_2_IMAGE_HASH] = OTP_SIZE(rotpk),
+ [PLAT_OTP_ID_BL1_ROTPK_0] = USER_AREA_SIZE(dm_locked.bl1_rotpk_0),
- USER_AREA_SIZE(unlocked_area.bl1_nv_counter),
+ [PLAT_OTP_ID_NV_COUNTER_BL1_0] = USER_AREA_SIZE(unlocked_area.bl1_nv_counter),
- USER_AREA_SIZE(dm_locked.secure_debug_pk),
+ [PLAT_OTP_ID_SECURE_DEBUG_PK] = USER_AREA_SIZE(dm_locked.secure_debug_pk),
- USER_AREA_SIZE(dm_locked.host_rotpk_s),
- USER_AREA_SIZE(dm_locked.host_rotpk_ns),
- USER_AREA_SIZE(dm_locked.host_rotpk_cca),
+ [PLAT_OTP_ID_HOST_ROTPK_S] = USER_AREA_SIZE(dm_locked.host_rotpk_s),
+ [PLAT_OTP_ID_HOST_ROTPK_NS] = USER_AREA_SIZE(dm_locked.host_rotpk_ns),
+ [PLAT_OTP_ID_HOST_ROTPK_CCA] = USER_AREA_SIZE(dm_locked.host_rotpk_cca),
- USER_AREA_SIZE(cm_locked.cca_system_properties),
+ [PLAT_OTP_ID_CCA_SYSTEM_PROPERTIES] = USER_AREA_SIZE(cm_locked.cca_system_properties),
- USER_AREA_SIZE(unlocked_area.reprovisioning_bits),
- USER_AREA_SIZE(cm_locked.rss_id),
+ [PLAT_OTP_ID_REPROVISIONING_BITS] = USER_AREA_SIZE(unlocked_area.reprovisioning_bits),
+ [PLAT_OTP_ID_RSS_ID] = USER_AREA_SIZE(cm_locked.rss_id),
};
static uint32_t count_buffer_zero_bits(const uint8_t* buf, size_t size)