From owner-freebsd-acpi@FreeBSD.ORG Fri Feb 20 17:26:31 2009 Return-Path: Delivered-To: acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA02A106564A for ; Fri, 20 Feb 2009 17:26:31 +0000 (UTC) (envelope-from robert.moore@intel.com) Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by mx1.freebsd.org (Postfix) with ESMTP id C40928FC08 for ; Fri, 20 Feb 2009 17:26:31 +0000 (UTC) (envelope-from robert.moore@intel.com) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga101.ch.intel.com with ESMTP; 20 Feb 2009 09:26:31 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.38,242,1233561600"; d="scan'208";a="112767229" Received: from orsmsx604.amr.corp.intel.com ([10.22.226.87]) by azsmga001.ch.intel.com with ESMTP; 20 Feb 2009 09:26:30 -0800 Received: from orsmsx503.amr.corp.intel.com ([10.22.226.47]) by orsmsx604.amr.corp.intel.com ([10.250.113.17]) with mapi; Fri, 20 Feb 2009 09:26:30 -0800 From: "Moore, Robert" To: "Moore, Robert" Date: Fri, 20 Feb 2009 09:26:29 -0800 Thread-Topic: ACPICA version 20090220 released Thread-Index: AcmTgF3V7y0L11UXS1aNv5FqrcqzAA== Message-ID: <4911F71203A09E4D9981D27F9D83085814AFFAE9@orsmsx503.amr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailman-Approved-At: Fri, 20 Feb 2009 18:04:27 +0000 Cc: Subject: ACPICA version 20090220 released X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Feb 2009 17:26:32 -0000 20 February 2009. Summary of changes for version 20090220: This release is available at www.acpica.org/downloads. 1) ACPI CA Core Subsystem: Optimized the ACPI register locking. Removed locking for reads from the ACP= I bit registers in PM1 Status, Enable, Control, and PM2 Control. The lock i= s not required when reading the single-bit registers. The AcpiGetRegisterUn= locked function is no longer needed and has been removed. This will improve= performance for reads on these registers. ACPICA BZ 760. Fixed the parameter validation for AcpiRead/Write. Now return AE_BAD_PARAME= TER if the input register pointer is null, and AE_BAD_ADDRESS if the regist= er has an address of zero. Previously, these cases simply returned AE_OK. F= or optional registers such as PM1B status/enable/control, the caller should= check for a valid register address before calling. ACPICA BZ 748. Renamed the external ACPI bit register access functions. Renamed AcpiGetReg= ister and AcpiSetRegister to clarify the purpose of these functions. The ne= w names are AcpiReadBitRegister and AcpiWriteBitRegister. Also, restructure= d the code for these functions by simplifying the code path and condensing = duplicate code to reduce code size. Added new functions to transparently handle the possibly split PM1 A/B regi= sters. AcpiHwReadMultiple and AcpiHwWriteMultiple. These two functions now = handle the split registers for PM1 Status, Enable, and Control. ACPICA BZ 7= 46. Added a function to handle the PM1 control registers, AcpiHwWritePm1Control= . This function writes both of the PM1 control registers (A/B). These regis= ters are different than the PM1 A/B status and enable registers in that dif= ferent values can be written to the A/B registers. Most notably, the SLP_TY= P bits can be different, as per the values returned from the _Sx predefined= methods. Removed an extra register write within AcpiHwClearAcpiStatus. This function= was writing an optional PM1B status register twice. The existing call to t= he low-level AcpiHwRegisterWrite automatically handles a possibly split PM1= A/B register. ACPICA BZ 751. Split out the PM1 Status registers from the FADT. Added new globals for the= se registers (A/B), similar to the way the PM1 Enable registers are handled= . Instead of overloading the FADT Event Register blocks. This makes the cod= e clearer and less prone to error. Fixed the warning message for when the platform contains too many ACPI tabl= es for the default size of the global root table data structure. The calcul= ation for the truncation value was incorrect. Removed the ACPI_GET_OBJECT_TYPE macro. Removed all instances of this obsol= ete macro, since it is now a simple reference to ->common.type. There were = about 150 invocations of the macro across 41 files. ACPICA BZ 755. Removed the redundant ACPI_BITREG_SLEEP_TYPE_B. This type is the same as TY= PE_A. Removed this and all related instances. Renamed SLEEP_TYPE_A to simpl= y SLEEP_TYPE. ACPICA BZ 754. Conditionally compile the AcpiSetFirmwareWakingVector64 function. This func= tion is only needed on 64-bit host operating systems and is thus not includ= ed for 32-bit hosts. Debug output: print the input and result for invocations of the _OSI reserv= ed control method via the ACPI_LV_INFO debug level. Also, reduced some of t= he verbosity of this debug level. Len Brown. Example Code and Data Size: These are the sizes for the OS-independent acpi= ca.lib produced by the Microsoft Visual C++ 6.0 32-bit compiler. The debug = version of the code includes the debug output trace mechanism and has a muc= h larger code and data size. Previous Release: Non-Debug Version: 82.3K Code, 17.5K Data, 99.8K Total Debug Version: 157.3K Code, 49.8K Data, 207.1K Total Current Release: Non-Debug Version: 82.0K Code, 17.5K Data, 99.5K Total Debug Version: 156.9K Code, 49.8K Data, 206.7K Total 2) iASL Compiler/Disassembler and Tools: Disassembler: Decode the FADT PM_Profile field. Emit ascii names for the va= rious legal performance profiles.