diff options
| author | Jung-uk Kim <jkim@FreeBSD.org> | 2015-11-25 21:04:42 +0000 | 
|---|---|---|
| committer | Jung-uk Kim <jkim@FreeBSD.org> | 2015-11-25 21:04:42 +0000 | 
| commit | b9098066cd6284319bca922f13e59517f774a103 (patch) | |
| tree | f01fd6c9053cb01ed84c00cb42ee789adafceaf5 /source/components/tables | |
| parent | 1e24cf365bc9c8df179b145c90d52852724e54ee (diff) | |
Notes
Diffstat (limited to 'source/components/tables')
| -rw-r--r-- | source/components/tables/tbdata.c | 9 | ||||
| -rw-r--r-- | source/components/tables/tbfadt.c | 8 | ||||
| -rw-r--r-- | source/components/tables/tbfind.c | 8 | ||||
| -rw-r--r-- | source/components/tables/tbinstal.c | 13 | ||||
| -rw-r--r-- | source/components/tables/tbprint.c | 5 | ||||
| -rw-r--r-- | source/components/tables/tbutils.c | 48 | ||||
| -rw-r--r-- | source/components/tables/tbxface.c | 18 | ||||
| -rw-r--r-- | source/components/tables/tbxfload.c | 20 | ||||
| -rw-r--r-- | source/components/tables/tbxfroot.c | 24 | 
9 files changed, 70 insertions, 83 deletions
| diff --git a/source/components/tables/tbdata.c b/source/components/tables/tbdata.c index 5769a8e70527..2943a0885802 100644 --- a/source/components/tables/tbdata.c +++ b/source/components/tables/tbdata.c @@ -122,7 +122,7 @@ AcpiTbAcquireTable (      case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:          Table = ACPI_CAST_PTR (ACPI_TABLE_HEADER, -                    ACPI_PHYSADDR_TO_PTR (TableDesc->Address)); +            ACPI_PHYSADDR_TO_PTR (TableDesc->Address));          break;      default: @@ -229,7 +229,7 @@ AcpiTbAcquireTempTable (      case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:          TableHeader = ACPI_CAST_PTR (ACPI_TABLE_HEADER, -                        ACPI_PHYSADDR_TO_PTR (Address)); +            ACPI_PHYSADDR_TO_PTR (Address));          if (!TableHeader)          {              return (AE_NO_MEMORY); @@ -303,7 +303,7 @@ AcpiTbValidateTable (      if (!TableDesc->Pointer)      {          Status = AcpiTbAcquireTable (TableDesc, &TableDesc->Pointer, -                    &TableDesc->Length, &TableDesc->Flags); +            &TableDesc->Length, &TableDesc->Flags);          if (!TableDesc->Pointer)          {              Status = AE_NO_MEMORY; @@ -444,6 +444,7 @@ AcpiTbVerifyTempTable (                  AcpiUtValidAcpiName (TableDesc->Signature.Ascii) ?                      TableDesc->Signature.Ascii : "????",                  ACPI_FORMAT_UINT64 (TableDesc->Address))); +              goto InvalidateAndExit;          }      } @@ -721,7 +722,7 @@ AcpiTbAllocateOwnerId (      if (TableIndex < AcpiGbl_RootTableList.CurrentTableCount)      {          Status = AcpiUtAllocateOwnerId ( -                    &(AcpiGbl_RootTableList.Tables[TableIndex].OwnerId)); +            &(AcpiGbl_RootTableList.Tables[TableIndex].OwnerId));      }      (void) AcpiUtReleaseMutex (ACPI_MTX_TABLES); diff --git a/source/components/tables/tbfadt.c b/source/components/tables/tbfadt.c index bcbf576bc368..bfb80e5557ae 100644 --- a/source/components/tables/tbfadt.c +++ b/source/components/tables/tbfadt.c @@ -326,7 +326,7 @@ AcpiTbSelectAddress (   *   * FUNCTION:    AcpiTbParseFadt   * - * PARAMETERS:  TableIndex          - Index for the FADT + * PARAMETERS:  None   *   * RETURN:      None   * @@ -337,7 +337,7 @@ AcpiTbSelectAddress (  void  AcpiTbParseFadt ( -    UINT32                  TableIndex) +    void)  {      UINT32                  Length;      ACPI_TABLE_HEADER       *Table; @@ -350,10 +350,10 @@ AcpiTbParseFadt (       * Get a local copy of the FADT and convert it to a common format       * Map entire FADT, assumed to be smaller than one page.       */ -    Length = AcpiGbl_RootTableList.Tables[TableIndex].Length; +    Length = AcpiGbl_RootTableList.Tables[AcpiGbl_FadtIndex].Length;      Table = AcpiOsMapMemory ( -                AcpiGbl_RootTableList.Tables[TableIndex].Address, Length); +        AcpiGbl_RootTableList.Tables[AcpiGbl_FadtIndex].Address, Length);      if (!Table)      {          return; diff --git a/source/components/tables/tbfind.c b/source/components/tables/tbfind.c index 4d360ae8bee3..34cf12c13f47 100644 --- a/source/components/tables/tbfind.c +++ b/source/components/tables/tbfind.c @@ -108,7 +108,7 @@ AcpiTbFindTable (      for (i = 0; i < AcpiGbl_RootTableList.CurrentTableCount; ++i)      {          if (memcmp (&(AcpiGbl_RootTableList.Tables[i].Signature), -                            Header.Signature, ACPI_NAME_SIZE)) +            Header.Signature, ACPI_NAME_SIZE))          {              /* Not the requested table */ @@ -136,13 +136,13 @@ AcpiTbFindTable (          /* Check for table match on all IDs */          if (!memcmp (AcpiGbl_RootTableList.Tables[i].Pointer->Signature, -                            Header.Signature, ACPI_NAME_SIZE) && +                Header.Signature, ACPI_NAME_SIZE) &&              (!OemId[0] ||               !memcmp (AcpiGbl_RootTableList.Tables[i].Pointer->OemId, -                             Header.OemId, ACPI_OEM_ID_SIZE)) && +                 Header.OemId, ACPI_OEM_ID_SIZE)) &&              (!OemTableId[0] ||               !memcmp (AcpiGbl_RootTableList.Tables[i].Pointer->OemTableId, -                             Header.OemTableId, ACPI_OEM_TABLE_ID_SIZE))) +                 Header.OemTableId, ACPI_OEM_TABLE_ID_SIZE)))          {              *TableIndex = i; diff --git a/source/components/tables/tbinstal.c b/source/components/tables/tbinstal.c index a98a68989ec4..6abcc86c013b 100644 --- a/source/components/tables/tbinstal.c +++ b/source/components/tables/tbinstal.c @@ -83,7 +83,7 @@ AcpiTbCompareTables (      Status = AcpiTbAcquireTable (&AcpiGbl_RootTableList.Tables[TableIndex], -                &Table, &TableLength, &TableFlags); +        &Table, &TableLength, &TableFlags);      if (ACPI_FAILURE (Status))      {          return (FALSE); @@ -206,7 +206,7 @@ AcpiTbInstallFixedTable (      /* Fill a table descriptor for validation */      Status = AcpiTbAcquireTempTable (&NewTableDesc, Address, -                ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL); +        ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL);      if (ACPI_FAILURE (Status))      {          ACPI_ERROR ((AE_INFO, "Could not acquire table length at %8.8X%8.8X", @@ -278,7 +278,8 @@ AcpiTbInstallStandardTable (      Status = AcpiTbAcquireTempTable (&NewTableDesc, Address, Flags);      if (ACPI_FAILURE (Status))      { -        ACPI_ERROR ((AE_INFO, "Could not acquire table length at %8.8X%8.8X", +        ACPI_ERROR ((AE_INFO, +            "Could not acquire table length at %8.8X%8.8X",              ACPI_FORMAT_UINT64 (Address)));          return_ACPI_STATUS (Status);      } @@ -291,7 +292,8 @@ AcpiTbInstallStandardTable (          AcpiGbl_DisableSsdtTableInstall &&          ACPI_COMPARE_NAME (&NewTableDesc.Signature, ACPI_SIG_SSDT))      { -        ACPI_INFO ((AE_INFO, "Ignoring installation of %4.4s at %8.8X%8.8X", +        ACPI_INFO ((AE_INFO, +            "Ignoring installation of %4.4s at %8.8X%8.8X",              NewTableDesc.Signature.Ascii, ACPI_FORMAT_UINT64 (Address)));          goto ReleaseAndExit;      } @@ -359,7 +361,8 @@ AcpiTbInstallStandardTable (               * need to be unregistered when they are unloaded, and slots in the               * root table list should be reused when empty.               */ -            if (AcpiGbl_RootTableList.Tables[i].Flags & ACPI_TABLE_IS_LOADED) +            if (AcpiGbl_RootTableList.Tables[i].Flags & +                ACPI_TABLE_IS_LOADED)              {                  /* Table is still loaded, this is an error */ diff --git a/source/components/tables/tbprint.c b/source/components/tables/tbprint.c index af73279cc6ee..25f319967cd8 100644 --- a/source/components/tables/tbprint.c +++ b/source/components/tables/tbprint.c @@ -88,6 +88,7 @@ AcpiTbFixString (          {              *String = '?';          } +          String++;          Length--;      } @@ -156,8 +157,8 @@ AcpiTbPrintTableHeader (      {          /* RSDP has no common fields */ -        memcpy (LocalHeader.OemId, -            ACPI_CAST_PTR (ACPI_TABLE_RSDP, Header)->OemId, ACPI_OEM_ID_SIZE); +        memcpy (LocalHeader.OemId, ACPI_CAST_PTR (ACPI_TABLE_RSDP, +            Header)->OemId, ACPI_OEM_ID_SIZE);          AcpiTbFixString (LocalHeader.OemId, ACPI_OEM_ID_SIZE);          ACPI_INFO ((AE_INFO, "RSDP 0x%8.8X%8.8X %06X (v%.2d %-6.6s)", diff --git a/source/components/tables/tbutils.c b/source/components/tables/tbutils.c index 988a3b18f637..19daea867e35 100644 --- a/source/components/tables/tbutils.c +++ b/source/components/tables/tbutils.c @@ -86,16 +86,16 @@ AcpiTbInitializeFacs (          return (AE_OK);      }      else if (AcpiGbl_FADT.XFacs && -             (!AcpiGbl_FADT.Facs || !AcpiGbl_Use32BitFacsAddresses)) +         (!AcpiGbl_FADT.Facs || !AcpiGbl_Use32BitFacsAddresses))      {          (void) AcpiGetTableByIndex (AcpiGbl_XFacsIndex, -                    ACPI_CAST_INDIRECT_PTR (ACPI_TABLE_HEADER, &Facs)); +            ACPI_CAST_INDIRECT_PTR (ACPI_TABLE_HEADER, &Facs));          AcpiGbl_FACS = Facs;      }      else if (AcpiGbl_FADT.Facs)      {          (void) AcpiGetTableByIndex (AcpiGbl_FacsIndex, -                    ACPI_CAST_INDIRECT_PTR (ACPI_TABLE_HEADER, &Facs)); +            ACPI_CAST_INDIRECT_PTR (ACPI_TABLE_HEADER, &Facs));          AcpiGbl_FACS = Facs;      } @@ -108,33 +108,6 @@ AcpiTbInitializeFacs (  /*******************************************************************************   * - * FUNCTION:    AcpiTbTablesLoaded - * - * PARAMETERS:  None - * - * RETURN:      TRUE if required ACPI tables are loaded - * - * DESCRIPTION: Determine if the minimum required ACPI tables are present - *              (FADT, FACS, DSDT) - * - ******************************************************************************/ - -BOOLEAN -AcpiTbTablesLoaded ( -    void) -{ - -    if (AcpiGbl_RootTableList.CurrentTableCount >= 4) -    { -        return (TRUE); -    } - -    return (FALSE); -} - - -/******************************************************************************* - *   * FUNCTION:    AcpiTbCheckDsdtHeader   *   * PARAMETERS:  None @@ -160,6 +133,7 @@ AcpiTbCheckDsdtHeader (          ACPI_BIOS_ERROR ((AE_INFO,              "The DSDT has been corrupted or replaced - "              "old, new headers below")); +          AcpiTbPrintTableHeader (0, &AcpiGbl_OriginalDsdtHeader);          AcpiTbPrintTableHeader (0, AcpiGbl_DSDT); @@ -208,8 +182,8 @@ AcpiTbCopyDsdt (      AcpiTbInitTableDescriptor (          &AcpiGbl_RootTableList.Tables[AcpiGbl_DsdtIndex], -        ACPI_PTR_TO_PHYSADDR (NewTable), ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL, -        NewTable); +        ACPI_PTR_TO_PHYSADDR (NewTable), +        ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL, NewTable);      ACPI_INFO ((AE_INFO,          "Forced DSDT copy: length 0x%05X copied locally, original unmapped", @@ -254,7 +228,8 @@ AcpiTbGetRootTableEntry (           * 32-bit platform, RSDT: Return 32-bit table entry           * 64-bit platform, RSDT: Expand 32-bit to 64-bit and return           */ -        return ((ACPI_PHYSICAL_ADDRESS) (*ACPI_CAST_PTR (UINT32, TableEntry))); +        return ((ACPI_PHYSICAL_ADDRESS) (*ACPI_CAST_PTR ( +            UINT32, TableEntry)));      }      else      { @@ -420,10 +395,12 @@ AcpiTbParseRootTable (              ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE, &TableIndex);          if (ACPI_SUCCESS (Status) && -            ACPI_COMPARE_NAME (&AcpiGbl_RootTableList.Tables[TableIndex].Signature, +            ACPI_COMPARE_NAME ( +                &AcpiGbl_RootTableList.Tables[TableIndex].Signature,                  ACPI_SIG_FADT))          { -            AcpiTbParseFadt (TableIndex); +            AcpiGbl_FadtIndex = TableIndex; +            AcpiTbParseFadt ();          }  NextTable: @@ -432,7 +409,6 @@ NextTable:      }      AcpiOsUnmapMemory (Table, Length); -      return_ACPI_STATUS (AE_OK);  } diff --git a/source/components/tables/tbxface.c b/source/components/tables/tbxface.c index bcaf6af2a990..f2c878618c80 100644 --- a/source/components/tables/tbxface.c +++ b/source/components/tables/tbxface.c @@ -246,8 +246,8 @@ AcpiGetTableHeader (      for (i = 0, j = 0; i < AcpiGbl_RootTableList.CurrentTableCount; i++)      { -        if (!ACPI_COMPARE_NAME (&(AcpiGbl_RootTableList.Tables[i].Signature), -                    Signature)) +        if (!ACPI_COMPARE_NAME ( +                &(AcpiGbl_RootTableList.Tables[i].Signature), Signature))          {              continue;          } @@ -264,15 +264,14 @@ AcpiGetTableHeader (                  ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL)              {                  Header = AcpiOsMapMemory ( -                            AcpiGbl_RootTableList.Tables[i].Address, -                            sizeof (ACPI_TABLE_HEADER)); +                    AcpiGbl_RootTableList.Tables[i].Address, +                    sizeof (ACPI_TABLE_HEADER));                  if (!Header)                  {                      return (AE_NO_MEMORY);                  } -                memcpy (OutTableHeader, Header, -                    sizeof (ACPI_TABLE_HEADER)); +                memcpy (OutTableHeader, Header, sizeof (ACPI_TABLE_HEADER));                  AcpiOsUnmapMemory (Header, sizeof (ACPI_TABLE_HEADER));              }              else @@ -333,8 +332,8 @@ AcpiGetTable (      for (i = 0, j = 0; i < AcpiGbl_RootTableList.CurrentTableCount; i++)      { -        if (!ACPI_COMPARE_NAME (&(AcpiGbl_RootTableList.Tables[i].Signature), -                Signature)) +        if (!ACPI_COMPARE_NAME ( +                &(AcpiGbl_RootTableList.Tables[i].Signature), Signature))          {              continue;          } @@ -405,7 +404,8 @@ AcpiGetTableByIndex (      {          /* Table is not mapped, map it */ -        Status = AcpiTbValidateTable (&AcpiGbl_RootTableList.Tables[TableIndex]); +        Status = AcpiTbValidateTable ( +            &AcpiGbl_RootTableList.Tables[TableIndex]);          if (ACPI_FAILURE (Status))          {              (void) AcpiUtReleaseMutex (ACPI_MTX_TABLES); diff --git a/source/components/tables/tbxfload.c b/source/components/tables/tbxfload.c index bd5f7d7bc41f..b9b22259f11f 100644 --- a/source/components/tables/tbxfload.c +++ b/source/components/tables/tbxfload.c @@ -210,6 +210,7 @@ AcpiTbLoadNamespace (          {              ACPI_EXCEPTION ((AE_INFO, Status, "(%4.4s:%8.8s) while loading table",                  Table->Signature.Ascii, Table->Pointer->OemTableId)); +              TablesFailed++;              ACPI_DEBUG_PRINT_RAW ((ACPI_DB_INIT, @@ -227,7 +228,7 @@ AcpiTbLoadNamespace (      if (!TablesFailed)      {          ACPI_INFO ((AE_INFO, -            "%u ACPI AML tables successfully acquired and loaded", +            "%u ACPI AML tables successfully acquired and loaded\n",              TablesLoaded));      }      else @@ -343,8 +344,8 @@ AcpiLoadTable (      (void) AcpiUtAcquireMutex (ACPI_MTX_TABLES);      Status = AcpiTbInstallStandardTable (ACPI_PTR_TO_PHYSADDR (Table), -                ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, TRUE, FALSE, -                &TableIndex); +        ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, TRUE, FALSE, +        &TableIndex);      (void) AcpiUtReleaseMutex (ACPI_MTX_TABLES);      if (ACPI_FAILURE (Status)) @@ -356,7 +357,8 @@ AcpiLoadTable (       * Note: Now table is "INSTALLED", it must be validated before       * using.       */ -    Status = AcpiTbValidateTable (&AcpiGbl_RootTableList.Tables[TableIndex]); +    Status = AcpiTbValidateTable ( +        &AcpiGbl_RootTableList.Tables[TableIndex]);      if (ACPI_FAILURE (Status))      {          goto UnlockAndExit; @@ -369,7 +371,7 @@ AcpiLoadTable (      if (AcpiGbl_TableHandler)      {          (void) AcpiGbl_TableHandler (ACPI_TABLE_EVENT_LOAD, Table, -                    AcpiGbl_TableHandlerContext); +            AcpiGbl_TableHandlerContext);      }  UnlockAndExit: @@ -452,8 +454,8 @@ AcpiUnloadParentTable (           * that can create namespace objects.           */          if (ACPI_COMPARE_NAME ( -            AcpiGbl_RootTableList.Tables[i].Signature.Ascii, -            ACPI_SIG_DSDT)) +                AcpiGbl_RootTableList.Tables[i].Signature.Ascii, +                ACPI_SIG_DSDT))          {              Status = AE_TYPE;              break; @@ -472,8 +474,8 @@ AcpiUnloadParentTable (          if (AcpiGbl_TableHandler)          {              (void) AcpiGbl_TableHandler (ACPI_TABLE_EVENT_UNLOAD, -                        AcpiGbl_RootTableList.Tables[i].Pointer, -                        AcpiGbl_TableHandlerContext); +                AcpiGbl_RootTableList.Tables[i].Pointer, +                AcpiGbl_TableHandlerContext);          }          /* diff --git a/source/components/tables/tbxfroot.c b/source/components/tables/tbxfroot.c index 92ace5cb02be..455f13334dd2 100644 --- a/source/components/tables/tbxfroot.c +++ b/source/components/tables/tbxfroot.c @@ -171,8 +171,8 @@ AcpiFindRootPointer (      /* 1a) Get the location of the Extended BIOS Data Area (EBDA) */      TablePtr = AcpiOsMapMemory ( -                (ACPI_PHYSICAL_ADDRESS) ACPI_EBDA_PTR_LOCATION, -                ACPI_EBDA_PTR_LENGTH); +        (ACPI_PHYSICAL_ADDRESS) ACPI_EBDA_PTR_LOCATION, +        ACPI_EBDA_PTR_LENGTH);      if (!TablePtr)      {          ACPI_ERROR ((AE_INFO, @@ -198,8 +198,8 @@ AcpiFindRootPointer (           *     minimum of 1K length)           */          TablePtr = AcpiOsMapMemory ( -                    (ACPI_PHYSICAL_ADDRESS) PhysicalAddress, -                    ACPI_EBDA_WINDOW_SIZE); +            (ACPI_PHYSICAL_ADDRESS) PhysicalAddress, +            ACPI_EBDA_WINDOW_SIZE);          if (!TablePtr)          {              ACPI_ERROR ((AE_INFO, @@ -209,14 +209,16 @@ AcpiFindRootPointer (              return_ACPI_STATUS (AE_NO_MEMORY);          } -        MemRover = AcpiTbScanMemoryForRsdp (TablePtr, ACPI_EBDA_WINDOW_SIZE); +        MemRover = AcpiTbScanMemoryForRsdp ( +            TablePtr, ACPI_EBDA_WINDOW_SIZE);          AcpiOsUnmapMemory (TablePtr, ACPI_EBDA_WINDOW_SIZE);          if (MemRover)          {              /* Return the physical address */ -            PhysicalAddress += (UINT32) ACPI_PTR_DIFF (MemRover, TablePtr); +            PhysicalAddress += +                (UINT32) ACPI_PTR_DIFF (MemRover, TablePtr);              *TableAddress = (ACPI_PHYSICAL_ADDRESS) PhysicalAddress;              return_ACPI_STATUS (AE_OK); @@ -227,8 +229,8 @@ AcpiFindRootPointer (       * 2) Search upper memory: 16-byte boundaries in E0000h-FFFFFh       */      TablePtr = AcpiOsMapMemory ( -                (ACPI_PHYSICAL_ADDRESS) ACPI_HI_RSDP_WINDOW_BASE, -                ACPI_HI_RSDP_WINDOW_SIZE); +        (ACPI_PHYSICAL_ADDRESS) ACPI_HI_RSDP_WINDOW_BASE, +        ACPI_HI_RSDP_WINDOW_SIZE);      if (!TablePtr)      { @@ -239,7 +241,8 @@ AcpiFindRootPointer (          return_ACPI_STATUS (AE_NO_MEMORY);      } -    MemRover = AcpiTbScanMemoryForRsdp (TablePtr, ACPI_HI_RSDP_WINDOW_SIZE); +    MemRover = AcpiTbScanMemoryForRsdp ( +        TablePtr, ACPI_HI_RSDP_WINDOW_SIZE);      AcpiOsUnmapMemory (TablePtr, ACPI_HI_RSDP_WINDOW_SIZE);      if (MemRover) @@ -297,7 +300,8 @@ AcpiTbScanMemoryForRsdp (      {          /* The RSDP signature and checksum must both be correct */ -        Status = AcpiTbValidateRsdp (ACPI_CAST_PTR (ACPI_TABLE_RSDP, MemRover)); +        Status = AcpiTbValidateRsdp ( +            ACPI_CAST_PTR (ACPI_TABLE_RSDP, MemRover));          if (ACPI_SUCCESS (Status))          {              /* Sig and checksum valid, we have found a real RSDP */ | 
