summaryrefslogtreecommitdiffstats
path: root/src/soc/amd/common/block/acpi/alib.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/amd/common/block/acpi/alib.c')
-rw-r--r--src/soc/amd/common/block/acpi/alib.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/soc/amd/common/block/acpi/alib.c b/src/soc/amd/common/block/acpi/alib.c
new file mode 100644
index 000000000000..5e1e8fb443d7
--- /dev/null
+++ b/src/soc/amd/common/block/acpi/alib.c
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#include <acpi/acpigen.h>
+#include <amdblocks/alib.h>
+#include <types.h>
+
+void acpigen_dptc_call_alib(const char *buf_name, uint8_t *buffer, size_t size)
+{
+ /* Name (buf_name, Buffer(size) {...} */
+ acpigen_write_name(buf_name);
+ acpigen_write_byte_buffer(buffer, size);
+
+ /* \_SB.ALIB(0xc, buf_name) */
+ acpigen_emit_namestring("\\_SB.ALIB");
+ acpigen_write_integer(ALIB_FUNCTION_DYNAMIC_POWER_THERMAL_CONFIG);
+ acpigen_emit_namestring(buf_name);
+}