diff --git a/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson b/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson
index cb15f3e..924a1c1 100644
--- a/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson
+++ b/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson
@@ -63,6 +63,7 @@
         {
           clk_main_aes: main
           clk_main_hmac: main
+          clk_main_otbn: main
         }
       }
       {
@@ -1664,6 +1665,92 @@
         }
       ]
     }
+    {
+      name: otbn
+      type: otbn
+      clock_srcs:
+      {
+        clk_i: main
+      }
+      clock_group: trans
+      reset_connections:
+      {
+        rst_ni: sys
+      }
+      base_addr: 0x50000000
+      clock_connections:
+      {
+        clk_i: clkmgr_clocks.clk_main_otbn
+      }
+      size: 0x400000
+      bus_device: tlul
+      bus_host: none
+      available_input_list: []
+      available_output_list: []
+      available_inout_list: []
+      interrupt_list:
+      [
+        {
+          name: done
+          width: 1
+          bits: "0"
+          bitinfo:
+          [
+            1
+            1
+            0
+          ]
+          type: interrupt
+        }
+        {
+          name: err
+          width: 1
+          bits: "1"
+          bitinfo:
+          [
+            2
+            1
+            1
+          ]
+          type: interrupt
+        }
+      ]
+      alert_list:
+      [
+        {
+          name: imem_uncorrectable
+          width: 1
+          type: alert
+          async: 0
+        }
+        {
+          name: dmem_uncorrectable
+          width: 1
+          type: alert
+          async: 0
+        }
+        {
+          name: reg_uncorrectable
+          width: 1
+          type: alert
+          async: 0
+        }
+      ]
+      wakeup_list: []
+      scan: "false"
+      inter_signal_list:
+      [
+        {
+          name: idle
+          type: uni
+          struct: logic
+          width: "1"
+          act: req
+          inst_name: otbn
+          index: -1
+        }
+      ]
+    }
   ]
   memory:
   [
@@ -1835,6 +1922,7 @@
           padctrl
           alert_handler
           nmi_gen
+          otbn
         ]
         dm_sba:
         [
@@ -1850,6 +1938,7 @@
           padctrl
           alert_handler
           nmi_gen
+          otbn
         ]
       }
       nodes:
@@ -2134,6 +2223,23 @@
           xbar: false
           pipeline: "true"
         }
+        {
+          name: otbn
+          type: device
+          clock: clk_main_i
+          reset: rst_main_ni
+          pipeline_byp: "false"
+          inst_type: otbn
+          addr_range:
+          [
+            {
+              base_addr: 0x50000000
+              size_byte: 0x400000
+            }
+          ]
+          xbar: false
+          pipeline: "true"
+        }
       ]
       clock: clk_main_i
     }
@@ -2348,6 +2454,7 @@
     nmi_gen
     usbdev
     pwrmgr
+    otbn
   ]
   interrupt:
   [
@@ -2988,10 +3095,37 @@
       type: interrupt
       module_name: pwrmgr
     }
+    {
+      name: otbn_done
+      width: 1
+      bits: "0"
+      bitinfo:
+      [
+        1
+        1
+        0
+      ]
+      type: interrupt
+      module_name: otbn
+    }
+    {
+      name: otbn_err
+      width: 1
+      bits: "1"
+      bitinfo:
+      [
+        2
+        1
+        1
+      ]
+      type: interrupt
+      module_name: otbn
+    }
   ]
   alert_module:
   [
     hmac
+    otbn
   ]
   alert:
   [
@@ -3002,6 +3136,27 @@
       async: 0
       module_name: hmac
     }
+    {
+      name: otbn_imem_uncorrectable
+      width: 1
+      type: alert
+      async: 0
+      module_name: otbn
+    }
+    {
+      name: otbn_dmem_uncorrectable
+      width: 1
+      type: alert
+      async: 0
+      module_name: otbn
+    }
+    {
+      name: otbn_reg_uncorrectable
+      width: 1
+      type: alert
+      async: 0
+      module_name: otbn
+    }
   ]
   pinmux:
   {
@@ -3552,6 +3707,15 @@
         index: -1
       }
       {
+        name: idle
+        type: uni
+        struct: logic
+        width: "1"
+        act: req
+        inst_name: otbn
+        index: -1
+      }
+      {
         struct: flash
         type: req_rsp
         name: flash_ctrl
diff --git a/hw/top_earlgrey/data/top_earlgrey.hjson b/hw/top_earlgrey/data/top_earlgrey.hjson
index 18f71fd..8d40dc7 100644
--- a/hw/top_earlgrey/data/top_earlgrey.hjson
+++ b/hw/top_earlgrey/data/top_earlgrey.hjson
@@ -246,6 +246,13 @@
       reset_connections: {rst_ni: "sys_io", rst_usb_48mhz_ni: "usb"},
       base_addr: "0x40150000",
     },
+    { name: "otbn",
+      type: "otbn",
+      clock_srcs: {clk_i: "main"},
+      clock_group: "trans",
+      reset_connections: {rst_ni: "sys"},
+      base_addr: "0x50000000",
+    },
   ]
 
   // Memories (ROM, RAM, eFlash) are defined at the top.
@@ -341,7 +348,8 @@
   // and include every modules.
   // first item goes to LSB of the interrupt source
   interrupt_module: ["gpio", "uart", "spi_device", "flash_ctrl",
-                     "hmac", "alert_handler", "nmi_gen", "usbdev", "pwrmgr" ]
+                     "hmac", "alert_handler", "nmi_gen", "usbdev", "pwrmgr",
+                     "otbn" ]
 
   // RV_PLIC has two searching algorithm internally to pick the most highest priority interrupt
   // source. "sequential" is smaller but slower, "matrix" is larger but faster.
@@ -353,8 +361,8 @@
 
   // ===== ALERT HANDLER ======================================================
   // list all modules that expose alerts
-  // first item goes to LSB of the interrupt source
-  alert_module: [ "hmac" ]
+  // first item goes to LSB of the alert source
+  alert_module: [ "hmac", "otbn" ]
 
   // generated list of alerts:
   alert: [
diff --git a/hw/top_earlgrey/data/xbar_main.hjson b/hw/top_earlgrey/data/xbar_main.hjson
index 1530cb0..4042092 100644
--- a/hw/top_earlgrey/data/xbar_main.hjson
+++ b/hw/top_earlgrey/data/xbar_main.hjson
@@ -122,12 +122,18 @@
       inst_type: "nmi_gen",
       pipeline_byp: "false"
     }
+    { name:      "otbn",
+      type:      "device",
+      clock:     "clk_main_i"
+      reset:     "rst_main_ni"
+      pipeline_byp: "false"
+    },
   ],
   connections: {
     corei:  ["rom", "debug_mem", "ram_main", "eflash"],
     cored:  ["rom", "debug_mem", "ram_main", "eflash", "peri", "flash_ctrl",
-    "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen"],
+    "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen", "otbn"],
     dm_sba: ["rom",              "ram_main", "eflash", "peri", "flash_ctrl",
-    "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen"],
+    "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen", "otbn"],
   },
 }
diff --git a/hw/top_earlgrey/dv/autogen/tb__xbar_connect.sv b/hw/top_earlgrey/dv/autogen/tb__xbar_connect.sv
index 86342cc..0444c2a 100644
--- a/hw/top_earlgrey/dv/autogen/tb__xbar_connect.sv
+++ b/hw/top_earlgrey/dv/autogen/tb__xbar_connect.sv
@@ -24,6 +24,7 @@
 tl_if padctrl_tl_if(clk_main, rst_n);
 tl_if alert_handler_tl_if(clk_main, rst_n);
 tl_if nmi_gen_tl_if(clk_main, rst_n);
+tl_if otbn_tl_if(clk_main, rst_n);
 tl_if uart_tl_if(clk_io, rst_n);
 tl_if gpio_tl_if(clk_io, rst_n);
 tl_if spi_device_tl_if(clk_io, rst_n);
@@ -74,6 +75,7 @@
     `DRIVE_TL_DEVICE_IF(padctrl, dut.top_earlgrey, clk_main, rst_n, d_d2h, d_h2d)
     `DRIVE_TL_DEVICE_IF(alert_handler, dut.top_earlgrey, clk_main, rst_n, d_d2h, d_h2d)
     `DRIVE_TL_DEVICE_IF(nmi_gen, dut.top_earlgrey, clk_main, rst_n, d_d2h, d_h2d)
+    `DRIVE_TL_DEVICE_IF(otbn, dut.top_earlgrey, clk_main, rst_n, d_d2h, d_h2d)
     `DRIVE_TL_DEVICE_IF(uart, dut.top_earlgrey, clk_io, rst_n, d_d2h, d_h2d)
     `DRIVE_TL_DEVICE_IF(gpio, dut.top_earlgrey, clk_io, rst_n, d_d2h, d_h2d)
     `DRIVE_TL_DEVICE_IF(spi_device, dut.top_earlgrey, clk_io, rst_n, d_d2h, d_h2d)
diff --git a/hw/top_earlgrey/dv/autogen/xbar_env_pkg__params.sv b/hw/top_earlgrey/dv/autogen/xbar_env_pkg__params.sv
index 38b9e59..3f41bda 100644
--- a/hw/top_earlgrey/dv/autogen/xbar_env_pkg__params.sv
+++ b/hw/top_earlgrey/dv/autogen/xbar_env_pkg__params.sv
@@ -43,6 +43,9 @@
     '{"nmi_gen", '{
         '{32'h40140000, 32'h40140fff}
     }},
+    '{"otbn", '{
+        '{32'h50000000, 32'h503fffff}
+    }},
     '{"uart", '{
         '{32'h40000000, 32'h40000fff}
     }},
@@ -100,7 +103,8 @@
         "pinmux",
         "padctrl",
         "alert_handler",
-        "nmi_gen"}}
+        "nmi_gen",
+        "otbn"}}
     ,
     '{"dm_sba", 2, '{
         "rom",
@@ -122,5 +126,6 @@
         "pinmux",
         "padctrl",
         "alert_handler",
-        "nmi_gen"}}
+        "nmi_gen",
+        "otbn"}}
 };
diff --git a/hw/top_earlgrey/ip/alert_handler/data/autogen/alert_handler.hjson b/hw/top_earlgrey/ip/alert_handler/data/autogen/alert_handler.hjson
index 4bf94f9..4bc3a9e 100644
--- a/hw/top_earlgrey/ip/alert_handler/data/autogen/alert_handler.hjson
+++ b/hw/top_earlgrey/ip/alert_handler/data/autogen/alert_handler.hjson
@@ -30,7 +30,7 @@
     { name: "NAlerts",
       desc: "Number of peripheral inputs",
       type: "int",
-      default: "1",
+      default: "4",
       local: "true"
     },
     { name: "EscCntDw",
@@ -54,7 +54,7 @@
     { name: "AsyncOn",
       desc: "Number of peripheral outputs",
       type: "logic [NAlerts-1:0]",
-      default: "1'b0",
+      default: "4'b0000",
       local: "true"
     },
     { name: "N_CLASSES",
diff --git a/hw/top_earlgrey/ip/alert_handler/dv/alert_handler_env_pkg__params.sv b/hw/top_earlgrey/ip/alert_handler/dv/alert_handler_env_pkg__params.sv
index 0aa3307..3da4a60 100644
--- a/hw/top_earlgrey/ip/alert_handler/dv/alert_handler_env_pkg__params.sv
+++ b/hw/top_earlgrey/ip/alert_handler/dv/alert_handler_env_pkg__params.sv
@@ -6,5 +6,5 @@
 // PLEASE DO NOT HAND-EDIT THIS FILE. IT HAS BEEN AUTO-GENERATED WITH THE FOLLOWING COMMAND:
 // util/topgen.py -t hw/top_earlgrey/doc/top_earlgrey.hjson --alert-handler-only -o hw/top_earlgrey/
 
-parameter uint NUM_ALERTS = 1;
-parameter bit [NUM_ALERTS-1:0] ASYNC_ON = 1'b0;
+parameter uint NUM_ALERTS = 4;
+parameter bit [NUM_ALERTS-1:0] ASYNC_ON = 4'b0000;
diff --git a/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_pkg.sv b/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_pkg.sv
index c5c4f44..891bdd5 100644
--- a/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_pkg.sv
+++ b/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_pkg.sv
@@ -7,11 +7,11 @@
 package alert_handler_reg_pkg;
 
   // Param list
-  parameter int NAlerts = 1;
+  parameter int NAlerts = 4;
   parameter int EscCntDw = 32;
   parameter int AccuCntDw = 16;
   parameter int LfsrSeed = 2147483647;
-  parameter logic [NAlerts-1:0] AsyncOn = 1'b0;
+  parameter logic [NAlerts-1:0] AsyncOn = 4'b0000;
   parameter int N_CLASSES = 4;
   parameter int N_ESC_SEV = 4;
   parameter int N_PHASES = 4;
@@ -455,14 +455,14 @@
   // Register to internal design logic //
   ///////////////////////////////////////
   typedef struct packed {
-    alert_handler_reg2hw_intr_state_reg_t intr_state; // [828:825]
-    alert_handler_reg2hw_intr_enable_reg_t intr_enable; // [824:821]
-    alert_handler_reg2hw_intr_test_reg_t intr_test; // [820:813]
-    alert_handler_reg2hw_regen_reg_t regen; // [812:812]
-    alert_handler_reg2hw_ping_timeout_cyc_reg_t ping_timeout_cyc; // [811:788]
-    alert_handler_reg2hw_alert_en_mreg_t [0:0] alert_en; // [787:787]
-    alert_handler_reg2hw_alert_class_mreg_t [0:0] alert_class; // [786:785]
-    alert_handler_reg2hw_alert_cause_mreg_t [0:0] alert_cause; // [784:784]
+    alert_handler_reg2hw_intr_state_reg_t intr_state; // [840:837]
+    alert_handler_reg2hw_intr_enable_reg_t intr_enable; // [836:833]
+    alert_handler_reg2hw_intr_test_reg_t intr_test; // [832:825]
+    alert_handler_reg2hw_regen_reg_t regen; // [824:824]
+    alert_handler_reg2hw_ping_timeout_cyc_reg_t ping_timeout_cyc; // [823:800]
+    alert_handler_reg2hw_alert_en_mreg_t [3:0] alert_en; // [799:796]
+    alert_handler_reg2hw_alert_class_mreg_t [3:0] alert_class; // [795:788]
+    alert_handler_reg2hw_alert_cause_mreg_t [3:0] alert_cause; // [787:784]
     alert_handler_reg2hw_loc_alert_en_mreg_t [3:0] loc_alert_en; // [783:780]
     alert_handler_reg2hw_loc_alert_class_mreg_t [3:0] loc_alert_class; // [779:772]
     alert_handler_reg2hw_loc_alert_cause_mreg_t [3:0] loc_alert_cause; // [771:768]
@@ -504,8 +504,8 @@
   // Internal design logic to register //
   ///////////////////////////////////////
   typedef struct packed {
-    alert_handler_hw2reg_intr_state_reg_t intr_state; // [229:226]
-    alert_handler_hw2reg_alert_cause_mreg_t [0:0] alert_cause; // [225:224]
+    alert_handler_hw2reg_intr_state_reg_t intr_state; // [235:232]
+    alert_handler_hw2reg_alert_cause_mreg_t [3:0] alert_cause; // [231:224]
     alert_handler_hw2reg_loc_alert_cause_mreg_t [3:0] loc_alert_cause; // [223:216]
     alert_handler_hw2reg_classa_clren_reg_t classa_clren; // [215:216]
     alert_handler_hw2reg_classa_accum_cnt_reg_t classa_accum_cnt; // [215:216]
diff --git a/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_top.sv b/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_top.sv
index d5ff6f7..3495ca5 100644
--- a/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_top.sv
+++ b/hw/top_earlgrey/ip/alert_handler/rtl/autogen/alert_handler_reg_top.sv
@@ -109,15 +109,42 @@
   logic [23:0] ping_timeout_cyc_qs;
   logic [23:0] ping_timeout_cyc_wd;
   logic ping_timeout_cyc_we;
-  logic alert_en_qs;
-  logic alert_en_wd;
-  logic alert_en_we;
-  logic [1:0] alert_class_qs;
-  logic [1:0] alert_class_wd;
-  logic alert_class_we;
-  logic alert_cause_qs;
-  logic alert_cause_wd;
-  logic alert_cause_we;
+  logic alert_en_en_a0_qs;
+  logic alert_en_en_a0_wd;
+  logic alert_en_en_a0_we;
+  logic alert_en_en_a1_qs;
+  logic alert_en_en_a1_wd;
+  logic alert_en_en_a1_we;
+  logic alert_en_en_a2_qs;
+  logic alert_en_en_a2_wd;
+  logic alert_en_en_a2_we;
+  logic alert_en_en_a3_qs;
+  logic alert_en_en_a3_wd;
+  logic alert_en_en_a3_we;
+  logic [1:0] alert_class_class_a0_qs;
+  logic [1:0] alert_class_class_a0_wd;
+  logic alert_class_class_a0_we;
+  logic [1:0] alert_class_class_a1_qs;
+  logic [1:0] alert_class_class_a1_wd;
+  logic alert_class_class_a1_we;
+  logic [1:0] alert_class_class_a2_qs;
+  logic [1:0] alert_class_class_a2_wd;
+  logic alert_class_class_a2_we;
+  logic [1:0] alert_class_class_a3_qs;
+  logic [1:0] alert_class_class_a3_wd;
+  logic alert_class_class_a3_we;
+  logic alert_cause_a0_qs;
+  logic alert_cause_a0_wd;
+  logic alert_cause_a0_we;
+  logic alert_cause_a1_qs;
+  logic alert_cause_a1_wd;
+  logic alert_cause_a1_we;
+  logic alert_cause_a2_qs;
+  logic alert_cause_a2_wd;
+  logic alert_cause_a2_we;
+  logic alert_cause_a3_qs;
+  logic alert_cause_a3_wd;
+  logic alert_cause_a3_we;
   logic loc_alert_en_en_la0_qs;
   logic loc_alert_en_en_la0_wd;
   logic loc_alert_en_en_la0_we;
@@ -724,17 +751,18 @@
   // Subregister 0 of Multireg alert_en
   // R[alert_en]: V(False)
 
+  // F[en_a0]: 0:0
   prim_subreg #(
     .DW      (1),
     .SWACCESS("RW"),
     .RESVAL  (1'h0)
-  ) u_alert_en (
+  ) u_alert_en_en_a0 (
     .clk_i   (clk_i    ),
     .rst_ni  (rst_ni  ),
 
     // from register interface (qualified with register enable)
-    .we     (alert_en_we & regen_qs),
-    .wd     (alert_en_wd),
+    .we     (alert_en_en_a0_we & regen_qs),
+    .wd     (alert_en_en_a0_wd),
 
     // from internal hardware
     .de     (1'b0),
@@ -745,25 +773,105 @@
     .q      (reg2hw.alert_en[0].q ),
 
     // to register interface (read)
-    .qs     (alert_en_qs)
+    .qs     (alert_en_en_a0_qs)
   );
 
 
+  // F[en_a1]: 1:1
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_alert_en_en_a1 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_en_en_a1_we & regen_qs),
+    .wd     (alert_en_en_a1_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_en[1].q ),
+
+    // to register interface (read)
+    .qs     (alert_en_en_a1_qs)
+  );
+
+
+  // F[en_a2]: 2:2
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_alert_en_en_a2 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_en_en_a2_we & regen_qs),
+    .wd     (alert_en_en_a2_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_en[2].q ),
+
+    // to register interface (read)
+    .qs     (alert_en_en_a2_qs)
+  );
+
+
+  // F[en_a3]: 3:3
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_alert_en_en_a3 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_en_en_a3_we & regen_qs),
+    .wd     (alert_en_en_a3_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_en[3].q ),
+
+    // to register interface (read)
+    .qs     (alert_en_en_a3_qs)
+  );
+
+
+
 
   // Subregister 0 of Multireg alert_class
   // R[alert_class]: V(False)
 
+  // F[class_a0]: 1:0
   prim_subreg #(
     .DW      (2),
     .SWACCESS("RW"),
     .RESVAL  (2'h0)
-  ) u_alert_class (
+  ) u_alert_class_class_a0 (
     .clk_i   (clk_i    ),
     .rst_ni  (rst_ni  ),
 
     // from register interface (qualified with register enable)
-    .we     (alert_class_we & regen_qs),
-    .wd     (alert_class_wd),
+    .we     (alert_class_class_a0_we & regen_qs),
+    .wd     (alert_class_class_a0_wd),
 
     // from internal hardware
     .de     (1'b0),
@@ -774,25 +882,105 @@
     .q      (reg2hw.alert_class[0].q ),
 
     // to register interface (read)
-    .qs     (alert_class_qs)
+    .qs     (alert_class_class_a0_qs)
   );
 
 
+  // F[class_a1]: 3:2
+  prim_subreg #(
+    .DW      (2),
+    .SWACCESS("RW"),
+    .RESVAL  (2'h0)
+  ) u_alert_class_class_a1 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_class_class_a1_we & regen_qs),
+    .wd     (alert_class_class_a1_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_class[1].q ),
+
+    // to register interface (read)
+    .qs     (alert_class_class_a1_qs)
+  );
+
+
+  // F[class_a2]: 5:4
+  prim_subreg #(
+    .DW      (2),
+    .SWACCESS("RW"),
+    .RESVAL  (2'h0)
+  ) u_alert_class_class_a2 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_class_class_a2_we & regen_qs),
+    .wd     (alert_class_class_a2_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_class[2].q ),
+
+    // to register interface (read)
+    .qs     (alert_class_class_a2_qs)
+  );
+
+
+  // F[class_a3]: 7:6
+  prim_subreg #(
+    .DW      (2),
+    .SWACCESS("RW"),
+    .RESVAL  (2'h0)
+  ) u_alert_class_class_a3 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface (qualified with register enable)
+    .we     (alert_class_class_a3_we & regen_qs),
+    .wd     (alert_class_class_a3_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_class[3].q ),
+
+    // to register interface (read)
+    .qs     (alert_class_class_a3_qs)
+  );
+
+
+
 
   // Subregister 0 of Multireg alert_cause
   // R[alert_cause]: V(False)
 
+  // F[a0]: 0:0
   prim_subreg #(
     .DW      (1),
     .SWACCESS("W1C"),
     .RESVAL  (1'h0)
-  ) u_alert_cause (
+  ) u_alert_cause_a0 (
     .clk_i   (clk_i    ),
     .rst_ni  (rst_ni  ),
 
     // from register interface
-    .we     (alert_cause_we),
-    .wd     (alert_cause_wd),
+    .we     (alert_cause_a0_we),
+    .wd     (alert_cause_a0_wd),
 
     // from internal hardware
     .de     (hw2reg.alert_cause[0].de),
@@ -803,10 +991,89 @@
     .q      (reg2hw.alert_cause[0].q ),
 
     // to register interface (read)
-    .qs     (alert_cause_qs)
+    .qs     (alert_cause_a0_qs)
   );
 
 
+  // F[a1]: 1:1
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("W1C"),
+    .RESVAL  (1'h0)
+  ) u_alert_cause_a1 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (alert_cause_a1_we),
+    .wd     (alert_cause_a1_wd),
+
+    // from internal hardware
+    .de     (hw2reg.alert_cause[1].de),
+    .d      (hw2reg.alert_cause[1].d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_cause[1].q ),
+
+    // to register interface (read)
+    .qs     (alert_cause_a1_qs)
+  );
+
+
+  // F[a2]: 2:2
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("W1C"),
+    .RESVAL  (1'h0)
+  ) u_alert_cause_a2 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (alert_cause_a2_we),
+    .wd     (alert_cause_a2_wd),
+
+    // from internal hardware
+    .de     (hw2reg.alert_cause[2].de),
+    .d      (hw2reg.alert_cause[2].d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_cause[2].q ),
+
+    // to register interface (read)
+    .qs     (alert_cause_a2_qs)
+  );
+
+
+  // F[a3]: 3:3
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("W1C"),
+    .RESVAL  (1'h0)
+  ) u_alert_cause_a3 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (alert_cause_a3_we),
+    .wd     (alert_cause_a3_wd),
+
+    // from internal hardware
+    .de     (hw2reg.alert_cause[3].de),
+    .d      (hw2reg.alert_cause[3].d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.alert_cause[3].q ),
+
+    // to register interface (read)
+    .qs     (alert_cause_a3_qs)
+  );
+
+
+
 
   // Subregister 0 of Multireg loc_alert_en
   // R[loc_alert_en]: V(False)
@@ -3408,14 +3675,41 @@
   assign ping_timeout_cyc_we = addr_hit[4] & reg_we & ~wr_err;
   assign ping_timeout_cyc_wd = reg_wdata[23:0];
 
-  assign alert_en_we = addr_hit[5] & reg_we & ~wr_err;
-  assign alert_en_wd = reg_wdata[0];
+  assign alert_en_en_a0_we = addr_hit[5] & reg_we & ~wr_err;
+  assign alert_en_en_a0_wd = reg_wdata[0];
 
-  assign alert_class_we = addr_hit[6] & reg_we & ~wr_err;
-  assign alert_class_wd = reg_wdata[1:0];
+  assign alert_en_en_a1_we = addr_hit[5] & reg_we & ~wr_err;
+  assign alert_en_en_a1_wd = reg_wdata[1];
 
-  assign alert_cause_we = addr_hit[7] & reg_we & ~wr_err;
-  assign alert_cause_wd = reg_wdata[0];
+  assign alert_en_en_a2_we = addr_hit[5] & reg_we & ~wr_err;
+  assign alert_en_en_a2_wd = reg_wdata[2];
+
+  assign alert_en_en_a3_we = addr_hit[5] & reg_we & ~wr_err;
+  assign alert_en_en_a3_wd = reg_wdata[3];
+
+  assign alert_class_class_a0_we = addr_hit[6] & reg_we & ~wr_err;
+  assign alert_class_class_a0_wd = reg_wdata[1:0];
+
+  assign alert_class_class_a1_we = addr_hit[6] & reg_we & ~wr_err;
+  assign alert_class_class_a1_wd = reg_wdata[3:2];
+
+  assign alert_class_class_a2_we = addr_hit[6] & reg_we & ~wr_err;
+  assign alert_class_class_a2_wd = reg_wdata[5:4];
+
+  assign alert_class_class_a3_we = addr_hit[6] & reg_we & ~wr_err;
+  assign alert_class_class_a3_wd = reg_wdata[7:6];
+
+  assign alert_cause_a0_we = addr_hit[7] & reg_we & ~wr_err;
+  assign alert_cause_a0_wd = reg_wdata[0];
+
+  assign alert_cause_a1_we = addr_hit[7] & reg_we & ~wr_err;
+  assign alert_cause_a1_wd = reg_wdata[1];
+
+  assign alert_cause_a2_we = addr_hit[7] & reg_we & ~wr_err;
+  assign alert_cause_a2_wd = reg_wdata[2];
+
+  assign alert_cause_a3_we = addr_hit[7] & reg_we & ~wr_err;
+  assign alert_cause_a3_wd = reg_wdata[3];
 
   assign loc_alert_en_en_la0_we = addr_hit[8] & reg_we & ~wr_err;
   assign loc_alert_en_en_la0_wd = reg_wdata[0];
@@ -3727,15 +4021,24 @@
       end
 
       addr_hit[5]: begin
-        reg_rdata_next[0] = alert_en_qs;
+        reg_rdata_next[0] = alert_en_en_a0_qs;
+        reg_rdata_next[1] = alert_en_en_a1_qs;
+        reg_rdata_next[2] = alert_en_en_a2_qs;
+        reg_rdata_next[3] = alert_en_en_a3_qs;
       end
 
       addr_hit[6]: begin
-        reg_rdata_next[1:0] = alert_class_qs;
+        reg_rdata_next[1:0] = alert_class_class_a0_qs;
+        reg_rdata_next[3:2] = alert_class_class_a1_qs;
+        reg_rdata_next[5:4] = alert_class_class_a2_qs;
+        reg_rdata_next[7:6] = alert_class_class_a3_qs;
       end
 
       addr_hit[7]: begin
-        reg_rdata_next[0] = alert_cause_qs;
+        reg_rdata_next[0] = alert_cause_a0_qs;
+        reg_rdata_next[1] = alert_cause_a1_qs;
+        reg_rdata_next[2] = alert_cause_a2_qs;
+        reg_rdata_next[3] = alert_cause_a3_qs;
       end
 
       addr_hit[8]: begin
diff --git a/hw/top_earlgrey/ip/clkmgr/data/autogen/clkmgr.hjson b/hw/top_earlgrey/ip/clkmgr/data/autogen/clkmgr.hjson
index 3971985..a90b1af 100644
--- a/hw/top_earlgrey/ip/clkmgr/data/autogen/clkmgr.hjson
+++ b/hw/top_earlgrey/ip/clkmgr/data/autogen/clkmgr.hjson
@@ -134,6 +134,15 @@
             1 CLK_MAIN_HMAC is enabled.
           '''
         }
+        {
+          bits: "2",
+          name: "CLK_MAIN_OTBN_HINT",
+          resval: 1,
+          desc: '''
+            0 CLK_MAIN_OTBN can be disabled.
+            1 CLK_MAIN_OTBN is enabled.
+          '''
+        }
       ]
       // the CLK_HINT register cannot be written, otherwise there is the potential clocks could be
       // disabled and the system will hang
@@ -167,6 +176,15 @@
             1 CLK_MAIN_HMAC is enabled.
           '''
         }
+        {
+          bits: "2",
+          name: "CLK_MAIN_OTBN_VAL",
+          resval: 1,
+          desc: '''
+            0 CLK_MAIN_OTBN is disabled.
+            1 CLK_MAIN_OTBN is enabled.
+          '''
+        }
       ]
     },
   ]
diff --git a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr.sv b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr.sv
index 2a2f784..5084b0d 100644
--- a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr.sv
+++ b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr.sv
@@ -209,6 +209,8 @@
   logic clk_main_aes_en;
   logic clk_main_hmac_hint;
   logic clk_main_hmac_en;
+  logic clk_main_otbn_hint;
+  logic clk_main_otbn_en;
 
   assign clk_main_aes_en = clk_main_aes_hint | ~status_i.idle[0];
 
@@ -246,12 +248,32 @@
     .clk_o(clocks_o.clk_main_hmac)
   );
 
+  assign clk_main_otbn_en = clk_main_otbn_hint | ~status_i.idle[2];
+
+  prim_flop_2sync #(
+    .Width(1)
+  ) i_clk_main_otbn_hint_sync (
+    .clk_i(clk_main_i),
+    .rst_ni(rst_main_ni),
+    .d(reg2hw.clk_hints.clk_main_otbn_hint.q),
+    .q(clk_main_otbn_hint)
+  );
+
+  prim_clock_gating i_clk_main_otbn_cg (
+    .clk_i(clk_main_i),
+    .en_i(clk_main_otbn_en & clk_main_en),
+    .test_en_i(dft_i.test_en),
+    .clk_o(clocks_o.clk_main_otbn)
+  );
+
 
   // state readback
   assign hw2reg.clk_hints_status.clk_main_aes_val.de = 1'b1;
   assign hw2reg.clk_hints_status.clk_main_aes_val.d = clk_main_aes_en;
   assign hw2reg.clk_hints_status.clk_main_hmac_val.de = 1'b1;
   assign hw2reg.clk_hints_status.clk_main_hmac_val.d = clk_main_hmac_en;
+  assign hw2reg.clk_hints_status.clk_main_otbn_val.de = 1'b1;
+  assign hw2reg.clk_hints_status.clk_main_otbn_val.d = clk_main_otbn_en;
 
 
   ////////////////////////////////////////////////////
diff --git a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_pkg.sv b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_pkg.sv
index 0b65244..70cda99 100644
--- a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_pkg.sv
+++ b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_pkg.sv
@@ -19,6 +19,7 @@
   typedef struct packed {
   logic clk_main_aes;
   logic clk_main_hmac;
+  logic clk_main_otbn;
   logic clk_main_infra;
   logic clk_io_infra;
   logic clk_io_secure;
@@ -31,11 +32,11 @@
   } clkmgr_out_t;
 
   typedef struct packed {
-    logic [2-1:0] idle;
+    logic [3-1:0] idle;
   } clk_hint_status_t;
 
   parameter clk_hint_status_t CLK_HINT_STATUS_DEFAULT = '{
-    idle: {2{1'b1}}
+    idle: {3{1'b1}}
   };
 
 
diff --git a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_pkg.sv b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_pkg.sv
index b1668c2..18b5575 100644
--- a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_pkg.sv
+++ b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_pkg.sv
@@ -28,6 +28,9 @@
     struct packed {
       logic        q;
     } clk_main_hmac_hint;
+    struct packed {
+      logic        q;
+    } clk_main_otbn_hint;
   } clkmgr_reg2hw_clk_hints_reg_t;
 
 
@@ -40,6 +43,10 @@
       logic        d;
       logic        de;
     } clk_main_hmac_val;
+    struct packed {
+      logic        d;
+      logic        de;
+    } clk_main_otbn_val;
   } clkmgr_hw2reg_clk_hints_status_reg_t;
 
 
@@ -47,15 +54,15 @@
   // Register to internal design logic //
   ///////////////////////////////////////
   typedef struct packed {
-    clkmgr_reg2hw_clk_enables_reg_t clk_enables; // [3:2]
-    clkmgr_reg2hw_clk_hints_reg_t clk_hints; // [1:0]
+    clkmgr_reg2hw_clk_enables_reg_t clk_enables; // [4:3]
+    clkmgr_reg2hw_clk_hints_reg_t clk_hints; // [2:0]
   } clkmgr_reg2hw_t;
 
   ///////////////////////////////////////
   // Internal design logic to register //
   ///////////////////////////////////////
   typedef struct packed {
-    clkmgr_hw2reg_clk_hints_status_reg_t clk_hints_status; // [3:4]
+    clkmgr_hw2reg_clk_hints_status_reg_t clk_hints_status; // [5:6]
   } clkmgr_hw2reg_t;
 
   // Register Address
diff --git a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_top.sv b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_top.sv
index 8a1c418..3e40b9d 100644
--- a/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_top.sv
+++ b/hw/top_earlgrey/ip/clkmgr/rtl/autogen/clkmgr_reg_top.sv
@@ -83,8 +83,12 @@
   logic clk_hints_clk_main_hmac_hint_qs;
   logic clk_hints_clk_main_hmac_hint_wd;
   logic clk_hints_clk_main_hmac_hint_we;
+  logic clk_hints_clk_main_otbn_hint_qs;
+  logic clk_hints_clk_main_otbn_hint_wd;
+  logic clk_hints_clk_main_otbn_hint_we;
   logic clk_hints_status_clk_main_aes_val_qs;
   logic clk_hints_status_clk_main_hmac_val_qs;
+  logic clk_hints_status_clk_main_otbn_val_qs;
 
   // Register instances
   // R[clk_enables]: V(False)
@@ -195,6 +199,32 @@
   );
 
 
+  //   F[clk_main_otbn_hint]: 2:2
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h1)
+  ) u_clk_hints_clk_main_otbn_hint (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (clk_hints_clk_main_otbn_hint_we),
+    .wd     (clk_hints_clk_main_otbn_hint_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.clk_hints.clk_main_otbn_hint.q ),
+
+    // to register interface (read)
+    .qs     (clk_hints_clk_main_otbn_hint_qs)
+  );
+
+
   // R[clk_hints_status]: V(False)
 
   //   F[clk_main_aes_val]: 0:0
@@ -247,6 +277,31 @@
   );
 
 
+  //   F[clk_main_otbn_val]: 2:2
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RO"),
+    .RESVAL  (1'h1)
+  ) u_clk_hints_status_clk_main_otbn_val (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    .we     (1'b0),
+    .wd     ('0  ),
+
+    // from internal hardware
+    .de     (hw2reg.clk_hints_status.clk_main_otbn_val.de),
+    .d      (hw2reg.clk_hints_status.clk_main_otbn_val.d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (),
+
+    // to register interface (read)
+    .qs     (clk_hints_status_clk_main_otbn_val_qs)
+  );
+
+
 
 
   logic [2:0] addr_hit;
@@ -279,6 +334,10 @@
   assign clk_hints_clk_main_hmac_hint_we = addr_hit[1] & reg_we & ~wr_err;
   assign clk_hints_clk_main_hmac_hint_wd = reg_wdata[1];
 
+  assign clk_hints_clk_main_otbn_hint_we = addr_hit[1] & reg_we & ~wr_err;
+  assign clk_hints_clk_main_otbn_hint_wd = reg_wdata[2];
+
+
 
 
   // Read data return
@@ -293,11 +352,13 @@
       addr_hit[1]: begin
         reg_rdata_next[0] = clk_hints_clk_main_aes_hint_qs;
         reg_rdata_next[1] = clk_hints_clk_main_hmac_hint_qs;
+        reg_rdata_next[2] = clk_hints_clk_main_otbn_hint_qs;
       end
 
       addr_hit[2]: begin
         reg_rdata_next[0] = clk_hints_status_clk_main_aes_val_qs;
         reg_rdata_next[1] = clk_hints_status_clk_main_hmac_val_qs;
+        reg_rdata_next[2] = clk_hints_status_clk_main_otbn_val_qs;
       end
 
       default: begin
diff --git a/hw/top_earlgrey/ip/rv_plic/data/autogen/rv_plic.hjson b/hw/top_earlgrey/ip/rv_plic/data/autogen/rv_plic.hjson
index 47da6a3..bb230de 100644
--- a/hw/top_earlgrey/ip/rv_plic/data/autogen/rv_plic.hjson
+++ b/hw/top_earlgrey/ip/rv_plic/data/autogen/rv_plic.hjson
@@ -25,7 +25,7 @@
     { name: "NumSrc",
       desc: "Number of interrupt sources",
       type: "int",
-      default: "81",
+      default: "83",
       local: "true"
     },
     { name: "NumTarget",
@@ -711,6 +711,22 @@
         { bits: "1:0" }
       ],
     }
+    { name: "PRIO81",
+      desc: "Interrupt Source 81 Priority",
+      swaccess: "rw",
+      hwaccess: "hro",
+      fields: [
+        { bits: "1:0" }
+      ],
+    }
+    { name: "PRIO82",
+      desc: "Interrupt Source 82 Priority",
+      swaccess: "rw",
+      hwaccess: "hro",
+      fields: [
+        { bits: "1:0" }
+      ],
+    }
     { skipto: "512" }
     { multireg: {
         name: "IE0",
diff --git a/hw/top_earlgrey/ip/rv_plic/fpv/autogen/rv_plic_csr_assert_fpv.sv b/hw/top_earlgrey/ip/rv_plic/fpv/autogen/rv_plic_csr_assert_fpv.sv
index 081d6b2..23d07e0 100644
--- a/hw/top_earlgrey/ip/rv_plic/fpv/autogen/rv_plic_csr_assert_fpv.sv
+++ b/hw/top_earlgrey/ip/rv_plic/fpv/autogen/rv_plic_csr_assert_fpv.sv
@@ -108,8 +108,8 @@
 // for all the regsters, declare assertion
 
   // define local fpv variable for the multi_reg
-  logic [80:0] ip_d_fpv;
-  for (genvar s = 0; s <= 80; s++) begin : gen_ip_d
+  logic [82:0] ip_d_fpv;
+  for (genvar s = 0; s <= 82; s++) begin : gen_ip_d
     assign ip_d_fpv[s] = i_rv_plic.hw2reg.ip[s].d;
   end
 
@@ -117,11 +117,11 @@
 
   `ASSERT(ip1_rd_A, rd_P(10'h4, ip_d_fpv[63:32]))
 
-  `ASSERT(ip2_rd_A, rd_P(10'h8, ip_d_fpv[80:64]))
+  `ASSERT(ip2_rd_A, rd_P(10'h8, ip_d_fpv[82:64]))
 
   // define local fpv variable for the multi_reg
-  logic [80:0] le_q_fpv;
-  for (genvar s = 0; s <= 80; s++) begin : gen_le_q
+  logic [82:0] le_q_fpv;
+  for (genvar s = 0; s <= 82; s++) begin : gen_le_q
     assign le_q_fpv[s] = 1 ?
         i_rv_plic.reg2hw.le[s].q : le_q_fpv[s];
   end
@@ -132,8 +132,8 @@
   `ASSERT(le1_wr_A, wr_P(10'h10, le_q_fpv[63:32], 1, 'hffffffff))
   `ASSERT(le1_rd_A, rd_P(10'h10, le_q_fpv[63:32]))
 
-  `ASSERT(le2_wr_A, wr_P(10'h14, le_q_fpv[80:64], 1, 'h1ffff))
-  `ASSERT(le2_rd_A, rd_P(10'h14, le_q_fpv[80:64]))
+  `ASSERT(le2_wr_A, wr_P(10'h14, le_q_fpv[82:64], 1, 'h7ffff))
+  `ASSERT(le2_rd_A, rd_P(10'h14, le_q_fpv[82:64]))
 
   `ASSERT(prio0_wr_A, wr_P(10'h18, i_rv_plic.reg2hw.prio0.q, 1, 'h3))
   `ASSERT(prio0_rd_A, rd_P(10'h18, i_rv_plic.reg2hw.prio0.q))
@@ -378,9 +378,15 @@
   `ASSERT(prio80_wr_A, wr_P(10'h158, i_rv_plic.reg2hw.prio80.q, 1, 'h3))
   `ASSERT(prio80_rd_A, rd_P(10'h158, i_rv_plic.reg2hw.prio80.q))
 
+  `ASSERT(prio81_wr_A, wr_P(10'h15c, i_rv_plic.reg2hw.prio81.q, 1, 'h3))
+  `ASSERT(prio81_rd_A, rd_P(10'h15c, i_rv_plic.reg2hw.prio81.q))
+
+  `ASSERT(prio82_wr_A, wr_P(10'h160, i_rv_plic.reg2hw.prio82.q, 1, 'h3))
+  `ASSERT(prio82_rd_A, rd_P(10'h160, i_rv_plic.reg2hw.prio82.q))
+
   // define local fpv variable for the multi_reg
-  logic [80:0] ie0_q_fpv;
-  for (genvar s = 0; s <= 80; s++) begin : gen_ie0_q
+  logic [82:0] ie0_q_fpv;
+  for (genvar s = 0; s <= 82; s++) begin : gen_ie0_q
     assign ie0_q_fpv[s] = 1 ?
         i_rv_plic.reg2hw.ie0[s].q : ie0_q_fpv[s];
   end
@@ -391,8 +397,8 @@
   `ASSERT(ie01_wr_A, wr_P(10'h204, ie0_q_fpv[63:32], 1, 'hffffffff))
   `ASSERT(ie01_rd_A, rd_P(10'h204, ie0_q_fpv[63:32]))
 
-  `ASSERT(ie02_wr_A, wr_P(10'h208, ie0_q_fpv[80:64], 1, 'h1ffff))
-  `ASSERT(ie02_rd_A, rd_P(10'h208, ie0_q_fpv[80:64]))
+  `ASSERT(ie02_wr_A, wr_P(10'h208, ie0_q_fpv[82:64], 1, 'h7ffff))
+  `ASSERT(ie02_rd_A, rd_P(10'h208, ie0_q_fpv[82:64]))
 
   `ASSERT(threshold0_wr_A, wr_P(10'h20c, i_rv_plic.reg2hw.threshold0.q, 1, 'h3))
   `ASSERT(threshold0_rd_A, rd_P(10'h20c, i_rv_plic.reg2hw.threshold0.q))
diff --git a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic.sv b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic.sv
index afcc3d7..1e11b59 100644
--- a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic.sv
+++ b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic.sv
@@ -175,11 +175,13 @@
   assign prio[78] = reg2hw.prio78.q;
   assign prio[79] = reg2hw.prio79.q;
   assign prio[80] = reg2hw.prio80.q;
+  assign prio[81] = reg2hw.prio81.q;
+  assign prio[82] = reg2hw.prio82.q;
 
   //////////////////////
   // Interrupt Enable //
   //////////////////////
-  for (genvar s = 0; s < 81; s++) begin : gen_ie0
+  for (genvar s = 0; s < 83; s++) begin : gen_ie0
     assign ie[0][s] = reg2hw.ie0[s].q;
   end
 
@@ -205,7 +207,7 @@
   ////////
   // IP //
   ////////
-  for (genvar s = 0; s < 81; s++) begin : gen_ip
+  for (genvar s = 0; s < 83; s++) begin : gen_ip
     assign hw2reg.ip[s].de = 1'b1; // Always write
     assign hw2reg.ip[s].d  = ip[s];
   end
@@ -213,7 +215,7 @@
   ///////////////////////////////////
   // Detection:: 0: Level, 1: Edge //
   ///////////////////////////////////
-  for (genvar s = 0; s < 81; s++) begin : gen_le
+  for (genvar s = 0; s < 83; s++) begin : gen_le
     assign le[s] = reg2hw.le[s].q;
   end
 
diff --git a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_pkg.sv b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_pkg.sv
index 639a590..7233960 100644
--- a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_pkg.sv
+++ b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_pkg.sv
@@ -7,7 +7,7 @@
 package rv_plic_reg_pkg;
 
   // Param list
-  parameter int NumSrc = 81;
+  parameter int NumSrc = 83;
   parameter int NumTarget = 1;
 
   ////////////////////////////
@@ -342,6 +342,14 @@
   } rv_plic_reg2hw_prio80_reg_t;
 
   typedef struct packed {
+    logic [1:0]  q;
+  } rv_plic_reg2hw_prio81_reg_t;
+
+  typedef struct packed {
+    logic [1:0]  q;
+  } rv_plic_reg2hw_prio82_reg_t;
+
+  typedef struct packed {
     logic        q;
   } rv_plic_reg2hw_ie0_mreg_t;
 
@@ -374,89 +382,91 @@
   // Register to internal design logic //
   ///////////////////////////////////////
   typedef struct packed {
-    rv_plic_reg2hw_le_mreg_t [80:0] le; // [335:255]
-    rv_plic_reg2hw_prio0_reg_t prio0; // [254:253]
-    rv_plic_reg2hw_prio1_reg_t prio1; // [252:251]
-    rv_plic_reg2hw_prio2_reg_t prio2; // [250:249]
-    rv_plic_reg2hw_prio3_reg_t prio3; // [248:247]
-    rv_plic_reg2hw_prio4_reg_t prio4; // [246:245]
-    rv_plic_reg2hw_prio5_reg_t prio5; // [244:243]
-    rv_plic_reg2hw_prio6_reg_t prio6; // [242:241]
-    rv_plic_reg2hw_prio7_reg_t prio7; // [240:239]
-    rv_plic_reg2hw_prio8_reg_t prio8; // [238:237]
-    rv_plic_reg2hw_prio9_reg_t prio9; // [236:235]
-    rv_plic_reg2hw_prio10_reg_t prio10; // [234:233]
-    rv_plic_reg2hw_prio11_reg_t prio11; // [232:231]
-    rv_plic_reg2hw_prio12_reg_t prio12; // [230:229]
-    rv_plic_reg2hw_prio13_reg_t prio13; // [228:227]
-    rv_plic_reg2hw_prio14_reg_t prio14; // [226:225]
-    rv_plic_reg2hw_prio15_reg_t prio15; // [224:223]
-    rv_plic_reg2hw_prio16_reg_t prio16; // [222:221]
-    rv_plic_reg2hw_prio17_reg_t prio17; // [220:219]
-    rv_plic_reg2hw_prio18_reg_t prio18; // [218:217]
-    rv_plic_reg2hw_prio19_reg_t prio19; // [216:215]
-    rv_plic_reg2hw_prio20_reg_t prio20; // [214:213]
-    rv_plic_reg2hw_prio21_reg_t prio21; // [212:211]
-    rv_plic_reg2hw_prio22_reg_t prio22; // [210:209]
-    rv_plic_reg2hw_prio23_reg_t prio23; // [208:207]
-    rv_plic_reg2hw_prio24_reg_t prio24; // [206:205]
-    rv_plic_reg2hw_prio25_reg_t prio25; // [204:203]
-    rv_plic_reg2hw_prio26_reg_t prio26; // [202:201]
-    rv_plic_reg2hw_prio27_reg_t prio27; // [200:199]
-    rv_plic_reg2hw_prio28_reg_t prio28; // [198:197]
-    rv_plic_reg2hw_prio29_reg_t prio29; // [196:195]
-    rv_plic_reg2hw_prio30_reg_t prio30; // [194:193]
-    rv_plic_reg2hw_prio31_reg_t prio31; // [192:191]
-    rv_plic_reg2hw_prio32_reg_t prio32; // [190:189]
-    rv_plic_reg2hw_prio33_reg_t prio33; // [188:187]
-    rv_plic_reg2hw_prio34_reg_t prio34; // [186:185]
-    rv_plic_reg2hw_prio35_reg_t prio35; // [184:183]
-    rv_plic_reg2hw_prio36_reg_t prio36; // [182:181]
-    rv_plic_reg2hw_prio37_reg_t prio37; // [180:179]
-    rv_plic_reg2hw_prio38_reg_t prio38; // [178:177]
-    rv_plic_reg2hw_prio39_reg_t prio39; // [176:175]
-    rv_plic_reg2hw_prio40_reg_t prio40; // [174:173]
-    rv_plic_reg2hw_prio41_reg_t prio41; // [172:171]
-    rv_plic_reg2hw_prio42_reg_t prio42; // [170:169]
-    rv_plic_reg2hw_prio43_reg_t prio43; // [168:167]
-    rv_plic_reg2hw_prio44_reg_t prio44; // [166:165]
-    rv_plic_reg2hw_prio45_reg_t prio45; // [164:163]
-    rv_plic_reg2hw_prio46_reg_t prio46; // [162:161]
-    rv_plic_reg2hw_prio47_reg_t prio47; // [160:159]
-    rv_plic_reg2hw_prio48_reg_t prio48; // [158:157]
-    rv_plic_reg2hw_prio49_reg_t prio49; // [156:155]
-    rv_plic_reg2hw_prio50_reg_t prio50; // [154:153]
-    rv_plic_reg2hw_prio51_reg_t prio51; // [152:151]
-    rv_plic_reg2hw_prio52_reg_t prio52; // [150:149]
-    rv_plic_reg2hw_prio53_reg_t prio53; // [148:147]
-    rv_plic_reg2hw_prio54_reg_t prio54; // [146:145]
-    rv_plic_reg2hw_prio55_reg_t prio55; // [144:143]
-    rv_plic_reg2hw_prio56_reg_t prio56; // [142:141]
-    rv_plic_reg2hw_prio57_reg_t prio57; // [140:139]
-    rv_plic_reg2hw_prio58_reg_t prio58; // [138:137]
-    rv_plic_reg2hw_prio59_reg_t prio59; // [136:135]
-    rv_plic_reg2hw_prio60_reg_t prio60; // [134:133]
-    rv_plic_reg2hw_prio61_reg_t prio61; // [132:131]
-    rv_plic_reg2hw_prio62_reg_t prio62; // [130:129]
-    rv_plic_reg2hw_prio63_reg_t prio63; // [128:127]
-    rv_plic_reg2hw_prio64_reg_t prio64; // [126:125]
-    rv_plic_reg2hw_prio65_reg_t prio65; // [124:123]
-    rv_plic_reg2hw_prio66_reg_t prio66; // [122:121]
-    rv_plic_reg2hw_prio67_reg_t prio67; // [120:119]
-    rv_plic_reg2hw_prio68_reg_t prio68; // [118:117]
-    rv_plic_reg2hw_prio69_reg_t prio69; // [116:115]
-    rv_plic_reg2hw_prio70_reg_t prio70; // [114:113]
-    rv_plic_reg2hw_prio71_reg_t prio71; // [112:111]
-    rv_plic_reg2hw_prio72_reg_t prio72; // [110:109]
-    rv_plic_reg2hw_prio73_reg_t prio73; // [108:107]
-    rv_plic_reg2hw_prio74_reg_t prio74; // [106:105]
-    rv_plic_reg2hw_prio75_reg_t prio75; // [104:103]
-    rv_plic_reg2hw_prio76_reg_t prio76; // [102:101]
-    rv_plic_reg2hw_prio77_reg_t prio77; // [100:99]
-    rv_plic_reg2hw_prio78_reg_t prio78; // [98:97]
-    rv_plic_reg2hw_prio79_reg_t prio79; // [96:95]
-    rv_plic_reg2hw_prio80_reg_t prio80; // [94:93]
-    rv_plic_reg2hw_ie0_mreg_t [80:0] ie0; // [92:12]
+    rv_plic_reg2hw_le_mreg_t [82:0] le; // [343:261]
+    rv_plic_reg2hw_prio0_reg_t prio0; // [260:259]
+    rv_plic_reg2hw_prio1_reg_t prio1; // [258:257]
+    rv_plic_reg2hw_prio2_reg_t prio2; // [256:255]
+    rv_plic_reg2hw_prio3_reg_t prio3; // [254:253]
+    rv_plic_reg2hw_prio4_reg_t prio4; // [252:251]
+    rv_plic_reg2hw_prio5_reg_t prio5; // [250:249]
+    rv_plic_reg2hw_prio6_reg_t prio6; // [248:247]
+    rv_plic_reg2hw_prio7_reg_t prio7; // [246:245]
+    rv_plic_reg2hw_prio8_reg_t prio8; // [244:243]
+    rv_plic_reg2hw_prio9_reg_t prio9; // [242:241]
+    rv_plic_reg2hw_prio10_reg_t prio10; // [240:239]
+    rv_plic_reg2hw_prio11_reg_t prio11; // [238:237]
+    rv_plic_reg2hw_prio12_reg_t prio12; // [236:235]
+    rv_plic_reg2hw_prio13_reg_t prio13; // [234:233]
+    rv_plic_reg2hw_prio14_reg_t prio14; // [232:231]
+    rv_plic_reg2hw_prio15_reg_t prio15; // [230:229]
+    rv_plic_reg2hw_prio16_reg_t prio16; // [228:227]
+    rv_plic_reg2hw_prio17_reg_t prio17; // [226:225]
+    rv_plic_reg2hw_prio18_reg_t prio18; // [224:223]
+    rv_plic_reg2hw_prio19_reg_t prio19; // [222:221]
+    rv_plic_reg2hw_prio20_reg_t prio20; // [220:219]
+    rv_plic_reg2hw_prio21_reg_t prio21; // [218:217]
+    rv_plic_reg2hw_prio22_reg_t prio22; // [216:215]
+    rv_plic_reg2hw_prio23_reg_t prio23; // [214:213]
+    rv_plic_reg2hw_prio24_reg_t prio24; // [212:211]
+    rv_plic_reg2hw_prio25_reg_t prio25; // [210:209]
+    rv_plic_reg2hw_prio26_reg_t prio26; // [208:207]
+    rv_plic_reg2hw_prio27_reg_t prio27; // [206:205]
+    rv_plic_reg2hw_prio28_reg_t prio28; // [204:203]
+    rv_plic_reg2hw_prio29_reg_t prio29; // [202:201]
+    rv_plic_reg2hw_prio30_reg_t prio30; // [200:199]
+    rv_plic_reg2hw_prio31_reg_t prio31; // [198:197]
+    rv_plic_reg2hw_prio32_reg_t prio32; // [196:195]
+    rv_plic_reg2hw_prio33_reg_t prio33; // [194:193]
+    rv_plic_reg2hw_prio34_reg_t prio34; // [192:191]
+    rv_plic_reg2hw_prio35_reg_t prio35; // [190:189]
+    rv_plic_reg2hw_prio36_reg_t prio36; // [188:187]
+    rv_plic_reg2hw_prio37_reg_t prio37; // [186:185]
+    rv_plic_reg2hw_prio38_reg_t prio38; // [184:183]
+    rv_plic_reg2hw_prio39_reg_t prio39; // [182:181]
+    rv_plic_reg2hw_prio40_reg_t prio40; // [180:179]
+    rv_plic_reg2hw_prio41_reg_t prio41; // [178:177]
+    rv_plic_reg2hw_prio42_reg_t prio42; // [176:175]
+    rv_plic_reg2hw_prio43_reg_t prio43; // [174:173]
+    rv_plic_reg2hw_prio44_reg_t prio44; // [172:171]
+    rv_plic_reg2hw_prio45_reg_t prio45; // [170:169]
+    rv_plic_reg2hw_prio46_reg_t prio46; // [168:167]
+    rv_plic_reg2hw_prio47_reg_t prio47; // [166:165]
+    rv_plic_reg2hw_prio48_reg_t prio48; // [164:163]
+    rv_plic_reg2hw_prio49_reg_t prio49; // [162:161]
+    rv_plic_reg2hw_prio50_reg_t prio50; // [160:159]
+    rv_plic_reg2hw_prio51_reg_t prio51; // [158:157]
+    rv_plic_reg2hw_prio52_reg_t prio52; // [156:155]
+    rv_plic_reg2hw_prio53_reg_t prio53; // [154:153]
+    rv_plic_reg2hw_prio54_reg_t prio54; // [152:151]
+    rv_plic_reg2hw_prio55_reg_t prio55; // [150:149]
+    rv_plic_reg2hw_prio56_reg_t prio56; // [148:147]
+    rv_plic_reg2hw_prio57_reg_t prio57; // [146:145]
+    rv_plic_reg2hw_prio58_reg_t prio58; // [144:143]
+    rv_plic_reg2hw_prio59_reg_t prio59; // [142:141]
+    rv_plic_reg2hw_prio60_reg_t prio60; // [140:139]
+    rv_plic_reg2hw_prio61_reg_t prio61; // [138:137]
+    rv_plic_reg2hw_prio62_reg_t prio62; // [136:135]
+    rv_plic_reg2hw_prio63_reg_t prio63; // [134:133]
+    rv_plic_reg2hw_prio64_reg_t prio64; // [132:131]
+    rv_plic_reg2hw_prio65_reg_t prio65; // [130:129]
+    rv_plic_reg2hw_prio66_reg_t prio66; // [128:127]
+    rv_plic_reg2hw_prio67_reg_t prio67; // [126:125]
+    rv_plic_reg2hw_prio68_reg_t prio68; // [124:123]
+    rv_plic_reg2hw_prio69_reg_t prio69; // [122:121]
+    rv_plic_reg2hw_prio70_reg_t prio70; // [120:119]
+    rv_plic_reg2hw_prio71_reg_t prio71; // [118:117]
+    rv_plic_reg2hw_prio72_reg_t prio72; // [116:115]
+    rv_plic_reg2hw_prio73_reg_t prio73; // [114:113]
+    rv_plic_reg2hw_prio74_reg_t prio74; // [112:111]
+    rv_plic_reg2hw_prio75_reg_t prio75; // [110:109]
+    rv_plic_reg2hw_prio76_reg_t prio76; // [108:107]
+    rv_plic_reg2hw_prio77_reg_t prio77; // [106:105]
+    rv_plic_reg2hw_prio78_reg_t prio78; // [104:103]
+    rv_plic_reg2hw_prio79_reg_t prio79; // [102:101]
+    rv_plic_reg2hw_prio80_reg_t prio80; // [100:99]
+    rv_plic_reg2hw_prio81_reg_t prio81; // [98:97]
+    rv_plic_reg2hw_prio82_reg_t prio82; // [96:95]
+    rv_plic_reg2hw_ie0_mreg_t [82:0] ie0; // [94:12]
     rv_plic_reg2hw_threshold0_reg_t threshold0; // [11:10]
     rv_plic_reg2hw_cc0_reg_t cc0; // [9:1]
     rv_plic_reg2hw_msip0_reg_t msip0; // [0:0]
@@ -466,7 +476,7 @@
   // Internal design logic to register //
   ///////////////////////////////////////
   typedef struct packed {
-    rv_plic_hw2reg_ip_mreg_t [80:0] ip; // [168:7]
+    rv_plic_hw2reg_ip_mreg_t [82:0] ip; // [172:7]
     rv_plic_hw2reg_cc0_reg_t cc0; // [6:-2]
   } rv_plic_hw2reg_t;
 
@@ -558,6 +568,8 @@
   parameter logic [9:0] RV_PLIC_PRIO78_OFFSET = 10'h 150;
   parameter logic [9:0] RV_PLIC_PRIO79_OFFSET = 10'h 154;
   parameter logic [9:0] RV_PLIC_PRIO80_OFFSET = 10'h 158;
+  parameter logic [9:0] RV_PLIC_PRIO81_OFFSET = 10'h 15c;
+  parameter logic [9:0] RV_PLIC_PRIO82_OFFSET = 10'h 160;
   parameter logic [9:0] RV_PLIC_IE00_OFFSET = 10'h 200;
   parameter logic [9:0] RV_PLIC_IE01_OFFSET = 10'h 204;
   parameter logic [9:0] RV_PLIC_IE02_OFFSET = 10'h 208;
@@ -655,6 +667,8 @@
     RV_PLIC_PRIO78,
     RV_PLIC_PRIO79,
     RV_PLIC_PRIO80,
+    RV_PLIC_PRIO81,
+    RV_PLIC_PRIO82,
     RV_PLIC_IE00,
     RV_PLIC_IE01,
     RV_PLIC_IE02,
@@ -664,7 +678,7 @@
   } rv_plic_id_e;
 
   // Register width information to check illegal writes
-  parameter logic [3:0] RV_PLIC_PERMIT [93] = '{
+  parameter logic [3:0] RV_PLIC_PERMIT [95] = '{
     4'b 1111, // index[ 0] RV_PLIC_IP0
     4'b 1111, // index[ 1] RV_PLIC_IP1
     4'b 0111, // index[ 2] RV_PLIC_IP2
@@ -752,12 +766,14 @@
     4'b 0001, // index[84] RV_PLIC_PRIO78
     4'b 0001, // index[85] RV_PLIC_PRIO79
     4'b 0001, // index[86] RV_PLIC_PRIO80
-    4'b 1111, // index[87] RV_PLIC_IE00
-    4'b 1111, // index[88] RV_PLIC_IE01
-    4'b 0111, // index[89] RV_PLIC_IE02
-    4'b 0001, // index[90] RV_PLIC_THRESHOLD0
-    4'b 0001, // index[91] RV_PLIC_CC0
-    4'b 0001  // index[92] RV_PLIC_MSIP0
+    4'b 0001, // index[87] RV_PLIC_PRIO81
+    4'b 0001, // index[88] RV_PLIC_PRIO82
+    4'b 1111, // index[89] RV_PLIC_IE00
+    4'b 1111, // index[90] RV_PLIC_IE01
+    4'b 0111, // index[91] RV_PLIC_IE02
+    4'b 0001, // index[92] RV_PLIC_THRESHOLD0
+    4'b 0001, // index[93] RV_PLIC_CC0
+    4'b 0001  // index[94] RV_PLIC_MSIP0
   };
 endpackage
 
diff --git a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_top.sv b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_top.sv
index 07f43be..64b2857 100644
--- a/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_top.sv
+++ b/hw/top_earlgrey/ip/rv_plic/rtl/autogen/rv_plic_reg_top.sv
@@ -152,6 +152,8 @@
   logic ip2_p78_qs;
   logic ip2_p79_qs;
   logic ip2_p80_qs;
+  logic ip2_p81_qs;
+  logic ip2_p82_qs;
   logic le0_le0_qs;
   logic le0_le0_wd;
   logic le0_le0_we;
@@ -395,6 +397,12 @@
   logic le2_le80_qs;
   logic le2_le80_wd;
   logic le2_le80_we;
+  logic le2_le81_qs;
+  logic le2_le81_wd;
+  logic le2_le81_we;
+  logic le2_le82_qs;
+  logic le2_le82_wd;
+  logic le2_le82_we;
   logic [1:0] prio0_qs;
   logic [1:0] prio0_wd;
   logic prio0_we;
@@ -638,6 +646,12 @@
   logic [1:0] prio80_qs;
   logic [1:0] prio80_wd;
   logic prio80_we;
+  logic [1:0] prio81_qs;
+  logic [1:0] prio81_wd;
+  logic prio81_we;
+  logic [1:0] prio82_qs;
+  logic [1:0] prio82_wd;
+  logic prio82_we;
   logic ie00_e0_qs;
   logic ie00_e0_wd;
   logic ie00_e0_we;
@@ -881,6 +895,12 @@
   logic ie02_e80_qs;
   logic ie02_e80_wd;
   logic ie02_e80_we;
+  logic ie02_e81_qs;
+  logic ie02_e81_wd;
+  logic ie02_e81_we;
+  logic ie02_e82_qs;
+  logic ie02_e82_wd;
+  logic ie02_e82_we;
   logic [1:0] threshold0_qs;
   logic [1:0] threshold0_wd;
   logic threshold0_we;
@@ -2928,6 +2948,56 @@
   );
 
 
+  // F[p81]: 17:17
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RO"),
+    .RESVAL  (1'h0)
+  ) u_ip2_p81 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    .we     (1'b0),
+    .wd     ('0  ),
+
+    // from internal hardware
+    .de     (hw2reg.ip[81].de),
+    .d      (hw2reg.ip[81].d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (),
+
+    // to register interface (read)
+    .qs     (ip2_p81_qs)
+  );
+
+
+  // F[p82]: 18:18
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RO"),
+    .RESVAL  (1'h0)
+  ) u_ip2_p82 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    .we     (1'b0),
+    .wd     ('0  ),
+
+    // from internal hardware
+    .de     (hw2reg.ip[82].de),
+    .d      (hw2reg.ip[82].d ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (),
+
+    // to register interface (read)
+    .qs     (ip2_p82_qs)
+  );
+
+
 
 
   // Subregister 0 of Multireg le
@@ -5045,6 +5115,58 @@
   );
 
 
+  // F[le81]: 17:17
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_le2_le81 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (le2_le81_we),
+    .wd     (le2_le81_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.le[81].q ),
+
+    // to register interface (read)
+    .qs     (le2_le81_qs)
+  );
+
+
+  // F[le82]: 18:18
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_le2_le82 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (le2_le82_we),
+    .wd     (le2_le82_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.le[82].q ),
+
+    // to register interface (read)
+    .qs     (le2_le82_qs)
+  );
+
+
 
   // R[prio0]: V(False)
 
@@ -7233,6 +7355,60 @@
   );
 
 
+  // R[prio81]: V(False)
+
+  prim_subreg #(
+    .DW      (2),
+    .SWACCESS("RW"),
+    .RESVAL  (2'h0)
+  ) u_prio81 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (prio81_we),
+    .wd     (prio81_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.prio81.q ),
+
+    // to register interface (read)
+    .qs     (prio81_qs)
+  );
+
+
+  // R[prio82]: V(False)
+
+  prim_subreg #(
+    .DW      (2),
+    .SWACCESS("RW"),
+    .RESVAL  (2'h0)
+  ) u_prio82 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (prio82_we),
+    .wd     (prio82_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.prio82.q ),
+
+    // to register interface (read)
+    .qs     (prio82_qs)
+  );
+
+
 
   // Subregister 0 of Multireg ie0
   // R[ie00]: V(False)
@@ -9349,6 +9525,58 @@
   );
 
 
+  // F[e81]: 17:17
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_ie02_e81 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (ie02_e81_we),
+    .wd     (ie02_e81_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.ie0[81].q ),
+
+    // to register interface (read)
+    .qs     (ie02_e81_qs)
+  );
+
+
+  // F[e82]: 18:18
+  prim_subreg #(
+    .DW      (1),
+    .SWACCESS("RW"),
+    .RESVAL  (1'h0)
+  ) u_ie02_e82 (
+    .clk_i   (clk_i    ),
+    .rst_ni  (rst_ni  ),
+
+    // from register interface
+    .we     (ie02_e82_we),
+    .wd     (ie02_e82_wd),
+
+    // from internal hardware
+    .de     (1'b0),
+    .d      ('0  ),
+
+    // to internal hardware
+    .qe     (),
+    .q      (reg2hw.ie0[82].q ),
+
+    // to register interface (read)
+    .qs     (ie02_e82_qs)
+  );
+
+
 
   // R[threshold0]: V(False)
 
@@ -9422,7 +9650,7 @@
 
 
 
-  logic [92:0] addr_hit;
+  logic [94:0] addr_hit;
   always_comb begin
     addr_hit = '0;
     addr_hit[ 0] = (reg_addr == RV_PLIC_IP0_OFFSET);
@@ -9512,12 +9740,14 @@
     addr_hit[84] = (reg_addr == RV_PLIC_PRIO78_OFFSET);
     addr_hit[85] = (reg_addr == RV_PLIC_PRIO79_OFFSET);
     addr_hit[86] = (reg_addr == RV_PLIC_PRIO80_OFFSET);
-    addr_hit[87] = (reg_addr == RV_PLIC_IE00_OFFSET);
-    addr_hit[88] = (reg_addr == RV_PLIC_IE01_OFFSET);
-    addr_hit[89] = (reg_addr == RV_PLIC_IE02_OFFSET);
-    addr_hit[90] = (reg_addr == RV_PLIC_THRESHOLD0_OFFSET);
-    addr_hit[91] = (reg_addr == RV_PLIC_CC0_OFFSET);
-    addr_hit[92] = (reg_addr == RV_PLIC_MSIP0_OFFSET);
+    addr_hit[87] = (reg_addr == RV_PLIC_PRIO81_OFFSET);
+    addr_hit[88] = (reg_addr == RV_PLIC_PRIO82_OFFSET);
+    addr_hit[89] = (reg_addr == RV_PLIC_IE00_OFFSET);
+    addr_hit[90] = (reg_addr == RV_PLIC_IE01_OFFSET);
+    addr_hit[91] = (reg_addr == RV_PLIC_IE02_OFFSET);
+    addr_hit[92] = (reg_addr == RV_PLIC_THRESHOLD0_OFFSET);
+    addr_hit[93] = (reg_addr == RV_PLIC_CC0_OFFSET);
+    addr_hit[94] = (reg_addr == RV_PLIC_MSIP0_OFFSET);
   end
 
   assign addrmiss = (reg_re || reg_we) ? ~|addr_hit : 1'b0 ;
@@ -9618,6 +9848,8 @@
     if (addr_hit[90] && reg_we && (RV_PLIC_PERMIT[90] != (RV_PLIC_PERMIT[90] & reg_be))) wr_err = 1'b1 ;
     if (addr_hit[91] && reg_we && (RV_PLIC_PERMIT[91] != (RV_PLIC_PERMIT[91] & reg_be))) wr_err = 1'b1 ;
     if (addr_hit[92] && reg_we && (RV_PLIC_PERMIT[92] != (RV_PLIC_PERMIT[92] & reg_be))) wr_err = 1'b1 ;
+    if (addr_hit[93] && reg_we && (RV_PLIC_PERMIT[93] != (RV_PLIC_PERMIT[93] & reg_be))) wr_err = 1'b1 ;
+    if (addr_hit[94] && reg_we && (RV_PLIC_PERMIT[94] != (RV_PLIC_PERMIT[94] & reg_be))) wr_err = 1'b1 ;
   end
 
 
@@ -9701,6 +9933,8 @@
 
 
 
+
+
   assign le0_le0_we = addr_hit[3] & reg_we & ~wr_err;
   assign le0_le0_wd = reg_wdata[0];
 
@@ -9944,6 +10178,12 @@
   assign le2_le80_we = addr_hit[5] & reg_we & ~wr_err;
   assign le2_le80_wd = reg_wdata[16];
 
+  assign le2_le81_we = addr_hit[5] & reg_we & ~wr_err;
+  assign le2_le81_wd = reg_wdata[17];
+
+  assign le2_le82_we = addr_hit[5] & reg_we & ~wr_err;
+  assign le2_le82_wd = reg_wdata[18];
+
   assign prio0_we = addr_hit[6] & reg_we & ~wr_err;
   assign prio0_wd = reg_wdata[1:0];
 
@@ -10187,257 +10427,269 @@
   assign prio80_we = addr_hit[86] & reg_we & ~wr_err;
   assign prio80_wd = reg_wdata[1:0];
 
-  assign ie00_e0_we = addr_hit[87] & reg_we & ~wr_err;
+  assign prio81_we = addr_hit[87] & reg_we & ~wr_err;
+  assign prio81_wd = reg_wdata[1:0];
+
+  assign prio82_we = addr_hit[88] & reg_we & ~wr_err;
+  assign prio82_wd = reg_wdata[1:0];
+
+  assign ie00_e0_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e0_wd = reg_wdata[0];
 
-  assign ie00_e1_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e1_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e1_wd = reg_wdata[1];
 
-  assign ie00_e2_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e2_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e2_wd = reg_wdata[2];
 
-  assign ie00_e3_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e3_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e3_wd = reg_wdata[3];
 
-  assign ie00_e4_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e4_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e4_wd = reg_wdata[4];
 
-  assign ie00_e5_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e5_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e5_wd = reg_wdata[5];
 
-  assign ie00_e6_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e6_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e6_wd = reg_wdata[6];
 
-  assign ie00_e7_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e7_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e7_wd = reg_wdata[7];
 
-  assign ie00_e8_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e8_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e8_wd = reg_wdata[8];
 
-  assign ie00_e9_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e9_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e9_wd = reg_wdata[9];
 
-  assign ie00_e10_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e10_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e10_wd = reg_wdata[10];
 
-  assign ie00_e11_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e11_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e11_wd = reg_wdata[11];
 
-  assign ie00_e12_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e12_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e12_wd = reg_wdata[12];
 
-  assign ie00_e13_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e13_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e13_wd = reg_wdata[13];
 
-  assign ie00_e14_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e14_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e14_wd = reg_wdata[14];
 
-  assign ie00_e15_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e15_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e15_wd = reg_wdata[15];
 
-  assign ie00_e16_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e16_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e16_wd = reg_wdata[16];
 
-  assign ie00_e17_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e17_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e17_wd = reg_wdata[17];
 
-  assign ie00_e18_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e18_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e18_wd = reg_wdata[18];
 
-  assign ie00_e19_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e19_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e19_wd = reg_wdata[19];
 
-  assign ie00_e20_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e20_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e20_wd = reg_wdata[20];
 
-  assign ie00_e21_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e21_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e21_wd = reg_wdata[21];
 
-  assign ie00_e22_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e22_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e22_wd = reg_wdata[22];
 
-  assign ie00_e23_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e23_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e23_wd = reg_wdata[23];
 
-  assign ie00_e24_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e24_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e24_wd = reg_wdata[24];
 
-  assign ie00_e25_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e25_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e25_wd = reg_wdata[25];
 
-  assign ie00_e26_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e26_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e26_wd = reg_wdata[26];
 
-  assign ie00_e27_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e27_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e27_wd = reg_wdata[27];
 
-  assign ie00_e28_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e28_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e28_wd = reg_wdata[28];
 
-  assign ie00_e29_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e29_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e29_wd = reg_wdata[29];
 
-  assign ie00_e30_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e30_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e30_wd = reg_wdata[30];
 
-  assign ie00_e31_we = addr_hit[87] & reg_we & ~wr_err;
+  assign ie00_e31_we = addr_hit[89] & reg_we & ~wr_err;
   assign ie00_e31_wd = reg_wdata[31];
 
-  assign ie01_e32_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e32_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e32_wd = reg_wdata[0];
 
-  assign ie01_e33_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e33_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e33_wd = reg_wdata[1];
 
-  assign ie01_e34_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e34_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e34_wd = reg_wdata[2];
 
-  assign ie01_e35_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e35_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e35_wd = reg_wdata[3];
 
-  assign ie01_e36_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e36_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e36_wd = reg_wdata[4];
 
-  assign ie01_e37_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e37_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e37_wd = reg_wdata[5];
 
-  assign ie01_e38_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e38_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e38_wd = reg_wdata[6];
 
-  assign ie01_e39_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e39_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e39_wd = reg_wdata[7];
 
-  assign ie01_e40_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e40_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e40_wd = reg_wdata[8];
 
-  assign ie01_e41_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e41_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e41_wd = reg_wdata[9];
 
-  assign ie01_e42_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e42_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e42_wd = reg_wdata[10];
 
-  assign ie01_e43_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e43_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e43_wd = reg_wdata[11];
 
-  assign ie01_e44_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e44_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e44_wd = reg_wdata[12];
 
-  assign ie01_e45_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e45_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e45_wd = reg_wdata[13];
 
-  assign ie01_e46_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e46_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e46_wd = reg_wdata[14];
 
-  assign ie01_e47_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e47_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e47_wd = reg_wdata[15];
 
-  assign ie01_e48_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e48_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e48_wd = reg_wdata[16];
 
-  assign ie01_e49_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e49_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e49_wd = reg_wdata[17];
 
-  assign ie01_e50_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e50_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e50_wd = reg_wdata[18];
 
-  assign ie01_e51_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e51_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e51_wd = reg_wdata[19];
 
-  assign ie01_e52_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e52_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e52_wd = reg_wdata[20];
 
-  assign ie01_e53_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e53_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e53_wd = reg_wdata[21];
 
-  assign ie01_e54_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e54_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e54_wd = reg_wdata[22];
 
-  assign ie01_e55_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e55_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e55_wd = reg_wdata[23];
 
-  assign ie01_e56_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e56_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e56_wd = reg_wdata[24];
 
-  assign ie01_e57_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e57_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e57_wd = reg_wdata[25];
 
-  assign ie01_e58_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e58_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e58_wd = reg_wdata[26];
 
-  assign ie01_e59_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e59_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e59_wd = reg_wdata[27];
 
-  assign ie01_e60_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e60_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e60_wd = reg_wdata[28];
 
-  assign ie01_e61_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e61_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e61_wd = reg_wdata[29];
 
-  assign ie01_e62_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e62_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e62_wd = reg_wdata[30];
 
-  assign ie01_e63_we = addr_hit[88] & reg_we & ~wr_err;
+  assign ie01_e63_we = addr_hit[90] & reg_we & ~wr_err;
   assign ie01_e63_wd = reg_wdata[31];
 
-  assign ie02_e64_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e64_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e64_wd = reg_wdata[0];
 
-  assign ie02_e65_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e65_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e65_wd = reg_wdata[1];
 
-  assign ie02_e66_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e66_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e66_wd = reg_wdata[2];
 
-  assign ie02_e67_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e67_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e67_wd = reg_wdata[3];
 
-  assign ie02_e68_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e68_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e68_wd = reg_wdata[4];
 
-  assign ie02_e69_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e69_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e69_wd = reg_wdata[5];
 
-  assign ie02_e70_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e70_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e70_wd = reg_wdata[6];
 
-  assign ie02_e71_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e71_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e71_wd = reg_wdata[7];
 
-  assign ie02_e72_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e72_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e72_wd = reg_wdata[8];
 
-  assign ie02_e73_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e73_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e73_wd = reg_wdata[9];
 
-  assign ie02_e74_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e74_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e74_wd = reg_wdata[10];
 
-  assign ie02_e75_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e75_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e75_wd = reg_wdata[11];
 
-  assign ie02_e76_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e76_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e76_wd = reg_wdata[12];
 
-  assign ie02_e77_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e77_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e77_wd = reg_wdata[13];
 
-  assign ie02_e78_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e78_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e78_wd = reg_wdata[14];
 
-  assign ie02_e79_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e79_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e79_wd = reg_wdata[15];
 
-  assign ie02_e80_we = addr_hit[89] & reg_we & ~wr_err;
+  assign ie02_e80_we = addr_hit[91] & reg_we & ~wr_err;
   assign ie02_e80_wd = reg_wdata[16];
 
-  assign threshold0_we = addr_hit[90] & reg_we & ~wr_err;
+  assign ie02_e81_we = addr_hit[91] & reg_we & ~wr_err;
+  assign ie02_e81_wd = reg_wdata[17];
+
+  assign ie02_e82_we = addr_hit[91] & reg_we & ~wr_err;
+  assign ie02_e82_wd = reg_wdata[18];
+
+  assign threshold0_we = addr_hit[92] & reg_we & ~wr_err;
   assign threshold0_wd = reg_wdata[1:0];
 
-  assign cc0_we = addr_hit[91] & reg_we & ~wr_err;
+  assign cc0_we = addr_hit[93] & reg_we & ~wr_err;
   assign cc0_wd = reg_wdata[6:0];
-  assign cc0_re = addr_hit[91] && reg_re;
+  assign cc0_re = addr_hit[93] && reg_re;
 
-  assign msip0_we = addr_hit[92] & reg_we & ~wr_err;
+  assign msip0_we = addr_hit[94] & reg_we & ~wr_err;
   assign msip0_wd = reg_wdata[0];
 
   // Read data return
@@ -10532,6 +10784,8 @@
         reg_rdata_next[14] = ip2_p78_qs;
         reg_rdata_next[15] = ip2_p79_qs;
         reg_rdata_next[16] = ip2_p80_qs;
+        reg_rdata_next[17] = ip2_p81_qs;
+        reg_rdata_next[18] = ip2_p82_qs;
       end
 
       addr_hit[3]: begin
@@ -10622,6 +10876,8 @@
         reg_rdata_next[14] = le2_le78_qs;
         reg_rdata_next[15] = le2_le79_qs;
         reg_rdata_next[16] = le2_le80_qs;
+        reg_rdata_next[17] = le2_le81_qs;
+        reg_rdata_next[18] = le2_le82_qs;
       end
 
       addr_hit[6]: begin
@@ -10949,6 +11205,14 @@
       end
 
       addr_hit[87]: begin
+        reg_rdata_next[1:0] = prio81_qs;
+      end
+
+      addr_hit[88]: begin
+        reg_rdata_next[1:0] = prio82_qs;
+      end
+
+      addr_hit[89]: begin
         reg_rdata_next[0] = ie00_e0_qs;
         reg_rdata_next[1] = ie00_e1_qs;
         reg_rdata_next[2] = ie00_e2_qs;
@@ -10983,7 +11247,7 @@
         reg_rdata_next[31] = ie00_e31_qs;
       end
 
-      addr_hit[88]: begin
+      addr_hit[90]: begin
         reg_rdata_next[0] = ie01_e32_qs;
         reg_rdata_next[1] = ie01_e33_qs;
         reg_rdata_next[2] = ie01_e34_qs;
@@ -11018,7 +11282,7 @@
         reg_rdata_next[31] = ie01_e63_qs;
       end
 
-      addr_hit[89]: begin
+      addr_hit[91]: begin
         reg_rdata_next[0] = ie02_e64_qs;
         reg_rdata_next[1] = ie02_e65_qs;
         reg_rdata_next[2] = ie02_e66_qs;
@@ -11036,17 +11300,19 @@
         reg_rdata_next[14] = ie02_e78_qs;
         reg_rdata_next[15] = ie02_e79_qs;
         reg_rdata_next[16] = ie02_e80_qs;
-      end
-
-      addr_hit[90]: begin
-        reg_rdata_next[1:0] = threshold0_qs;
-      end
-
-      addr_hit[91]: begin
-        reg_rdata_next[6:0] = cc0_qs;
+        reg_rdata_next[17] = ie02_e81_qs;
+        reg_rdata_next[18] = ie02_e82_qs;
       end
 
       addr_hit[92]: begin
+        reg_rdata_next[1:0] = threshold0_qs;
+      end
+
+      addr_hit[93]: begin
+        reg_rdata_next[6:0] = cc0_qs;
+      end
+
+      addr_hit[94]: begin
         reg_rdata_next[0] = msip0_qs;
       end
 
diff --git a/hw/top_earlgrey/ip/xbar_main/data/autogen/xbar_main.gen.hjson b/hw/top_earlgrey/ip/xbar_main/data/autogen/xbar_main.gen.hjson
index cdfb64b..170bb99 100644
--- a/hw/top_earlgrey/ip/xbar_main/data/autogen/xbar_main.gen.hjson
+++ b/hw/top_earlgrey/ip/xbar_main/data/autogen/xbar_main.gen.hjson
@@ -49,6 +49,7 @@
       padctrl
       alert_handler
       nmi_gen
+      otbn
     ]
     dm_sba:
     [
@@ -64,6 +65,7 @@
       padctrl
       alert_handler
       nmi_gen
+      otbn
     ]
   }
   nodes:
@@ -332,6 +334,23 @@
       xbar: false
       pipeline: "true"
     }
+    {
+      name: otbn
+      type: device
+      clock: clk_main_i
+      reset: rst_main_ni
+      pipeline_byp: "false"
+      inst_type: otbn
+      addr_range:
+      [
+        {
+          base_addr: 0x50000000
+          size_byte: 0x400000
+        }
+      ]
+      xbar: false
+      pipeline: "true"
+    }
   ]
   clock: clk_main_i
   type: xbar
diff --git a/hw/top_earlgrey/ip/xbar_main/dv/autogen/tb__xbar_connect.sv b/hw/top_earlgrey/ip/xbar_main/dv/autogen/tb__xbar_connect.sv
index e546525..0429508 100644
--- a/hw/top_earlgrey/ip/xbar_main/dv/autogen/tb__xbar_connect.sv
+++ b/hw/top_earlgrey/ip/xbar_main/dv/autogen/tb__xbar_connect.sv
@@ -35,3 +35,4 @@
 `CONNECT_TL_DEVICE_IF(padctrl, dut, clk_main_i, rst_n)
 `CONNECT_TL_DEVICE_IF(alert_handler, dut, clk_main_i, rst_n)
 `CONNECT_TL_DEVICE_IF(nmi_gen, dut, clk_main_i, rst_n)
+`CONNECT_TL_DEVICE_IF(otbn, dut, clk_main_i, rst_n)
diff --git a/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_env_pkg__params.sv b/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_env_pkg__params.sv
index 5737c96..f3d7ce8 100644
--- a/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_env_pkg__params.sv
+++ b/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_env_pkg__params.sv
@@ -49,6 +49,9 @@
     }},
     '{"nmi_gen", '{
         '{32'h40140000, 32'h40140fff}
+    }},
+    '{"otbn", '{
+        '{32'h50000000, 32'h503fffff}
 }}};
 
   // List of Xbar hosts
@@ -72,7 +75,8 @@
         "pinmux",
         "padctrl",
         "alert_handler",
-        "nmi_gen"}}
+        "nmi_gen",
+        "otbn"}}
     ,
     '{"dm_sba", 2, '{
         "rom",
@@ -86,5 +90,6 @@
         "pinmux",
         "padctrl",
         "alert_handler",
-        "nmi_gen"}}
+        "nmi_gen",
+        "otbn"}}
 };
diff --git a/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_main_bind.sv b/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_main_bind.sv
index af713e1..10e0c6c 100644
--- a/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_main_bind.sv
+++ b/hw/top_earlgrey/ip/xbar_main/dv/autogen/xbar_main_bind.sv
@@ -104,5 +104,11 @@
     .h2d    (tl_nmi_gen_o),
     .d2h    (tl_nmi_gen_i)
   );
+  bind xbar_main tlul_assert #(.EndpointType("Host")) tlul_assert_device_otbn (
+    .clk_i  (clk_main_i),
+    .rst_ni (rst_main_ni),
+    .h2d    (tl_otbn_o),
+    .d2h    (tl_otbn_i)
+  );
 
 endmodule
diff --git a/hw/top_earlgrey/ip/xbar_main/rtl/autogen/tl_main_pkg.sv b/hw/top_earlgrey/ip/xbar_main/rtl/autogen/tl_main_pkg.sv
index 4fc0400..77b9388 100644
--- a/hw/top_earlgrey/ip/xbar_main/rtl/autogen/tl_main_pkg.sv
+++ b/hw/top_earlgrey/ip/xbar_main/rtl/autogen/tl_main_pkg.sv
@@ -25,6 +25,7 @@
   localparam logic [31:0] ADDR_SPACE_PADCTRL       = 32'h 40160000;
   localparam logic [31:0] ADDR_SPACE_ALERT_HANDLER = 32'h 40130000;
   localparam logic [31:0] ADDR_SPACE_NMI_GEN       = 32'h 40140000;
+  localparam logic [31:0] ADDR_SPACE_OTBN          = 32'h 50000000;
 
   localparam logic [31:0] ADDR_MASK_ROM           = 32'h 00003fff;
   localparam logic [31:0] ADDR_MASK_DEBUG_MEM     = 32'h 00000fff;
@@ -45,9 +46,10 @@
   localparam logic [31:0] ADDR_MASK_PADCTRL       = 32'h 00000fff;
   localparam logic [31:0] ADDR_MASK_ALERT_HANDLER = 32'h 00000fff;
   localparam logic [31:0] ADDR_MASK_NMI_GEN       = 32'h 00000fff;
+  localparam logic [31:0] ADDR_MASK_OTBN          = 32'h 003fffff;
 
   localparam int N_HOST   = 3;
-  localparam int N_DEVICE = 13;
+  localparam int N_DEVICE = 14;
 
   typedef enum int {
     TlRom = 0,
@@ -62,7 +64,8 @@
     TlPinmux = 9,
     TlPadctrl = 10,
     TlAlertHandler = 11,
-    TlNmiGen = 12
+    TlNmiGen = 12,
+    TlOtbn = 13
   } tl_device_e;
 
   typedef enum int {
diff --git a/hw/top_earlgrey/ip/xbar_main/rtl/autogen/xbar_main.sv b/hw/top_earlgrey/ip/xbar_main/rtl/autogen/xbar_main.sv
index 62e2c9b..5384a3b 100644
--- a/hw/top_earlgrey/ip/xbar_main/rtl/autogen/xbar_main.sv
+++ b/hw/top_earlgrey/ip/xbar_main/rtl/autogen/xbar_main.sv
@@ -7,71 +7,75 @@
 //
 // Interconnect
 // corei
-//   -> s1n_16
-//     -> sm1_17
-//       -> rom
+//   -> s1n_17
 //     -> sm1_18
-//       -> debug_mem
+//       -> rom
 //     -> sm1_19
-//       -> ram_main
+//       -> debug_mem
 //     -> sm1_20
+//       -> ram_main
+//     -> sm1_21
 //       -> eflash
 // cored
-//   -> s1n_21
-//     -> sm1_17
-//       -> rom
+//   -> s1n_22
 //     -> sm1_18
-//       -> debug_mem
-//     -> sm1_19
-//       -> ram_main
-//     -> sm1_20
-//       -> eflash
-//     -> sm1_23
-//       -> asf_22
-//         -> peri
-//     -> sm1_24
-//       -> flash_ctrl
-//     -> sm1_25
-//       -> aes
-//     -> sm1_26
-//       -> hmac
-//     -> sm1_27
-//       -> rv_plic
-//     -> sm1_28
-//       -> pinmux
-//     -> sm1_29
-//       -> padctrl
-//     -> sm1_30
-//       -> alert_handler
-//     -> sm1_31
-//       -> nmi_gen
-// dm_sba
-//   -> s1n_32
-//     -> sm1_17
 //       -> rom
 //     -> sm1_19
-//       -> ram_main
+//       -> debug_mem
 //     -> sm1_20
+//       -> ram_main
+//     -> sm1_21
 //       -> eflash
-//     -> sm1_23
-//       -> asf_22
-//         -> peri
 //     -> sm1_24
-//       -> flash_ctrl
+//       -> asf_23
+//         -> peri
 //     -> sm1_25
-//       -> aes
+//       -> flash_ctrl
 //     -> sm1_26
-//       -> hmac
+//       -> aes
 //     -> sm1_27
-//       -> rv_plic
+//       -> hmac
 //     -> sm1_28
-//       -> pinmux
+//       -> rv_plic
 //     -> sm1_29
-//       -> padctrl
+//       -> pinmux
 //     -> sm1_30
-//       -> alert_handler
+//       -> padctrl
 //     -> sm1_31
+//       -> alert_handler
+//     -> sm1_32
 //       -> nmi_gen
+//     -> sm1_33
+//       -> otbn
+// dm_sba
+//   -> s1n_34
+//     -> sm1_18
+//       -> rom
+//     -> sm1_20
+//       -> ram_main
+//     -> sm1_21
+//       -> eflash
+//     -> sm1_24
+//       -> asf_23
+//         -> peri
+//     -> sm1_25
+//       -> flash_ctrl
+//     -> sm1_26
+//       -> aes
+//     -> sm1_27
+//       -> hmac
+//     -> sm1_28
+//       -> rv_plic
+//     -> sm1_29
+//       -> pinmux
+//     -> sm1_30
+//       -> padctrl
+//     -> sm1_31
+//       -> alert_handler
+//     -> sm1_32
+//       -> nmi_gen
+//     -> sm1_33
+//       -> otbn
 
 module xbar_main (
   input clk_main_i,
@@ -114,6 +118,8 @@
   input  tlul_pkg::tl_d2h_t tl_alert_handler_i,
   output tlul_pkg::tl_h2d_t tl_nmi_gen_o,
   input  tlul_pkg::tl_d2h_t tl_nmi_gen_i,
+  output tlul_pkg::tl_h2d_t tl_otbn_o,
+  input  tlul_pkg::tl_d2h_t tl_otbn_i,
 
   input scanmode_i
 );
@@ -126,33 +132,26 @@
   logic unused_scanmode;
   assign unused_scanmode = scanmode_i;
 
-  tl_h2d_t tl_s1n_16_us_h2d ;
-  tl_d2h_t tl_s1n_16_us_d2h ;
+  tl_h2d_t tl_s1n_17_us_h2d ;
+  tl_d2h_t tl_s1n_17_us_d2h ;
 
 
-  tl_h2d_t tl_s1n_16_ds_h2d [4];
-  tl_d2h_t tl_s1n_16_ds_d2h [4];
+  tl_h2d_t tl_s1n_17_ds_h2d [4];
+  tl_d2h_t tl_s1n_17_ds_d2h [4];
 
   // Create steering signal
-  logic [2:0] dev_sel_s1n_16;
+  logic [2:0] dev_sel_s1n_17;
 
 
-  tl_h2d_t tl_sm1_17_us_h2d [3];
-  tl_d2h_t tl_sm1_17_us_d2h [3];
-
-  tl_h2d_t tl_sm1_17_ds_h2d ;
-  tl_d2h_t tl_sm1_17_ds_d2h ;
-
-
-  tl_h2d_t tl_sm1_18_us_h2d [2];
-  tl_d2h_t tl_sm1_18_us_d2h [2];
+  tl_h2d_t tl_sm1_18_us_h2d [3];
+  tl_d2h_t tl_sm1_18_us_d2h [3];
 
   tl_h2d_t tl_sm1_18_ds_h2d ;
   tl_d2h_t tl_sm1_18_ds_d2h ;
 
 
-  tl_h2d_t tl_sm1_19_us_h2d [3];
-  tl_d2h_t tl_sm1_19_us_d2h [3];
+  tl_h2d_t tl_sm1_19_us_h2d [2];
+  tl_d2h_t tl_sm1_19_us_d2h [2];
 
   tl_h2d_t tl_sm1_19_ds_h2d ;
   tl_d2h_t tl_sm1_19_ds_d2h ;
@@ -164,27 +163,27 @@
   tl_h2d_t tl_sm1_20_ds_h2d ;
   tl_d2h_t tl_sm1_20_ds_d2h ;
 
-  tl_h2d_t tl_s1n_21_us_h2d ;
-  tl_d2h_t tl_s1n_21_us_d2h ;
+
+  tl_h2d_t tl_sm1_21_us_h2d [3];
+  tl_d2h_t tl_sm1_21_us_d2h [3];
+
+  tl_h2d_t tl_sm1_21_ds_h2d ;
+  tl_d2h_t tl_sm1_21_ds_d2h ;
+
+  tl_h2d_t tl_s1n_22_us_h2d ;
+  tl_d2h_t tl_s1n_22_us_d2h ;
 
 
-  tl_h2d_t tl_s1n_21_ds_h2d [13];
-  tl_d2h_t tl_s1n_21_ds_d2h [13];
+  tl_h2d_t tl_s1n_22_ds_h2d [14];
+  tl_d2h_t tl_s1n_22_ds_d2h [14];
 
   // Create steering signal
-  logic [3:0] dev_sel_s1n_21;
+  logic [3:0] dev_sel_s1n_22;
 
-  tl_h2d_t tl_asf_22_us_h2d ;
-  tl_d2h_t tl_asf_22_us_d2h ;
-  tl_h2d_t tl_asf_22_ds_h2d ;
-  tl_d2h_t tl_asf_22_ds_d2h ;
-
-
-  tl_h2d_t tl_sm1_23_us_h2d [2];
-  tl_d2h_t tl_sm1_23_us_d2h [2];
-
-  tl_h2d_t tl_sm1_23_ds_h2d ;
-  tl_d2h_t tl_sm1_23_ds_d2h ;
+  tl_h2d_t tl_asf_23_us_h2d ;
+  tl_d2h_t tl_asf_23_us_d2h ;
+  tl_h2d_t tl_asf_23_ds_h2d ;
+  tl_d2h_t tl_asf_23_ds_d2h ;
 
 
   tl_h2d_t tl_sm1_24_us_h2d [2];
@@ -242,275 +241,304 @@
   tl_h2d_t tl_sm1_31_ds_h2d ;
   tl_d2h_t tl_sm1_31_ds_d2h ;
 
-  tl_h2d_t tl_s1n_32_us_h2d ;
-  tl_d2h_t tl_s1n_32_us_d2h ;
+
+  tl_h2d_t tl_sm1_32_us_h2d [2];
+  tl_d2h_t tl_sm1_32_us_d2h [2];
+
+  tl_h2d_t tl_sm1_32_ds_h2d ;
+  tl_d2h_t tl_sm1_32_ds_d2h ;
 
 
-  tl_h2d_t tl_s1n_32_ds_h2d [12];
-  tl_d2h_t tl_s1n_32_ds_d2h [12];
+  tl_h2d_t tl_sm1_33_us_h2d [2];
+  tl_d2h_t tl_sm1_33_us_d2h [2];
+
+  tl_h2d_t tl_sm1_33_ds_h2d ;
+  tl_d2h_t tl_sm1_33_ds_d2h ;
+
+  tl_h2d_t tl_s1n_34_us_h2d ;
+  tl_d2h_t tl_s1n_34_us_d2h ;
+
+
+  tl_h2d_t tl_s1n_34_ds_h2d [13];
+  tl_d2h_t tl_s1n_34_ds_d2h [13];
 
   // Create steering signal
-  logic [3:0] dev_sel_s1n_32;
+  logic [3:0] dev_sel_s1n_34;
 
 
 
-  assign tl_sm1_17_us_h2d[0] = tl_s1n_16_ds_h2d[0];
-  assign tl_s1n_16_ds_d2h[0] = tl_sm1_17_us_d2h[0];
+  assign tl_sm1_18_us_h2d[0] = tl_s1n_17_ds_h2d[0];
+  assign tl_s1n_17_ds_d2h[0] = tl_sm1_18_us_d2h[0];
 
-  assign tl_sm1_18_us_h2d[0] = tl_s1n_16_ds_h2d[1];
-  assign tl_s1n_16_ds_d2h[1] = tl_sm1_18_us_d2h[0];
+  assign tl_sm1_19_us_h2d[0] = tl_s1n_17_ds_h2d[1];
+  assign tl_s1n_17_ds_d2h[1] = tl_sm1_19_us_d2h[0];
 
-  assign tl_sm1_19_us_h2d[0] = tl_s1n_16_ds_h2d[2];
-  assign tl_s1n_16_ds_d2h[2] = tl_sm1_19_us_d2h[0];
+  assign tl_sm1_20_us_h2d[0] = tl_s1n_17_ds_h2d[2];
+  assign tl_s1n_17_ds_d2h[2] = tl_sm1_20_us_d2h[0];
 
-  assign tl_sm1_20_us_h2d[0] = tl_s1n_16_ds_h2d[3];
-  assign tl_s1n_16_ds_d2h[3] = tl_sm1_20_us_d2h[0];
+  assign tl_sm1_21_us_h2d[0] = tl_s1n_17_ds_h2d[3];
+  assign tl_s1n_17_ds_d2h[3] = tl_sm1_21_us_d2h[0];
 
-  assign tl_sm1_17_us_h2d[1] = tl_s1n_21_ds_h2d[0];
-  assign tl_s1n_21_ds_d2h[0] = tl_sm1_17_us_d2h[1];
+  assign tl_sm1_18_us_h2d[1] = tl_s1n_22_ds_h2d[0];
+  assign tl_s1n_22_ds_d2h[0] = tl_sm1_18_us_d2h[1];
 
-  assign tl_sm1_18_us_h2d[1] = tl_s1n_21_ds_h2d[1];
-  assign tl_s1n_21_ds_d2h[1] = tl_sm1_18_us_d2h[1];
+  assign tl_sm1_19_us_h2d[1] = tl_s1n_22_ds_h2d[1];
+  assign tl_s1n_22_ds_d2h[1] = tl_sm1_19_us_d2h[1];
 
-  assign tl_sm1_19_us_h2d[1] = tl_s1n_21_ds_h2d[2];
-  assign tl_s1n_21_ds_d2h[2] = tl_sm1_19_us_d2h[1];
+  assign tl_sm1_20_us_h2d[1] = tl_s1n_22_ds_h2d[2];
+  assign tl_s1n_22_ds_d2h[2] = tl_sm1_20_us_d2h[1];
 
-  assign tl_sm1_20_us_h2d[1] = tl_s1n_21_ds_h2d[3];
-  assign tl_s1n_21_ds_d2h[3] = tl_sm1_20_us_d2h[1];
+  assign tl_sm1_21_us_h2d[1] = tl_s1n_22_ds_h2d[3];
+  assign tl_s1n_22_ds_d2h[3] = tl_sm1_21_us_d2h[1];
 
-  assign tl_sm1_23_us_h2d[0] = tl_s1n_21_ds_h2d[4];
-  assign tl_s1n_21_ds_d2h[4] = tl_sm1_23_us_d2h[0];
+  assign tl_sm1_24_us_h2d[0] = tl_s1n_22_ds_h2d[4];
+  assign tl_s1n_22_ds_d2h[4] = tl_sm1_24_us_d2h[0];
 
-  assign tl_sm1_24_us_h2d[0] = tl_s1n_21_ds_h2d[5];
-  assign tl_s1n_21_ds_d2h[5] = tl_sm1_24_us_d2h[0];
+  assign tl_sm1_25_us_h2d[0] = tl_s1n_22_ds_h2d[5];
+  assign tl_s1n_22_ds_d2h[5] = tl_sm1_25_us_d2h[0];
 
-  assign tl_sm1_25_us_h2d[0] = tl_s1n_21_ds_h2d[6];
-  assign tl_s1n_21_ds_d2h[6] = tl_sm1_25_us_d2h[0];
+  assign tl_sm1_26_us_h2d[0] = tl_s1n_22_ds_h2d[6];
+  assign tl_s1n_22_ds_d2h[6] = tl_sm1_26_us_d2h[0];
 
-  assign tl_sm1_26_us_h2d[0] = tl_s1n_21_ds_h2d[7];
-  assign tl_s1n_21_ds_d2h[7] = tl_sm1_26_us_d2h[0];
+  assign tl_sm1_27_us_h2d[0] = tl_s1n_22_ds_h2d[7];
+  assign tl_s1n_22_ds_d2h[7] = tl_sm1_27_us_d2h[0];
 
-  assign tl_sm1_27_us_h2d[0] = tl_s1n_21_ds_h2d[8];
-  assign tl_s1n_21_ds_d2h[8] = tl_sm1_27_us_d2h[0];
+  assign tl_sm1_28_us_h2d[0] = tl_s1n_22_ds_h2d[8];
+  assign tl_s1n_22_ds_d2h[8] = tl_sm1_28_us_d2h[0];
 
-  assign tl_sm1_28_us_h2d[0] = tl_s1n_21_ds_h2d[9];
-  assign tl_s1n_21_ds_d2h[9] = tl_sm1_28_us_d2h[0];
+  assign tl_sm1_29_us_h2d[0] = tl_s1n_22_ds_h2d[9];
+  assign tl_s1n_22_ds_d2h[9] = tl_sm1_29_us_d2h[0];
 
-  assign tl_sm1_29_us_h2d[0] = tl_s1n_21_ds_h2d[10];
-  assign tl_s1n_21_ds_d2h[10] = tl_sm1_29_us_d2h[0];
+  assign tl_sm1_30_us_h2d[0] = tl_s1n_22_ds_h2d[10];
+  assign tl_s1n_22_ds_d2h[10] = tl_sm1_30_us_d2h[0];
 
-  assign tl_sm1_30_us_h2d[0] = tl_s1n_21_ds_h2d[11];
-  assign tl_s1n_21_ds_d2h[11] = tl_sm1_30_us_d2h[0];
+  assign tl_sm1_31_us_h2d[0] = tl_s1n_22_ds_h2d[11];
+  assign tl_s1n_22_ds_d2h[11] = tl_sm1_31_us_d2h[0];
 
-  assign tl_sm1_31_us_h2d[0] = tl_s1n_21_ds_h2d[12];
-  assign tl_s1n_21_ds_d2h[12] = tl_sm1_31_us_d2h[0];
+  assign tl_sm1_32_us_h2d[0] = tl_s1n_22_ds_h2d[12];
+  assign tl_s1n_22_ds_d2h[12] = tl_sm1_32_us_d2h[0];
 
-  assign tl_sm1_17_us_h2d[2] = tl_s1n_32_ds_h2d[0];
-  assign tl_s1n_32_ds_d2h[0] = tl_sm1_17_us_d2h[2];
+  assign tl_sm1_33_us_h2d[0] = tl_s1n_22_ds_h2d[13];
+  assign tl_s1n_22_ds_d2h[13] = tl_sm1_33_us_d2h[0];
 
-  assign tl_sm1_19_us_h2d[2] = tl_s1n_32_ds_h2d[1];
-  assign tl_s1n_32_ds_d2h[1] = tl_sm1_19_us_d2h[2];
+  assign tl_sm1_18_us_h2d[2] = tl_s1n_34_ds_h2d[0];
+  assign tl_s1n_34_ds_d2h[0] = tl_sm1_18_us_d2h[2];
 
-  assign tl_sm1_20_us_h2d[2] = tl_s1n_32_ds_h2d[2];
-  assign tl_s1n_32_ds_d2h[2] = tl_sm1_20_us_d2h[2];
+  assign tl_sm1_20_us_h2d[2] = tl_s1n_34_ds_h2d[1];
+  assign tl_s1n_34_ds_d2h[1] = tl_sm1_20_us_d2h[2];
 
-  assign tl_sm1_23_us_h2d[1] = tl_s1n_32_ds_h2d[3];
-  assign tl_s1n_32_ds_d2h[3] = tl_sm1_23_us_d2h[1];
+  assign tl_sm1_21_us_h2d[2] = tl_s1n_34_ds_h2d[2];
+  assign tl_s1n_34_ds_d2h[2] = tl_sm1_21_us_d2h[2];
 
-  assign tl_sm1_24_us_h2d[1] = tl_s1n_32_ds_h2d[4];
-  assign tl_s1n_32_ds_d2h[4] = tl_sm1_24_us_d2h[1];
+  assign tl_sm1_24_us_h2d[1] = tl_s1n_34_ds_h2d[3];
+  assign tl_s1n_34_ds_d2h[3] = tl_sm1_24_us_d2h[1];
 
-  assign tl_sm1_25_us_h2d[1] = tl_s1n_32_ds_h2d[5];
-  assign tl_s1n_32_ds_d2h[5] = tl_sm1_25_us_d2h[1];
+  assign tl_sm1_25_us_h2d[1] = tl_s1n_34_ds_h2d[4];
+  assign tl_s1n_34_ds_d2h[4] = tl_sm1_25_us_d2h[1];
 
-  assign tl_sm1_26_us_h2d[1] = tl_s1n_32_ds_h2d[6];
-  assign tl_s1n_32_ds_d2h[6] = tl_sm1_26_us_d2h[1];
+  assign tl_sm1_26_us_h2d[1] = tl_s1n_34_ds_h2d[5];
+  assign tl_s1n_34_ds_d2h[5] = tl_sm1_26_us_d2h[1];
 
-  assign tl_sm1_27_us_h2d[1] = tl_s1n_32_ds_h2d[7];
-  assign tl_s1n_32_ds_d2h[7] = tl_sm1_27_us_d2h[1];
+  assign tl_sm1_27_us_h2d[1] = tl_s1n_34_ds_h2d[6];
+  assign tl_s1n_34_ds_d2h[6] = tl_sm1_27_us_d2h[1];
 
-  assign tl_sm1_28_us_h2d[1] = tl_s1n_32_ds_h2d[8];
-  assign tl_s1n_32_ds_d2h[8] = tl_sm1_28_us_d2h[1];
+  assign tl_sm1_28_us_h2d[1] = tl_s1n_34_ds_h2d[7];
+  assign tl_s1n_34_ds_d2h[7] = tl_sm1_28_us_d2h[1];
 
-  assign tl_sm1_29_us_h2d[1] = tl_s1n_32_ds_h2d[9];
-  assign tl_s1n_32_ds_d2h[9] = tl_sm1_29_us_d2h[1];
+  assign tl_sm1_29_us_h2d[1] = tl_s1n_34_ds_h2d[8];
+  assign tl_s1n_34_ds_d2h[8] = tl_sm1_29_us_d2h[1];
 
-  assign tl_sm1_30_us_h2d[1] = tl_s1n_32_ds_h2d[10];
-  assign tl_s1n_32_ds_d2h[10] = tl_sm1_30_us_d2h[1];
+  assign tl_sm1_30_us_h2d[1] = tl_s1n_34_ds_h2d[9];
+  assign tl_s1n_34_ds_d2h[9] = tl_sm1_30_us_d2h[1];
 
-  assign tl_sm1_31_us_h2d[1] = tl_s1n_32_ds_h2d[11];
-  assign tl_s1n_32_ds_d2h[11] = tl_sm1_31_us_d2h[1];
+  assign tl_sm1_31_us_h2d[1] = tl_s1n_34_ds_h2d[10];
+  assign tl_s1n_34_ds_d2h[10] = tl_sm1_31_us_d2h[1];
 
-  assign tl_s1n_16_us_h2d = tl_corei_i;
-  assign tl_corei_o = tl_s1n_16_us_d2h;
+  assign tl_sm1_32_us_h2d[1] = tl_s1n_34_ds_h2d[11];
+  assign tl_s1n_34_ds_d2h[11] = tl_sm1_32_us_d2h[1];
 
-  assign tl_rom_o = tl_sm1_17_ds_h2d;
-  assign tl_sm1_17_ds_d2h = tl_rom_i;
+  assign tl_sm1_33_us_h2d[1] = tl_s1n_34_ds_h2d[12];
+  assign tl_s1n_34_ds_d2h[12] = tl_sm1_33_us_d2h[1];
 
-  assign tl_debug_mem_o = tl_sm1_18_ds_h2d;
-  assign tl_sm1_18_ds_d2h = tl_debug_mem_i;
+  assign tl_s1n_17_us_h2d = tl_corei_i;
+  assign tl_corei_o = tl_s1n_17_us_d2h;
 
-  assign tl_ram_main_o = tl_sm1_19_ds_h2d;
-  assign tl_sm1_19_ds_d2h = tl_ram_main_i;
+  assign tl_rom_o = tl_sm1_18_ds_h2d;
+  assign tl_sm1_18_ds_d2h = tl_rom_i;
 
-  assign tl_eflash_o = tl_sm1_20_ds_h2d;
-  assign tl_sm1_20_ds_d2h = tl_eflash_i;
+  assign tl_debug_mem_o = tl_sm1_19_ds_h2d;
+  assign tl_sm1_19_ds_d2h = tl_debug_mem_i;
 
-  assign tl_s1n_21_us_h2d = tl_cored_i;
-  assign tl_cored_o = tl_s1n_21_us_d2h;
+  assign tl_ram_main_o = tl_sm1_20_ds_h2d;
+  assign tl_sm1_20_ds_d2h = tl_ram_main_i;
 
-  assign tl_peri_o = tl_asf_22_ds_h2d;
-  assign tl_asf_22_ds_d2h = tl_peri_i;
+  assign tl_eflash_o = tl_sm1_21_ds_h2d;
+  assign tl_sm1_21_ds_d2h = tl_eflash_i;
 
-  assign tl_asf_22_us_h2d = tl_sm1_23_ds_h2d;
-  assign tl_sm1_23_ds_d2h = tl_asf_22_us_d2h;
+  assign tl_s1n_22_us_h2d = tl_cored_i;
+  assign tl_cored_o = tl_s1n_22_us_d2h;
 
-  assign tl_flash_ctrl_o = tl_sm1_24_ds_h2d;
-  assign tl_sm1_24_ds_d2h = tl_flash_ctrl_i;
+  assign tl_peri_o = tl_asf_23_ds_h2d;
+  assign tl_asf_23_ds_d2h = tl_peri_i;
 
-  assign tl_aes_o = tl_sm1_25_ds_h2d;
-  assign tl_sm1_25_ds_d2h = tl_aes_i;
+  assign tl_asf_23_us_h2d = tl_sm1_24_ds_h2d;
+  assign tl_sm1_24_ds_d2h = tl_asf_23_us_d2h;
 
-  assign tl_hmac_o = tl_sm1_26_ds_h2d;
-  assign tl_sm1_26_ds_d2h = tl_hmac_i;
+  assign tl_flash_ctrl_o = tl_sm1_25_ds_h2d;
+  assign tl_sm1_25_ds_d2h = tl_flash_ctrl_i;
 
-  assign tl_rv_plic_o = tl_sm1_27_ds_h2d;
-  assign tl_sm1_27_ds_d2h = tl_rv_plic_i;
+  assign tl_aes_o = tl_sm1_26_ds_h2d;
+  assign tl_sm1_26_ds_d2h = tl_aes_i;
 
-  assign tl_pinmux_o = tl_sm1_28_ds_h2d;
-  assign tl_sm1_28_ds_d2h = tl_pinmux_i;
+  assign tl_hmac_o = tl_sm1_27_ds_h2d;
+  assign tl_sm1_27_ds_d2h = tl_hmac_i;
 
-  assign tl_padctrl_o = tl_sm1_29_ds_h2d;
-  assign tl_sm1_29_ds_d2h = tl_padctrl_i;
+  assign tl_rv_plic_o = tl_sm1_28_ds_h2d;
+  assign tl_sm1_28_ds_d2h = tl_rv_plic_i;
 
-  assign tl_alert_handler_o = tl_sm1_30_ds_h2d;
-  assign tl_sm1_30_ds_d2h = tl_alert_handler_i;
+  assign tl_pinmux_o = tl_sm1_29_ds_h2d;
+  assign tl_sm1_29_ds_d2h = tl_pinmux_i;
 
-  assign tl_nmi_gen_o = tl_sm1_31_ds_h2d;
-  assign tl_sm1_31_ds_d2h = tl_nmi_gen_i;
+  assign tl_padctrl_o = tl_sm1_30_ds_h2d;
+  assign tl_sm1_30_ds_d2h = tl_padctrl_i;
 
-  assign tl_s1n_32_us_h2d = tl_dm_sba_i;
-  assign tl_dm_sba_o = tl_s1n_32_us_d2h;
+  assign tl_alert_handler_o = tl_sm1_31_ds_h2d;
+  assign tl_sm1_31_ds_d2h = tl_alert_handler_i;
+
+  assign tl_nmi_gen_o = tl_sm1_32_ds_h2d;
+  assign tl_sm1_32_ds_d2h = tl_nmi_gen_i;
+
+  assign tl_otbn_o = tl_sm1_33_ds_h2d;
+  assign tl_sm1_33_ds_d2h = tl_otbn_i;
+
+  assign tl_s1n_34_us_h2d = tl_dm_sba_i;
+  assign tl_dm_sba_o = tl_s1n_34_us_d2h;
 
   always_comb begin
     // default steering to generate error response if address is not within the range
-    dev_sel_s1n_16 = 3'd4;
-    if ((tl_s1n_16_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
-      dev_sel_s1n_16 = 3'd0;
+    dev_sel_s1n_17 = 3'd4;
+    if ((tl_s1n_17_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
+      dev_sel_s1n_17 = 3'd0;
 
-    end else if ((tl_s1n_16_us_h2d.a_address & ~(ADDR_MASK_DEBUG_MEM)) == ADDR_SPACE_DEBUG_MEM) begin
-      dev_sel_s1n_16 = 3'd1;
+    end else if ((tl_s1n_17_us_h2d.a_address & ~(ADDR_MASK_DEBUG_MEM)) == ADDR_SPACE_DEBUG_MEM) begin
+      dev_sel_s1n_17 = 3'd1;
 
-    end else if ((tl_s1n_16_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
-      dev_sel_s1n_16 = 3'd2;
+    end else if ((tl_s1n_17_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
+      dev_sel_s1n_17 = 3'd2;
 
-    end else if ((tl_s1n_16_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
-      dev_sel_s1n_16 = 3'd3;
+    end else if ((tl_s1n_17_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
+      dev_sel_s1n_17 = 3'd3;
 end
   end
 
   always_comb begin
     // default steering to generate error response if address is not within the range
-    dev_sel_s1n_21 = 4'd13;
-    if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
-      dev_sel_s1n_21 = 4'd0;
+    dev_sel_s1n_22 = 4'd14;
+    if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
+      dev_sel_s1n_22 = 4'd0;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_DEBUG_MEM)) == ADDR_SPACE_DEBUG_MEM) begin
-      dev_sel_s1n_21 = 4'd1;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_DEBUG_MEM)) == ADDR_SPACE_DEBUG_MEM) begin
+      dev_sel_s1n_22 = 4'd1;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
-      dev_sel_s1n_21 = 4'd2;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
+      dev_sel_s1n_22 = 4'd2;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
-      dev_sel_s1n_21 = 4'd3;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
+      dev_sel_s1n_22 = 4'd3;
 
     end else if (
-      ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_PERI[0])) == ADDR_SPACE_PERI[0]) ||
-      ((tl_s1n_21_us_h2d.a_address <= (ADDR_MASK_PERI[1] + ADDR_SPACE_PERI[1])) &&
-       (tl_s1n_21_us_h2d.a_address >= ADDR_SPACE_PERI[1])) ||
-      ((tl_s1n_21_us_h2d.a_address <= (ADDR_MASK_PERI[2] + ADDR_SPACE_PERI[2])) &&
-       (tl_s1n_21_us_h2d.a_address >= ADDR_SPACE_PERI[2])) ||
-      ((tl_s1n_21_us_h2d.a_address <= (ADDR_MASK_PERI[3] + ADDR_SPACE_PERI[3])) &&
-       (tl_s1n_21_us_h2d.a_address >= ADDR_SPACE_PERI[3])) ||
-      ((tl_s1n_21_us_h2d.a_address <= (ADDR_MASK_PERI[4] + ADDR_SPACE_PERI[4])) &&
-       (tl_s1n_21_us_h2d.a_address >= ADDR_SPACE_PERI[4]))
+      ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_PERI[0])) == ADDR_SPACE_PERI[0]) ||
+      ((tl_s1n_22_us_h2d.a_address <= (ADDR_MASK_PERI[1] + ADDR_SPACE_PERI[1])) &&
+       (tl_s1n_22_us_h2d.a_address >= ADDR_SPACE_PERI[1])) ||
+      ((tl_s1n_22_us_h2d.a_address <= (ADDR_MASK_PERI[2] + ADDR_SPACE_PERI[2])) &&
+       (tl_s1n_22_us_h2d.a_address >= ADDR_SPACE_PERI[2])) ||
+      ((tl_s1n_22_us_h2d.a_address <= (ADDR_MASK_PERI[3] + ADDR_SPACE_PERI[3])) &&
+       (tl_s1n_22_us_h2d.a_address >= ADDR_SPACE_PERI[3])) ||
+      ((tl_s1n_22_us_h2d.a_address <= (ADDR_MASK_PERI[4] + ADDR_SPACE_PERI[4])) &&
+       (tl_s1n_22_us_h2d.a_address >= ADDR_SPACE_PERI[4]))
     ) begin
-      dev_sel_s1n_21 = 4'd4;
+      dev_sel_s1n_22 = 4'd4;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_FLASH_CTRL)) == ADDR_SPACE_FLASH_CTRL) begin
-      dev_sel_s1n_21 = 4'd5;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_FLASH_CTRL)) == ADDR_SPACE_FLASH_CTRL) begin
+      dev_sel_s1n_22 = 4'd5;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_AES)) == ADDR_SPACE_AES) begin
-      dev_sel_s1n_21 = 4'd6;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_AES)) == ADDR_SPACE_AES) begin
+      dev_sel_s1n_22 = 4'd6;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_HMAC)) == ADDR_SPACE_HMAC) begin
-      dev_sel_s1n_21 = 4'd7;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_HMAC)) == ADDR_SPACE_HMAC) begin
+      dev_sel_s1n_22 = 4'd7;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_RV_PLIC)) == ADDR_SPACE_RV_PLIC) begin
-      dev_sel_s1n_21 = 4'd8;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_RV_PLIC)) == ADDR_SPACE_RV_PLIC) begin
+      dev_sel_s1n_22 = 4'd8;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_PINMUX)) == ADDR_SPACE_PINMUX) begin
-      dev_sel_s1n_21 = 4'd9;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_PINMUX)) == ADDR_SPACE_PINMUX) begin
+      dev_sel_s1n_22 = 4'd9;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_PADCTRL)) == ADDR_SPACE_PADCTRL) begin
-      dev_sel_s1n_21 = 4'd10;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_PADCTRL)) == ADDR_SPACE_PADCTRL) begin
+      dev_sel_s1n_22 = 4'd10;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_ALERT_HANDLER)) == ADDR_SPACE_ALERT_HANDLER) begin
-      dev_sel_s1n_21 = 4'd11;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_ALERT_HANDLER)) == ADDR_SPACE_ALERT_HANDLER) begin
+      dev_sel_s1n_22 = 4'd11;
 
-    end else if ((tl_s1n_21_us_h2d.a_address & ~(ADDR_MASK_NMI_GEN)) == ADDR_SPACE_NMI_GEN) begin
-      dev_sel_s1n_21 = 4'd12;
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_NMI_GEN)) == ADDR_SPACE_NMI_GEN) begin
+      dev_sel_s1n_22 = 4'd12;
+
+    end else if ((tl_s1n_22_us_h2d.a_address & ~(ADDR_MASK_OTBN)) == ADDR_SPACE_OTBN) begin
+      dev_sel_s1n_22 = 4'd13;
 end
   end
 
   always_comb begin
     // default steering to generate error response if address is not within the range
-    dev_sel_s1n_32 = 4'd12;
-    if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
-      dev_sel_s1n_32 = 4'd0;
+    dev_sel_s1n_34 = 4'd13;
+    if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_ROM)) == ADDR_SPACE_ROM) begin
+      dev_sel_s1n_34 = 4'd0;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
-      dev_sel_s1n_32 = 4'd1;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_RAM_MAIN)) == ADDR_SPACE_RAM_MAIN) begin
+      dev_sel_s1n_34 = 4'd1;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
-      dev_sel_s1n_32 = 4'd2;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_EFLASH)) == ADDR_SPACE_EFLASH) begin
+      dev_sel_s1n_34 = 4'd2;
 
     end else if (
-      ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_PERI[0])) == ADDR_SPACE_PERI[0]) ||
-      ((tl_s1n_32_us_h2d.a_address <= (ADDR_MASK_PERI[1] + ADDR_SPACE_PERI[1])) &&
-       (tl_s1n_32_us_h2d.a_address >= ADDR_SPACE_PERI[1])) ||
-      ((tl_s1n_32_us_h2d.a_address <= (ADDR_MASK_PERI[2] + ADDR_SPACE_PERI[2])) &&
-       (tl_s1n_32_us_h2d.a_address >= ADDR_SPACE_PERI[2])) ||
-      ((tl_s1n_32_us_h2d.a_address <= (ADDR_MASK_PERI[3] + ADDR_SPACE_PERI[3])) &&
-       (tl_s1n_32_us_h2d.a_address >= ADDR_SPACE_PERI[3])) ||
-      ((tl_s1n_32_us_h2d.a_address <= (ADDR_MASK_PERI[4] + ADDR_SPACE_PERI[4])) &&
-       (tl_s1n_32_us_h2d.a_address >= ADDR_SPACE_PERI[4]))
+      ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_PERI[0])) == ADDR_SPACE_PERI[0]) ||
+      ((tl_s1n_34_us_h2d.a_address <= (ADDR_MASK_PERI[1] + ADDR_SPACE_PERI[1])) &&
+       (tl_s1n_34_us_h2d.a_address >= ADDR_SPACE_PERI[1])) ||
+      ((tl_s1n_34_us_h2d.a_address <= (ADDR_MASK_PERI[2] + ADDR_SPACE_PERI[2])) &&
+       (tl_s1n_34_us_h2d.a_address >= ADDR_SPACE_PERI[2])) ||
+      ((tl_s1n_34_us_h2d.a_address <= (ADDR_MASK_PERI[3] + ADDR_SPACE_PERI[3])) &&
+       (tl_s1n_34_us_h2d.a_address >= ADDR_SPACE_PERI[3])) ||
+      ((tl_s1n_34_us_h2d.a_address <= (ADDR_MASK_PERI[4] + ADDR_SPACE_PERI[4])) &&
+       (tl_s1n_34_us_h2d.a_address >= ADDR_SPACE_PERI[4]))
     ) begin
-      dev_sel_s1n_32 = 4'd3;
+      dev_sel_s1n_34 = 4'd3;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_FLASH_CTRL)) == ADDR_SPACE_FLASH_CTRL) begin
-      dev_sel_s1n_32 = 4'd4;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_FLASH_CTRL)) == ADDR_SPACE_FLASH_CTRL) begin
+      dev_sel_s1n_34 = 4'd4;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_AES)) == ADDR_SPACE_AES) begin
-      dev_sel_s1n_32 = 4'd5;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_AES)) == ADDR_SPACE_AES) begin
+      dev_sel_s1n_34 = 4'd5;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_HMAC)) == ADDR_SPACE_HMAC) begin
-      dev_sel_s1n_32 = 4'd6;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_HMAC)) == ADDR_SPACE_HMAC) begin
+      dev_sel_s1n_34 = 4'd6;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_RV_PLIC)) == ADDR_SPACE_RV_PLIC) begin
-      dev_sel_s1n_32 = 4'd7;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_RV_PLIC)) == ADDR_SPACE_RV_PLIC) begin
+      dev_sel_s1n_34 = 4'd7;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_PINMUX)) == ADDR_SPACE_PINMUX) begin
-      dev_sel_s1n_32 = 4'd8;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_PINMUX)) == ADDR_SPACE_PINMUX) begin
+      dev_sel_s1n_34 = 4'd8;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_PADCTRL)) == ADDR_SPACE_PADCTRL) begin
-      dev_sel_s1n_32 = 4'd9;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_PADCTRL)) == ADDR_SPACE_PADCTRL) begin
+      dev_sel_s1n_34 = 4'd9;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_ALERT_HANDLER)) == ADDR_SPACE_ALERT_HANDLER) begin
-      dev_sel_s1n_32 = 4'd10;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_ALERT_HANDLER)) == ADDR_SPACE_ALERT_HANDLER) begin
+      dev_sel_s1n_34 = 4'd10;
 
-    end else if ((tl_s1n_32_us_h2d.a_address & ~(ADDR_MASK_NMI_GEN)) == ADDR_SPACE_NMI_GEN) begin
-      dev_sel_s1n_32 = 4'd11;
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_NMI_GEN)) == ADDR_SPACE_NMI_GEN) begin
+      dev_sel_s1n_34 = 4'd11;
+
+    end else if ((tl_s1n_34_us_h2d.a_address & ~(ADDR_MASK_OTBN)) == ADDR_SPACE_OTBN) begin
+      dev_sel_s1n_34 = 4'd12;
 end
   end
 
@@ -522,14 +550,14 @@
     .DReqDepth (16'h0),
     .DRspDepth (16'h0),
     .N         (4)
-  ) u_s1n_16 (
+  ) u_s1n_17 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
-    .tl_h_i       (tl_s1n_16_us_h2d),
-    .tl_h_o       (tl_s1n_16_us_d2h),
-    .tl_d_o       (tl_s1n_16_ds_h2d),
-    .tl_d_i       (tl_s1n_16_ds_d2h),
-    .dev_select   (dev_sel_s1n_16)
+    .tl_h_i       (tl_s1n_17_us_h2d),
+    .tl_h_o       (tl_s1n_17_us_d2h),
+    .tl_d_o       (tl_s1n_17_ds_h2d),
+    .tl_d_i       (tl_s1n_17_ds_d2h),
+    .dev_select   (dev_sel_s1n_17)
   );
   tlul_socket_m1 #(
     .HReqDepth (12'h0),
@@ -537,20 +565,6 @@
     .DReqDepth (4'h0),
     .DRspDepth (4'h0),
     .M         (3)
-  ) u_sm1_17 (
-    .clk_i        (clk_main_i),
-    .rst_ni       (rst_main_ni),
-    .tl_h_i       (tl_sm1_17_us_h2d),
-    .tl_h_o       (tl_sm1_17_us_d2h),
-    .tl_d_o       (tl_sm1_17_ds_h2d),
-    .tl_d_i       (tl_sm1_17_ds_d2h)
-  );
-  tlul_socket_m1 #(
-    .HReqDepth (8'h0),
-    .HRspDepth (8'h0),
-    .DReqPass  (1'b0),
-    .DRspPass  (1'b0),
-    .M         (2)
   ) u_sm1_18 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
@@ -560,11 +574,11 @@
     .tl_d_i       (tl_sm1_18_ds_d2h)
   );
   tlul_socket_m1 #(
-    .HReqDepth (12'h0),
-    .HRspDepth (12'h0),
-    .DReqDepth (4'h0),
-    .DRspDepth (4'h0),
-    .M         (3)
+    .HReqDepth (8'h0),
+    .HRspDepth (8'h0),
+    .DReqPass  (1'b0),
+    .DRspPass  (1'b0),
+    .M         (2)
   ) u_sm1_19 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
@@ -587,33 +601,47 @@
     .tl_d_o       (tl_sm1_20_ds_h2d),
     .tl_d_i       (tl_sm1_20_ds_d2h)
   );
+  tlul_socket_m1 #(
+    .HReqDepth (12'h0),
+    .HRspDepth (12'h0),
+    .DReqDepth (4'h0),
+    .DRspDepth (4'h0),
+    .M         (3)
+  ) u_sm1_21 (
+    .clk_i        (clk_main_i),
+    .rst_ni       (rst_main_ni),
+    .tl_h_i       (tl_sm1_21_us_h2d),
+    .tl_h_o       (tl_sm1_21_us_d2h),
+    .tl_d_o       (tl_sm1_21_ds_h2d),
+    .tl_d_i       (tl_sm1_21_ds_d2h)
+  );
   tlul_socket_1n #(
     .HReqDepth (4'h0),
     .HRspDepth (4'h0),
-    .DReqDepth (52'h0),
-    .DRspDepth (52'h0),
-    .N         (13)
-  ) u_s1n_21 (
+    .DReqDepth (56'h0),
+    .DRspDepth (56'h0),
+    .N         (14)
+  ) u_s1n_22 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
-    .tl_h_i       (tl_s1n_21_us_h2d),
-    .tl_h_o       (tl_s1n_21_us_d2h),
-    .tl_d_o       (tl_s1n_21_ds_h2d),
-    .tl_d_i       (tl_s1n_21_ds_d2h),
-    .dev_select   (dev_sel_s1n_21)
+    .tl_h_i       (tl_s1n_22_us_h2d),
+    .tl_h_o       (tl_s1n_22_us_d2h),
+    .tl_d_o       (tl_s1n_22_ds_h2d),
+    .tl_d_i       (tl_s1n_22_ds_d2h),
+    .dev_select   (dev_sel_s1n_22)
   );
   tlul_fifo_async #(
     .ReqDepth        (3),// At least 3 to make async work
     .RspDepth        (3) // At least 3 to make async work
-  ) u_asf_22 (
+  ) u_asf_23 (
     .clk_h_i      (clk_main_i),
     .rst_h_ni     (rst_main_ni),
     .clk_d_i      (clk_fixed_i),
     .rst_d_ni     (rst_fixed_ni),
-    .tl_h_i       (tl_asf_22_us_h2d),
-    .tl_h_o       (tl_asf_22_us_d2h),
-    .tl_d_o       (tl_asf_22_ds_h2d),
-    .tl_d_i       (tl_asf_22_ds_d2h)
+    .tl_h_i       (tl_asf_23_us_h2d),
+    .tl_h_o       (tl_asf_23_us_d2h),
+    .tl_d_o       (tl_asf_23_ds_h2d),
+    .tl_d_i       (tl_asf_23_ds_d2h)
   );
   tlul_socket_m1 #(
     .HReqDepth (8'h0),
@@ -621,20 +649,6 @@
     .DReqDepth (4'h0),
     .DRspDepth (4'h0),
     .M         (2)
-  ) u_sm1_23 (
-    .clk_i        (clk_main_i),
-    .rst_ni       (rst_main_ni),
-    .tl_h_i       (tl_sm1_23_us_h2d),
-    .tl_h_o       (tl_sm1_23_us_d2h),
-    .tl_d_o       (tl_sm1_23_ds_h2d),
-    .tl_d_i       (tl_sm1_23_ds_d2h)
-  );
-  tlul_socket_m1 #(
-    .HReqDepth (8'h0),
-    .HRspDepth (8'h0),
-    .DReqPass  (1'b0),
-    .DRspPass  (1'b0),
-    .M         (2)
   ) u_sm1_24 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
@@ -741,20 +755,48 @@
     .tl_d_o       (tl_sm1_31_ds_h2d),
     .tl_d_i       (tl_sm1_31_ds_d2h)
   );
+  tlul_socket_m1 #(
+    .HReqDepth (8'h0),
+    .HRspDepth (8'h0),
+    .DReqPass  (1'b0),
+    .DRspPass  (1'b0),
+    .M         (2)
+  ) u_sm1_32 (
+    .clk_i        (clk_main_i),
+    .rst_ni       (rst_main_ni),
+    .tl_h_i       (tl_sm1_32_us_h2d),
+    .tl_h_o       (tl_sm1_32_us_d2h),
+    .tl_d_o       (tl_sm1_32_ds_h2d),
+    .tl_d_i       (tl_sm1_32_ds_d2h)
+  );
+  tlul_socket_m1 #(
+    .HReqDepth (8'h0),
+    .HRspDepth (8'h0),
+    .DReqPass  (1'b0),
+    .DRspPass  (1'b0),
+    .M         (2)
+  ) u_sm1_33 (
+    .clk_i        (clk_main_i),
+    .rst_ni       (rst_main_ni),
+    .tl_h_i       (tl_sm1_33_us_h2d),
+    .tl_h_o       (tl_sm1_33_us_d2h),
+    .tl_d_o       (tl_sm1_33_ds_h2d),
+    .tl_d_i       (tl_sm1_33_ds_d2h)
+  );
   tlul_socket_1n #(
     .HReqPass  (1'b0),
     .HRspPass  (1'b0),
-    .DReqDepth (48'h0),
-    .DRspDepth (48'h0),
-    .N         (12)
-  ) u_s1n_32 (
+    .DReqDepth (52'h0),
+    .DRspDepth (52'h0),
+    .N         (13)
+  ) u_s1n_34 (
     .clk_i        (clk_main_i),
     .rst_ni       (rst_main_ni),
-    .tl_h_i       (tl_s1n_32_us_h2d),
-    .tl_h_o       (tl_s1n_32_us_d2h),
-    .tl_d_o       (tl_s1n_32_ds_h2d),
-    .tl_d_i       (tl_s1n_32_ds_d2h),
-    .dev_select   (dev_sel_s1n_32)
+    .tl_h_i       (tl_s1n_34_us_h2d),
+    .tl_h_o       (tl_s1n_34_us_d2h),
+    .tl_d_o       (tl_s1n_34_ds_h2d),
+    .tl_d_i       (tl_s1n_34_ds_d2h),
+    .dev_select   (dev_sel_s1n_34)
   );
 
 endmodule
diff --git a/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv b/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
index 5394348..3ff1689 100644
--- a/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
+++ b/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
@@ -105,6 +105,8 @@
   tl_d2h_t  tl_nmi_gen_d_d2h;
   tl_h2d_t  tl_usbdev_d_h2d;
   tl_d2h_t  tl_usbdev_d_d2h;
+  tl_h2d_t  tl_otbn_d_h2d;
+  tl_d2h_t  tl_otbn_d_d2h;
 
   tl_h2d_t tl_rom_d_h2d;
   tl_d2h_t tl_rom_d_d2h;
@@ -172,9 +174,10 @@
   logic        cio_usbdev_dp_en_d2p;
   logic        cio_usbdev_dn_d2p;
   logic        cio_usbdev_dn_en_d2p;
+  // otbn
 
 
-  logic [80:0]  intr_vector;
+  logic [82:0]  intr_vector;
   // Interrupt source list
   logic intr_uart_tx_watermark;
   logic intr_uart_rx_watermark;
@@ -226,6 +229,8 @@
   logic intr_usbdev_rx_bitstuff_err;
   logic intr_usbdev_frame;
   logic intr_usbdev_connected;
+  logic intr_otbn_done;
+  logic intr_otbn_err;
 
 
 
@@ -886,8 +891,31 @@
       .rst_usb_48mhz_ni (rstmgr_resets.rst_usb_n)
   );
 
+  otbn u_otbn (
+      .tl_i (tl_otbn_d_h2d),
+      .tl_o (tl_otbn_d_d2h),
+
+      // Interrupt
+      .intr_done_o (intr_otbn_done),
+      .intr_err_o  (intr_otbn_err),
+
+      // [1]: imem_uncorrectable
+      // [2]: dmem_uncorrectable
+      // [3]: reg_uncorrectable
+      .alert_tx_o  ( alert_tx[3:1] ),
+      .alert_rx_i  ( alert_rx[3:1] ),
+
+      // Inter-module signals
+      .idle_o(),
+
+      .clk_i (clkmgr_clocks.clk_main_otbn),
+      .rst_ni (rstmgr_resets.rst_sys_n)
+  );
+
   // interrupt assignments
   assign intr_vector = {
+      intr_otbn_err,
+      intr_otbn_done,
       intr_pwrmgr_wakeup,
       intr_usbdev_connected,
       intr_usbdev_frame,
@@ -978,6 +1006,8 @@
     .tl_alert_handler_i (tl_alert_handler_d_d2h),
     .tl_nmi_gen_o       (tl_nmi_gen_d_h2d),
     .tl_nmi_gen_i       (tl_nmi_gen_d_d2h),
+    .tl_otbn_o          (tl_otbn_d_h2d),
+    .tl_otbn_i          (tl_otbn_d_d2h),
 
     .scanmode_i
   );
diff --git a/hw/top_earlgrey/rtl/autogen/top_earlgrey_pkg.sv b/hw/top_earlgrey/rtl/autogen/top_earlgrey_pkg.sv
index d19f839..40f2d68 100644
--- a/hw/top_earlgrey/rtl/autogen/top_earlgrey_pkg.sv
+++ b/hw/top_earlgrey/rtl/autogen/top_earlgrey_pkg.sv
@@ -21,6 +21,7 @@
   parameter TOP_EARLGREY_CLKMGR_BASE_ADDR = 32'h400C0000;
   parameter TOP_EARLGREY_NMI_GEN_BASE_ADDR = 32'h40140000;
   parameter TOP_EARLGREY_USBDEV_BASE_ADDR = 32'h40150000;
+  parameter TOP_EARLGREY_OTBN_BASE_ADDR = 32'h50000000;
 
   // Enumeration for DIO pins.
   typedef enum {
diff --git a/hw/top_earlgrey/sw/autogen/top_earlgrey.c b/hw/top_earlgrey/sw/autogen/top_earlgrey.c
index 3233e65..522fcdf 100644
--- a/hw/top_earlgrey/sw/autogen/top_earlgrey.c
+++ b/hw/top_earlgrey/sw/autogen/top_earlgrey.c
@@ -11,7 +11,7 @@
  * `top_earlgrey_plic_peripheral_t`.
  */
 const top_earlgrey_plic_peripheral_t
-    top_earlgrey_plic_interrupt_for_peripheral[81] = {
+    top_earlgrey_plic_interrupt_for_peripheral[83] = {
   [kTopEarlgreyPlicIrqIdNone] = kTopEarlgreyPlicPeripheralUnknown,
   [kTopEarlgreyPlicIrqIdGpioGpio0] = kTopEarlgreyPlicPeripheralGpio,
   [kTopEarlgreyPlicIrqIdGpioGpio1] = kTopEarlgreyPlicPeripheralGpio,
@@ -93,4 +93,6 @@
   [kTopEarlgreyPlicIrqIdUsbdevFrame] = kTopEarlgreyPlicPeripheralUsbdev,
   [kTopEarlgreyPlicIrqIdUsbdevConnected] = kTopEarlgreyPlicPeripheralUsbdev,
   [kTopEarlgreyPlicIrqIdPwrmgrWakeup] = kTopEarlgreyPlicPeripheralPwrmgr,
+  [kTopEarlgreyPlicIrqIdOtbnDone] = kTopEarlgreyPlicPeripheralOtbn,
+  [kTopEarlgreyPlicIrqIdOtbnErr] = kTopEarlgreyPlicPeripheralOtbn,
 };
diff --git a/hw/top_earlgrey/sw/autogen/top_earlgrey.h b/hw/top_earlgrey/sw/autogen/top_earlgrey.h
index d4b438f..e9db51f 100644
--- a/hw/top_earlgrey/sw/autogen/top_earlgrey.h
+++ b/hw/top_earlgrey/sw/autogen/top_earlgrey.h
@@ -379,6 +379,24 @@
  */
 #define TOP_EARLGREY_USBDEV_SIZE_BYTES 0x1000u
 
+/**
+ * Peripheral base address for otbn in top earlgrey.
+ *
+ * This should be used with #mmio_region_from_addr to access the memory-mapped
+ * registers associated with the peripheral (usually via a DIF).
+ */
+#define TOP_EARLGREY_OTBN_BASE_ADDR 0x50000000u
+
+/**
+ * Peripheral size for otbn in top earlgrey.
+ *
+ * This is the size (in bytes) of the peripheral's reserved memory area. All
+ * memory-mapped registers associated with this peripheral should have an
+ * address between #TOP_EARLGREY_OTBN_BASE_ADDR and
+ * `TOP_EARLGREY_OTBN_BASE_ADDR + TOP_EARLGREY_OTBN_SIZE_BYTES`.
+ */
+#define TOP_EARLGREY_OTBN_SIZE_BYTES 0x400000u
+
 
 /**
  * Memory base address for rom in top earlgrey.
@@ -438,7 +456,8 @@
   kTopEarlgreyPlicPeripheralNmiGen = 7, /**< nmi_gen */
   kTopEarlgreyPlicPeripheralUsbdev = 8, /**< usbdev */
   kTopEarlgreyPlicPeripheralPwrmgr = 9, /**< pwrmgr */
-  kTopEarlgreyPlicPeripheralLast = 9, /**< \internal Final PLIC peripheral */
+  kTopEarlgreyPlicPeripheralOtbn = 10, /**< otbn */
+  kTopEarlgreyPlicPeripheralLast = 10, /**< \internal Final PLIC peripheral */
 } top_earlgrey_plic_peripheral_t;
 
 /**
@@ -529,7 +548,9 @@
   kTopEarlgreyPlicIrqIdUsbdevFrame = 78, /**< usbdev_frame */
   kTopEarlgreyPlicIrqIdUsbdevConnected = 79, /**< usbdev_connected */
   kTopEarlgreyPlicIrqIdPwrmgrWakeup = 80, /**< pwrmgr_wakeup */
-  kTopEarlgreyPlicIrqIdLast = 80, /**< \internal The Last Valid Interrupt ID. */
+  kTopEarlgreyPlicIrqIdOtbnDone = 81, /**< otbn_done */
+  kTopEarlgreyPlicIrqIdOtbnErr = 82, /**< otbn_err */
+  kTopEarlgreyPlicIrqIdLast = 82, /**< \internal The Last Valid Interrupt ID. */
 } top_earlgrey_plic_irq_id_t;
 
 /**
@@ -539,7 +560,7 @@
  * `top_earlgrey_plic_peripheral_t`.
  */
 extern const top_earlgrey_plic_peripheral_t
-    top_earlgrey_plic_interrupt_for_peripheral[81];
+    top_earlgrey_plic_interrupt_for_peripheral[83];
 
 /**
  * PLIC external interrupt target.
diff --git a/hw/top_earlgrey/top_earlgrey.core b/hw/top_earlgrey/top_earlgrey.core
index fa47f83..faa6232 100644
--- a/hw/top_earlgrey/top_earlgrey.core
+++ b/hw/top_earlgrey/top_earlgrey.core
@@ -24,6 +24,7 @@
       - lowrisc:ip:spi_device
       - lowrisc:ip:aes
       - lowrisc:ip:hmac
+      - lowrisc:ip:otbn
       - lowrisc:prim:ram_1p_adv
       - lowrisc:prim:rom_adv
       - lowrisc:ip:rstmgr
diff --git a/sw/device/lib/dif/dif_plic.c b/sw/device/lib/dif/dif_plic.c
index 59cc251..6355332 100644
--- a/sw/device/lib/dif/dif_plic.c
+++ b/sw/device/lib/dif/dif_plic.c
@@ -14,7 +14,7 @@
 // If either of these static assertions fail, then the assumptions in this DIF
 // implementation should be revisited. In particular, `plic_target_reg_offsets`
 // may need updating,
-_Static_assert(RV_PLIC_PARAM_NUMSRC == 81,
+_Static_assert(RV_PLIC_PARAM_NUMSRC == 83,
                "PLIC instantiation parameters have changed.");
 _Static_assert(RV_PLIC_PARAM_NUMTARGET == 1,
                "PLIC instantiation parameters have changed.");
diff --git a/sw/device/tests/dif/dif_plic_unittest.cc b/sw/device/tests/dif/dif_plic_unittest.cc
index 0c6f279..a8b732b 100644
--- a/sw/device/tests/dif/dif_plic_unittest.cc
+++ b/sw/device/tests/dif/dif_plic_unittest.cc
@@ -116,7 +116,7 @@
           RV_PLIC_IE01_REG_OFFSET, RV_PLIC_IE01_E63,
       },
       {
-          RV_PLIC_IE02_REG_OFFSET, RV_PLIC_IE02_E80,
+          RV_PLIC_IE02_REG_OFFSET, RV_PLIC_IE02_E82,
       },
   };
 };
@@ -164,7 +164,7 @@
           RV_PLIC_LE1_REG_OFFSET, RV_PLIC_LE1_LE63,
       },
       {
-          RV_PLIC_LE2_REG_OFFSET, RV_PLIC_LE2_LE80,
+          RV_PLIC_LE2_REG_OFFSET, RV_PLIC_LE2_LE82,
       },
   };
 };
@@ -265,7 +265,7 @@
           RV_PLIC_IP1_REG_OFFSET, RV_PLIC_IP1_P63,
       },
       {
-          RV_PLIC_IP2_REG_OFFSET, RV_PLIC_IP2_P80,
+          RV_PLIC_IP2_REG_OFFSET, RV_PLIC_IP2_P82,
       },
   };
 };
