[rom_ctrl, dv] combined successful_rom_chk test with smoke test

Based on V1 review comments, successful_rom_chk test is combined with
rom_ctrl_smoke testcase.

Signed-off-by: Prajwala Puttappa <prajwalaputtappa@lowrisc.org>
diff --git a/hw/ip/rom_ctrl/data/rom_ctrl_testplan.hjson b/hw/ip/rom_ctrl/data/rom_ctrl_testplan.hjson
index 633fef9..c699a21 100644
--- a/hw/ip/rom_ctrl/data/rom_ctrl_testplan.hjson
+++ b/hw/ip/rom_ctrl/data/rom_ctrl_testplan.hjson
@@ -19,33 +19,20 @@
             image and load into memory model
             - Allow the rom check to complete
             - Perform some random memory accesses
+            - Create a random valid ROM where expected digest matches with the KMAC digest
+            - Repeat steps 2 and 3.
 
             **Checks**:
             - Check that all data supplied to kmac is correct
             - Check that the rom checking sequence gives the expected result
             - Check that the memory accesses return expected data
-            - Check that pwrmgr_data_o.good is not asserted. 
+            - Check that pwrmgr_data_o.good is not asserted in first iteration.
+            - Check that pwrmgr_data_o.good is asserted in second iteration.
             '''
       milestone: V1
       tests: ["rom_ctrl_smoke"]
     }
     {
-      name: successful_rom_chk
-      desc: '''
-           Test successful completion of rom check
-
-           **Stimulus**:
-           - Create a random valid ROM image and load into memory model.
-           - Ensure that KMAC and expected digest match.
-         
-           **Checks**:
-           - Check that pwrmgr_data_o.good is asserted. 
-           '''
-      milestone: V1
-      tests: []
-
-    }
-    {
       name: corrupt_sig_fatal_chk
       desc: '''
             Corrupt integrity of signals like the select signal to addr mux.
diff --git a/hw/ip/rom_ctrl/dv/env/rom_ctrl_env.core b/hw/ip/rom_ctrl/dv/env/rom_ctrl_env.core
index b6ee91e..73fabfe 100644
--- a/hw/ip/rom_ctrl/dv/env/rom_ctrl_env.core
+++ b/hw/ip/rom_ctrl/dv/env/rom_ctrl_env.core
@@ -26,7 +26,6 @@
       - seq_lib/rom_ctrl_base_vseq.sv: {is_include_file: true}
       - seq_lib/rom_ctrl_common_vseq.sv: {is_include_file: true}
       - seq_lib/rom_ctrl_smoke_vseq.sv: {is_include_file: true}
-      - seq_lib/rom_ctrl_chk_successful_vseq.sv: {is_include_file: true}
       - seq_lib/rom_ctrl_stress_all_vseq.sv: {is_include_file: true}
     file_type: systemVerilogSource
 
diff --git a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_chk_successful_vseq.sv b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_chk_successful_vseq.sv
deleted file mode 100644
index de3f16a..0000000
--- a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_chk_successful_vseq.sv
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright lowRISC contributors.
-// Licensed under the Apache License, Version 2.0, see LICENSE for details.
-// SPDX-License-Identifier: Apache-2.0
-
-// smoke test vseq
-class rom_ctrl_chk_successful_vseq extends rom_ctrl_base_vseq;
-  `uvm_object_utils(rom_ctrl_chk_successful_vseq)
-  `uvm_object_new
-  
-  // Indicates the number of memory accesses to be performed
-  rand int num_mem_reads;
-
-  constraint num_mem_reads_c {
-    num_mem_reads inside {[20 : 50]};
-  }
-
-  task body();
-    set_kmac_digest();
-    `DV_CHECK_MEMBER_RANDOMIZE_FATAL(num_mem_reads)
-    do_rand_ops(num_mem_reads);
-    read_digest_regs();
-  endtask : body
-
-endclass : rom_ctrl_chk_successful_vseq
diff --git a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_smoke_vseq.sv b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_smoke_vseq.sv
index 21d9f49..1db8239 100644
--- a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_smoke_vseq.sv
+++ b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_smoke_vseq.sv
@@ -19,6 +19,11 @@
     `DV_CHECK_MEMBER_RANDOMIZE_FATAL(num_mem_reads)
     do_rand_ops(num_mem_reads);
     read_digest_regs();
+    dut_init();
+    set_kmac_digest();
+    `DV_CHECK_MEMBER_RANDOMIZE_FATAL(num_mem_reads)
+    do_rand_ops(num_mem_reads);
+    read_digest_regs();
   endtask : body
 
 endclass : rom_ctrl_smoke_vseq
diff --git a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_stress_all_vseq.sv b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_stress_all_vseq.sv
index a390625..c379da1 100644
--- a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_stress_all_vseq.sv
+++ b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_stress_all_vseq.sv
@@ -14,8 +14,7 @@
 
   task body();
     string seq_names[] = {"rom_ctrl_smoke_vseq",
-                          "rom_ctrl_common_vseq",
-                          "rom_ctrl_chk_successful_vseq"};
+                          "rom_ctrl_common_vseq"};
     for (int i = 1; i <= num_trans; i++) begin
       uvm_sequence   seq;
       rom_ctrl_base_vseq rom_ctrl_vseq;
diff --git a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_vseq_list.sv b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_vseq_list.sv
index cbf10e7..922eee6 100644
--- a/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_vseq_list.sv
+++ b/hw/ip/rom_ctrl/dv/env/seq_lib/rom_ctrl_vseq_list.sv
@@ -5,5 +5,4 @@
 `include "rom_ctrl_base_vseq.sv"
 `include "rom_ctrl_smoke_vseq.sv"
 `include "rom_ctrl_common_vseq.sv"
-`include "rom_ctrl_chk_successful_vseq.sv"
 `include "rom_ctrl_stress_all_vseq.sv"
diff --git a/hw/ip/rom_ctrl/dv/rom_ctrl_sim_cfg.hjson b/hw/ip/rom_ctrl/dv/rom_ctrl_sim_cfg.hjson
index 63c7baf..62b7f5b 100644
--- a/hw/ip/rom_ctrl/dv/rom_ctrl_sim_cfg.hjson
+++ b/hw/ip/rom_ctrl/dv/rom_ctrl_sim_cfg.hjson
@@ -56,10 +56,6 @@
       uvm_test_seq: rom_ctrl_smoke_vseq
     }
     {
-      name: successful_rom_chk
-      uvm_test_seq: rom_ctrl_chk_successful_vseq
-    }
-    {
       name: rom_ctrl_stress_all
       uvm_test_seq: rom_ctrl_stress_all_vseq 
     }