summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/components/dispatcher
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2012-08-16 20:54:52 +0000
committerjkim <jkim@FreeBSD.org>2012-08-16 20:54:52 +0000
commit7d706dc46f20aa3d7d386cd3f3df8e786e35e3cf (patch)
treea652303191b07ca59b5281e3606555d7db951183 /sys/contrib/dev/acpica/components/dispatcher
parentef6535e51ea1bac50944a3194c4e3ee845e9b696 (diff)
parent08e6f22ac3350a67c38e9b42b5dce2a7d5fa08b4 (diff)
downloadFreeBSD-src-7d706dc46f20aa3d7d386cd3f3df8e786e35e3cf.zip
FreeBSD-src-7d706dc46f20aa3d7d386cd3f3df8e786e35e3cf.tar.gz
Merge ACPICA 20120816.
Diffstat (limited to 'sys/contrib/dev/acpica/components/dispatcher')
-rw-r--r--sys/contrib/dev/acpica/components/dispatcher/dswload.c14
-rw-r--r--sys/contrib/dev/acpica/components/dispatcher/dswload2.c14
2 files changed, 28 insertions, 0 deletions
diff --git a/sys/contrib/dev/acpica/components/dispatcher/dswload.c b/sys/contrib/dev/acpica/components/dispatcher/dswload.c
index ac948c4..53257b5 100644
--- a/sys/contrib/dev/acpica/components/dispatcher/dswload.c
+++ b/sys/contrib/dev/acpica/components/dispatcher/dswload.c
@@ -241,6 +241,20 @@ AcpiDsLoad1BeginOp (
WalkState->ScopeInfo->Common.Value = ACPI_TYPE_ANY;
break;
+ case ACPI_TYPE_METHOD:
+
+ /*
+ * Allow scope change to root during execution of module-level
+ * code. Root is typed METHOD during this time.
+ */
+ if ((Node == AcpiGbl_RootNode) &&
+ (WalkState->ParseFlags & ACPI_PARSE_MODULE_LEVEL))
+ {
+ break;
+ }
+
+ /*lint -fallthrough */
+
default:
/* All other types are an error */
diff --git a/sys/contrib/dev/acpica/components/dispatcher/dswload2.c b/sys/contrib/dev/acpica/components/dispatcher/dswload2.c
index 9bc8b31..0d6e6b2 100644
--- a/sys/contrib/dev/acpica/components/dispatcher/dswload2.c
+++ b/sys/contrib/dev/acpica/components/dispatcher/dswload2.c
@@ -243,6 +243,20 @@ AcpiDsLoad2BeginOp (
WalkState->ScopeInfo->Common.Value = ACPI_TYPE_ANY;
break;
+ case ACPI_TYPE_METHOD:
+
+ /*
+ * Allow scope change to root during execution of module-level
+ * code. Root is typed METHOD during this time.
+ */
+ if ((Node == AcpiGbl_RootNode) &&
+ (WalkState->ParseFlags & ACPI_PARSE_MODULE_LEVEL))
+ {
+ break;
+ }
+
+ /*lint -fallthrough */
+
default:
/* All other types are an error */
OpenPOWER on IntegriCloud