aboutsummaryrefslogtreecommitdiff
path: root/source/components/resources/rsmisc.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/components/resources/rsmisc.c')
-rw-r--r--source/components/resources/rsmisc.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/source/components/resources/rsmisc.c b/source/components/resources/rsmisc.c
index 31a7d9eecddb..f0f186b83583 100644
--- a/source/components/resources/rsmisc.c
+++ b/source/components/resources/rsmisc.c
@@ -225,6 +225,8 @@ AcpiRsConvertAmlToResource (
Count = INIT_TABLE_LENGTH (Info);
while (Count)
{
+ Target = NULL;
+
/*
* Source is the external AML byte stream buffer,
* destination is the internal resource descriptor
@@ -275,6 +277,14 @@ AcpiRsConvertAmlToResource (
((ACPI_GET8 (Source) >> Info->Value) & 0x07));
break;
+ case ACPI_RSC_6BITFLAG:
+ /*
+ * Mask and shift the flag bits
+ */
+ ACPI_SET8 (Destination,
+ ((ACPI_GET8 (Source) >> Info->Value) & 0x3F));
+ break;
+
case ACPI_RSC_COUNT:
ItemCount = ACPI_GET8 (Source);
@@ -654,6 +664,14 @@ AcpiRsConvertResourceToAml (
((ACPI_GET8 (Source) & 0x07) << Info->Value));
break;
+ case ACPI_RSC_6BITFLAG:
+ /*
+ * Mask and shift the flag bits
+ */
+ ACPI_SET_BIT (*ACPI_CAST8 (Destination), (UINT8)
+ ((ACPI_GET8 (Source) & 0x3F) << Info->Value));
+ break;
+
case ACPI_RSC_COUNT:
ItemCount = ACPI_GET8 (Source);