[sw/silicon_creator] Remove dedicated OTBN error type.

Replace otbn_error_t with a few new cases in rom_error_t.

Signed-off-by: Jade Philipoom <jadep@google.com>
diff --git a/sw/device/silicon_creator/lib/drivers/otbn.c b/sw/device/silicon_creator/lib/drivers/otbn.c
index c2aae71..908894c 100644
--- a/sw/device/silicon_creator/lib/drivers/otbn.c
+++ b/sw/device/silicon_creator/lib/drivers/otbn.c
@@ -47,14 +47,14 @@
 /**
  * Ensures that `offset_bytes` and `len` are valid for a given `mem_size`.
  */
-static otbn_error_t check_offset_len(uint32_t offset_bytes, size_t num_words,
-                                     size_t mem_size) {
+static rom_error_t check_offset_len(uint32_t offset_bytes, size_t num_words,
+                                    size_t mem_size) {
   if (offset_bytes + num_words * sizeof(uint32_t) <
           num_words * sizeof(uint32_t) ||
       offset_bytes + num_words * sizeof(uint32_t) > mem_size) {
-    return kOtbnErrorBadOffsetLen;
+    return kErrorOtbnBadOffsetLen;
   }
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
 void otbn_execute(void) {
@@ -70,9 +70,9 @@
   *err_bits = abs_mmio_read32(kBase + OTBN_ERR_BITS_REG_OFFSET);
 }
 
-otbn_error_t otbn_imem_write(uint32_t offset_bytes, const uint32_t *src,
-                             size_t num_words) {
-  OTBN_RETURN_IF_ERROR(
+rom_error_t otbn_imem_write(uint32_t offset_bytes, const uint32_t *src,
+                            size_t num_words) {
+  RETURN_IF_ERROR(
       check_offset_len(offset_bytes, num_words, kOtbnIMemSizeBytes));
 
   for (size_t i = 0; i < num_words; ++i) {
@@ -81,12 +81,12 @@
         src[i]);
   }
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
-otbn_error_t otbn_dmem_write(uint32_t offset_bytes, const uint32_t *src,
-                             size_t num_words) {
-  OTBN_RETURN_IF_ERROR(
+rom_error_t otbn_dmem_write(uint32_t offset_bytes, const uint32_t *src,
+                            size_t num_words) {
+  RETURN_IF_ERROR(
       check_offset_len(offset_bytes, num_words, kOtbnDMemSizeBytes));
 
   for (size_t i = 0; i < num_words; ++i) {
@@ -95,12 +95,12 @@
         src[i]);
   }
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
-otbn_error_t otbn_dmem_read(uint32_t offset_bytes, uint32_t *dest,
-                            size_t num_words) {
-  OTBN_RETURN_IF_ERROR(
+rom_error_t otbn_dmem_read(uint32_t offset_bytes, uint32_t *dest,
+                           size_t num_words) {
+  RETURN_IF_ERROR(
       check_offset_len(offset_bytes, num_words, kOtbnDMemSizeBytes));
 
   for (size_t i = 0; i < num_words; ++i) {
@@ -108,7 +108,7 @@
                               i * sizeof(uint32_t));
   }
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
 void otbn_zero_dmem(void) {
@@ -117,7 +117,7 @@
   }
 }
 
-otbn_error_t otbn_set_ctrl_software_errs_fatal(bool enable) {
+rom_error_t otbn_set_ctrl_software_errs_fatal(bool enable) {
   // Only one bit in the CTRL register so no need to read current value.
   uint32_t new_ctrl;
 
@@ -129,8 +129,8 @@
 
   abs_mmio_write32(kBase + OTBN_CTRL_REG_OFFSET, new_ctrl);
   if (abs_mmio_read32(kBase + OTBN_CTRL_REG_OFFSET) != new_ctrl) {
-    return kOtbnErrorUnavailable;
+    return kErrorOtbnUnavailable;
   }
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
diff --git a/sw/device/silicon_creator/lib/drivers/otbn.h b/sw/device/silicon_creator/lib/drivers/otbn.h
index 46b7d53..a4cb2c3 100644
--- a/sw/device/silicon_creator/lib/drivers/otbn.h
+++ b/sw/device/silicon_creator/lib/drivers/otbn.h
@@ -9,6 +9,8 @@
 #include <stddef.h>
 #include <stdint.h>
 
+#include "sw/device/silicon_creator/lib/error.h"
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -44,35 +46,6 @@
 } otbn_status_t;
 
 /**
- * Error codes for the OTBN driver.
- */
-typedef enum otbn_error_t {
-  /** No errors. */
-  kOtbnErrorOk = 0,
-  /** Invalid argument provided to OTBN interface function. */
-  kOtbnErrorInvalidArgument = 1,
-  /** Invalid offset provided. */
-  kOtbnErrorBadOffsetLen = 2,
-  /** OTBN internal error; use otbn_get_err_bits for specific error codes. */
-  kOtbnErrorExecutionFailed = 3,
-  /** Attempt to interact with OTBN while it was unavailable. */
-  kOtbnErrorUnavailable = 4,
-} otbn_error_t;
-
-/**
- * Evaluate an expression and return if the result is an error.
- *
- * @param expr_ An expression which results in an otbn_error_t.
- */
-#define OTBN_RETURN_IF_ERROR(expr_)     \
-  do {                                  \
-    otbn_error_t local_error_ = expr_;  \
-    if (local_error_ != kOtbnErrorOk) { \
-      return local_error_;              \
-    }                                   \
-  } while (0)
-
-/**
  * Start the execution of the application loaded into OTBN.
  */
 void otbn_execute(void);
@@ -136,11 +109,11 @@
  * @param offset_bytes the byte offset in IMEM the first word is written to
  * @param src the main memory location to start reading from.
  * @param len number of words to copy.
- * @return `kOtbnErrorBadOffset` if `offset_bytes` isn't word aligned,
- * `kOtbnErrorBadOffsetLen` if `len` is invalid , `kOtbnErrorOk` otherwise.
+ * @return `kErrorOtbnBadOffset` if `offset_bytes` isn't word aligned,
+ * `kErrorOtbnBadOffsetLen` if `len` is invalid , `kErrorOk` otherwise.
  */
-otbn_error_t otbn_imem_write(uint32_t offset_bytes, const uint32_t *src,
-                             size_t len);
+rom_error_t otbn_imem_write(uint32_t offset_bytes, const uint32_t *src,
+                            size_t len);
 
 /**
  * Write to OTBN's data memory (DMEM)
@@ -150,11 +123,11 @@
  * @param offset_bytes the byte offset in DMEM the first word is written to
  * @param src the main memory location to start reading from.
  * @param len number of words to copy.
- * @return `kOtbnErrorBadOffset` if `offset_bytes` isn't word aligned,
- * `kOtbnErrorBadOffsetLen` if `len` is invalid , `kOtbnErrorOk` otherwise.
+ * @return `kErrorOtbnBadOffset` if `offset_bytes` isn't word aligned,
+ * `kErrorOtbnBadOffsetLen` if `len` is invalid , `kErrorOk` otherwise.
  */
-otbn_error_t otbn_dmem_write(uint32_t offset_bytes, const uint32_t *src,
-                             size_t len);
+rom_error_t otbn_dmem_write(uint32_t offset_bytes, const uint32_t *src,
+                            size_t len);
 
 /**
  * Read from OTBN's data memory (DMEM)
@@ -164,10 +137,10 @@
  * @param offset_bytes the byte offset in DMEM the first word is read from
  * @param[out] dest the main memory location to copy the data to (preallocated)
  * @param len number of words to copy.
- * @return `kOtbnErrorBadOffset` if `offset_bytes` isn't word aligned,
- * `kOtbnErrorBadOffsetLen` if `len` is invalid , `kOtbnErrorOk` otherwise.
+ * @return `kErrorOtbnBadOffset` if `offset_bytes` isn't word aligned,
+ * `kErrorOtbnBadOffsetLen` if `len` is invalid , `kErrorOk` otherwise.
  */
-otbn_error_t otbn_dmem_read(uint32_t offset_bytes, uint32_t *dest, size_t len);
+rom_error_t otbn_dmem_read(uint32_t offset_bytes, uint32_t *dest, size_t len);
 
 /**
  * Zero out the contents of OTBN's data memory (DMEM).
@@ -181,10 +154,10 @@
  * changed when the OTBN status is IDLE.
  *
  * @param enable Enable or disable whether software errors are fatal.
- * @return `kOtbnErrorUnavailable` if the requested change cannot be made or
- * `kOtbnErrorOk` otherwise.
+ * @return `kErrorOtbnUnavailable` if the requested change cannot be made or
+ * `kErrorOk` otherwise.
  */
-otbn_error_t otbn_set_ctrl_software_errs_fatal(bool enable);
+rom_error_t otbn_set_ctrl_software_errs_fatal(bool enable);
 
 #ifdef __cplusplus
 }
diff --git a/sw/device/silicon_creator/lib/drivers/otbn_unittest.cc b/sw/device/silicon_creator/lib/drivers/otbn_unittest.cc
index 25165a0..8b11735 100644
--- a/sw/device/silicon_creator/lib/drivers/otbn_unittest.cc
+++ b/sw/device/silicon_creator/lib/drivers/otbn_unittest.cc
@@ -60,14 +60,14 @@
   std::array<uint32_t, 2> test_data = {0};
 
   EXPECT_EQ(otbn_imem_write(OTBN_IMEM_SIZE_BYTES, test_data.data(), 1),
-            kOtbnErrorBadOffsetLen);
+            kErrorOtbnBadOffsetLen);
 }
 
 TEST_F(ImemWriteTest, BadAddressIntegerOverflow) {
   std::array<uint32_t, 4> test_data = {0};
 
   EXPECT_EQ(otbn_imem_write(0xFFFFFFFC, test_data.data(), 1),
-            kOtbnErrorBadOffsetLen);
+            kErrorOtbnBadOffsetLen);
 }
 
 TEST_F(ImemWriteTest, SuccessWithoutOffset) {
@@ -79,7 +79,7 @@
   EXPECT_ABS_WRITE32(base_ + OTBN_IMEM_REG_OFFSET, test_data[0]);
   EXPECT_ABS_WRITE32(base_ + OTBN_IMEM_REG_OFFSET + 4, test_data[1]);
 
-  EXPECT_EQ(otbn_imem_write(0, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_imem_write(0, test_data.data(), 2), kErrorOk);
 }
 
 TEST_F(ImemWriteTest, SuccessWithOffset) {
@@ -91,7 +91,7 @@
   EXPECT_ABS_WRITE32(base_ + OTBN_IMEM_REG_OFFSET + 4, test_data[0]);
   EXPECT_ABS_WRITE32(base_ + OTBN_IMEM_REG_OFFSET + 8, test_data[1]);
 
-  EXPECT_EQ(otbn_imem_write(4, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_imem_write(4, test_data.data(), 2), kErrorOk);
 }
 
 class DmemWriteTest : public OtbnTest {};
@@ -105,7 +105,7 @@
   EXPECT_ABS_WRITE32(base_ + OTBN_DMEM_REG_OFFSET, test_data[0]);
   EXPECT_ABS_WRITE32(base_ + OTBN_DMEM_REG_OFFSET + 4, test_data[1]);
 
-  EXPECT_EQ(otbn_dmem_write(0, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_dmem_write(0, test_data.data(), 2), kErrorOk);
 }
 
 TEST_F(DmemWriteTest, SuccessWithOffset) {
@@ -117,7 +117,7 @@
   EXPECT_ABS_WRITE32(base_ + OTBN_DMEM_REG_OFFSET + 4, test_data[0]);
   EXPECT_ABS_WRITE32(base_ + OTBN_DMEM_REG_OFFSET + 8, test_data[1]);
 
-  EXPECT_EQ(otbn_dmem_write(4, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_dmem_write(4, test_data.data(), 2), kErrorOk);
 }
 
 class DmemReadTest : public OtbnTest {};
@@ -132,7 +132,7 @@
 
   std::array<uint32_t, 2> test_data = {0};
 
-  EXPECT_EQ(otbn_dmem_read(0, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_dmem_read(0, test_data.data(), 2), kErrorOk);
   EXPECT_THAT(test_data, ElementsAre(0x12345678, 0xabcdef01));
 }
 
@@ -145,7 +145,7 @@
 
   std::array<uint32_t, 2> test_data = {0};
 
-  EXPECT_EQ(otbn_dmem_read(4, test_data.data(), 2), kOtbnErrorOk);
+  EXPECT_EQ(otbn_dmem_read(4, test_data.data(), 2), kErrorOk);
   EXPECT_THAT(test_data, ElementsAre(0x12345678, 0xabcdef01));
 }
 
@@ -155,14 +155,14 @@
   EXPECT_ABS_WRITE32(base_ + OTBN_CTRL_REG_OFFSET, 0x1);
   EXPECT_ABS_READ32(base_ + OTBN_CTRL_REG_OFFSET, 0x1);
 
-  EXPECT_EQ(otbn_set_ctrl_software_errs_fatal(true), kOtbnErrorOk);
+  EXPECT_EQ(otbn_set_ctrl_software_errs_fatal(true), kErrorOk);
 }  // namespace
 
 TEST_F(ControlSoftwareErrorsFatalTest, Failure) {
   EXPECT_ABS_WRITE32(base_ + OTBN_CTRL_REG_OFFSET, 0x0);
   EXPECT_ABS_READ32(base_ + OTBN_CTRL_REG_OFFSET, 0x1);
 
-  EXPECT_EQ(otbn_set_ctrl_software_errs_fatal(false), kOtbnErrorUnavailable);
+  EXPECT_EQ(otbn_set_ctrl_software_errs_fatal(false), kErrorOtbnUnavailable);
 }
 
 }  // namespace
diff --git a/sw/device/silicon_creator/lib/error.h b/sw/device/silicon_creator/lib/error.h
index 5213bd0..7c61843 100644
--- a/sw/device/silicon_creator/lib/error.h
+++ b/sw/device/silicon_creator/lib/error.h
@@ -91,7 +91,10 @@
   X(kErrorInterrupt,                  ERROR_(0, kModuleInterrupt, kUnknown)), \
   X(kErrorEpmpBadCheck,               ERROR_(1, kModuleEpmp, kInternal)), \
   X(kErrorOtpBadAlignment,            ERROR_(1, kModuleOtp, kInvalidArgument)), \
-  X(kErrorOtbnInternal,               ERROR_(1, kModuleOtbn, kInternal)), \
+  X(kErrorOtbnInvalidArgument,        ERROR_(1, kModuleOtbn, kInvalidArgument)), \
+  X(kErrorOtbnBadOffsetLen,           ERROR_(2, kModuleOtbn, kInvalidArgument)), \
+  X(kErrorOtbnExecutionFailed,        ERROR_(3, kModuleOtbn, kInternal)), \
+  X(kErrorOtbnUnavailable,            ERROR_(4, kModuleOtbn, kInternal)), \
   X(kErrorFlashCtrlDataRead,          ERROR_(1, kModuleFlashCtrl, kInternal)), \
   X(kErrorFlashCtrlInfoRead,          ERROR_(2, kModuleFlashCtrl, kInternal)), \
   X(kErrorFlashCtrlDataWrite,         ERROR_(3, kModuleFlashCtrl, kInternal)), \
diff --git a/sw/device/silicon_creator/lib/otbn_util.c b/sw/device/silicon_creator/lib/otbn_util.c
index 4970228..2751ee9 100644
--- a/sw/device/silicon_creator/lib/otbn_util.c
+++ b/sw/device/silicon_creator/lib/otbn_util.c
@@ -22,7 +22,7 @@
   };
 }
 
-otbn_error_t otbn_busy_wait_for_done(otbn_t *ctx) {
+rom_error_t otbn_busy_wait_for_done(otbn_t *ctx) {
   while (otbn_is_busy()) {
   }
 
@@ -30,9 +30,9 @@
   otbn_get_err_bits(&err_bits);
   if (err_bits != kOtbnErrBitsNoError) {
     ctx->error_bits = err_bits;
-    return kOtbnErrorExecutionFailed;
+    return kErrorOtbnExecutionFailed;
   }
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
 /**
@@ -58,9 +58,9 @@
   return true;
 }
 
-otbn_error_t otbn_load_app(otbn_t *ctx, const otbn_app_t app) {
+rom_error_t otbn_load_app(otbn_t *ctx, const otbn_app_t app) {
   if (!check_app_address_ranges(&app)) {
-    return kOtbnErrorInvalidArgument;
+    return kErrorOtbnInvalidArgument;
   }
 
   const size_t imem_num_words = app.imem_end - app.imem_start;
@@ -68,38 +68,37 @@
 
   ctx->app_is_loaded = false;
 
-  OTBN_RETURN_IF_ERROR(otbn_imem_write(0, app.imem_start, imem_num_words));
+  RETURN_IF_ERROR(otbn_imem_write(0, app.imem_start, imem_num_words));
 
   otbn_zero_dmem();
   if (data_num_words > 0) {
-    OTBN_RETURN_IF_ERROR(
-        otbn_dmem_write(0, app.dmem_data_start, data_num_words));
+    RETURN_IF_ERROR(otbn_dmem_write(0, app.dmem_data_start, data_num_words));
   }
 
   ctx->app = app;
   ctx->app_is_loaded = true;
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
-otbn_error_t otbn_execute_app(otbn_t *ctx) {
+rom_error_t otbn_execute_app(otbn_t *ctx) {
   if (!ctx->app_is_loaded) {
-    return kOtbnErrorInvalidArgument;
+    return kErrorOtbnInvalidArgument;
   }
 
   otbn_execute();
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
-otbn_error_t otbn_copy_data_to_otbn(otbn_t *ctx, size_t len,
-                                    const uint32_t *src, otbn_addr_t dest) {
-  OTBN_RETURN_IF_ERROR(otbn_dmem_write(dest, src, len));
+rom_error_t otbn_copy_data_to_otbn(otbn_t *ctx, size_t len, const uint32_t *src,
+                                   otbn_addr_t dest) {
+  RETURN_IF_ERROR(otbn_dmem_write(dest, src, len));
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
-otbn_error_t otbn_copy_data_from_otbn(otbn_t *ctx, size_t len_bytes,
-                                      otbn_addr_t src, uint32_t *dest) {
-  OTBN_RETURN_IF_ERROR(otbn_dmem_read(src, dest, len_bytes));
+rom_error_t otbn_copy_data_from_otbn(otbn_t *ctx, size_t len_bytes,
+                                     otbn_addr_t src, uint32_t *dest) {
+  RETURN_IF_ERROR(otbn_dmem_read(src, dest, len_bytes));
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
diff --git a/sw/device/silicon_creator/lib/otbn_util.h b/sw/device/silicon_creator/lib/otbn_util.h
index e9f027a..c56a7fd 100644
--- a/sw/device/silicon_creator/lib/otbn_util.h
+++ b/sw/device/silicon_creator/lib/otbn_util.h
@@ -195,7 +195,7 @@
  * @param app The application to load into OTBN.
  * @return The result of the operation.
  */
-otbn_error_t otbn_load_app(otbn_t *ctx, const otbn_app_t app);
+rom_error_t otbn_load_app(otbn_t *ctx, const otbn_app_t app);
 
 /**
  * Start the OTBN application.
@@ -205,7 +205,7 @@
  * @param ctx The context object.
  * @return The result of the operation.
  */
-otbn_error_t otbn_execute_app(otbn_t *ctx);
+rom_error_t otbn_execute_app(otbn_t *ctx);
 
 /**
  * Busy waits for OTBN to be done with its operation.
@@ -213,7 +213,7 @@
  * @param ctx The context object.
  * @return The result of the operation.
  */
-otbn_error_t otbn_busy_wait_for_done(otbn_t *ctx);
+rom_error_t otbn_busy_wait_for_done(otbn_t *ctx);
 
 /**
  * Copies data from the CPU memory to OTBN data memory.
@@ -224,8 +224,8 @@
  * @param src Source of the data to copy.
  * @return The result of the operation.
  */
-otbn_error_t otbn_copy_data_to_otbn(otbn_t *ctx, size_t len,
-                                    const uint32_t *src, otbn_addr_t dest);
+rom_error_t otbn_copy_data_to_otbn(otbn_t *ctx, size_t len, const uint32_t *src,
+                                   otbn_addr_t dest);
 
 /**
  * Copies data from OTBN's data memory to CPU memory.
@@ -237,22 +237,8 @@
  *                  (preallocated).
  * @return The result of the operation.
  */
-otbn_error_t otbn_copy_data_from_otbn(otbn_t *ctx, size_t len,
-                                      const otbn_addr_t src, uint32_t *dest);
-
-/**
- * Evaluate an expression and return a mask ROM error if the result is an
- * OTBN error.
- *
- * @param expr_ An expression which results in an otbn_error_t.
- */
-#define FOLD_OTBN_ERROR(expr_)          \
-  do {                                  \
-    otbn_error_t local_error_ = expr_;  \
-    if (local_error_ != kOtbnErrorOk) { \
-      return kErrorOtbnInternal;        \
-    }                                   \
-  } while (0)
+rom_error_t otbn_copy_data_from_otbn(otbn_t *ctx, size_t len,
+                                     const otbn_addr_t src, uint32_t *dest);
 
 #ifdef __cplusplus
 }
diff --git a/sw/device/silicon_creator/lib/sigverify_mod_exp_otbn.c b/sw/device/silicon_creator/lib/sigverify_mod_exp_otbn.c
index 40ae288..64816e9 100644
--- a/sw/device/silicon_creator/lib/sigverify_mod_exp_otbn.c
+++ b/sw/device/silicon_creator/lib/sigverify_mod_exp_otbn.c
@@ -4,7 +4,6 @@
 
 #include "sw/device/lib/base/macros.h"
 #include "sw/device/lib/base/memory.h"
-
 #include "sw/device/silicon_creator/lib/drivers/otbn.h"
 #include "sw/device/silicon_creator/lib/error.h"
 #include "sw/device/silicon_creator/lib/otbn_util.h"
@@ -47,8 +46,9 @@
  * @param dst Address of the destination in OTBN's data memory.
  * @return The result of the operation.
  */
-static otbn_error_t write_rsa_3072_int_to_otbn(
-    otbn_t *otbn, const sigverify_rsa_buffer_t *src, otbn_addr_t dst) {
+static rom_error_t write_rsa_3072_int_to_otbn(otbn_t *otbn,
+                                              const sigverify_rsa_buffer_t *src,
+                                              otbn_addr_t dst) {
   return otbn_copy_data_to_otbn(otbn, kSigVerifyRsaNumWords, src->data, dst);
 }
 
@@ -60,13 +60,13 @@
  * @param dst The destination of the copied data in main memory (preallocated).
  * @return The result of the operation.
  */
-static otbn_error_t read_rsa_3072_int_from_otbn(otbn_t *otbn,
-                                                const otbn_addr_t src,
-                                                sigverify_rsa_buffer_t *dst) {
+static rom_error_t read_rsa_3072_int_from_otbn(otbn_t *otbn,
+                                               const otbn_addr_t src,
+                                               sigverify_rsa_buffer_t *dst) {
   return otbn_copy_data_from_otbn(otbn, kSigVerifyRsaNumWords, src, dst->data);
 }
 
-otbn_error_t run_otbn_rsa_3072_modexp(
+rom_error_t run_otbn_rsa_3072_modexp(
     const sigverify_rsa_key_t *public_key,
     const sigverify_rsa_buffer_t *signature,
     sigverify_rsa_buffer_t *recovered_message) {
@@ -74,35 +74,35 @@
 
   // Initialize OTBN and load the RSA app.
   otbn_init(&otbn);
-  OTBN_RETURN_IF_ERROR(otbn_load_app(&otbn, kOtbnAppRsa));
+  RETURN_IF_ERROR(otbn_load_app(&otbn, kOtbnAppRsa));
 
   // Set the exponent (e).
-  OTBN_RETURN_IF_ERROR(otbn_copy_data_to_otbn(&otbn, 1, &public_key->exponent,
-                                              kOtbnVarRsaInExp));
+  RETURN_IF_ERROR(otbn_copy_data_to_otbn(&otbn, 1, &public_key->exponent,
+                                         kOtbnVarRsaInExp));
 
   // Set the modulus (n).
-  OTBN_RETURN_IF_ERROR(
+  RETURN_IF_ERROR(
       write_rsa_3072_int_to_otbn(&otbn, &public_key->n, kOtbnVarRsaInMod));
 
   // Set the signature.
-  OTBN_RETURN_IF_ERROR(
+  RETURN_IF_ERROR(
       write_rsa_3072_int_to_otbn(&otbn, signature, kOtbnVarRsaInBuf));
 
   // Set the precomputed constant m0_inv.
-  OTBN_RETURN_IF_ERROR(otbn_copy_data_to_otbn(
-      &otbn, kOtbnWideWordNumWords, public_key->n0_inv, kOtbnVarRsaM0Inv));
+  RETURN_IF_ERROR(otbn_copy_data_to_otbn(&otbn, kOtbnWideWordNumWords,
+                                         public_key->n0_inv, kOtbnVarRsaM0Inv));
 
   // Start the OTBN routine.
-  OTBN_RETURN_IF_ERROR(otbn_execute_app(&otbn));
+  RETURN_IF_ERROR(otbn_execute_app(&otbn));
 
   // Spin here waiting for OTBN to complete.
-  OTBN_RETURN_IF_ERROR(otbn_busy_wait_for_done(&otbn));
+  RETURN_IF_ERROR(otbn_busy_wait_for_done(&otbn));
 
   // Read recovered message out of OTBN dmem.
-  OTBN_RETURN_IF_ERROR(
+  RETURN_IF_ERROR(
       read_rsa_3072_int_from_otbn(&otbn, kOtbnVarRsaOutBuf, recovered_message));
 
-  return kOtbnErrorOk;
+  return kErrorOk;
 }
 
 rom_error_t sigverify_mod_exp_otbn(const sigverify_rsa_key_t *key,
@@ -112,8 +112,8 @@
     return kErrorSigverifyBadExponent;
   }
 
-  // Run OTBN application, and convert the OTBN error to a ROM error if needed.
-  FOLD_OTBN_ERROR(run_otbn_rsa_3072_modexp(key, sig, result));
+  // Run OTBN application.
+  RETURN_IF_ERROR(run_otbn_rsa_3072_modexp(key, sig, result));
 
   return kErrorOk;
 }