summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drivers/pcie/generic/chip.h4
-rw-r--r--src/drivers/pcie/generic/generic.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/src/drivers/pcie/generic/chip.h b/src/drivers/pcie/generic/chip.h
index 78285b9693..a5f261b842 100644
--- a/src/drivers/pcie/generic/chip.h
+++ b/src/drivers/pcie/generic/chip.h
@@ -9,6 +9,10 @@ struct drivers_pcie_generic_config {
const char *name;
unsigned int wake_gpe;
unsigned int wake_deepest;
+ /* When set to true, this will add a _DSD which contains a single
+ property, `DmaProperty`, set to 1, under the ACPI Device. */
+ bool add_acpi_dma_property;
+
};
#endif /* _PCIE_GENERIC_H_ */
diff --git a/src/drivers/pcie/generic/generic.c b/src/drivers/pcie/generic/generic.c
index 8b073405fd..1873e65895 100644
--- a/src/drivers/pcie/generic/generic.c
+++ b/src/drivers/pcie/generic/generic.c
@@ -42,6 +42,8 @@ static void pcie_generic_fill_ssdt(const struct device *dev)
if (config->wake_gpe)
acpigen_write_PRW(config->wake_gpe, config->wake_deepest);
+ if (config->add_acpi_dma_property)
+ acpi_device_add_dma_property(NULL);
acpigen_write_device_end();
acpigen_write_scope_end();