[dv,sw] Use `*_irq_acknowledge_all()` in PLIC test.

This commit replaces the manual MMIO writes to the IRQ state registers
to clear all interrupts for a specific IP with the newly added DIF
equivalent in the `plic_all_irqs_test.c`.

Signed-off-by: Timothy Trippel <ttrippel@google.com>
diff --git a/sw/device/tests/autogen/plic_all_irqs_test.c b/sw/device/tests/autogen/plic_all_irqs_test.c
index 713220d..c779199 100644
--- a/sw/device/tests/autogen/plic_all_irqs_test.c
+++ b/sw/device/tests/autogen/plic_all_irqs_test.c
@@ -301,35 +301,35 @@
  * Clears pending IRQs in all peripherals.
  */
 static void peripheral_irqs_clear(void) {
-  // PERIPHERAL_IRQS_CLEAR(adc_ctrl_aon);
-  PERIPHERAL_IRQS_CLEAR(alert_handler);
-  // PERIPHERAL_IRQS_CLEAR(aon_timer_aon);
-  PERIPHERAL_IRQS_CLEAR(csrng);
-  PERIPHERAL_IRQS_CLEAR(edn0);
-  PERIPHERAL_IRQS_CLEAR(edn1);
-  PERIPHERAL_IRQS_CLEAR(entropy_src);
-  // PERIPHERAL_IRQS_CLEAR(flash_ctrl);
-  PERIPHERAL_IRQS_CLEAR(gpio);
-  PERIPHERAL_IRQS_CLEAR(hmac);
-  PERIPHERAL_IRQS_CLEAR(i2c0);
-  PERIPHERAL_IRQS_CLEAR(i2c1);
-  PERIPHERAL_IRQS_CLEAR(i2c2);
-  PERIPHERAL_IRQS_CLEAR(keymgr);
-  PERIPHERAL_IRQS_CLEAR(kmac);
-  PERIPHERAL_IRQS_CLEAR(otbn);
-  PERIPHERAL_IRQS_CLEAR(otp_ctrl);
-  // PERIPHERAL_IRQS_CLEAR(pattgen);
-  PERIPHERAL_IRQS_CLEAR(pwrmgr_aon);
-  // PERIPHERAL_IRQS_CLEAR(rv_timer);
-  PERIPHERAL_IRQS_CLEAR(spi_device);
-  // PERIPHERAL_IRQS_CLEAR(spi_host0);
-  // PERIPHERAL_IRQS_CLEAR(spi_host1);
-  // PERIPHERAL_IRQS_CLEAR(sysrst_ctrl_aon);
-  PERIPHERAL_IRQS_CLEAR(uart0);
-  PERIPHERAL_IRQS_CLEAR(uart1);
-  PERIPHERAL_IRQS_CLEAR(uart2);
-  PERIPHERAL_IRQS_CLEAR(uart3);
-  PERIPHERAL_IRQS_CLEAR(usbdev);
+  // PERIPHERAL_IRQS_CLEAR(adc_ctrl, adc_ctrl_aon);
+  PERIPHERAL_IRQS_CLEAR(alert_handler, alert_handler);
+  // PERIPHERAL_IRQS_CLEAR(aon_timer, aon_timer_aon);
+  PERIPHERAL_IRQS_CLEAR(csrng, csrng);
+  PERIPHERAL_IRQS_CLEAR(edn, edn0);
+  PERIPHERAL_IRQS_CLEAR(edn, edn1);
+  PERIPHERAL_IRQS_CLEAR(entropy_src, entropy_src);
+  // PERIPHERAL_IRQS_CLEAR(flash_ctrl, flash_ctrl);
+  PERIPHERAL_IRQS_CLEAR(gpio, gpio);
+  PERIPHERAL_IRQS_CLEAR(hmac, hmac);
+  PERIPHERAL_IRQS_CLEAR(i2c, i2c0);
+  PERIPHERAL_IRQS_CLEAR(i2c, i2c1);
+  PERIPHERAL_IRQS_CLEAR(i2c, i2c2);
+  PERIPHERAL_IRQS_CLEAR(keymgr, keymgr);
+  PERIPHERAL_IRQS_CLEAR(kmac, kmac);
+  PERIPHERAL_IRQS_CLEAR(otbn, otbn);
+  PERIPHERAL_IRQS_CLEAR(otp_ctrl, otp_ctrl);
+  // PERIPHERAL_IRQS_CLEAR(pattgen, pattgen);
+  PERIPHERAL_IRQS_CLEAR(pwrmgr, pwrmgr_aon);
+  // PERIPHERAL_IRQS_CLEAR(rv_timer, rv_timer);
+  PERIPHERAL_IRQS_CLEAR(spi_device, spi_device);
+  // PERIPHERAL_IRQS_CLEAR(spi_host, spi_host0);
+  // PERIPHERAL_IRQS_CLEAR(spi_host, spi_host1);
+  // PERIPHERAL_IRQS_CLEAR(sysrst_ctrl, sysrst_ctrl_aon);
+  PERIPHERAL_IRQS_CLEAR(uart, uart0);
+  PERIPHERAL_IRQS_CLEAR(uart, uart1);
+  PERIPHERAL_IRQS_CLEAR(uart, uart2);
+  PERIPHERAL_IRQS_CLEAR(uart, uart3);
+  PERIPHERAL_IRQS_CLEAR(usbdev, usbdev);
 }
 
 /**
diff --git a/sw/device/tests/plic_all_irqs_test_helper.h b/sw/device/tests/plic_all_irqs_test_helper.h
index 46e063a..ae7816c 100644
--- a/sw/device/tests/plic_all_irqs_test_helper.h
+++ b/sw/device/tests/plic_all_irqs_test_helper.h
@@ -48,11 +48,9 @@
 /**
  * Clears all previous interrupt invocations.
  */
-#define PERIPHERAL_IRQS_CLEAR(handle)                                         \
-  do {                                                                        \
-    /* TODO(#8142): Replace with dif_<ip>_irq_acknowledge_all when available. \
-     */                                                                       \
-    mmio_region_write32(handle.base_addr, 0, (uint32_t)ULONG_MAX);            \
+#define PERIPHERAL_IRQS_CLEAR(peripheral, handle)                  \
+  do {                                                             \
+    CHECK_DIF_OK(dif_##peripheral##_irq_acknowledge_all(&handle)); \
   } while (0)
 
 /**
diff --git a/util/topgen/templates/plic_all_irqs_test.c.tpl b/util/topgen/templates/plic_all_irqs_test.c.tpl
index 7d11f41..d820431 100644
--- a/util/topgen/templates/plic_all_irqs_test.c.tpl
+++ b/util/topgen/templates/plic_all_irqs_test.c.tpl
@@ -106,7 +106,7 @@
  */
 static void peripheral_irqs_clear(void) {
   % for p in helper.irq_peripherals:
-  ${comment(p.name)}PERIPHERAL_IRQS_CLEAR(${p.inst_name});
+  ${comment(p.name)}PERIPHERAL_IRQS_CLEAR(${p.name}, ${p.inst_name});
   % endfor
 }