Blob Blame History Raw
From 7775b2fdd12151f78f575026bb5e416575dad455 Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Mon, 1 Oct 2018 14:31:06 -0400
Subject: [PATCH 37/39] Support decoding ACPI Generic Container and Embedded
 Controller dp nodes

Signed-off-by: Peter Jones <pjones@redhat.com>
---
 src/dp-acpi.c                  | 18 ++++++++++++++++++
 src/include/efivar/efivar-dp.h |  3 +++
 2 files changed, 21 insertions(+)

diff --git a/src/dp-acpi.c b/src/dp-acpi.c
index 019f910c164..3a80ba9e006 100644
--- a/src/dp-acpi.c
+++ b/src/dp-acpi.c
@@ -147,10 +147,19 @@ _format_acpi_dn(char *buf, size_t size, const_efidp dp)
 				format(buf, size, off, "PciRoot",
 				       "PciRoot(%s)", uidstr);
 				return off;
+			case EFIDP_ACPI_CONTAINER_0A05_HID:
+			case EFIDP_ACPI_CONTAINER_0A06_HID:
+				format(buf, size, off, "AcpiContainer",
+				       "AcpiContainer(%s)", uidstr);
+				break;
 			case EFIDP_ACPI_PCIE_ROOT_HID:
 				format(buf, size, off, "PcieRoot",
 				       "PcieRoot(%s)", uidstr);
 				return off;
+			case EFIDP_ACPI_EC_HID:
+				format(buf, size, off, "EmbeddedController",
+				       "EmbeddedController()");
+				return off;
 			default:
 				format_acpi_hid_ex(buf, size, off, dp,
 						   hidstr, cidstr, uidstr);
@@ -166,11 +175,20 @@ _format_acpi_dn(char *buf, size_t size, const_efidp dp)
 			       "PciRoot(0x%"PRIx32")",
 			       dp->acpi_hid.uid);
 			break;
+		case EFIDP_ACPI_CONTAINER_0A05_HID:
+		case EFIDP_ACPI_CONTAINER_0A06_HID:
+			format(buf, size, off, "AcpiContainer",
+			       "AcpiContainer()");
+			break;
 		case EFIDP_ACPI_PCIE_ROOT_HID:
 			format(buf, size, off, "PcieRoot",
 			       "PcieRoot(0x%"PRIx32")",
 			       dp->acpi_hid.uid);
 			break;
+		case EFIDP_ACPI_EC_HID:
+			format(buf, size, off, "EmbeddedController",
+			       "EmbeddedController()");
+			break;
 		case EFIDP_ACPI_FLOPPY_HID:
 			format(buf, size, off, "Floppy",
 			       "Floppy(0x%"PRIx32")",
diff --git a/src/include/efivar/efivar-dp.h b/src/include/efivar/efivar-dp.h
index f9ebb059d06..eab04f2dfac 100644
--- a/src/include/efivar/efivar-dp.h
+++ b/src/include/efivar/efivar-dp.h
@@ -155,7 +155,10 @@ efidp_make_acpi_hid_ex(uint8_t *buf, ssize_t size,
 #define EFIDP_ACPI_ID_TO_NUM(_HID)	((_HID) >> 16)
 
 #define EFIDP_ACPI_PCI_ROOT_HID		EFIDP_EFI_PNP_ID(0x0a03)
+#define EFIDP_ACPI_CONTAINER_0A05_HID	EFIDP_EFI_PNP_ID(0x0a05)
+#define EFIDP_ACPI_CONTAINER_0A06_HID	EFIDP_EFI_PNP_ID(0x0a06)
 #define EFIDP_ACPI_PCIE_ROOT_HID	EFIDP_EFI_PNP_ID(0x0a08)
+#define EFIDP_ACPI_EC_HID		EFIDP_EFI_PNP_ID(0x0a09)
 #define EFIDP_ACPI_FLOPPY_HID		EFIDP_EFI_PNP_ID(0x0604)
 #define EFIDP_ACPI_KEYBOARD_HID		EFIDP_EFI_PNP_ID(0x0301)
 #define EFIDP_ACPI_SERIAL_HID		EFIDP_EFI_PNP_ID(0x0501)
-- 
2.17.1