diff options
-rw-r--r-- | src/drivers/wwan/fm/acpi_fm350gl.c | 9 | ||||
-rw-r--r-- | src/drivers/wwan/fm/chip.h | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/drivers/wwan/fm/acpi_fm350gl.c b/src/drivers/wwan/fm/acpi_fm350gl.c index 80370ad4ab..dbc4f2429d 100644 --- a/src/drivers/wwan/fm/acpi_fm350gl.c +++ b/src/drivers/wwan/fm/acpi_fm350gl.c @@ -241,6 +241,14 @@ static void wwan_fm350gl_acpi_fill_ssdt(const struct device *dev) wwan_fm350gl_acpi_method_shrf(parent, config); wwan_fm350gl_acpi_method_rst(parent, config); wwan_fm350gl_acpi_method_dpts(parent, config); + + if (config->add_acpi_dma_property) { + struct acpi_dp *dsd; + dsd = acpi_dp_new_table("_DSD"); + acpi_dp_add_integer(dsd, "DmaProperty", 1); + acpi_dp_write(dsd); + } + /* NOTE: the 5G driver will call MRST._RST to trigger a cold reset * during firmware update. */ @@ -249,6 +257,7 @@ static void wwan_fm350gl_acpi_fill_ssdt(const struct device *dev) acpigen_write_ADR(0); wwan_fm350gl_acpi_method_mrst_rst(parent, config); } + acpigen_write_device_end(); /* Device */ } acpigen_write_device_end(); /* Device */ diff --git a/src/drivers/wwan/fm/chip.h b/src/drivers/wwan/fm/chip.h index 635178bd16..19bc4c9008 100644 --- a/src/drivers/wwan/fm/chip.h +++ b/src/drivers/wwan/fm/chip.h @@ -20,6 +20,9 @@ struct drivers_wwan_fm_config { /* Pointer to the corresponding RTD3 */ DEVTREE_CONST struct device *rtd3dev; + + /* Add `DmaProperty` in _DSD */ + bool add_acpi_dma_property; }; #endif /* __DRIVERS_WWAN_FM_CHIP_H__ */ |