aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica
Commit message (Collapse)AuthorAgeFilesLines
* ACPICA: Split object conversion functions to a new fileBob Moore2013-03-124-262/+318
| | | | | | | | | New file, nsconvert.c, for return object conversion functions. Created in preparation for new conversion functions forthcoming. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add mechanism for early object repairs on a per-name basisBob Moore2013-03-125-87/+221
| | | | | | | | | | Adds the framework to allow object repairs very early in the return object analysis. Enables repairs like string->unicode, etc. Bob Moore, Lv Zheng. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add exception descriptions to exception info tableBob Moore2013-03-122-12/+17
| | | | | | | | | Descriptions to be compiled/used by the acpihelp utility only. Not compiled for the kernel ACPICA code. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Regression fix: reinstate safe exit macrosBob Moore2013-03-129-26/+26
| | | | | | | | | Removal caused a regression on at least FreeBSD. This fix reinstates the macros. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update for ACPI 5 hardware-reduced featureBob Moore2013-03-122-0/+24
| | | | | | | | | Ensure that AcpiEnable and AcpiDisable work properly when the hardware-reduced flag is set in the FADT. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add parens within macros around parameter namesBob Moore2013-03-121-2/+2
| | | | | | Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add macros to access pointer to next object in the descriptor listJung-uk Kim2013-03-122-8/+6
| | | | | | | Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update error/debug messages for fixed eventsBob Moore2013-03-122-14/+19
| | | | | | | | Add the actual fixed event name to all messages for clarity. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Fix a long-standing bug in local cacheJung-uk Kim2013-03-121-13/+7
| | | | | | | | | | | Since 20060317, the pointer to next object is the first element in its common header. Remove bogus LinkOffset from ACPI_MEMORY_LIST and directly use NextObject. Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Fix a couple warnings detected on FreeBSD buildJung-uk Kim2013-03-121-1/+1
| | | | | | | | | This fixes a global and a pointer cast. Jung-uk Kim. Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resource Mgr: Prevent infinite loops in resource walksBob Moore2013-03-124-1/+29
| | | | | | | | | | | Add checks for zero-length resource descriptors in all code that loops through a resource descriptor list. This prevents possible infinite loops because the length is used to increment the traveral pointer and detect the end-of-descriptor. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update predefined info table for _MLS methodBob Moore2013-01-251-2/+2
| | | | | | | | | | The second object for each sub-package of the _MLS method is defined to be a unicode Buffer object. This fixes the predefined table where this object was incorrectly defined as a String. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Remove some extraneous newlines in ACPI_ERROR type callsBob Moore2013-01-253-3/+3
| | | | | | | | | | These macros/functions automatically insert a newline, so the format string should not contain a newline at the end. (This allows these functions to add information to the end of the output line.) Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: iASL/Disassembler: Add option to ignore NOOP opcodes/operatorsBob Moore2013-01-251-1/+3
| | | | | | | | | | | | | | Implemented for both the compiler and the disassembler. Often, the NOOP opcode is used as padding for packages that are changed dynamically by the BIOS. When disassembled, these NOOPs will cause syntax errors. This option causes the disassembler to ignore the NOOP opcode, and it also causes the compiler to ignore NOOP statements as well. Signed-off-by: Bob Moore <robert.moore@intel.com> Tested-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: AcpiGetSleepTypeData: Allow \_Sx to return either 1 or 2 integersBob Moore2013-01-251-51/+74
| | | | | | | | | | | | Although the ACPI spec defines the \_Sx objects to return a package containing one integer, most BIOS code returns two integers and the previous code reflects that. However, we also need to support BIOS code that actually implements to the ACPI spec, and this change implements this. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update ACPICA copyrights to 2013Bob Moore2013-01-25162-162/+162
| | | | | | | | Includes all source headers and signons for the various tools. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update predefined info tableLv Zheng2013-01-251-5/+6
| | | | | | | | | | The predefined info table defines return types for specific control methods. This patch updates predefined table as such enhancement has already been done in ACPICA. This patch can also reduce source code differences between Linux and ACPICA. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Cleanup table handler naming conflicts.Lv Zheng2013-01-112-3/+3
| | | | | | | | | | | | | | | This is a cosmetic patch only. Comparison of the resulting binary showed only line number differences. This patch does not affect the generation of the Linux binary. This patch decreases 44 lines of 20121114 divergence.diff. There are naming conflicts between Linux and ACPICA on table handlers. This patch cleans up this conflicts to reduce the source code diff between Linux and ACPICA. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Source restructuring: split large files into 8 new files.Bob Moore2013-01-1120-3103/+3494
| | | | | | | | | Created logical splits for eight new files. Improves modularity and configurability. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Interpreter: Fix Store() when implicit conversion is not possible.Bob Moore2013-01-101-5/+24
| | | | | | | | | | | | For the cases such as a store of a string to an existing package object, implement the store as a CopyObject(). This is a small departure from the ACPI specification which states that the control method should be aborted in this case. However, ASLTS suite depends on this behavior. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resources: Split interrupt share/wake bits into two fields.Bob Moore2013-01-102-12/+28
| | | | | | | | | | | | | | These two bits are merged at the external interface level for the IRQ, Interrupt, and GpioInt resource descriptors. However, these bits are logically independent and there is no need to keep them merged internally. Therefore, this change splits the bits into "sharable" and "wake capable" fields within the resource manager. This simplifies drive code that needs to examine these bits. Aaron Lu, Bob Moore. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resources: Support for ACPI 5 wake bit in ExtendedInterrupt descriptor.Aaron Lu2013-01-101-5/+5
| | | | | | | | | | Add support to both get and set the extended share flags for the Interrupt() resource descriptor. Reported by Aaron Lu. Signed-off-by: Aaron Lu <aaron.lu@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Interpreter: Add warning if 64-bit constant appears in 32-bit table.Bob Moore2013-01-106-14/+28
| | | | | | | | | | | Some ASL compilers allow 64-bit constants within a 32-bit table (DSDT version == 1). When encountered, emit a warning that the constant will be truncated to 32 bits. This is potentially a serious problem in the ACPI table(s). Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update ACPICA initialization messages.Bob Moore2013-01-104-14/+19
| | | | | | | | | | Clarify messages, indent if appropriate. Change a couple appropriate messages to ACPI_INFO so they will appear even if debug output is disabled. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Namespace: Eliminate dot...dot output during initialization.Bob Moore2013-01-101-17/+4
| | | | | | | | | This feature no longer serves any good purpose and also confuses any error messages during ACPICA initialization. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resource manager: Add support for ACPI 5 wake bit in IRQ descriptor.Aaron Lu2013-01-101-4/+4
| | | | | | | | | | Add support to both get and set the extended share flags for the IRQ() resource descriptor. Reported by Aaron Lu. Signed-off-by: Aaron Lu <aaron.lu@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Fix possible memory leak in dispatcher error path.Tim Gardner2013-01-101-0/+1
| | | | | | | | | | On error, delete mutex object created during method mutex creation. Reported by tim.gardner@canonical.com. Signed-off-by: Tim Gardner <tim.gardner@canonical.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update for non-configured ACPI_IS_DEBUG_ENABLED macro.Bob Moore2013-01-101-0/+1
| | | | | | | | Also add acoutput.h to the nsdump.c file. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Merge all debug output macros into a single file, acoutput.Bob Moore2013-01-101-126/+0
| | | | | | | | | Moved the debug trace macros from acmacros.h into acoutput.h where they belong. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Deploy new ACPI_IS_DEBUG_ENABLED macro in debug output code.Bob Moore2013-01-103-16/+20
| | | | | | | | Simplifies check for debug output enables. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Eliminate superfluous return_UINT8 and return_UINT32 macros.Bob Moore2013-01-1010-32/+25
| | | | | | | | | These macros were implemented the same as return_VALUE and thus they were not needed. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: FUNCTION_TRACE macros: Check if debug is enabled up-front.Bob Moore2013-01-101-40/+78
| | | | | | | | | | In the functions that implement the macros, check if debug is enabled up-front before the call to the lower debug print function. This provides a small performance improvement. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: DEBUG_PRINT macros: Update to improve performance.Bob Moore2013-01-101-65/+67
| | | | | | | | | | | Move check for "debug enable" to before the actual call to the debug print routine. Improves time of ASLTS by about 15%. Also, remove "safe" exit macros since no complex expressions are ever used in the return statements. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resource Manager: Add a pointer cast for a namespace node.Rafael J. Wysocki2013-01-101-1/+3
| | | | | | | | | Add a missing cast for a namespace node pointer passed in from an external interface. Reported Rafael Wysocki. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add time macros for various timer/time manipulation.Bob Moore2013-01-103-5/+6
| | | | | | | | | Constants for time manipulation, including constants for the 100 nanosecond timers. Chao Guan, Bob Moore, Lv Zheng. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Lint changes, no functional change.Bob Moore2013-01-102-5/+6
| | | | | | | | Some changes from lint. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add root node optimization to internal get namespace node function.Bob Moore2013-01-101-0/+9
| | | | | | | | | Detect a request for the root node (a lone backslash) up front before invoking a full namespace lookup. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Eliminate some small unnecessary pathname functions.Bob Moore2013-01-108-65/+22
| | | | | | | | | Removed several small pathname functions to increase efficiency. Essentially, they replace a function call with a single compare. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Change exception code for LoadTable operator.Bob Moore2013-01-101-3/+4
| | | | | | | | | | For the case where one of the input strings is too long, change the returned exception code from AE_BAD_PARAMETER to AE_AML_STRING_LIMIT. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resources: New interface, AcpiWalkResourceBuffer.Bob Moore2013-01-101-31/+70
| | | | | | | | | | Implements a new interface for walking resource lists that it at a lower level than the existing AcpiWalkResources. (Method is not executed.) Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: AcpiGetObjectInfo: optimize exit for mutex failure.Bob Moore2013-01-101-1/+1
| | | | | | | | | No need for a goto to the bottom of the function, simply return the status code immediately. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Resource Manager: update template walking with ACPI_NEXT_RESOURCE.Lv Zheng2013-01-101-3/+1
| | | | | | | | | Cleanup the ACPI_NEXT_RESOURCE macro. Update AcpiWalkResources to use ACPI_NEXT_RESOURCE. Lv Zheng. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Enhance the ACPI_GETx and ACPI_SETx macros.Lv Zheng2013-01-103-45/+54
| | | | | | | | | | Improve the implementation of the macros. Change the SETx macros to the style of (destination, source). Also add ACPI_CASTx companion macros. Lv Zheng. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Add macros to extract flag bits from resource descriptors.Bob Moore2013-01-101-0/+14
| | | | | | | | | | Improves readability and maintainability of the code. Fixes a problem with the UART serial bus descriptor for the number of data bits flags (was incorrectly 2 bits, should be 3). Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Disassembler: Add new ACPI 5 interrupt sharing flags.Bob Moore2013-01-102-4/+6
| | | | | | | | | | This changes adds the ShareAndWake and ExclusiveAndWake flags which were added to the Irq, Interrupt, and Gpio resource descriptors in ACPI 5.0. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Debugger: Major update for the Disassemble<method> command.Bob Moore2013-01-105-44/+52
| | | | | | | | | | | | This command was downreved and did not properly disassemble control methods with any reasonable complexity. This fix brings the command up to the same level as the rest of the disassembler. Adds one new file, dmdeferred.c, which is existing code that is now common with the main disassembler and the debugger disassembl command. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Performance: Remove function tracing from critical allocation functions.Bob Moore2013-01-104-47/+43
| | | | | | | | | | Tracing is no longer needed for many of the low-level function. Removing the trace mechanism from these functions improves performance a small amount, also simplifies the debug trace output. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Performance enhancement for ACPI package objects.Chao Guan2013-01-101-9/+33
| | | | | | | | | | | | | | | This change greatly increases the performance of package objects within the interpreter. It changes the processing of reference counts for packages by optimizing for the most common case where the package subobjects are either integers, strings, or buffers. Increases the performance of the ASLTS test suite by 1.5X. Chao Guan. ACPICA BZ 943. https://www.acpica.org/bugzilla/show_bug.cgi?id=943 Signed-off-by: Chao Guan <chao.guan@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Fix possible memory leak.Jesper Juhl2013-01-101-1/+2
| | | | | | | | | | Ensure cleanup after a memory allocation failure in dsmethod.c. Original Linux change from Jesper Juhl. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* ACPICA: Update initialization codes.Lv Zheng2013-01-101-1/+2
| | | | | | | | | | | This patch decreases 18 lines of 20121018 divergence.diff. This patch updates initialization codes as they are already been updated in ACPICA. This can also help to reduce source code differences between Linux and ACPICA. Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>