4 #ifndef OPENTITAN_SW_DEVICE_LIB_DIF_DIF_OTP_CTRL_H_
5 #define OPENTITAN_SW_DEVICE_LIB_DIF_DIF_OTP_CTRL_H_
19 #include "sw/device/lib/dif/autogen/dif_otp_ctrl_autogen.h"
55 #if defined(OPENTITAN_IS_EARLGREY)
64 kDifOtpCtrlPartitionRotCreatorAuthCodesign,
81 kDifOtpCtrlPartitionRotCreatorAuthState,
82 #elif defined(OPENTITAN_IS_DARJEELING)
106 kDifOtpCtrlPartitionOwnershipSlotState,
111 kDifOtpCtrlPartitionRotCreatorAuth,
116 kDifOtpCtrlPartitionRotOwnerAuthSlot0,
121 kDifOtpCtrlPartitionRotOwnerAuthSlot1,
126 kDifOtpCtrlPartitionPlatIntegAuthSlot0,
131 kDifOtpCtrlPartitionPlatIntegAuthSlot1,
136 kDifOtpCtrlPartitionPlatOwnerAuthSlot0,
141 kDifOtpCtrlPartitionPlatOwnerAuthSlot1,
146 kDifOtpCtrlPartitionPlatOwnerAuthSlot2,
151 kDifOtpCtrlPartitionPlatOwnerAuthSlot3,
156 kDifOtpCtrlPartitionExtNvm,
162 kDifOtpCtrlPartitionRomPatch,
164 #error "dif_otp_ctrl does not support this top"
196 #if defined(OPENTITAN_IS_DARJEELING)
202 kDifOtpCtrlPartitionSecret3,
203 #elif defined(OPENTITAN_IS_EARLGREY)
206 #error "dif_otp_ctrl does not support this top"
282 #if defined(OPENTITAN_IS_EARLGREY)
286 kDifOtpCtrlStatusCodeRotCreatorAuthCodesignError,
290 kDifOtpCtrlStatusCodeRotCreatorAuthStateError,
291 #elif defined(OPENTITAN_IS_DARJEELING)
295 kDifOtpCtrlStatusCodeOwnershipSlotStateError,
299 kDifOtpCtrlStatusCodeRotCreatorAuthError,
303 kDifOtpCtrlStatusCodeRotOwnerAuthSlot0Error,
307 kDifOtpCtrlStatusCodeRotOwnerAuthSlot1Error,
311 kDifOtpCtrlStatusCodePlatIntegAuthSlot0Error,
315 kDifOtpCtrlStatusCodePlatIntegAuthSlot1Error,
319 kDifOtpCtrlStatusCodePlatOwnerAuthSlot0Error,
323 kDifOtpCtrlStatusCodePlatOwnerAuthSlot1Error,
327 kDifOtpCtrlStatusCodePlatOwnerAuthSlot2Error,
331 kDifOtpCtrlStatusCodePlatOwnerAuthSlot3Error,
335 kDifOtpCtrlStatusCodeExtNvmError,
339 kDifOtpCtrlStatusCodeRomPatchError,
341 #error "dif_otp_ctrl does not support this top"
363 #if defined(OPENTITAN_IS_DARJEELING)
367 kDifOtpCtrlStatusCodeSecret3Error,
368 #elif defined(OPENTITAN_IS_EARLGREY)
371 #error "dif_otp_ctrl does not support this top"
687 uint32_t abs_address,
688 uint32_t *relative_address);
763 uint32_t address, uint32_t value);
784 uint32_t address, uint64_t value);
869 uint32_t address, uint32_t *buf,