[prim_otp] Update interface

The OTP interface has to change slightly, to accommodate additional
signals for the closed source OTP wrapper.

Signed-off-by: Michael Schaffner <msf@google.com>
diff --git a/hw/ip/otp_ctrl/rtl/otp_ctrl.sv b/hw/ip/otp_ctrl/rtl/otp_ctrl.sv
index 6e9b584..68258a7 100644
--- a/hw/ip/otp_ctrl/rtl/otp_ctrl.sv
+++ b/hw/ip/otp_ctrl/rtl/otp_ctrl.sv
@@ -632,6 +632,21 @@
   assign tl_win_d2h[$high(tl_win_h2d)] = (lc_dft_en[1] == lc_ctrl_pkg::On) ?
                                          tl_win_d2h_gated : '0;
 
+  // TODO: correctly wire these alerts up
+  logic unused_otp_alert;
+  logic otp_alert_p, otp_alert_n;
+  logic otp_alert_ack, otp_alert_trig;
+  assign unused_otp_alert = otp_alert_p ^
+                            otp_alert_n;
+  assign otp_alert_ack  = 1'b0;
+  assign otp_alert_trig = 1'b0;
+
+  wire unused_ext_voltage_io;
+
+  // TODO: correctly connect this to life cycle
+  logic ext_voltage_en;
+  assign ext_voltage_en = 1'b0;
+
   prim_otp #(
     .Width       ( OtpWidth            ),
     .Depth       ( OtpDepth            ),
@@ -658,7 +673,13 @@
     // Read data out
     .valid_o     ( otp_rvalid                    ),
     .rdata_o     ( part_otp_rdata                ),
-    .err_o       ( part_otp_err                  )
+    .err_o       ( part_otp_err                  ),
+    .ext_voltage_io   ( unused_ext_voltage_io ),
+    .ext_voltage_en_i ( ext_voltage_en        ),
+    .otp_alert_po     ( otp_alert_p           ),
+    .otp_alert_no     ( otp_alert_n           ),
+    .otp_alert_ack_i  ( otp_alert_ack         ),
+    .otp_alert_trig_i ( otp_alert_trig        )
   );
 
   logic otp_fifo_valid;
diff --git a/hw/ip/prim_generic/rtl/prim_generic_otp.sv b/hw/ip/prim_generic/rtl/prim_generic_otp.sv
index 7a2d970..f6f07cb 100644
--- a/hw/ip/prim_generic/rtl/prim_generic_otp.sv
+++ b/hw/ip/prim_generic/rtl/prim_generic_otp.sv
@@ -39,7 +39,16 @@
   // Response channel
   output logic                   valid_o,
   output logic [IfWidth-1:0]     rdata_o,
-  output err_e                   err_o
+  output err_e                   err_o,
+  // External programming voltage
+  inout wire ext_voltage_io, //TODO enable it after the change in prim_otp file
+  input ext_voltage_en_i, // TODO
+  //// alert indication
+  //////////////////////////
+  output otp_alert_po,  // TODO otp positive detector alert
+  output otp_alert_no,  // TODO otp negative detector alert
+  input  otp_alert_ack_i,  // TODO otp pulse ack
+  input  otp_alert_trig_i  // TODO alert force trig by SW
 );
 
   // Not supported in open-source emulation model.
@@ -47,6 +56,16 @@
   assign unused_pwr_seq_h = pwr_seq_h_i;
   assign pwr_seq_o = '0;
 
+  wire unused_ext_voltage;
+  assign unused_ext_voltage = ext_voltage_io;
+  logic unused_ext_voltage_en;
+  assign unused_ext_voltage_en = ext_voltage_en_i;
+
+  logic unused_alert;
+  assign unused_alert = otp_alert_ack_i ^ otp_alert_trig_i;
+  assign otp_alert_po = 1'b0;
+  assign otp_alert_no = 1'b0;
+
   ////////////////////////////////////
   // TL-UL Test Interface Emulation //
   ////////////////////////////////////