diff --git a/src/mainboard/google/brya/mainboard.c b/src/mainboard/google/brya/mainboard.c
index 536eabc..488eb88 100644
--- a/src/mainboard/google/brya/mainboard.c
+++ b/src/mainboard/google/brya/mainboard.c
@@ -5,6 +5,10 @@
 #include <ec/ec.h>
 #include <soc/ramstage.h>
 #include <fw_config.h>
+#include <acpi/acpigen.h>
+#include <drivers/wwan/fm/chip.h>
+
+WEAK_DEV_PTR(rp6_wwan);
 
 static void add_fw_config_oem_string(const struct fw_config *config, void *arg)
 {
@@ -55,10 +59,54 @@
 	mainboard_ec_init();
 }
 
+static void mainboard_generate_shutdown(const struct device *dev)
+{
+	const struct drivers_wwan_fm_config *config = config_of(dev);
+	const struct device *parent = dev->bus->dev;
+
+	if (!config)
+		return;
+	if (config->rtd3dev) {
+		acpigen_write_store();
+		acpigen_emit_namestring(acpi_device_path_join(parent, "RTD3._STA"));
+		acpigen_emit_byte(LOCAL0_OP);
+		acpigen_write_if_lequal_op_int(LOCAL0_OP, ONE_OP);
+		{
+			acpigen_emit_namestring(acpi_device_path_join(dev, "DPTS"));
+			acpigen_emit_byte(ARG0_OP);
+		}
+		acpigen_write_if_end();
+	} else {
+		acpigen_emit_namestring(acpi_device_path_join(dev, "DPTS"));
+		acpigen_emit_byte(ARG0_OP);
+	}
+}
+
+static void mainboard_fill_ssdt(const struct device *dev)
+{
+	const struct device *wwan = DEV_PTR(rp6_wwan);
+
+	if (wwan) {
+		acpigen_write_scope("\\_SB");
+		acpigen_write_method_serialized("MPTS", 1);
+		mainboard_generate_shutdown(wwan);
+		acpigen_write_method_end(); /* Method */
+		acpigen_write_scope_end(); /* Scope */
+	}
+	/* for variant to fill additional SSDT */
+	variant_fill_ssdt(dev);
+}
+
+void __weak variant_fill_ssdt(const struct device *dev)
+{
+	/* Add board-specific SSDT entries */
+}
+
 static void mainboard_enable(struct device *dev)
 {
 	dev->ops->init = mainboard_dev_init;
 	dev->ops->get_smbios_strings = mainboard_smbios_strings;
+	dev->ops->acpi_fill_ssdt = mainboard_fill_ssdt;
 }
 
 struct chip_operations mainboard_ops = {
