diff options
Diffstat (limited to 'sys/contrib/dev/acpica/evregion.c')
-rw-r--r-- | sys/contrib/dev/acpica/evregion.c | 65 |
1 files changed, 41 insertions, 24 deletions
diff --git a/sys/contrib/dev/acpica/evregion.c b/sys/contrib/dev/acpica/evregion.c index 544e7fb..32410e9 100644 --- a/sys/contrib/dev/acpica/evregion.c +++ b/sys/contrib/dev/acpica/evregion.c @@ -1,7 +1,7 @@ /****************************************************************************** * * Module Name: evregion - ACPI AddressSpace (OpRegion) handler dispatch - * $Revision: 120 $ + * $Revision: 128 $ * *****************************************************************************/ @@ -9,7 +9,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999, 2000, 2001, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2002, Intel Corp. * All rights reserved. * * 2. License @@ -124,7 +124,7 @@ #include "amlcode.h" #define _COMPONENT ACPI_EVENTS - MODULE_NAME ("evregion") + ACPI_MODULE_NAME ("evregion") /******************************************************************************* @@ -146,7 +146,7 @@ AcpiEvInstallDefaultAddressSpaceHandlers ( ACPI_STATUS Status; - FUNCTION_TRACE ("EvInstallDefaultAddressSpaceHandlers"); + ACPI_FUNCTION_TRACE ("EvInstallDefaultAddressSpaceHandlers"); /* @@ -164,7 +164,8 @@ AcpiEvInstallDefaultAddressSpaceHandlers ( * NOTE: We ignore AE_ALREADY_EXISTS because this means that a handler * has already been installed (via AcpiInstallAddressSpaceHandler) */ - Status = AcpiInstallAddressSpaceHandler (AcpiGbl_RootNode, + + Status = AcpiInstallAddressSpaceHandler ((ACPI_HANDLE) AcpiGbl_RootNode, ACPI_ADR_SPACE_SYSTEM_MEMORY, ACPI_DEFAULT_HANDLER, NULL, NULL); if ((ACPI_FAILURE (Status)) && @@ -173,7 +174,7 @@ AcpiEvInstallDefaultAddressSpaceHandlers ( return_ACPI_STATUS (Status); } - Status = AcpiInstallAddressSpaceHandler (AcpiGbl_RootNode, + Status = AcpiInstallAddressSpaceHandler ((ACPI_HANDLE) AcpiGbl_RootNode, ACPI_ADR_SPACE_SYSTEM_IO, ACPI_DEFAULT_HANDLER, NULL, NULL); if ((ACPI_FAILURE (Status)) && @@ -182,7 +183,7 @@ AcpiEvInstallDefaultAddressSpaceHandlers ( return_ACPI_STATUS (Status); } - Status = AcpiInstallAddressSpaceHandler (AcpiGbl_RootNode, + Status = AcpiInstallAddressSpaceHandler ((ACPI_HANDLE) AcpiGbl_RootNode, ACPI_ADR_SPACE_PCI_CONFIG, ACPI_DEFAULT_HANDLER, NULL, NULL); if ((ACPI_FAILURE (Status)) && @@ -191,6 +192,14 @@ AcpiEvInstallDefaultAddressSpaceHandlers ( return_ACPI_STATUS (Status); } + Status = AcpiInstallAddressSpaceHandler ((ACPI_HANDLE) AcpiGbl_RootNode, + ACPI_ADR_SPACE_DATA_TABLE, + ACPI_DEFAULT_HANDLER, NULL, NULL); + if ((ACPI_FAILURE (Status)) && + (Status != AE_ALREADY_EXISTS)) + { + return_ACPI_STATUS (Status); + } return_ACPI_STATUS (AE_OK); } @@ -219,7 +228,7 @@ AcpiEvExecuteRegMethod ( ACPI_STATUS Status; - FUNCTION_TRACE ("EvExecuteRegMethod"); + ACPI_FUNCTION_TRACE ("EvExecuteRegMethod"); RegionObj2 = AcpiNsGetSecondaryObject (RegionObj); @@ -265,7 +274,7 @@ AcpiEvExecuteRegMethod ( /* * Execute the method, no return value */ - DEBUG_EXEC(AcpiUtDisplayInitPathname (RegionObj2->Extra.Method_REG, " [Method]")); + ACPI_DEBUG_EXEC(AcpiUtDisplayInitPathname (RegionObj2->Extra.Method_REG, " [Method]")); Status = AcpiNsEvaluateByHandle (RegionObj2->Extra.Method_REG, Params, NULL); AcpiUtRemoveReference (Params[1]); @@ -311,7 +320,7 @@ AcpiEvAddressSpaceDispatch ( void *RegionContext = NULL; - FUNCTION_TRACE ("EvAddressSpaceDispatch"); + ACPI_FUNCTION_TRACE ("EvAddressSpaceDispatch"); RegionObj2 = AcpiNsGetSecondaryObject (RegionObj); @@ -392,10 +401,10 @@ AcpiEvAddressSpaceDispatch ( ACPI_DEBUG_PRINT ((ACPI_DB_OPREGION, "Addrhandler %p (%p), Address %8.8X%8.8X\n", - &RegionObj->Region.AddrHandler->AddrHandler, Handler, HIDWORD(Address), - LODWORD(Address))); + &RegionObj->Region.AddrHandler->AddrHandler, Handler, + ACPI_HIDWORD (Address), ACPI_LODWORD (Address))); - if (!(HandlerDesc->AddrHandler.Flags & ADDR_HANDLER_DEFAULT_INSTALLED)) + if (!(HandlerDesc->AddrHandler.Flags & ACPI_ADDR_HANDLER_DEFAULT_INSTALLED)) { /* * For handlers other than the default (supplied) handlers, we must @@ -414,12 +423,12 @@ AcpiEvAddressSpaceDispatch ( if (ACPI_FAILURE (Status)) { - ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Region handler: %s [%s]\n", - AcpiFormatException (Status), - AcpiUtGetRegionName (RegionObj->Region.SpaceId))); + ACPI_REPORT_ERROR (("Handler for [%s] returned %s\n", + AcpiUtGetRegionName (RegionObj->Region.SpaceId), + AcpiFormatException (Status))); } - if (!(HandlerDesc->AddrHandler.Flags & ADDR_HANDLER_DEFAULT_INSTALLED)) + if (!(HandlerDesc->AddrHandler.Flags & ACPI_ADDR_HANDLER_DEFAULT_INSTALLED)) { /* * We just returned from a non-default handler, we must re-enter the @@ -459,7 +468,7 @@ AcpiEvDisassociateRegionFromHandler( ACPI_STATUS Status; - FUNCTION_TRACE ("EvDisassociateRegionFromHandler"); + ACPI_FUNCTION_TRACE ("EvDisassociateRegionFromHandler"); RegionObj2 = AcpiNsGetSecondaryObject (RegionObj); @@ -506,7 +515,11 @@ AcpiEvDisassociateRegionFromHandler( if (AcpiNsIsLocked) { - AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE); + Status = AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE); + if (ACPI_FAILURE (Status)) + { + return_VOID; + } } /* @@ -516,7 +529,11 @@ AcpiEvDisassociateRegionFromHandler( if (AcpiNsIsLocked) { - AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE); + Status = AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE); + if (ACPI_FAILURE (Status)) + { + return_VOID; + } } /* @@ -596,7 +613,7 @@ AcpiEvAssociateRegionAndHandler ( ACPI_STATUS Status; - FUNCTION_TRACE ("EvAssociateRegionAndHandler"); + ACPI_FUNCTION_TRACE ("EvAssociateRegionAndHandler"); ACPI_DEBUG_PRINT ((ACPI_DB_OPREGION, @@ -628,7 +645,7 @@ AcpiEvAssociateRegionAndHandler ( if (AcpiNsIsLocked) { - AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE); + (void) AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE); } return_ACPI_STATUS (Status); @@ -668,7 +685,7 @@ AcpiEvAddrHandlerHelper ( ACPI_STATUS Status; - PROC_NAME ("EvAddrHandlerHelper"); + ACPI_FUNCTION_NAME ("EvAddrHandlerHelper"); HandlerObj = (ACPI_OPERAND_OBJECT *) Context; @@ -713,7 +730,7 @@ AcpiEvAddrHandlerHelper ( /* * Devices are handled different than regions */ - if (IS_THIS_OBJECT_TYPE (ObjDesc, ACPI_TYPE_DEVICE)) + if (ObjDesc->Common.Type == ACPI_TYPE_DEVICE) { /* * See if this guy has any handlers |