diff --git a/src/soc/amd/common/block/acp/Kconfig b/src/soc/amd/common/block/acp/Kconfig index bc2dddc1f9..a6ff48327b 100644 --- a/src/soc/amd/common/block/acp/Kconfig +++ b/src/soc/amd/common/block/acp/Kconfig @@ -11,3 +11,9 @@ config SOC_AMD_COMMON_BLOCK_ACP_GEN2 help Select this option to perform Audio Co-Processor(ACP) configuration. Used by the ACP in AMD mendocino (family 17h) and possibly newer CPUs. + +config SOC_AMD_COMMON_BLOCK_ACP_SOC_SPECIFIC_SSDT_ENTRY + bool + help + Select this option to call into the SoC code when generating the SSDT + entry for the Audio Co-Processor (ACP). diff --git a/src/soc/amd/common/block/acp/acp.c b/src/soc/amd/common/block/acp/acp.c index a43792eea7..4985980bf5 100644 --- a/src/soc/amd/common/block/acp/acp.c +++ b/src/soc/amd/common/block/acp/acp.c @@ -39,6 +39,8 @@ static void acp_fill_ssdt(const struct device *dev) { acpi_device_write_pci_dev(dev); acp_fill_wov_method(dev); + if (CONFIG(SOC_AMD_COMMON_BLOCK_ACP_SOC_SPECIFIC_SSDT_ENTRY)) + acp_soc_write_ssdt_entry(dev); } struct device_operations amd_acp_ops = { diff --git a/src/soc/amd/common/block/include/amdblocks/acp.h b/src/soc/amd/common/block/include/amdblocks/acp.h index 04112ca272..3ec38c93d5 100644 --- a/src/soc/amd/common/block/include/amdblocks/acp.h +++ b/src/soc/amd/common/block/include/amdblocks/acp.h @@ -3,6 +3,7 @@ #ifndef AMD_COMMON_ACP_H #define AMD_COMMON_ACP_H +#include #include struct acp_config { @@ -44,4 +45,6 @@ struct acp_config { bool dmic_present; }; +void acp_soc_write_ssdt_entry(const struct device *dev); + #endif /* AMD_COMMON_ACP_H */