diff options
Diffstat (limited to 'source/common/dmtbdump.c')
| -rw-r--r-- | source/common/dmtbdump.c | 25 | 
1 files changed, 18 insertions, 7 deletions
| diff --git a/source/common/dmtbdump.c b/source/common/dmtbdump.c index 85ae14cedf66..44e2fa6e8d4b 100644 --- a/source/common/dmtbdump.c +++ b/source/common/dmtbdump.c @@ -614,6 +614,7 @@ AcpiDmDumpCsrt (  {      ACPI_STATUS             Status;      ACPI_CSRT_GROUP         *SubTable; +    ACPI_CSRT_SHARED_INFO   *SharedInfoTable;      ACPI_CSRT_DESCRIPTOR    *SubSubTable;      UINT32                  Length = Table->Length;      UINT32                  Offset = sizeof (ACPI_TABLE_CSRT); @@ -629,6 +630,8 @@ AcpiDmDumpCsrt (      SubTable = ACPI_ADD_PTR (ACPI_CSRT_GROUP, Table, Offset);      while (Offset < Table->Length)      { +        /* Resource group subtable */ +          AcpiOsPrintf ("\n");          Status = AcpiDmDumpTable (Length, Offset, SubTable,                      SubTable->Length, AcpiDmTableInfoCsrt0); @@ -637,15 +640,23 @@ AcpiDmDumpCsrt (              return;          } +        /* Shared info subtable (One per resource group) */ +          SubOffset = sizeof (ACPI_CSRT_GROUP); +        SharedInfoTable = ACPI_ADD_PTR (ACPI_CSRT_SHARED_INFO, Table, +            Offset + SubOffset); -        /* Shared resource group info buffer */ +        AcpiOsPrintf ("\n"); +        Status = AcpiDmDumpTable (Length, Offset + SubOffset, SharedInfoTable, +                    sizeof (ACPI_CSRT_SHARED_INFO), AcpiDmTableInfoCsrt1); +        if (ACPI_FAILURE (Status)) +        { +            return; +        } -        AcpiDmDumpBuffer (SubTable, SubOffset, SubTable->InfoLength, -            Offset+SubOffset, "Shared Data"); -        SubOffset += SubTable->InfoLength; +        SubOffset += SubTable->SharedInfoLength; -        /* Sub-Sub-tables (Resource Descriptors) */ +        /* Sub-Subtables (Resource Descriptors) */          SubSubTable = ACPI_ADD_PTR (ACPI_CSRT_DESCRIPTOR, Table,              Offset + SubOffset); @@ -655,7 +666,7 @@ AcpiDmDumpCsrt (          {              AcpiOsPrintf ("\n");              Status = AcpiDmDumpTable (Length, Offset + SubOffset, SubSubTable, -                        SubSubTable->Length, AcpiDmTableInfoCsrt1); +                        SubSubTable->Length, AcpiDmTableInfoCsrt2);              if (ACPI_FAILURE (Status))              {                  return; @@ -671,7 +682,7 @@ AcpiDmDumpCsrt (                  Offset + SubOffset + SubSubOffset, "ResourceInfo");              SubSubOffset += InfoLength; -            /* Point to next sub-sub-table */ +            /* Point to next sub-subtable */              SubOffset += SubSubTable->Length;              SubSubTable = ACPI_ADD_PTR (ACPI_CSRT_DESCRIPTOR, SubSubTable, | 
