diff --git a/hw/top_matcha/dv/chip_sim_cfg.hjson b/hw/top_matcha/dv/chip_sim_cfg.hjson
index 620b47e..164c73a 100644
--- a/hw/top_matcha/dv/chip_sim_cfg.hjson
+++ b/hw/top_matcha/dv/chip_sim_cfg.hjson
@@ -2049,6 +2049,7 @@
       ]
     }
     {
+      // TODO(b/287644985): Track the dv tests to be implemented.
       name: edacloud_nightly
       tests: [
         "chip_plic_all_irqs",
@@ -2058,7 +2059,6 @@
         "chip_sw_alert_handler_ping_timeout",
         "chip_sw_alert_test",
         "chip_sw_aon_timer_smoketest",
-        "chip_sw_atomics_test",
         "chip_sw_cam_ctrl_test",
         "chip_sw_clkmgr_off_peri",
         "chip_sw_clkmgr_smoketest",
@@ -2081,7 +2081,6 @@
         "chip_sw_otbn_smoketest",
         "chip_sw_otp_ctrl_escalation",
         "chip_sw_otp_ctrl_smoketest",
-        "chip_sw_pwrmgr_sleep_sensor_ctrl_alert_wakeup",
         "chip_sw_rom_ctrl_integrity_check",
         "chip_sw_rstmgr_smoketest",
         "chip_sw_rstmgr_sw_req",
@@ -2097,13 +2096,10 @@
         "chip_sw_smc_ctrl_test",
         "chip_sw_smc_env_test",
         "chip_sw_smc_i2s_rx_test",
-        "chip_sw_smc_i2s_tx_test",
         "chip_sw_smc_interrupt_boundary_test",
         "chip_sw_smc_isp_wrapper_irq_test",
         "chip_sw_smc_isp_wrapper_test",
         "chip_sw_smc_isp_wrapper_tpg_64_64_test",
-        "chip_sw_smc_kelvin_checksum_test",
-        "chip_sw_smc_kelvin_hello_test",
         "chip_sw_smc_lsu_interrupt_boundary_test",
         "chip_sw_smc_lsu_page_boundary_test",
         "chip_sw_smc_ml_sram_smoketest",
@@ -2111,7 +2107,6 @@
         "chip_sw_smc_page_boundary_test",
         "chip_sw_smc_rv_timer_test",
         "chip_sw_smc_supervisor_mode_test",
-        "chip_sw_smc_tlul_mailbox_test",
         "chip_sw_smc_virtual_memory_test",
         "chip_sw_spi_device_tx_rx",
         "chip_sw_sram_ctrl_smoketest",
diff --git a/hw/top_matcha/dv/env/seq_lib/chip_sw_base_vseq.sv b/hw/top_matcha/dv/env/seq_lib/chip_sw_base_vseq.sv
index 264736d..ad8fdc2 100644
--- a/hw/top_matcha/dv/env/seq_lib/chip_sw_base_vseq.sv
+++ b/hw/top_matcha/dv/env/seq_lib/chip_sw_base_vseq.sv
@@ -258,27 +258,23 @@
 
   // Print pass / fail message to the log.
   virtual function void log_sw_test_status();
-    if(cfg.sw_test_status_vif.sw_test_done) begin
-        case (cfg.sw_test_status_vif.sw_test_status)
-          SwTestStatusPassed: `uvm_info(`gfn, "SW TEST PASSED!", UVM_LOW)
-          SwTestStatusFailed: `uvm_error(`gfn, "SW TEST FAILED!")
-          default: begin
-            // If the SW test has not reached the passed / failed state, then it timed out.
-            `uvm_error(`gfn, $sformatf("SW TEST TIMED OUT. STATE: %0s, TIMEOUT = %0d ns\n",
-                cfg.sw_test_status_vif.sw_test_status.name(), cfg.sw_test_timeout_ns))
-          end
-        endcase
+    if(cfg.sw_test_status_vif.sw_test_done || cfg.sw_smc_test_status_vif.sw_test_done) begin
+        if(cfg.sw_test_status_vif.sw_test_done) begin
+            case (cfg.sw_test_status_vif.sw_test_status)
+              SwTestStatusPassed: `uvm_info(`gfn, "[SEC] SW TEST PASSED!", UVM_LOW)
+              SwTestStatusFailed: `uvm_error(`gfn, "[SEC] SW TEST FAILED!")
+            endcase
+        end
+        if(cfg.sw_smc_test_status_vif.sw_test_done) begin
+            case (cfg.sw_smc_test_status_vif.sw_test_status)
+              SwTestStatusPassed: `uvm_info(`gfn, "[SMC] SW TEST PASSED!", UVM_LOW)
+              SwTestStatusFailed: `uvm_error(`gfn, "[SMC] SW TEST FAILED!")
+            endcase
+        end
     end
-    if(cfg.sw_smc_test_status_vif.sw_test_done) begin
-        case (cfg.sw_smc_test_status_vif.sw_test_status)
-          SwTestStatusPassed: `uvm_info(`gfn, "SW TEST PASSED!", UVM_LOW)
-          SwTestStatusFailed: `uvm_error(`gfn, "SW TEST FAILED!")
-          default: begin
-            // If the SW test has not reached the passed / failed state, then it timed out.
-            `uvm_error(`gfn, $sformatf("SW TEST TIMED OUT. STATE: %0s, TIMEOUT = %0d ns\n",
+    else begin
+        `uvm_error(`gfn, $sformatf("SW TEST TIMED OUT. STATE: %0s, TIMEOUT = %0d ns\n",
                 cfg.sw_smc_test_status_vif.sw_test_status.name(), cfg.sw_test_timeout_ns))
-          end
-        endcase
     end
   endfunction
 
