aboutsummaryrefslogtreecommitdiff
path: root/src/superio/common/ssdt.h
diff options
context:
space:
mode:
authorPatrick Rudolph <patrick.rudolph@9elements.com>2019-05-28 11:29:29 +0200
committerPatrick Georgi <pgeorgi@google.com>2019-09-06 15:31:06 +0000
commitc162131d00c7f3b8827f9dd08754497c36884123 (patch)
treeea84390a3a310920a4231ee11d29c380d3028828 /src/superio/common/ssdt.h
parent6b2a54030fe1821a9e7360d3da668e1a710fada0 (diff)
superio/common: Add ssdtgen for generic SuperIOs
Add a generic SuperIO ACPI generator, dropping the need to include additional code in DSDT for SuperIO. It generates a device HID based on the decoded I/O range. Tested on Supermicro X11SSH-TF using AST2400. The SSDT contains no errors and all devices are present. Possible TODOs: * Add "enter config" and "exit config" bytes * Generate support methods to enter and exit config mode * Generate support methods to query, change or disable current resource settings on specific LDNs Change-Id: I2716ae0580d68e5d4fcc484cb1648a2cdc1f4ca0 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/33033 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Diffstat (limited to 'src/superio/common/ssdt.h')
-rw-r--r--src/superio/common/ssdt.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/superio/common/ssdt.h b/src/superio/common/ssdt.h
new file mode 100644
index 0000000000..8c63742798
--- /dev/null
+++ b/src/superio/common/ssdt.h
@@ -0,0 +1,23 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef __SUPERIO_COMMON_SSDT_H__
+#define __SUPERIO_COMMON_SSDT_H__
+
+#include <device/device.h>
+
+const char *superio_common_ldn_acpi_name(const struct device *dev);
+void superio_common_fill_ssdt_generator(struct device *dev);
+
+#endif /* __SUPERIO_COMMON_SSDT_H__ */