[rv_dm] update waviers based on latest
Signed-off-by: Timothy Chen <timothytim@google.com>
diff --git a/hw/ip/rv_dm/lint/rv_dm.waiver b/hw/ip/rv_dm/lint/rv_dm.waiver
index cfbc018..378dcf3 100644
--- a/hw/ip/rv_dm/lint/rv_dm.waiver
+++ b/hw/ip/rv_dm/lint/rv_dm.waiver
@@ -5,6 +5,10 @@
# waiver file for rv_dm lint
# rv_dm
+# dedicated reset drivers / muxes
+set_reset_drivers prim_clock_mux2 prim_flop_2sync prim_flop
+set_clock_drivers prim_clock_buf
+
waive -rules IFDEF_CODE -location {rv_dm.sv} -regexp {DMIDirectTAP} \
-comment "That's fine."
waive -rules CLOCK_MUX -location {rv_dm.sv} \
@@ -24,6 +28,9 @@
waive -rules RESET_MUX -location {rv_dm.sv} \
-msg {Asynchronous reset 'jtag_in_int.trst_n' is driven by a multiplexer here, used as a reset 'trst_ni' at} \
-comment "This mux gates the JTAG interface based on life cycle."
+waive -rules RESET_MUX -location {rv_dm.sv} \
+ -msg {Asynchronous reset 'dmi_rst_n' is driven by a multiplexer here, used as a reset 'rst_ni' at} \
+ -comment "This is needed such that the reset can be properly controlled during scanmode.."
# dmi_jtag_tap
waive -rules CLOCK_MUX -location {dmi_jtag_tap.sv} -regexp {Clock '.*tck_n' is driven by a multiplexer here, used as a clock at dmi_jtag_tap.sv} \
@@ -96,6 +103,8 @@
-comment "This part of the struct is not read from within this module."
waive -rules NOT_READ -location {dmi_jtag.sv} -regexp {Signal 'dmi_resp.resp' is not read from in module 'dmi_jtag'} \
-comment "This part of the struct is not read from within this module."
+waive -rules STRUCT_INDEX -location {dmi_jtag.sv} -msg {Bit select '[0]' of 'dtmcs_q' of struct type} \
+ -comment "dtmcs is a vector that is continuously shifted into where its lsb is then fed to tdo"
waive -rules HIER_BRANCH_NOT_READ -location {rv_dm_rom_reg_top.sv} -regexp {Net 'clk_i' is not read from in module 'rv_dm_rom_reg_top'} \
-comment "This module is autogenerated so IO cannot be adjusted but it does not use the clock"
@@ -105,3 +114,9 @@
-comment "This module is autogenerated so IO cannot be adjusted but it does not use the clock"
waive -rules INPUT_NOT_READ -location {rv_dm_rom_reg_top.sv} -regexp {Input port 'rst_ni' is not read from in module 'rv_dm_rom_reg_top'} \
-comment "This module is autogenerated so IO cannot be adjusted but it does not use the reset"
+
+
+# dmi_cdc
+waive -rules RESET_MUX -location {dmi_cdc.sv} \
+ -msg {Asynchronous reset 'combined_rstn' is driven by a multiplexer here, used as a reset 'rst_rd_ni' at} \
+ -comment "This is needed such that the reset can be properly controlled during scanmode."
diff --git a/hw/ip/rv_dm/rtl/rv_dm.sv b/hw/ip/rv_dm/rtl/rv_dm.sv
index 9c0c704..62b9e4c 100644
--- a/hw/ip/rv_dm/rtl/rv_dm.sv
+++ b/hw/ip/rv_dm/rtl/rv_dm.sv
@@ -312,6 +312,7 @@
.clk_i (clk_i),
.rst_ni (rst_ni),
.testmode_i (testmode),
+ .test_rst_ni (scan_rst_ni),
.dmi_rst_no (dmi_rst_n),
.dmi_req_o (dmi_req),