diff options
author | jkim <jkim@FreeBSD.org> | 2014-04-25 16:53:42 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2014-04-25 16:53:42 +0000 |
commit | 34dc9d28dcb64ffb397ae86712fcea0cce546203 (patch) | |
tree | 643f58d38011b3076bfc6a234d83f22c69487b8c /source/compiler/aslmethod.c | |
parent | 36570d433866fe6dd6cfd1efeaa154ed7ade2121 (diff) | |
download | FreeBSD-src-34dc9d28dcb64ffb397ae86712fcea0cce546203.zip FreeBSD-src-34dc9d28dcb64ffb397ae86712fcea0cce546203.tar.gz |
Import ACPICA 20140424.
Diffstat (limited to 'source/compiler/aslmethod.c')
-rw-r--r-- | source/compiler/aslmethod.c | 23 |
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: |