Merge ACPICA 20190329.
This commit is contained in:
parent
24a54e79c9
commit
c30ced85d1
@ -164,7 +164,7 @@ map_table(vm_paddr_t pa, int offset, const char *sig)
|
||||
void *table;
|
||||
|
||||
header = table_map(pa, offset, sizeof(ACPI_TABLE_HEADER));
|
||||
if (strncmp(header->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(header->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
table_unmap(header, sizeof(ACPI_TABLE_HEADER));
|
||||
return (NULL);
|
||||
}
|
||||
@ -202,7 +202,7 @@ probe_table(vm_paddr_t address, const char *sig)
|
||||
printf("Table '%.4s' at 0x%jx\n", table->Signature,
|
||||
(uintmax_t)address);
|
||||
|
||||
if (strncmp(table->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(table->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
table_unmap(table, sizeof(ACPI_TABLE_HEADER));
|
||||
return (0);
|
||||
}
|
||||
|
@ -70,7 +70,7 @@ map_table(vm_paddr_t pa, int offset, const char *sig)
|
||||
void *table;
|
||||
|
||||
header = pmap_mapbios(pa, sizeof(ACPI_TABLE_HEADER));
|
||||
if (strncmp(header->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(header->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
pmap_unmapbios((vm_offset_t)header, sizeof(ACPI_TABLE_HEADER));
|
||||
return (NULL);
|
||||
}
|
||||
@ -109,7 +109,7 @@ probe_table(vm_paddr_t address, const char *sig)
|
||||
printf("Table '%.4s' at 0x%jx\n", table->Signature,
|
||||
(uintmax_t)address);
|
||||
|
||||
if (strncmp(table->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(table->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
pmap_unmapbios((vm_offset_t)table, sizeof(ACPI_TABLE_HEADER));
|
||||
return (0);
|
||||
}
|
||||
|
@ -1,8 +1,76 @@
|
||||
----------------------------------------
|
||||
29 March 2019. Summary of changes for version 20190329:
|
||||
|
||||
|
||||
1) ACPICA kernel-resident subsystem:
|
||||
|
||||
Namespace support: Remove the address nodes from global list after method
|
||||
termination. The global address list contains pointers to namespace nodes
|
||||
that represent Operation Regions. This change properly removes Operation
|
||||
Region namespace nodes that are declared dynamically during method
|
||||
execution.
|
||||
|
||||
Linux: Use a different debug default than ACPICA. There was a divergence
|
||||
between Linux and the ACPICA codebases. In order to resolve this
|
||||
divergence, Linux now declares its own debug default in aclinux.h
|
||||
|
||||
Renamed some internal macros to improve code understanding and
|
||||
maintenance. The macros below all operate on single 4-character ACPI
|
||||
NameSegs, not generic strings (old -> new):
|
||||
ACPI_NAME_SIZE -> ACPI_NAMESEG_SIZE
|
||||
ACPI_COMPARE_NAME -> ACPI_COMPARE_NAMESEG
|
||||
ACPI_MOVE_NAME -> ACPI_COPY_NAMESEG
|
||||
|
||||
Fix for missing comma in array declaration for the AcpiGbl_GenericNotify
|
||||
table.
|
||||
|
||||
Test suite: Update makefiles, add PCC operation region support
|
||||
|
||||
|
||||
2) iASL Compiler/Disassembler and Tools:
|
||||
|
||||
iASL: Implemented additional illegal forward reference detection. Now
|
||||
detect and emit an error upon detection of a forward reference from a
|
||||
Field to an Operation Region. This will fail at runtime if allowed to
|
||||
pass the compiler.
|
||||
|
||||
AcpiExec: Add an address list check for dynamic Operation Regions. This
|
||||
feature performs a sanity test for each node the global address list.
|
||||
This is done in order to ensure that all dynamic operation regions are
|
||||
properly removed from the global address list and no dangling pointers
|
||||
are left behind.
|
||||
|
||||
Disassembler: Improved generation of resource pathnames. This change
|
||||
improves the code that generates resource descriptor and resource tag
|
||||
pathnames. The original code used a bunch of str* C library functions
|
||||
that caused warnings on some compilers.
|
||||
|
||||
iASL: Removed some uses of strncpy and replaced with memmove. The strncpy
|
||||
function can overwrite buffers if the calling code is not very careful.
|
||||
In the case of generating a module/table header, use of memmove is a
|
||||
better implementation.
|
||||
|
||||
|
||||
3) Status of new features that have not been completed at this time:
|
||||
|
||||
iASL: Implementing an enhanced multiple file compilation into a single
|
||||
namespace feature (Status): This feature will be released soon, and
|
||||
allows multiple ASL files to be compiled into the same single namespace.
|
||||
By doing so, any unresolved external declarations as well as duplicate
|
||||
named object declarations can be detected during compilation (rather than
|
||||
later during runtime). The following commands are examples that utilize
|
||||
this feature:
|
||||
iasl dsdt.asl ssdt.asl
|
||||
iasl dsdt.asl ssdt1.asl ssdt2.asl
|
||||
iasl dsdt.asl ssdt*.asl
|
||||
|
||||
ASL tutorial status: Feedback is being gathered internally and the
|
||||
current plan is to publish this tutorial on the ACPICA website after a
|
||||
final review by a tech writer.
|
||||
|
||||
----------------------------------------
|
||||
15 February 2019. Summary of changes for version 20190215:
|
||||
|
||||
This release is available at https://acpica.org/downloads
|
||||
|
||||
|
||||
0) Support for ACPI specification version 6.3:
|
||||
|
||||
|
@ -585,7 +585,7 @@ AcValidateTableHeader (
|
||||
* These fields must be ASCII: OemId, OemTableId, AslCompilerId.
|
||||
* We allow a NULL terminator in OemId and OemTableId.
|
||||
*/
|
||||
for (i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
{
|
||||
if (!ACPI_IS_ASCII ((UINT8) TableHeader.AslCompilerId[i]))
|
||||
{
|
||||
|
@ -459,7 +459,7 @@ AdDisassembleOneTable (
|
||||
*/
|
||||
if (AcpiGbl_CaptureComments)
|
||||
{
|
||||
strncpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAME_SIZE);
|
||||
strncpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAMESEG_SIZE);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -814,7 +814,7 @@ AcpiDmLoadDescendingOp (
|
||||
|
||||
while (AcpiGbl_PreDefinedNames[PreDefineIndex].Name)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Node->Name.Ascii,
|
||||
if (ACPI_COMPARE_NAMESEG (Node->Name.Ascii,
|
||||
AcpiGbl_PreDefinedNames[PreDefineIndex].Name))
|
||||
{
|
||||
PreDefined = TRUE;
|
||||
|
@ -490,7 +490,7 @@ AcpiAhMatchPredefinedName (
|
||||
|
||||
for (Info = AslPredefinedInfo; Info->Name; Info++)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Nameseg, Info->Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Nameseg, Info->Name))
|
||||
{
|
||||
return (Info);
|
||||
}
|
||||
|
@ -183,7 +183,7 @@ AcpiAhGetTableInfo (
|
||||
|
||||
for (Info = AcpiGbl_SupportedTables; Info->Signature; Info++)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Signature, Info->Signature))
|
||||
if (ACPI_COMPARE_NAMESEG (Signature, Info->Signature))
|
||||
{
|
||||
return (Info);
|
||||
}
|
||||
|
@ -747,6 +747,7 @@ AcpiGetTagPathname (
|
||||
UINT8 ResourceTableIndex;
|
||||
ACPI_SIZE RequiredSize;
|
||||
char *Pathname;
|
||||
char *PathnameEnd;
|
||||
AML_RESOURCE *Aml;
|
||||
ACPI_PARSE_OBJECT *Op;
|
||||
char *InternalPath;
|
||||
@ -809,19 +810,26 @@ AcpiGetTagPathname (
|
||||
RequiredSize, FALSE);
|
||||
|
||||
/*
|
||||
* Create the full path to the resource and tag by: remove the buffer name,
|
||||
* append the resource descriptor name, append a dot, append the tag name.
|
||||
* Create the full path to the resource and tag by:
|
||||
* 1) Remove the buffer nameseg from the end of the pathname
|
||||
* 2) Append the resource descriptor nameseg
|
||||
* 3) Append a dot
|
||||
* 4) Append the field tag nameseg
|
||||
*
|
||||
* TBD: Always using the full path is a bit brute force, the path can be
|
||||
* Always using the full path is a bit brute force, the path can be
|
||||
* often be optimized with carats (if the original buffer namepath is a
|
||||
* single nameseg). This doesn't really matter, because these paths do not
|
||||
* end up in the final compiled AML, it's just an appearance issue for the
|
||||
* disassembled code.
|
||||
*/
|
||||
Pathname[strlen (Pathname) - ACPI_NAME_SIZE] = 0;
|
||||
strncat (Pathname, ResourceNode->Name.Ascii, ACPI_NAME_SIZE);
|
||||
strcat (Pathname, ".");
|
||||
strncat (Pathname, Tag, ACPI_NAME_SIZE);
|
||||
PathnameEnd = Pathname + (RequiredSize - ACPI_NAMESEG_SIZE - 1);
|
||||
ACPI_COPY_NAMESEG (PathnameEnd, ResourceNode->Name.Ascii);
|
||||
|
||||
PathnameEnd += ACPI_NAMESEG_SIZE;
|
||||
*PathnameEnd = '.';
|
||||
|
||||
PathnameEnd++;
|
||||
ACPI_COPY_NAMESEG (PathnameEnd, Tag);
|
||||
|
||||
/* Internalize the namepath to AML format */
|
||||
|
||||
@ -863,7 +871,7 @@ static void
|
||||
AcpiDmUpdateResourceName (
|
||||
ACPI_NAMESPACE_NODE *ResourceNode)
|
||||
{
|
||||
char Name[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE];
|
||||
|
||||
|
||||
/* Ignore if a unique name has already been assigned */
|
||||
|
@ -602,7 +602,7 @@ AcpiDmGetTableData (
|
||||
|
||||
for (Info = AcpiDmTableData; Info->Signature; Info++)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Signature, Info->Signature))
|
||||
if (ACPI_COMPARE_NAMESEG (Signature, Info->Signature))
|
||||
{
|
||||
return (Info);
|
||||
}
|
||||
@ -657,7 +657,7 @@ AcpiDmDumpDataTable (
|
||||
* Handle tables that don't use the common ACPI table header structure.
|
||||
* Currently, these are the FACS, RSDP, and S3PT.
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_FACS))
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_FACS))
|
||||
{
|
||||
Length = Table->Length;
|
||||
Status = AcpiDmDumpTable (Length, 0, Table, 0, AcpiDmTableInfoFacs);
|
||||
@ -670,7 +670,7 @@ AcpiDmDumpDataTable (
|
||||
{
|
||||
Length = AcpiDmDumpRsdp (Table);
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_S3PT))
|
||||
else if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_S3PT))
|
||||
{
|
||||
Length = AcpiDmDumpS3pt (Table);
|
||||
}
|
||||
|
@ -281,7 +281,7 @@ AdCreateTableHeader (
|
||||
|
||||
/* Revision of DSDT controls the ACPI integer width */
|
||||
|
||||
if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_DSDT))
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_DSDT))
|
||||
{
|
||||
AcpiOsPrintf (" **** 32-bit table (V1), no 64-bit math support");
|
||||
}
|
||||
|
@ -563,14 +563,14 @@ ApCheckForGpeNameConflict (
|
||||
{
|
||||
ACPI_PARSE_OBJECT *NextOp;
|
||||
UINT32 GpeNumber;
|
||||
char Name[ACPI_NAME_SIZE + 1];
|
||||
char Target[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE + 1];
|
||||
char Target[ACPI_NAMESEG_SIZE];
|
||||
|
||||
|
||||
/* Need a null-terminated string version of NameSeg */
|
||||
|
||||
ACPI_MOVE_32_TO_32 (Name, &Op->Asl.NameSeg);
|
||||
Name[ACPI_NAME_SIZE] = 0;
|
||||
Name[ACPI_NAMESEG_SIZE] = 0;
|
||||
|
||||
/*
|
||||
* For a GPE method:
|
||||
@ -622,7 +622,7 @@ ApCheckForGpeNameConflict (
|
||||
if ((NextOp->Asl.ParseOpcode == PARSEOP_METHOD) ||
|
||||
(NextOp->Asl.ParseOpcode == PARSEOP_NAME))
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Target, NextOp->Asl.NameSeg))
|
||||
if (ACPI_COMPARE_NAMESEG (Target, NextOp->Asl.NameSeg))
|
||||
{
|
||||
/* Found both _Exy and _Lxy in the same scope, error */
|
||||
|
||||
@ -666,7 +666,7 @@ ApCheckRegMethod (
|
||||
|
||||
/* We are only interested in _REG methods */
|
||||
|
||||
if (!ACPI_COMPARE_NAME (METHOD_NAME__REG, &Op->Asl.NameSeg))
|
||||
if (!ACPI_COMPARE_NAMESEG (METHOD_NAME__REG, &Op->Asl.NameSeg))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@ -772,7 +772,7 @@ ApDeviceSubtreeWalk (
|
||||
|
||||
/* These are what we are looking for */
|
||||
|
||||
if (ACPI_COMPARE_NAME (Name, Op->Asl.NameSeg))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, Op->Asl.NameSeg))
|
||||
{
|
||||
return (AE_CTRL_TRUE);
|
||||
}
|
||||
@ -831,7 +831,7 @@ ApFindNameInScope (
|
||||
if ((Next->Asl.ParseOpcode == PARSEOP_METHOD) ||
|
||||
(Next->Asl.ParseOpcode == PARSEOP_NAME))
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, Next->Asl.NameSeg))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, Next->Asl.NameSeg))
|
||||
{
|
||||
return (TRUE);
|
||||
}
|
||||
|
@ -523,6 +523,8 @@ CgWriteAmlOpcode (
|
||||
*
|
||||
* DESCRIPTION: Write a table header corresponding to the DEFINITIONBLOCK
|
||||
*
|
||||
* NOTE: Input strings should be validated before this function is invoked.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
static void
|
||||
@ -534,6 +536,8 @@ CgWriteTableHeader (
|
||||
ACPI_COMMENT_NODE *Current;
|
||||
|
||||
|
||||
memset (&AslGbl_TableHeader, 0, sizeof (ACPI_TABLE_HEADER));
|
||||
|
||||
/* AML filename */
|
||||
|
||||
Child = Op->Asl.Child;
|
||||
@ -552,11 +556,11 @@ CgWriteTableHeader (
|
||||
*/
|
||||
if (AcpiGbl_CaptureComments)
|
||||
{
|
||||
strncpy(AcpiGbl_TableSig, Child->Asl.Value.String, ACPI_NAME_SIZE);
|
||||
ACPI_COPY_NAMESEG (AcpiGbl_TableSig, Child->Asl.Value.String);
|
||||
Child->Asl.Value.String = ACPI_SIG_XXXX;
|
||||
}
|
||||
|
||||
strncpy (AslGbl_TableHeader.Signature, Child->Asl.Value.String, ACPI_NAME_SIZE);
|
||||
ACPI_COPY_NAMESEG (AslGbl_TableHeader.Signature, Child->Asl.Value.String);
|
||||
|
||||
/* Revision */
|
||||
|
||||
@ -573,12 +577,14 @@ CgWriteTableHeader (
|
||||
/* OEMID */
|
||||
|
||||
Child = Child->Asl.Next;
|
||||
strncpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String, ACPI_OEM_ID_SIZE);
|
||||
memcpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String,
|
||||
strlen (Child->Asl.Value.String));
|
||||
|
||||
/* OEM TableID */
|
||||
|
||||
Child = Child->Asl.Next;
|
||||
strncpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String, ACPI_OEM_TABLE_ID_SIZE);
|
||||
memcpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String,
|
||||
strlen (Child->Asl.Value.String));
|
||||
|
||||
/* OEM Revision */
|
||||
|
||||
@ -587,7 +593,7 @@ CgWriteTableHeader (
|
||||
|
||||
/* Compiler ID */
|
||||
|
||||
ACPI_MOVE_NAME (AslGbl_TableHeader.AslCompilerId, ASL_CREATOR_ID);
|
||||
ACPI_COPY_NAMESEG (AslGbl_TableHeader.AslCompilerId, ASL_CREATOR_ID);
|
||||
|
||||
/* Compiler version */
|
||||
|
||||
|
@ -813,7 +813,7 @@ NamePathTail [.]{NameSeg}
|
||||
|
||||
{NameSeg} { char *s;
|
||||
count (0);
|
||||
s=UtLocalCacheCalloc (ACPI_NAME_SIZE + 1);
|
||||
s=UtLocalCacheCalloc (ACPI_NAMESEG_SIZE + 1);
|
||||
if (strcmp (AslCompilertext, "\\"))
|
||||
{
|
||||
/*
|
||||
|
@ -162,7 +162,7 @@
|
||||
#define ASL_CREATOR_ID "INTL"
|
||||
#define ASL_DEFINE "__IASL__"
|
||||
#define ASL_PREFIX "iASL: "
|
||||
#define ASL_COMPLIANCE "Supports ACPI Specification Revision 6.2A"
|
||||
#define ASL_COMPLIANCE "Supports ACPI Specification Revision 6.3"
|
||||
|
||||
|
||||
/* Configuration constants */
|
||||
|
@ -1239,7 +1239,7 @@ AslElevateException (
|
||||
return (AE_LIMIT);
|
||||
}
|
||||
|
||||
AslGbl_ElevatedMessages[AslGbl_ExpectedMessagesIndex] = MessageId;
|
||||
AslGbl_ElevatedMessages[AslGbl_ElevatedMessagesIndex] = MessageId;
|
||||
AslGbl_ElevatedMessagesIndex++;
|
||||
return (AE_OK);
|
||||
}
|
||||
|
@ -492,7 +492,7 @@ LdNamespace1Begin (
|
||||
case AML_FIELD_OP:
|
||||
|
||||
Status = LdLoadFieldElements (Op, WalkState);
|
||||
return (Status);
|
||||
break;
|
||||
|
||||
case AML_INT_CONNECTION_OP:
|
||||
|
||||
@ -556,7 +556,8 @@ LdNamespace1Begin (
|
||||
* We only want references to named objects:
|
||||
* Store (2, WXYZ) -> Attempt to resolve the name
|
||||
*/
|
||||
if (OpInfo->Class == AML_CLASS_NAMED_OBJECT)
|
||||
if ((OpInfo->Class == AML_CLASS_NAMED_OBJECT) &&
|
||||
(OpInfo->Type != AML_TYPE_NAMED_FIELD))
|
||||
{
|
||||
return (AE_OK);
|
||||
}
|
||||
@ -702,7 +703,7 @@ LdNamespace1Begin (
|
||||
|
||||
/* However, this is an error -- operand to Scope must exist */
|
||||
|
||||
if (strlen (Op->Asl.ExternalName) == ACPI_NAME_SIZE)
|
||||
if (strlen (Op->Asl.ExternalName) == ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
AslError (ASL_ERROR, ASL_MSG_NOT_FOUND, Op,
|
||||
Op->Asl.ExternalName);
|
||||
@ -731,7 +732,7 @@ LdNamespace1Begin (
|
||||
* 10/2015.
|
||||
*/
|
||||
if ((Node->Flags & ANOBJ_IS_EXTERNAL) &&
|
||||
(ACPI_COMPARE_NAME (AslGbl_TableSignature, "DSDT")))
|
||||
(ACPI_COMPARE_NAMESEG (AslGbl_TableSignature, "DSDT")))
|
||||
{
|
||||
/* However, allowed if the reference is within a method */
|
||||
|
||||
@ -1095,7 +1096,7 @@ LdNamespace2Begin (
|
||||
{
|
||||
/* Standalone NameSeg vs. NamePath */
|
||||
|
||||
if (strlen (Arg->Asl.ExternalName) == ACPI_NAME_SIZE)
|
||||
if (strlen (Arg->Asl.ExternalName) == ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
AslError (ASL_ERROR, ASL_MSG_NOT_FOUND, Op,
|
||||
Arg->Asl.ExternalName);
|
||||
|
@ -342,7 +342,7 @@ const char *AslCompilerMsgs [] =
|
||||
/* ASL_MSG_RANGE */ "Constant out of range",
|
||||
/* ASL_MSG_BUFFER_ALLOCATION */ "Could not allocate line buffer",
|
||||
/* ASL_MSG_MISSING_DEPENDENCY */ "Missing dependency",
|
||||
/* ASL_MSG_ILLEGAL_FORWARD_REF */ "Illegal forward reference",
|
||||
/* ASL_MSG_ILLEGAL_FORWARD_REF */ "Forward references are not supported by the ASL language",
|
||||
/* ASL_MSG_ILLEGAL_METHOD_REF */ "Object is declared in a different method",
|
||||
/* ASL_MSG_LOCAL_NOT_USED */ "Method Local is set but never used",
|
||||
/* ASL_MSG_ARG_AS_LOCAL_NOT_USED */ "Method Argument (as a local) is set but never used",
|
||||
|
@ -228,7 +228,7 @@ MtMethodAnalysisWalkBegin (
|
||||
* 1) _PS0 - One of these must exist: _PS1, _PS2, _PS3
|
||||
* 2) _PS1/_PS2/_PS3: A _PS0 must exist
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME (METHOD_NAME__PS0, Op->Asl.NameSeg))
|
||||
if (ACPI_COMPARE_NAMESEG (METHOD_NAME__PS0, Op->Asl.NameSeg))
|
||||
{
|
||||
/* For _PS0, one of _PS1/_PS2/_PS3 must exist */
|
||||
|
||||
@ -241,9 +241,9 @@ MtMethodAnalysisWalkBegin (
|
||||
}
|
||||
}
|
||||
else if (
|
||||
ACPI_COMPARE_NAME (METHOD_NAME__PS1, Op->Asl.NameSeg) ||
|
||||
ACPI_COMPARE_NAME (METHOD_NAME__PS2, Op->Asl.NameSeg) ||
|
||||
ACPI_COMPARE_NAME (METHOD_NAME__PS3, Op->Asl.NameSeg))
|
||||
ACPI_COMPARE_NAMESEG (METHOD_NAME__PS1, Op->Asl.NameSeg) ||
|
||||
ACPI_COMPARE_NAMESEG (METHOD_NAME__PS2, Op->Asl.NameSeg) ||
|
||||
ACPI_COMPARE_NAMESEG (METHOD_NAME__PS3, Op->Asl.NameSeg))
|
||||
{
|
||||
/* For _PS1/_PS2/_PS3, a _PS0 must exist */
|
||||
|
||||
|
@ -258,7 +258,7 @@ LsAmlOffsetWalk (
|
||||
/* Get offset of last nameseg and the actual data */
|
||||
|
||||
NamepathOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(Op->Asl.FinalAmlLength - ACPI_NAME_SIZE);
|
||||
(Op->Asl.FinalAmlLength - ACPI_NAMESEG_SIZE);
|
||||
|
||||
DataOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
Op->Asl.FinalAmlLength;
|
||||
@ -323,7 +323,7 @@ LsAmlOffsetWalk (
|
||||
/* Get offset of last nameseg and the actual data */
|
||||
|
||||
NamepathOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAME_SIZE);
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAMESEG_SIZE);
|
||||
|
||||
DataOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength + 1);
|
||||
@ -370,7 +370,7 @@ LsAmlOffsetWalk (
|
||||
/* Get offset of last nameseg and the actual data (flags byte) */
|
||||
|
||||
NamepathOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAME_SIZE);
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAMESEG_SIZE);
|
||||
|
||||
DataOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
NextOp->Asl.FinalAmlLength;
|
||||
@ -394,7 +394,7 @@ LsAmlOffsetWalk (
|
||||
/* Get offset of last nameseg and the actual data (PBlock address) */
|
||||
|
||||
NamepathOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAME_SIZE);
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAMESEG_SIZE);
|
||||
|
||||
DataOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength + 1);
|
||||
@ -419,7 +419,7 @@ LsAmlOffsetWalk (
|
||||
/* Get offset of last nameseg */
|
||||
|
||||
NamepathOffset = AslGbl_CurrentAmlOffset + Length +
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAME_SIZE);
|
||||
(NextOp->Asl.FinalAmlLength - ACPI_NAMESEG_SIZE);
|
||||
|
||||
LsEmitOffsetTableEntry (FileId, Node, NamepathOffset, 0,
|
||||
Op->Asl.ParseOpName, 0, (UINT8) 0, Op->Asl.AmlOpcode);
|
||||
|
@ -1087,13 +1087,13 @@ OpnDoDefinitionBlock (
|
||||
if (Child->Asl.Value.String)
|
||||
{
|
||||
AslGbl_TableSignature = Child->Asl.Value.String;
|
||||
if (strlen (AslGbl_TableSignature) != ACPI_NAME_SIZE)
|
||||
if (strlen (AslGbl_TableSignature) != ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
AslError (ASL_ERROR, ASL_MSG_TABLE_SIGNATURE, Child,
|
||||
"Length must be exactly 4 characters");
|
||||
}
|
||||
|
||||
for (i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
{
|
||||
if (!isalnum ((int) AslGbl_TableSignature[i]))
|
||||
{
|
||||
|
@ -241,7 +241,7 @@ OptSearchToRoot (
|
||||
* not match, and we cannot use this optimization.
|
||||
*/
|
||||
Path = &(((char *) TargetPath->Pointer)[
|
||||
TargetPath->Length - ACPI_NAME_SIZE]);
|
||||
TargetPath->Length - ACPI_NAMESEG_SIZE]);
|
||||
ScopeInfo.Scope.Node = CurrentNode;
|
||||
|
||||
/* Lookup the NameSeg using SEARCH_PARENT (search-to-root) */
|
||||
@ -275,7 +275,7 @@ OptSearchToRoot (
|
||||
|
||||
/* We must allocate a new string for the name (TargetPath gets deleted) */
|
||||
|
||||
*NewPath = UtLocalCacheCalloc (ACPI_NAME_SIZE + 1);
|
||||
*NewPath = UtLocalCacheCalloc (ACPI_NAMESEG_SIZE + 1);
|
||||
strcpy (*NewPath, Path);
|
||||
|
||||
if (strncmp (*NewPath, "_T_", 3))
|
||||
@ -343,7 +343,7 @@ OptBuildShortestPath (
|
||||
* can possibly have in common. (To optimize, we have to have at least 1)
|
||||
*
|
||||
* Note: The external NamePath string lengths are always a multiple of 5
|
||||
* (ACPI_NAME_SIZE + separator)
|
||||
* (ACPI_NAMESEG_SIZE + separator)
|
||||
*/
|
||||
MaxCommonSegments = TargetPath->Length / ACPI_PATH_SEGMENT_LENGTH;
|
||||
if (CurrentPath->Length < TargetPath->Length)
|
||||
@ -363,7 +363,7 @@ OptBuildShortestPath (
|
||||
|
||||
Index = (NumCommonSegments * ACPI_PATH_SEGMENT_LENGTH) + 1;
|
||||
|
||||
if (!ACPI_COMPARE_NAME (
|
||||
if (!ACPI_COMPARE_NAMESEG (
|
||||
&(ACPI_CAST_PTR (char, TargetPath->Pointer)) [Index],
|
||||
&(ACPI_CAST_PTR (char, CurrentPath->Pointer)) [Index]))
|
||||
{
|
||||
@ -713,7 +713,7 @@ OptOptimizeNamePath (
|
||||
* to be any possibility that it can be optimized to a shorter string
|
||||
*/
|
||||
AmlNameStringLength = strlen (AmlNameString);
|
||||
if (AmlNameStringLength <= ACPI_NAME_SIZE)
|
||||
if (AmlNameStringLength <= ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
ACPI_DEBUG_PRINT_RAW ((ACPI_DB_OPTIMIZATIONS,
|
||||
"NAMESEG %4.4s\n", AmlNameString));
|
||||
|
@ -578,7 +578,7 @@ ApCheckForPredefinedName (
|
||||
ThisName = AcpiGbl_PredefinedMethods;
|
||||
for (i = 0; ThisName->Info.Name[0]; i++)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, ThisName->Info.Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ThisName->Info.Name))
|
||||
{
|
||||
/* Return index into predefined array */
|
||||
return (i);
|
||||
@ -592,7 +592,7 @@ ApCheckForPredefinedName (
|
||||
ThisName = AcpiGbl_ResourceNames;
|
||||
while (ThisName->Info.Name[0])
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, ThisName->Info.Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ThisName->Info.Name))
|
||||
{
|
||||
return (ACPI_PREDEFINED_NAME);
|
||||
}
|
||||
@ -603,7 +603,7 @@ ApCheckForPredefinedName (
|
||||
ThisName = AcpiGbl_ScopeNames;
|
||||
while (ThisName->Info.Name[0])
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, ThisName->Info.Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ThisName->Info.Name))
|
||||
{
|
||||
return (ACPI_PREDEFINED_NAME);
|
||||
}
|
||||
|
@ -553,7 +553,7 @@ TrDoDefinitionBlock (
|
||||
* to be at the root of the namespace; Therefore, namepath
|
||||
* optimization can only be performed on the DSDT.
|
||||
*/
|
||||
if (!ACPI_COMPARE_NAME (Next->Asl.Value.String, ACPI_SIG_DSDT))
|
||||
if (!ACPI_COMPARE_NAMESEG (Next->Asl.Value.String, ACPI_SIG_DSDT))
|
||||
{
|
||||
AslGbl_ReferenceOptimizationFlag = FALSE;
|
||||
}
|
||||
|
@ -752,7 +752,7 @@ UtPadNameWithUnderscores (
|
||||
UINT32 i;
|
||||
|
||||
|
||||
for (i = 0; (i < ACPI_NAME_SIZE); i++)
|
||||
for (i = 0; (i < ACPI_NAMESEG_SIZE); i++)
|
||||
{
|
||||
if (*NameSeg)
|
||||
{
|
||||
@ -823,7 +823,7 @@ UtAttachNameseg (
|
||||
UtPadNameWithUnderscores (Name, PaddedNameSeg);
|
||||
}
|
||||
|
||||
ACPI_MOVE_NAME (Op->Asl.NameSeg, PaddedNameSeg);
|
||||
ACPI_COPY_NAMESEG (Op->Asl.NameSeg, PaddedNameSeg);
|
||||
}
|
||||
|
||||
|
||||
|
@ -613,7 +613,8 @@ XfNamespaceLocateBegin (
|
||||
(Op->Asl.ParseOpcode != PARSEOP_NAMESTRING) &&
|
||||
(Op->Asl.ParseOpcode != PARSEOP_NAMESEG) &&
|
||||
(Op->Asl.ParseOpcode != PARSEOP_METHODCALL) &&
|
||||
(Op->Asl.ParseOpcode != PARSEOP_EXTERNAL))
|
||||
(Op->Asl.ParseOpcode != PARSEOP_EXTERNAL) &&
|
||||
(OpInfo->Type != AML_TYPE_NAMED_FIELD))
|
||||
{
|
||||
return_ACPI_STATUS (AE_OK);
|
||||
}
|
||||
@ -637,7 +638,8 @@ XfNamespaceLocateBegin (
|
||||
if ((Op->Asl.ParseOpcode == PARSEOP_NAMESTRING) ||
|
||||
(Op->Asl.ParseOpcode == PARSEOP_NAMESEG) ||
|
||||
(Op->Asl.ParseOpcode == PARSEOP_METHODCALL) ||
|
||||
(Op->Asl.ParseOpcode == PARSEOP_EXTERNAL))
|
||||
(Op->Asl.ParseOpcode == PARSEOP_EXTERNAL) ||
|
||||
(OpInfo->Type == AML_TYPE_NAMED_FIELD))
|
||||
{
|
||||
/*
|
||||
* These are name references, do not push the scope stack
|
||||
@ -674,6 +676,10 @@ XfNamespaceLocateBegin (
|
||||
|
||||
Path = NextOp->Asl.Value.String;
|
||||
}
|
||||
else if (OpInfo->Type == AML_TYPE_NAMED_FIELD)
|
||||
{
|
||||
Path = Op->Asl.Child->Asl.Value.String;
|
||||
}
|
||||
else
|
||||
{
|
||||
Path = Op->Asl.Value.String;
|
||||
@ -702,7 +708,7 @@ XfNamespaceLocateBegin (
|
||||
* We didn't find the name reference by path -- we can qualify this
|
||||
* a little better before we print an error message
|
||||
*/
|
||||
if (strlen (Path) == ACPI_NAME_SIZE)
|
||||
if (strlen (Path) == ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
/* A simple, one-segment ACPI name */
|
||||
|
||||
@ -764,7 +770,7 @@ XfNamespaceLocateBegin (
|
||||
* doesn't exist or just can't be reached. However, we
|
||||
* can differentiate between a NameSeg vs. NamePath.
|
||||
*/
|
||||
if (strlen (Op->Asl.ExternalName) == ACPI_NAME_SIZE)
|
||||
if (strlen (Op->Asl.ExternalName) == ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
AslError (ASL_ERROR, ASL_MSG_NOT_FOUND, Op,
|
||||
Op->Asl.ExternalName);
|
||||
|
@ -418,7 +418,7 @@ DtCompileDataTable (
|
||||
* Currently, these are the FACS and RSDP. Also check for an OEMx table,
|
||||
* these tables have user-defined contents.
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_FACS))
|
||||
if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_FACS))
|
||||
{
|
||||
Status = DtCompileFacs (FieldList);
|
||||
if (ACPI_FAILURE (Status))
|
||||
@ -434,7 +434,7 @@ DtCompileDataTable (
|
||||
Status = DtCompileRsdp (FieldList);
|
||||
return (Status);
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_S3PT))
|
||||
else if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_S3PT))
|
||||
{
|
||||
Status = DtCompileS3pt (FieldList);
|
||||
if (ACPI_FAILURE (Status))
|
||||
|
@ -204,11 +204,11 @@ AcpiUtIsSpecialTable (
|
||||
char *Signature)
|
||||
{
|
||||
|
||||
if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAME (Signature, ACPI_SIG_OSDT) ||
|
||||
ACPI_COMPARE_NAME (Signature, ACPI_SIG_SSDT) ||
|
||||
ACPI_COMPARE_NAME (Signature, ACPI_SIG_FACS) ||
|
||||
ACPI_COMPARE_NAME (Signature, ACPI_RSDP_NAME))
|
||||
if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_OSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_SSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_FACS) ||
|
||||
ACPI_COMPARE_NAMESEG (Signature, ACPI_RSDP_NAME))
|
||||
{
|
||||
return (TRUE);
|
||||
}
|
||||
@ -346,7 +346,7 @@ DtCreateOneTemplateFile (
|
||||
* 2) Signature must be a recognized ACPI table
|
||||
* 3) There must be a template associated with the signature
|
||||
*/
|
||||
if (strlen (Signature) != ACPI_NAME_SIZE)
|
||||
if (strlen (Signature) != ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
fprintf (stderr,
|
||||
"%s: Invalid ACPI table signature "
|
||||
@ -567,7 +567,7 @@ DtCreateOneTemplate (
|
||||
AcpiOsPrintf (" (AML byte code table)\n");
|
||||
AcpiOsPrintf (" */\n");
|
||||
|
||||
if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_DSDT))
|
||||
if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_DSDT))
|
||||
{
|
||||
Actual = DtEmitDefinitionBlock (
|
||||
File, DisasmFilename, ACPI_SIG_DSDT, 1);
|
||||
@ -590,7 +590,7 @@ DtCreateOneTemplate (
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_SSDT))
|
||||
else if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_SSDT))
|
||||
{
|
||||
Actual = DtEmitDefinitionBlock (
|
||||
File, DisasmFilename, ACPI_SIG_SSDT, 1);
|
||||
@ -600,7 +600,7 @@ DtCreateOneTemplate (
|
||||
goto Cleanup;
|
||||
}
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_OSDT))
|
||||
else if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_OSDT))
|
||||
{
|
||||
Actual = DtEmitDefinitionBlock (
|
||||
File, DisasmFilename, ACPI_SIG_OSDT, 1);
|
||||
@ -610,12 +610,12 @@ DtCreateOneTemplate (
|
||||
goto Cleanup;
|
||||
}
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Signature, ACPI_SIG_FACS))
|
||||
else if (ACPI_COMPARE_NAMESEG (Signature, ACPI_SIG_FACS))
|
||||
{
|
||||
AcpiDmDumpDataTable (ACPI_CAST_PTR (ACPI_TABLE_HEADER,
|
||||
TemplateFacs));
|
||||
}
|
||||
else if (ACPI_COMPARE_NAME (Signature, ACPI_RSDP_NAME))
|
||||
else if (ACPI_COMPARE_NAMESEG (Signature, ACPI_RSDP_NAME))
|
||||
{
|
||||
AcpiDmDumpDataTable (ACPI_CAST_PTR (ACPI_TABLE_HEADER,
|
||||
TemplateRsdp));
|
||||
|
@ -658,7 +658,7 @@ AcpiDbExecute (
|
||||
|
||||
/* Dump a _PLD buffer if present */
|
||||
|
||||
if (ACPI_COMPARE_NAME ((ACPI_CAST_PTR (ACPI_NAMESPACE_NODE,
|
||||
if (ACPI_COMPARE_NAMESEG ((ACPI_CAST_PTR (ACPI_NAMESPACE_NODE,
|
||||
AcpiGbl_DbMethodInfo.Method)->Name.Ascii),
|
||||
METHOD_NAME__PLD))
|
||||
{
|
||||
|
@ -557,7 +557,7 @@ AcpiDbFindNameInNamespace (
|
||||
char *AcpiNamePtr = AcpiName;
|
||||
|
||||
|
||||
if (strlen (NameArg) > ACPI_NAME_SIZE)
|
||||
if (strlen (NameArg) > ACPI_NAMESEG_SIZE)
|
||||
{
|
||||
AcpiOsPrintf ("Name must be no longer than 4 characters\n");
|
||||
return (AE_OK);
|
||||
|
@ -736,7 +736,7 @@ AcpiDmIsPldBuffer (
|
||||
{
|
||||
Node = ParentOp->Common.Node;
|
||||
|
||||
if (ACPI_COMPARE_NAME (Node->Name.Ascii, METHOD_NAME__PLD))
|
||||
if (ACPI_COMPARE_NAMESEG (Node->Name.Ascii, METHOD_NAME__PLD))
|
||||
{
|
||||
/* Ignore the Size argument in the disassembly of this buffer op */
|
||||
|
||||
@ -770,7 +770,7 @@ AcpiDmIsPldBuffer (
|
||||
{
|
||||
Node = ParentOp->Common.Node;
|
||||
|
||||
if (ACPI_COMPARE_NAME (Node->Name.Ascii, METHOD_NAME__PLD))
|
||||
if (ACPI_COMPARE_NAMESEG (Node->Name.Ascii, METHOD_NAME__PLD))
|
||||
{
|
||||
/* Ignore the Size argument in the disassembly of this buffer op */
|
||||
|
||||
@ -1100,7 +1100,7 @@ AcpiDmCheckForHardwareId (
|
||||
|
||||
/* Check for _HID - has one argument */
|
||||
|
||||
if (ACPI_COMPARE_NAME (&Name, METHOD_NAME__HID))
|
||||
if (ACPI_COMPARE_NAMESEG (&Name, METHOD_NAME__HID))
|
||||
{
|
||||
AcpiDmGetHardwareIdType (NextOp);
|
||||
return;
|
||||
@ -1108,7 +1108,7 @@ AcpiDmCheckForHardwareId (
|
||||
|
||||
/* Exit if not _CID */
|
||||
|
||||
if (!ACPI_COMPARE_NAME (&Name, METHOD_NAME__CID))
|
||||
if (!ACPI_COMPARE_NAMESEG (&Name, METHOD_NAME__CID))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -199,8 +199,8 @@ AcpiDmDumpName (
|
||||
|
||||
/* Remove all trailing underscores from the name */
|
||||
|
||||
Length = ACPI_NAME_SIZE;
|
||||
for (i = (ACPI_NAME_SIZE - 1); i != 0; i--)
|
||||
Length = ACPI_NAMESEG_SIZE;
|
||||
for (i = (ACPI_NAMESEG_SIZE - 1); i != 0; i--)
|
||||
{
|
||||
if (NewName[i] == '_')
|
||||
{
|
||||
@ -378,7 +378,7 @@ AcpiDmNamestring (
|
||||
AcpiOsPrintf (".");
|
||||
}
|
||||
|
||||
Name += ACPI_NAME_SIZE;
|
||||
Name += ACPI_NAMESEG_SIZE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -685,7 +685,7 @@ AcpiDsCreateField (
|
||||
Info.RegionNode = RegionNode;
|
||||
|
||||
Status = AcpiDsGetFieldNames (&Info, WalkState, Arg->Common.Next);
|
||||
if (Info.RegionNode->Type == ACPI_ADR_SPACE_PLATFORM_COMM &&
|
||||
if (Info.RegionNode->Object->Region.SpaceId == ACPI_ADR_SPACE_PLATFORM_COMM &&
|
||||
!(RegionNode->Object->Field.InternalPccBuffer
|
||||
= ACPI_ALLOCATE_ZEROED(Info.RegionNode->Object->Region.Length)))
|
||||
{
|
||||
|
@ -359,7 +359,7 @@ AcpiDsInitializeObjects (
|
||||
|
||||
/* DSDT is always the first AML table */
|
||||
|
||||
if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_DSDT))
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_DSDT))
|
||||
{
|
||||
ACPI_DEBUG_PRINT_RAW ((ACPI_DB_INIT,
|
||||
"\nInitializing Namespace objects:\n"));
|
||||
|
@ -447,7 +447,7 @@ AcpiEvMatchGpeMethod (
|
||||
ACPI_STATUS Status;
|
||||
UINT32 GpeNumber;
|
||||
UINT8 TempGpeNumber;
|
||||
char Name[ACPI_NAME_SIZE + 1];
|
||||
char Name[ACPI_NAMESEG_SIZE + 1];
|
||||
UINT8 Type;
|
||||
|
||||
|
||||
@ -468,7 +468,7 @@ AcpiEvMatchGpeMethod (
|
||||
* 1) Extract the method name and null terminate it
|
||||
*/
|
||||
ACPI_MOVE_32_TO_32 (Name, &MethodNode->Name.Integer);
|
||||
Name[ACPI_NAME_SIZE] = 0;
|
||||
Name[ACPI_NAMESEG_SIZE] = 0;
|
||||
|
||||
/* 2) Name must begin with an underscore */
|
||||
|
||||
|
@ -207,11 +207,11 @@ AcpiExAllocateNameString (
|
||||
{
|
||||
/* Special case for root */
|
||||
|
||||
SizeNeeded = 1 + (ACPI_NAME_SIZE * NumNameSegs) + 2 + 1;
|
||||
SizeNeeded = 1 + (ACPI_NAMESEG_SIZE * NumNameSegs) + 2 + 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
SizeNeeded = PrefixCount + (ACPI_NAME_SIZE * NumNameSegs) + 2 + 1;
|
||||
SizeNeeded = PrefixCount + (ACPI_NAMESEG_SIZE * NumNameSegs) + 2 + 1;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -310,7 +310,7 @@ AcpiExNameSegment (
|
||||
}
|
||||
|
||||
for (Index = 0;
|
||||
(Index < ACPI_NAME_SIZE) && (AcpiUtValidNameChar (*AmlAddress, 0));
|
||||
(Index < ACPI_NAMESEG_SIZE) && (AcpiUtValidNameChar (*AmlAddress, 0));
|
||||
Index++)
|
||||
{
|
||||
CharBuf[Index] = *AmlAddress++;
|
||||
|
@ -851,7 +851,7 @@ AcpiNsLookup (
|
||||
|
||||
/* Point to next name segment and make this node current */
|
||||
|
||||
Path += ACPI_NAME_SIZE;
|
||||
Path += ACPI_NAMESEG_SIZE;
|
||||
CurrentNode = ThisNode;
|
||||
}
|
||||
|
||||
|
@ -236,7 +236,7 @@ AcpiNsPrintPathname (
|
||||
AcpiOsPrintf ("?");
|
||||
}
|
||||
|
||||
Pathname += ACPI_NAME_SIZE;
|
||||
Pathname += ACPI_NAMESEG_SIZE;
|
||||
NumSegments--;
|
||||
if (NumSegments)
|
||||
{
|
||||
|
@ -662,7 +662,7 @@ AcpiNsFindIniMethods (
|
||||
|
||||
/* We are only looking for methods named _INI */
|
||||
|
||||
if (!ACPI_COMPARE_NAME (Node->Name.Ascii, METHOD_NAME__INI))
|
||||
if (!ACPI_COMPARE_NAMESEG (Node->Name.Ascii, METHOD_NAME__INI))
|
||||
{
|
||||
return (AE_OK);
|
||||
}
|
||||
@ -839,7 +839,7 @@ AcpiNsInitOneDevice (
|
||||
* Note: We know there is an _INI within this subtree, but it may not be
|
||||
* under this particular device, it may be lower in the branch.
|
||||
*/
|
||||
if (!ACPI_COMPARE_NAME (DeviceNode->Name.Ascii, "_SB_") ||
|
||||
if (!ACPI_COMPARE_NAMESEG (DeviceNode->Name.Ascii, "_SB_") ||
|
||||
DeviceNode->Parent != AcpiGbl_RootNode)
|
||||
{
|
||||
ACPI_DEBUG_EXEC (AcpiUtDisplayInitPathname (
|
||||
|
@ -273,8 +273,8 @@ AcpiNsHandleToName (
|
||||
/* Just copy the ACPI name from the Node and zero terminate it */
|
||||
|
||||
NodeName = AcpiUtGetNodeName (Node);
|
||||
ACPI_MOVE_NAME (Buffer->Pointer, NodeName);
|
||||
((char *) Buffer->Pointer) [ACPI_NAME_SIZE] = 0;
|
||||
ACPI_COPY_NAMESEG (Buffer->Pointer, NodeName);
|
||||
((char *) Buffer->Pointer) [ACPI_NAMESEG_SIZE] = 0;
|
||||
|
||||
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "%4.4s\n", (char *) Buffer->Pointer));
|
||||
return_ACPI_STATUS (AE_OK);
|
||||
@ -374,7 +374,7 @@ AcpiNsBuildNormalizedPath (
|
||||
BOOLEAN NoTrailing)
|
||||
{
|
||||
UINT32 Length = 0, i;
|
||||
char Name[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE];
|
||||
BOOLEAN DoNoTrailing;
|
||||
char c, *Left, *Right;
|
||||
ACPI_NAMESPACE_NODE *NextNode;
|
||||
@ -657,7 +657,7 @@ AcpiNsNormalizePathname (
|
||||
{
|
||||
/* Do one nameseg at a time */
|
||||
|
||||
for (i = 0; (i < ACPI_NAME_SIZE) && *InputPath; i++)
|
||||
for (i = 0; (i < ACPI_NAMESEG_SIZE) && *InputPath; i++)
|
||||
{
|
||||
if ((i == 0) || (*InputPath != '_')) /* First char is allowed to be underscore */
|
||||
{
|
||||
|
@ -352,6 +352,11 @@ AcpiNsDetachObject (
|
||||
}
|
||||
}
|
||||
|
||||
if (ObjDesc->Common.Type == ACPI_TYPE_REGION)
|
||||
{
|
||||
AcpiUtRemoveAddressRange(ObjDesc->Region.SpaceId, Node);
|
||||
}
|
||||
|
||||
/* Clear the Node entry in all cases */
|
||||
|
||||
Node->Object = NULL;
|
||||
|
@ -365,7 +365,7 @@ AcpiNsOneCompleteParse (
|
||||
|
||||
/* Found OSDT table, enable the namespace override feature */
|
||||
|
||||
if (ACPI_COMPARE_NAME(Table->Signature, ACPI_SIG_OSDT) &&
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_OSDT) &&
|
||||
PassNumber == ACPI_IMODE_LOAD_PASS1)
|
||||
{
|
||||
WalkState->NamespaceOverride = TRUE;
|
||||
|
@ -470,7 +470,7 @@ AcpiNsMatchSimpleRepair (
|
||||
ThisName = AcpiObjectRepairInfo;
|
||||
while (ThisName->ObjectConverter)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Node->Name.Ascii, ThisName->Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Node->Name.Ascii, ThisName->Name))
|
||||
{
|
||||
/* Check if we can actually repair this name/type combination */
|
||||
|
||||
|
@ -169,7 +169,7 @@ ACPI_STATUS (*ACPI_REPAIR_FUNCTION) (
|
||||
|
||||
typedef struct acpi_repair_info
|
||||
{
|
||||
char Name[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE];
|
||||
ACPI_REPAIR_FUNCTION RepairFunction;
|
||||
|
||||
} ACPI_REPAIR_INFO;
|
||||
@ -358,7 +358,7 @@ AcpiNsMatchComplexRepair (
|
||||
ThisName = AcpiNsRepairableNames;
|
||||
while (ThisName->RepairFunction)
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Node->Name.Ascii, ThisName->Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Node->Name.Ascii, ThisName->Name))
|
||||
{
|
||||
return (ThisName);
|
||||
}
|
||||
|
@ -351,7 +351,7 @@ AcpiNsGetInternalNameLength (
|
||||
}
|
||||
}
|
||||
|
||||
Info->Length = (ACPI_NAME_SIZE * Info->NumSegments) +
|
||||
Info->Length = (ACPI_NAMESEG_SIZE * Info->NumSegments) +
|
||||
4 + Info->NumCarats;
|
||||
|
||||
Info->NextExternalChar = NextExternalChar;
|
||||
@ -443,7 +443,7 @@ AcpiNsBuildInternalName (
|
||||
|
||||
for (; NumSegments; NumSegments--)
|
||||
{
|
||||
for (i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
{
|
||||
if (ACPI_IS_PATH_SEPARATOR (*ExternalName) ||
|
||||
(*ExternalName == 0))
|
||||
@ -472,7 +472,7 @@ AcpiNsBuildInternalName (
|
||||
/* Move on the next segment */
|
||||
|
||||
ExternalName++;
|
||||
Result += ACPI_NAME_SIZE;
|
||||
Result += ACPI_NAMESEG_SIZE;
|
||||
}
|
||||
|
||||
/* Terminate the string */
|
||||
@ -721,12 +721,12 @@ AcpiNsExternalizeName (
|
||||
|
||||
/* Copy and validate the 4-char name segment */
|
||||
|
||||
ACPI_MOVE_NAME (&(*ConvertedName)[j],
|
||||
ACPI_COPY_NAMESEG (&(*ConvertedName)[j],
|
||||
&InternalName[NamesIndex]);
|
||||
AcpiUtRepairName (&(*ConvertedName)[j]);
|
||||
|
||||
j += ACPI_NAME_SIZE;
|
||||
NamesIndex += ACPI_NAME_SIZE;
|
||||
j += ACPI_NAMESEG_SIZE;
|
||||
NamesIndex += ACPI_NAMESEG_SIZE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -691,8 +691,8 @@ AcpiInstallMethod (
|
||||
|
||||
/* Table must be a DSDT or SSDT */
|
||||
|
||||
if (!ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_DSDT) &&
|
||||
!ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_SSDT))
|
||||
if (!ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_DSDT) &&
|
||||
!ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_SSDT))
|
||||
{
|
||||
return (AE_BAD_HEADER);
|
||||
}
|
||||
|
@ -314,21 +314,21 @@ AcpiPsGetNextNamestring (
|
||||
|
||||
/* Two name segments */
|
||||
|
||||
End += 1 + (2 * ACPI_NAME_SIZE);
|
||||
End += 1 + (2 * ACPI_NAMESEG_SIZE);
|
||||
break;
|
||||
|
||||
case AML_MULTI_NAME_PREFIX:
|
||||
|
||||
/* Multiple name segments, 4 chars each, count in next byte */
|
||||
|
||||
End += 2 + (*(End + 1) * ACPI_NAME_SIZE);
|
||||
End += 2 + (*(End + 1) * ACPI_NAMESEG_SIZE);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
/* Single name segment */
|
||||
|
||||
End += ACPI_NAME_SIZE;
|
||||
End += ACPI_NAMESEG_SIZE;
|
||||
break;
|
||||
}
|
||||
|
||||
@ -708,7 +708,7 @@ AcpiPsGetNextField (
|
||||
|
||||
ACPI_MOVE_32_TO_32 (&Name, ParserState->Aml);
|
||||
AcpiPsSetName (Field, Name);
|
||||
ParserState->Aml += ACPI_NAME_SIZE;
|
||||
ParserState->Aml += ACPI_NAMESEG_SIZE;
|
||||
|
||||
|
||||
ASL_CV_CAPTURE_COMMENTS_ONLY (ParserState);
|
||||
|
@ -825,10 +825,10 @@ AcpiWalkResources (
|
||||
/* Parameter validation */
|
||||
|
||||
if (!DeviceHandle || !UserFunction || !Name ||
|
||||
(!ACPI_COMPARE_NAME (Name, METHOD_NAME__CRS) &&
|
||||
!ACPI_COMPARE_NAME (Name, METHOD_NAME__PRS) &&
|
||||
!ACPI_COMPARE_NAME (Name, METHOD_NAME__AEI) &&
|
||||
!ACPI_COMPARE_NAME (Name, METHOD_NAME__DMA)))
|
||||
(!ACPI_COMPARE_NAMESEG (Name, METHOD_NAME__CRS) &&
|
||||
!ACPI_COMPARE_NAMESEG (Name, METHOD_NAME__PRS) &&
|
||||
!ACPI_COMPARE_NAMESEG (Name, METHOD_NAME__AEI) &&
|
||||
!ACPI_COMPARE_NAMESEG (Name, METHOD_NAME__DMA)))
|
||||
{
|
||||
return_ACPI_STATUS (AE_BAD_PARAMETER);
|
||||
}
|
||||
|
@ -676,7 +676,7 @@ AcpiTbVerifyTempTable (
|
||||
/* If a particular signature is expected (DSDT/FACS), it must match */
|
||||
|
||||
if (Signature &&
|
||||
!ACPI_COMPARE_NAME (&TableDesc->Signature, Signature))
|
||||
!ACPI_COMPARE_NAMESEG (&TableDesc->Signature, Signature))
|
||||
{
|
||||
ACPI_BIOS_ERROR ((AE_INFO,
|
||||
"Invalid signature 0x%X for ACPI table, expected [%s]",
|
||||
|
@ -207,7 +207,7 @@ AcpiTbFindTable (
|
||||
/* Normalize the input strings */
|
||||
|
||||
memset (&Header, 0, sizeof (ACPI_TABLE_HEADER));
|
||||
ACPI_MOVE_NAME (Header.Signature, Signature);
|
||||
ACPI_COPY_NAMESEG (Header.Signature, Signature);
|
||||
strncpy (Header.OemId, OemId, ACPI_OEM_ID_SIZE);
|
||||
strncpy (Header.OemTableId, OemTableId, ACPI_OEM_TABLE_ID_SIZE);
|
||||
|
||||
@ -217,7 +217,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_NAMESEG_SIZE))
|
||||
{
|
||||
/* Not the requested table */
|
||||
|
||||
@ -245,7 +245,7 @@ AcpiTbFindTable (
|
||||
/* Check for table match on all IDs */
|
||||
|
||||
if (!memcmp (AcpiGbl_RootTableList.Tables[i].Pointer->Signature,
|
||||
Header.Signature, ACPI_NAME_SIZE) &&
|
||||
Header.Signature, ACPI_NAMESEG_SIZE) &&
|
||||
(!OemId[0] ||
|
||||
!memcmp (AcpiGbl_RootTableList.Tables[i].Pointer->OemId,
|
||||
Header.OemId, ACPI_OEM_ID_SIZE)) &&
|
||||
|
@ -274,7 +274,7 @@ AcpiTbInstallStandardTable (
|
||||
*/
|
||||
if (!Reload &&
|
||||
AcpiGbl_DisableSsdtTableInstall &&
|
||||
ACPI_COMPARE_NAME (&NewTableDesc.Signature, ACPI_SIG_SSDT))
|
||||
ACPI_COMPARE_NAMESEG (&NewTableDesc.Signature, ACPI_SIG_SSDT))
|
||||
{
|
||||
ACPI_INFO ((
|
||||
"Ignoring installation of %4.4s at %8.8X%8.8X",
|
||||
|
@ -225,10 +225,10 @@ AcpiTbCleanupTableHeader (
|
||||
|
||||
memcpy (OutHeader, Header, sizeof (ACPI_TABLE_HEADER));
|
||||
|
||||
AcpiTbFixString (OutHeader->Signature, ACPI_NAME_SIZE);
|
||||
AcpiTbFixString (OutHeader->Signature, ACPI_NAMESEG_SIZE);
|
||||
AcpiTbFixString (OutHeader->OemId, ACPI_OEM_ID_SIZE);
|
||||
AcpiTbFixString (OutHeader->OemTableId, ACPI_OEM_TABLE_ID_SIZE);
|
||||
AcpiTbFixString (OutHeader->AslCompilerId, ACPI_NAME_SIZE);
|
||||
AcpiTbFixString (OutHeader->AslCompilerId, ACPI_NAMESEG_SIZE);
|
||||
}
|
||||
|
||||
|
||||
@ -253,7 +253,7 @@ AcpiTbPrintTableHeader (
|
||||
ACPI_TABLE_HEADER LocalHeader;
|
||||
|
||||
|
||||
if (ACPI_COMPARE_NAME (Header->Signature, ACPI_SIG_FACS))
|
||||
if (ACPI_COMPARE_NAMESEG (Header->Signature, ACPI_SIG_FACS))
|
||||
{
|
||||
/* FACS only has signature and length fields */
|
||||
|
||||
@ -320,8 +320,8 @@ AcpiTbVerifyChecksum (
|
||||
* They are the odd tables, have no standard ACPI header and no checksum
|
||||
*/
|
||||
|
||||
if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_S3PT) ||
|
||||
ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_FACS))
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_S3PT) ||
|
||||
ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_FACS))
|
||||
{
|
||||
return (AE_OK);
|
||||
}
|
||||
|
@ -503,7 +503,7 @@ AcpiTbParseRootTable (
|
||||
ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE, &TableIndex);
|
||||
|
||||
if (ACPI_SUCCESS (Status) &&
|
||||
ACPI_COMPARE_NAME (
|
||||
ACPI_COMPARE_NAMESEG (
|
||||
&AcpiGbl_RootTableList.Tables[TableIndex].Signature,
|
||||
ACPI_SIG_FADT))
|
||||
{
|
||||
|
@ -401,7 +401,7 @@ AcpiGetTableHeader (
|
||||
|
||||
for (i = 0, j = 0; i < AcpiGbl_RootTableList.CurrentTableCount; i++)
|
||||
{
|
||||
if (!ACPI_COMPARE_NAME (
|
||||
if (!ACPI_COMPARE_NAMESEG (
|
||||
&(AcpiGbl_RootTableList.Tables[i].Signature), Signature))
|
||||
{
|
||||
continue;
|
||||
@ -504,7 +504,7 @@ AcpiGetTable (
|
||||
{
|
||||
TableDesc = &AcpiGbl_RootTableList.Tables[i];
|
||||
|
||||
if (!ACPI_COMPARE_NAME (&TableDesc->Signature, Signature))
|
||||
if (!ACPI_COMPARE_NAMESEG (&TableDesc->Signature, Signature))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -275,7 +275,7 @@ AcpiTbLoadNamespace (
|
||||
Table = &AcpiGbl_RootTableList.Tables[AcpiGbl_DsdtIndex];
|
||||
|
||||
if (!AcpiGbl_RootTableList.CurrentTableCount ||
|
||||
!ACPI_COMPARE_NAME (Table->Signature.Ascii, ACPI_SIG_DSDT) ||
|
||||
!ACPI_COMPARE_NAMESEG (Table->Signature.Ascii, ACPI_SIG_DSDT) ||
|
||||
ACPI_FAILURE (AcpiTbValidateTable (Table)))
|
||||
{
|
||||
Status = AE_NO_ACPI_TABLES;
|
||||
@ -334,9 +334,9 @@ AcpiTbLoadNamespace (
|
||||
Table = &AcpiGbl_RootTableList.Tables[i];
|
||||
|
||||
if (!Table->Address ||
|
||||
(!ACPI_COMPARE_NAME (Table->Signature.Ascii, ACPI_SIG_SSDT) &&
|
||||
!ACPI_COMPARE_NAME (Table->Signature.Ascii, ACPI_SIG_PSDT) &&
|
||||
!ACPI_COMPARE_NAME (Table->Signature.Ascii, ACPI_SIG_OSDT)) ||
|
||||
(!ACPI_COMPARE_NAMESEG (Table->Signature.Ascii, ACPI_SIG_SSDT) &&
|
||||
!ACPI_COMPARE_NAMESEG (Table->Signature.Ascii, ACPI_SIG_PSDT) &&
|
||||
!ACPI_COMPARE_NAMESEG (Table->Signature.Ascii, ACPI_SIG_OSDT)) ||
|
||||
ACPI_FAILURE (AcpiTbValidateTable (Table)))
|
||||
{
|
||||
continue;
|
||||
@ -556,7 +556,7 @@ AcpiUnloadParentTable (
|
||||
* only these types can contain AML and thus are the only types
|
||||
* that can create namespace objects.
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME (
|
||||
if (ACPI_COMPARE_NAMESEG (
|
||||
AcpiGbl_RootTableList.Tables[i].Signature.Ascii,
|
||||
ACPI_SIG_DSDT))
|
||||
{
|
||||
|
@ -176,7 +176,7 @@ AcpiUtValidNameseg (
|
||||
|
||||
/* Validate each character in the signature */
|
||||
|
||||
for (i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
{
|
||||
if (!AcpiUtValidNameChar (Name[i], i))
|
||||
{
|
||||
|
@ -214,17 +214,17 @@ const UINT8 AcpiGbl_NsProperties[ACPI_NUM_NS_TYPES] =
|
||||
|
||||
const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS] =
|
||||
{
|
||||
"SystemMemory", /* 0x00 */
|
||||
"SystemIO", /* 0x01 */
|
||||
"PCI_Config", /* 0x02 */
|
||||
"EmbeddedControl", /* 0x03 */
|
||||
"SMBus", /* 0x04 */
|
||||
"SystemCMOS", /* 0x05 */
|
||||
"PCIBARTarget", /* 0x06 */
|
||||
"IPMI", /* 0x07 */
|
||||
"GeneralPurposeIo", /* 0x08 */
|
||||
"GenericSerialBus", /* 0x09 */
|
||||
"PCC" /* 0x0A */
|
||||
"SystemMemory", /* 0x00 */
|
||||
"SystemIO", /* 0x01 */
|
||||
"PCI_Config", /* 0x02 */
|
||||
"EmbeddedControl", /* 0x03 */
|
||||
"SMBus", /* 0x04 */
|
||||
"SystemCMOS", /* 0x05 */
|
||||
"PCIBARTarget", /* 0x06 */
|
||||
"IPMI", /* 0x07 */
|
||||
"GeneralPurposeIo", /* 0x08 */
|
||||
"GenericSerialBus", /* 0x09 */
|
||||
"PlatformCommChannel"/* 0x0A */
|
||||
};
|
||||
|
||||
|
||||
@ -416,7 +416,7 @@ AcpiUtGetNodeName (
|
||||
ACPI_NAMESPACE_NODE *Node = (ACPI_NAMESPACE_NODE *) Object;
|
||||
|
||||
|
||||
/* Must return a string of exactly 4 characters == ACPI_NAME_SIZE */
|
||||
/* Must return a string of exactly 4 characters == ACPI_NAMESEG_SIZE */
|
||||
|
||||
if (!Object)
|
||||
{
|
||||
|
@ -214,10 +214,10 @@ AcpiUtIsAmlTable (
|
||||
|
||||
/* These are the only tables that contain executable AML */
|
||||
|
||||
if (ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_PSDT) ||
|
||||
ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_SSDT) ||
|
||||
ACPI_COMPARE_NAME (Table->Signature, ACPI_SIG_OSDT) ||
|
||||
if (ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_PSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_SSDT) ||
|
||||
ACPI_COMPARE_NAMESEG (Table->Signature, ACPI_SIG_OSDT) ||
|
||||
ACPI_IS_OEM_SIG (Table->Signature))
|
||||
{
|
||||
return (TRUE);
|
||||
|
@ -237,7 +237,7 @@ AcpiUtMatchPredefinedMethod (
|
||||
ThisName = AcpiGbl_PredefinedMethods;
|
||||
while (ThisName->Info.Name[0])
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, ThisName->Info.Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ThisName->Info.Name))
|
||||
{
|
||||
return (ThisName);
|
||||
}
|
||||
@ -374,7 +374,7 @@ AcpiUtMatchResourceName (
|
||||
ThisName = AcpiGbl_ResourceNames;
|
||||
while (ThisName->Info.Name[0])
|
||||
{
|
||||
if (ACPI_COMPARE_NAME (Name, ThisName->Info.Name))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ThisName->Info.Name))
|
||||
{
|
||||
return (ThisName);
|
||||
}
|
||||
|
@ -303,16 +303,16 @@ AcpiUtRepairName (
|
||||
* Special case for the root node. This can happen if we get an
|
||||
* error during the execution of module-level code.
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME (Name, ACPI_ROOT_PATHNAME))
|
||||
if (ACPI_COMPARE_NAMESEG (Name, ACPI_ROOT_PATHNAME))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
ACPI_MOVE_NAME (&OriginalName, Name);
|
||||
ACPI_COPY_NAMESEG (&OriginalName, Name);
|
||||
|
||||
/* Check each character in the name */
|
||||
|
||||
for (i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
{
|
||||
if (AcpiUtValidNameChar (Name[i], i))
|
||||
{
|
||||
|
@ -480,7 +480,7 @@ ACPI_STATUS (*ACPI_INTERNAL_METHOD) (
|
||||
*/
|
||||
typedef struct acpi_name_info
|
||||
{
|
||||
char Name[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE];
|
||||
UINT16 ArgumentList;
|
||||
UINT8 ExpectedBtypes;
|
||||
|
||||
@ -568,7 +568,7 @@ typedef ACPI_STATUS (*ACPI_OBJECT_CONVERTER) (
|
||||
|
||||
typedef struct acpi_simple_repair_info
|
||||
{
|
||||
char Name[ACPI_NAME_SIZE];
|
||||
char Name[ACPI_NAMESEG_SIZE];
|
||||
UINT32 UnexpectedBtypes;
|
||||
UINT32 PackageIndex;
|
||||
ACPI_OBJECT_CONVERTER ObjectConverter;
|
||||
|
@ -154,7 +154,7 @@
|
||||
|
||||
/* Current ACPICA subsystem version in YYYYMMDD format */
|
||||
|
||||
#define ACPI_CA_VERSION 0x20190215
|
||||
#define ACPI_CA_VERSION 0x20190329
|
||||
|
||||
#include <contrib/dev/acpica/include/acconfig.h>
|
||||
#include <contrib/dev/acpica/include/actypes.h>
|
||||
|
@ -213,14 +213,14 @@
|
||||
|
||||
typedef struct acpi_table_header
|
||||
{
|
||||
char Signature[ACPI_NAME_SIZE]; /* ASCII table signature */
|
||||
char Signature[ACPI_NAMESEG_SIZE]; /* ASCII table signature */
|
||||
UINT32 Length; /* Length of table in bytes, including this header */
|
||||
UINT8 Revision; /* ACPI Specification minor version number */
|
||||
UINT8 Checksum; /* To make sum of entire table == 0 */
|
||||
char OemId[ACPI_OEM_ID_SIZE]; /* ASCII OEM identification */
|
||||
char OemTableId[ACPI_OEM_TABLE_ID_SIZE]; /* ASCII OEM table identification */
|
||||
UINT32 OemRevision; /* OEM revision number */
|
||||
char AslCompilerId[ACPI_NAME_SIZE]; /* ASCII ASL compiler vendor ID */
|
||||
char AslCompilerId[ACPI_NAMESEG_SIZE]; /* ASCII ASL compiler vendor ID */
|
||||
UINT32 AslCompilerRevision; /* ASL compiler version */
|
||||
|
||||
} ACPI_TABLE_HEADER;
|
||||
|
@ -520,7 +520,7 @@ typedef UINT64 ACPI_PHYSICAL_ADDRESS;
|
||||
|
||||
/* Names within the namespace are 4 bytes long */
|
||||
|
||||
#define ACPI_NAME_SIZE 4
|
||||
#define ACPI_NAMESEG_SIZE 4 /* Fixed by ACPI spec */
|
||||
#define ACPI_PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 char for separator */
|
||||
#define ACPI_PATH_SEPARATOR '.'
|
||||
|
||||
@ -666,11 +666,11 @@ typedef UINT64 ACPI_INTEGER;
|
||||
/* Optimizations for 4-character (32-bit) ACPI_NAME manipulation */
|
||||
|
||||
#ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED
|
||||
#define ACPI_COMPARE_NAME(a,b) (*ACPI_CAST_PTR (UINT32, (a)) == *ACPI_CAST_PTR (UINT32, (b)))
|
||||
#define ACPI_MOVE_NAME(dest,src) (*ACPI_CAST_PTR (UINT32, (dest)) = *ACPI_CAST_PTR (UINT32, (src)))
|
||||
#define ACPI_COMPARE_NAMESEG(a,b) (*ACPI_CAST_PTR (UINT32, (a)) == *ACPI_CAST_PTR (UINT32, (b)))
|
||||
#define ACPI_COPY_NAMESEG(dest,src) (*ACPI_CAST_PTR (UINT32, (dest)) = *ACPI_CAST_PTR (UINT32, (src)))
|
||||
#else
|
||||
#define ACPI_COMPARE_NAME(a,b) (!strncmp (ACPI_CAST_PTR (char, (a)), ACPI_CAST_PTR (char, (b)), ACPI_NAME_SIZE))
|
||||
#define ACPI_MOVE_NAME(dest,src) (strncpy (ACPI_CAST_PTR (char, (dest)), ACPI_CAST_PTR (char, (src)), ACPI_NAME_SIZE))
|
||||
#define ACPI_COMPARE_NAMESEG(a,b) (!strncmp (ACPI_CAST_PTR (char, (a)), ACPI_CAST_PTR (char, (b)), ACPI_NAMESEG_SIZE))
|
||||
#define ACPI_COPY_NAMESEG(dest,src) (strncpy (ACPI_CAST_PTR (char, (dest)), ACPI_CAST_PTR (char, (src)), ACPI_NAMESEG_SIZE))
|
||||
#endif
|
||||
|
||||
/* Support for the special RSDP signature (8 characters) */
|
||||
@ -680,7 +680,7 @@ typedef UINT64 ACPI_INTEGER;
|
||||
|
||||
/* Support for OEMx signature (x can be any character) */
|
||||
#define ACPI_IS_OEM_SIG(a) (!strncmp (ACPI_CAST_PTR (char, (a)), ACPI_OEM_NAME, 3) &&\
|
||||
strnlen (a, ACPI_NAME_SIZE) == ACPI_NAME_SIZE)
|
||||
strnlen (a, ACPI_NAMESEG_SIZE) == ACPI_NAMESEG_SIZE)
|
||||
|
||||
/*
|
||||
* Algorithm to obtain access bit width.
|
||||
|
@ -55,7 +55,7 @@ AcpiOsPredefinedOverride(const ACPI_PREDEFINED_NAMES *InitVal,
|
||||
return (AE_BAD_PARAMETER);
|
||||
|
||||
*NewVal = NULL;
|
||||
if (ACPI_COMPARE_NAME(InitVal->Name, "_OS_") &&
|
||||
if (ACPI_COMPARE_NAMESEG(InitVal->Name, "_OS_") &&
|
||||
InitVal->Type == ACPI_TYPE_STRING && strlen(acpi_osname) > 0) {
|
||||
printf("ACPI: Overriding _OS definition with \"%s\"\n",
|
||||
acpi_osname);
|
||||
@ -77,9 +77,9 @@ AcpiOsTableOverride(ACPI_TABLE_HEADER *ExistingTable,
|
||||
return (AE_BAD_PARAMETER);
|
||||
|
||||
*NewTable = NULL;
|
||||
if (!ACPI_COMPARE_NAME(ExistingTable->Signature, ACPI_SIG_DSDT))
|
||||
if (!ACPI_COMPARE_NAMESEG(ExistingTable->Signature, ACPI_SIG_DSDT))
|
||||
#ifdef notyet
|
||||
for (int i = 0; i < ACPI_NAME_SIZE; i++)
|
||||
for (int i = 0; i < ACPI_NAMESEG_SIZE; i++)
|
||||
modname[i + 5] = tolower(ExistingTable->Signature[i]);
|
||||
#else
|
||||
return (AE_SUPPORT);
|
||||
|
@ -49,7 +49,7 @@ enum val_t {
|
||||
};
|
||||
|
||||
struct acpi_q_rule {
|
||||
char sig[ACPI_NAME_SIZE]; /* Table signature to match */
|
||||
char sig[ACPI_NAMESEG_SIZE]; /* Table signature to match */
|
||||
enum val_t val;
|
||||
union {
|
||||
char *id;
|
||||
@ -158,11 +158,11 @@ acpi_table_quirks(int *quirks)
|
||||
for (entry = acpi_quirks_table; entry->match; entry++) {
|
||||
done = TRUE;
|
||||
for (match = entry->match; match->sig[0] != '\0'; match++) {
|
||||
if (!strncmp(match->sig, "FADT", ACPI_NAME_SIZE))
|
||||
if (!strncmp(match->sig, "FADT", ACPI_NAMESEG_SIZE))
|
||||
hdr = &fadt;
|
||||
else if (!strncmp(match->sig, ACPI_SIG_DSDT, ACPI_NAME_SIZE))
|
||||
else if (!strncmp(match->sig, ACPI_SIG_DSDT, ACPI_NAMESEG_SIZE))
|
||||
hdr = &dsdt;
|
||||
else if (!strncmp(match->sig, ACPI_SIG_XSDT, ACPI_NAME_SIZE))
|
||||
else if (!strncmp(match->sig, ACPI_SIG_XSDT, ACPI_NAMESEG_SIZE))
|
||||
hdr = &xsdt;
|
||||
else
|
||||
panic("invalid quirk header\n");
|
||||
|
@ -180,7 +180,7 @@ map_table(vm_paddr_t pa, int offset, const char *sig)
|
||||
void *table;
|
||||
|
||||
header = table_map(pa, offset, sizeof(ACPI_TABLE_HEADER));
|
||||
if (strncmp(header->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(header->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
table_unmap(header, sizeof(ACPI_TABLE_HEADER));
|
||||
return (NULL);
|
||||
}
|
||||
@ -218,7 +218,7 @@ probe_table(vm_paddr_t address, const char *sig)
|
||||
printf("Table '%.4s' at 0x%jx\n", table->Signature,
|
||||
(uintmax_t)address);
|
||||
|
||||
if (strncmp(table->Signature, sig, ACPI_NAME_SIZE) != 0) {
|
||||
if (strncmp(table->Signature, sig, ACPI_NAMESEG_SIZE) != 0) {
|
||||
table_unmap(table, sizeof(ACPI_TABLE_HEADER));
|
||||
return (0);
|
||||
}
|
||||
|
@ -1463,7 +1463,7 @@ static void
|
||||
acpi_print_sdt(ACPI_TABLE_HEADER *sdp)
|
||||
{
|
||||
printf(" ");
|
||||
acpi_print_string(sdp->Signature, ACPI_NAME_SIZE);
|
||||
acpi_print_string(sdp->Signature, ACPI_NAMESEG_SIZE);
|
||||
printf(": Length=%d, Revision=%d, Checksum=%d,\n",
|
||||
sdp->Length, sdp->Revision, sdp->Checksum);
|
||||
printf("\tOEMID=");
|
||||
@ -1472,7 +1472,7 @@ acpi_print_sdt(ACPI_TABLE_HEADER *sdp)
|
||||
acpi_print_string(sdp->OemTableId, ACPI_OEM_TABLE_ID_SIZE);
|
||||
printf(", OEM Revision=0x%x,\n", sdp->OemRevision);
|
||||
printf("\tCreator ID=");
|
||||
acpi_print_string(sdp->AslCompilerId, ACPI_NAME_SIZE);
|
||||
acpi_print_string(sdp->AslCompilerId, ACPI_NAMESEG_SIZE);
|
||||
printf(", Creator Revision=0x%x\n", sdp->AslCompilerRevision);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user