summaryrefslogtreecommitdiffstats
path: root/source/compiler/aslmethod.c
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2014-04-25 16:53:42 +0000
committerjkim <jkim@FreeBSD.org>2014-04-25 16:53:42 +0000
commit34dc9d28dcb64ffb397ae86712fcea0cce546203 (patch)
tree643f58d38011b3076bfc6a234d83f22c69487b8c /source/compiler/aslmethod.c
parent36570d433866fe6dd6cfd1efeaa154ed7ade2121 (diff)
downloadFreeBSD-src-34dc9d28dcb64ffb397ae86712fcea0cce546203.zip
FreeBSD-src-34dc9d28dcb64ffb397ae86712fcea0cce546203.tar.gz
Import ACPICA 20140424.
Diffstat (limited to 'source/compiler/aslmethod.c')
-rw-r--r--source/compiler/aslmethod.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/source/compiler/aslmethod.c b/source/compiler/aslmethod.c
index 36db96f..9b0a7a1 100644
--- a/source/compiler/aslmethod.c
+++ b/source/compiler/aslmethod.c
@@ -108,7 +108,18 @@ MtMethodAnalysisWalkBegin (
WalkInfo->MethodStack = MethodInfo;
- /* Get the name node, ignored here */
+ /* Special handling for _PRP, must have a _HID also */
+
+ if (!ACPI_STRCMP (METHOD_NAME__PRP, Op->Asl.NameSeg))
+ {
+ if (!ApFindNameInScope (METHOD_NAME__HID, Op))
+ {
+ AslError (ASL_WARNING, ASL_MSG_MISSING_DEPENDENCY, Op,
+ "_PRP requires _HID in same scope");
+ }
+ }
+
+ /* Get the name node */
Next = Op->Asl.Child;
@@ -412,6 +423,16 @@ MtMethodAnalysisWalkBegin (
AnCheckId (Next, ASL_TYPE_CID);
}
}
+
+ else if (!ACPI_STRCMP (METHOD_NAME__PRP, Op->Asl.NameSeg))
+ {
+ if (!ApFindNameInScope (METHOD_NAME__HID, Op))
+ {
+ AslError (ASL_WARNING, ASL_MSG_MISSING_DEPENDENCY, Op,
+ "_PRP requires _HID in same scope");
+ }
+ }
+
break;
default:
OpenPOWER on IntegriCloud