Merge branch 'acpica'

Merge ACPICA material for 5.19-rc1:

 - Add support for the Windows 11 _OSI string (Mario Limonciello)

 - Add the CFMWS subtable to the CEDT table (Lawrence Hileman).

 - iASL: NHLT: Treat Terminator as specific_config (Piotr Maziarz).

 - iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint
   Descriptor (Piotr Maziarz).

 - iASL: NHLT: Rename linux specific strucures to device_info (Piotr
   Maziarz).

 - Add new ACPI 6.4 semantics to Load() and LoadTable() (Bob Moore).

 - Clean up double word in comment (Tom Rix).

 - Update copyright notices to the year 2022 (Bob Moore).

 - Remove some tabs and // comments - automated cleanup (Bob Moore).

 - Replace zero-length array with flexible-array member (Gustavo A. R.
   Silva).

 - Interpreter: Add units to time variable names (Paul Menzel).

 - Add support for ARM Performance Monitoring Unit Table (Besar
   Wicaksono).

 - Inform users about ACPI spec violation related to sleep length (Paul
   Menzel).

 - iASL/MADT: Add OEM-defined subtable (Bob Moore).

 - Interpreter: Fix some typo mistakes (Selvarasu Ganesan).

 - Updates for revision E.d of IORT (Shameer Kolothum).

 - Use ACPI_FORMAT_UINT64 for 64-bit output (Bob Moore).

 - Update version to 20220331 (Bob Moore).

* acpica: (21 commits)
  Revert "ACPICA: executer/exsystem: Warn about sleeps greater than 10 ms"
  ACPICA: Update version to 20220331
  ACPICA: exsystem.c: Use ACPI_FORMAT_UINT64 for 64-bit output
  ACPICA: IORT: Updates for revision E.d
  ACPICA: executer/exsystem: Fix some typo mistakes
  ACPICA: iASL/MADT: Add OEM-defined subtable
  ACPICA: executer/exsystem: Warn about sleeps greater than 10 ms
  ACPICA: executer/exsystem: Inform users about ACPI spec violation
  ACPICA: Add support for ARM Performance Monitoring Unit Table.
  ACPICA: executer/exsystem: Add units to time variable names
  ACPICA: Headers: Replace zero-length array with flexible-array member
  ACPICA: Removed some tabs and // comments
  ACPICA: Update copyright notices to the year 2022
  ACPICA: Clean up double word in comment
  ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator
  ACPICA: Add new ACPI 6.4 semantics to the Load() operator
  ACPICA: iASL: NHLT: Rename linux specific strucures to device_info
  ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor
  ACPICA: iASL: NHLT: Treat Terminator as specific_config
  ACPICA: Add the subtable CFMWS to the CEDT table
  ...
This commit is contained in:
Rafael J. Wysocki 2022-05-23 18:16:42 +02:00
commit ec1ff61ee2
175 changed files with 412 additions and 266 deletions

View file

@ -3,7 +3,7 @@
*
* Module Name: acapps - common include for ACPI applications/tools
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -17,7 +17,7 @@
/* Common info for tool signons */
#define ACPICA_NAME "Intel ACPI Component Architecture"
#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2021 Intel Corporation"
#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2022 Intel Corporation"
#if ACPI_MACHINE_WIDTH == 64
#define ACPI_WIDTH " (64-bit version)"

View file

@ -3,7 +3,7 @@
*
* Name: accommon.h - Common include files for generation of ACPICA source
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: acapps - common include for ACPI applications/tools
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acdebug.h - ACPI/AML debugger
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acdispat.h - dispatcher (parser to interpreter interface)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acevents.h - Event subcomponent prototypes and defines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acglobal.h - Declarations for global variables
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: achware.h -- hardware specific interfaces
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acinterp.h - Interpreter subcomponent prototypes and defines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: aclocal.h - Internal data types used across the ACPI subsystem
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acmacros.h - C macros for the entire subsystem.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acnamesp.h - Namespace subcomponent prototypes and defines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acobject.h - Definition of union acpi_operand_object (Internal object only)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acopcode.h - AML opcode information for the AML parser and interpreter
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: acparser.h - AML Parser subcomponent prototypes and defines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acpredef - Information table for ACPI predefined methods and objects
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acresrc.h - Resource Manager function prototypes
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acstruct.h - Internal structs
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: actables.h - ACPI table management
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: acutils.h -- prototypes for the common (subsystem-wide) procedures
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -5,7 +5,7 @@
* Declarations and definitions contained herein are derived
* directly from the ACPI specification.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: amlresrc.h - AML resource descriptors
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dbhistry - debugger HISTORY command
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: dsargs - Support for execution of dynamic arguments for static
* objects (regions, fields, buffer fields, etc.)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: dscontrol - Support for execution control opcodes -
* if/else/while/return
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsdebug - Parser/Interpreter interface - debugging
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsfield - Dispatcher field routines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsinit - Object initialization namespace walk
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsmethod - Parser/Interpreter interface - control method parsing
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsobject - Dispatcher object management routines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dsopcode - Dispatcher support for regions and fields
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dspkginit - Completion of deferred package initialization
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: dswexec - Dispatcher method execution callbacks;
* dispatch to interpreter.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -30,7 +30,7 @@ static acpi_execute_op acpi_gbl_op_type_dispatch[] = {
acpi_ex_opcode_0A_0T_1R,
acpi_ex_opcode_1A_0T_0R,
acpi_ex_opcode_1A_0T_1R,
acpi_ex_opcode_1A_1T_0R,
NULL, /* Was: acpi_ex_opcode_1A_0T_0R (Was for Load operator) */
acpi_ex_opcode_1A_1T_1R,
acpi_ex_opcode_2A_0T_0R,
acpi_ex_opcode_2A_0T_1R,

View file

@ -3,7 +3,7 @@
*
* Module Name: dswload - Dispatcher first pass namespace load callbacks
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dswload2 - Dispatcher second pass namespace load callbacks
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dswscope - Scope stack manipulation
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: dswstate - Dispatcher parse tree walk management routines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evevent - Fixed Event handling and dispatch
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evglock - Global Lock support
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evgpe - General Purpose Event handling and dispatch
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evgpeblk - GPE block creation and initialization.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evgpeinit - System GPE initialization and update
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evgpeutil - GPE utilities
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evhandler - Support for Address Space handlers
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evmisc - Miscellaneous event manager support functions
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evregion - Operation Region support
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evrgnini- ACPI address_space (op_region) init
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evxface - External interfaces for ACPI events
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evxfevnt - External Interfaces, ACPI event disable/enable
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: evxfgpe - External Interfaces for General Purpose Events (GPEs)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: evxfregn - External Interfaces, ACPI Operation Regions and
* Address Spaces.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exconcat - Concatenate-type AML operators
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exconfig - Namespace reconfiguration (Load/Unload opcodes)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -87,11 +87,21 @@ acpi_ex_load_table_op(struct acpi_walk_state *walk_state,
struct acpi_namespace_node *parent_node;
struct acpi_namespace_node *start_node;
struct acpi_namespace_node *parameter_node = NULL;
union acpi_operand_object *return_obj;
union acpi_operand_object *ddb_handle;
u32 table_index;
ACPI_FUNCTION_TRACE(ex_load_table_op);
/* Create the return object */
return_obj = acpi_ut_create_integer_object((u64)0);
if (!return_obj) {
return_ACPI_STATUS(AE_NO_MEMORY);
}
*return_desc = return_obj;
/* Find the ACPI table in the RSDT/XSDT */
acpi_ex_exit_interpreter();
@ -106,12 +116,6 @@ acpi_ex_load_table_op(struct acpi_walk_state *walk_state,
/* Table not found, return an Integer=0 and AE_OK */
ddb_handle = acpi_ut_create_integer_object((u64) 0);
if (!ddb_handle) {
return_ACPI_STATUS(AE_NO_MEMORY);
}
*return_desc = ddb_handle;
return_ACPI_STATUS(AE_OK);
}
@ -198,7 +202,13 @@ acpi_ex_load_table_op(struct acpi_walk_state *walk_state,
}
}
*return_desc = ddb_handle;
/* Remove the reference to ddb_handle created by acpi_ex_add_table above */
acpi_ut_remove_reference(ddb_handle);
/* Return -1 (non-zero) indicates success */
return_obj->integer.value = 0xFFFFFFFFFFFFFFFF;
return_ACPI_STATUS(status);
}
@ -249,7 +259,7 @@ acpi_ex_region_read(union acpi_operand_object *obj_desc, u32 length, u8 *buffer)
*
* PARAMETERS: obj_desc - Region or Buffer/Field where the table will be
* obtained
* target - Where a handle to the table will be stored
* target - Where the status of the load will be stored
* walk_state - Current state
*
* RETURN: Status
@ -278,6 +288,20 @@ acpi_ex_load_op(union acpi_operand_object *obj_desc,
ACPI_FUNCTION_TRACE(ex_load_op);
if (target->common.descriptor_type == ACPI_DESC_TYPE_NAMED) {
target =
acpi_ns_get_attached_object(ACPI_CAST_PTR
(struct acpi_namespace_node,
target));
}
if (target->common.type != ACPI_TYPE_INTEGER) {
ACPI_EXCEPTION((AE_INFO, AE_TYPE,
"Type not integer: %X\n", target->common.type));
return_ACPI_STATUS(AE_AML_OPERAND_TYPE);
}
target->integer.value = 0;
/* Source Object can be either an op_region or a Buffer/Field */
switch (obj_desc->common.type) {
@ -430,9 +454,6 @@ acpi_ex_load_op(union acpi_operand_object *obj_desc,
*/
status = acpi_ex_add_table(table_index, &ddb_handle);
if (ACPI_FAILURE(status)) {
/* On error, table_ptr was deallocated above */
return_ACPI_STATUS(status);
}
@ -442,21 +463,13 @@ acpi_ex_load_op(union acpi_operand_object *obj_desc,
acpi_ns_initialize_objects();
acpi_ex_enter_interpreter();
/* Store the ddb_handle into the Target operand */
status = acpi_ex_store(ddb_handle, target, walk_state);
if (ACPI_FAILURE(status)) {
(void)acpi_ex_unload_table(ddb_handle);
/* table_ptr was deallocated above */
acpi_ut_remove_reference(ddb_handle);
return_ACPI_STATUS(status);
}
/* Remove the reference by added by acpi_ex_store above */
/* Remove the reference to ddb_handle created by acpi_ex_add_table above */
acpi_ut_remove_reference(ddb_handle);
/* Return -1 (non-zero) indicates success */
target->integer.value = 0xFFFFFFFFFFFFFFFF;
return_ACPI_STATUS(status);
}

View file

@ -3,7 +3,7 @@
*
* Module Name: exconvrt - Object conversion routines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: excreate - Named object creation
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exdebug - Support for stores to the AML Debug Object
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exdump - Interpreter debug output routines
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exfield - AML execution - field_unit read/write
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exfldio - Aml Field I/O
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -104,7 +104,7 @@ acpi_ex_setup_region(union acpi_operand_object *obj_desc,
#ifdef ACPI_UNDER_DEVELOPMENT
/*
* If the Field access is any_acc, we can now compute the optimal
* access (because we know know the length of the parent region)
* access (because we know the length of the parent region)
*/
if (!(obj_desc->common.flags & AOPOBJ_DATA_VALID)) {
if (ACPI_FAILURE(status)) {

View file

@ -3,7 +3,7 @@
*
* Module Name: exmisc - ACPI AML (p-code) execution - specific opcodes
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exmutex - ASL Mutex Acquire/Release functions
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exnames - interpreter/scanner name load/execute
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exoparg1 - AML execution - opcodes with 1 argument
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -163,6 +163,7 @@ acpi_status acpi_ex_opcode_1A_0T_0R(struct acpi_walk_state *walk_state)
return_ACPI_STATUS(status);
}
#ifdef _OBSOLETE_CODE /* Was originally used for Load() operator */
/*******************************************************************************
*
* FUNCTION: acpi_ex_opcode_1A_1T_0R
@ -187,10 +188,12 @@ acpi_status acpi_ex_opcode_1A_1T_0R(struct acpi_walk_state *walk_state)
/* Examine the AML opcode */
switch (walk_state->opcode) {
#ifdef _OBSOLETE_CODE
case AML_LOAD_OP:
status = acpi_ex_load_op(operand[0], operand[1], walk_state);
break;
#endif
default: /* Unknown opcode */
@ -204,6 +207,7 @@ acpi_status acpi_ex_opcode_1A_1T_0R(struct acpi_walk_state *walk_state)
return_ACPI_STATUS(status);
}
#endif
/*******************************************************************************
*
@ -215,6 +219,8 @@ acpi_status acpi_ex_opcode_1A_1T_0R(struct acpi_walk_state *walk_state)
*
* DESCRIPTION: Execute opcode with one argument, one target, and a
* return value.
* January 2022: Added Load operator, with new ACPI 6.4
* semantics.
*
******************************************************************************/
@ -239,6 +245,7 @@ acpi_status acpi_ex_opcode_1A_1T_1R(struct acpi_walk_state *walk_state)
case AML_FIND_SET_LEFT_BIT_OP:
case AML_FIND_SET_RIGHT_BIT_OP:
case AML_FROM_BCD_OP:
case AML_LOAD_OP:
case AML_TO_BCD_OP:
case AML_CONDITIONAL_REF_OF_OP:
@ -338,6 +345,20 @@ acpi_status acpi_ex_opcode_1A_1T_1R(struct acpi_walk_state *walk_state)
}
break;
case AML_LOAD_OP: /* Result1 = Load (Operand[0], Result1) */
return_desc->integer.value = 0;
status =
acpi_ex_load_op(operand[0], return_desc,
walk_state);
if (ACPI_SUCCESS(status)) {
/* Return -1 (non-zero) indicates success */
return_desc->integer.value = 0xFFFFFFFFFFFFFFFF;
}
break;
case AML_TO_BCD_OP: /* to_bcd (Operand, Result) */
return_desc->integer.value = 0;

View file

@ -3,7 +3,7 @@
*
* Module Name: exoparg2 - AML execution - opcodes with 2 arguments
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exoparg3 - AML execution - opcodes with 3 arguments
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exoparg6 - AML execution - opcodes with 6 arguments
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exprep - ACPI AML field prep utilities
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exregion - ACPI default op_region (address space) handlers
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exresnte - AML Interpreter object resolution
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exresolv - AML Interpreter object resolution
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exresop - AML Interpreter operand/object resolution
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exserial - field_unit support for serial address spaces
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exstore - AML Interpreter object store support
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: exstoren - AML Interpreter object store support,
* Store to Node (namespace object)
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exstorob - AML object store support, store to object
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exsystem - Interface to OS services
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/
@ -107,7 +107,7 @@ acpi_status acpi_ex_system_wait_mutex(acpi_mutex mutex, u16 timeout)
*
* FUNCTION: acpi_ex_system_do_stall
*
* PARAMETERS: how_long - The amount of time to stall,
* PARAMETERS: how_long_us - The amount of time to stall,
* in microseconds
*
* RETURN: Status
@ -120,24 +120,29 @@ acpi_status acpi_ex_system_wait_mutex(acpi_mutex mutex, u16 timeout)
*
******************************************************************************/
acpi_status acpi_ex_system_do_stall(u32 how_long)
acpi_status acpi_ex_system_do_stall(u32 how_long_us)
{
acpi_status status = AE_OK;
ACPI_FUNCTION_ENTRY();
if (how_long > 255) { /* 255 microseconds */
if (how_long_us > 255) {
/*
* Longer than 255 usec, this is an error
* Longer than 255 microseconds, this is an error
*
* (ACPI specifies 100 usec as max, but this gives some slack in
* order to support existing BIOSs)
*/
ACPI_ERROR((AE_INFO,
"Time parameter is too large (%u)", how_long));
"Time parameter is too large (%u)", how_long_us));
status = AE_AML_OPERAND_VALUE;
} else {
acpi_os_stall(how_long);
if (how_long_us > 100) {
ACPI_WARNING((AE_INFO,
"Time parameter %u us > 100 us violating ACPI spec, please fix the firmware.",
how_long_us));
}
acpi_os_stall(how_long_us);
}
return (status);
@ -147,7 +152,7 @@ acpi_status acpi_ex_system_do_stall(u32 how_long)
*
* FUNCTION: acpi_ex_system_do_sleep
*
* PARAMETERS: how_long - The amount of time to sleep,
* PARAMETERS: how_long_ms - The amount of time to sleep,
* in milliseconds
*
* RETURN: None
@ -156,7 +161,7 @@ acpi_status acpi_ex_system_do_stall(u32 how_long)
*
******************************************************************************/
acpi_status acpi_ex_system_do_sleep(u64 how_long)
acpi_status acpi_ex_system_do_sleep(u64 how_long_ms)
{
ACPI_FUNCTION_ENTRY();
@ -168,11 +173,11 @@ acpi_status acpi_ex_system_do_sleep(u64 how_long)
* For compatibility with other ACPI implementations and to prevent
* accidental deep sleeps, limit the sleep time to something reasonable.
*/
if (how_long > ACPI_MAX_SLEEP) {
how_long = ACPI_MAX_SLEEP;
if (how_long_ms > ACPI_MAX_SLEEP) {
how_long_ms = ACPI_MAX_SLEEP;
}
acpi_os_sleep(how_long);
acpi_os_sleep(how_long_ms);
/* And now we must get the interpreter again */

View file

@ -3,7 +3,7 @@
*
* Module Name: extrace - Support for interpreter execution tracing
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: exutils - interpreter/scanner utilities
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: hwacpi - ACPI Hardware Initialization/Mode Interface
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Name: hwesleep.c - ACPI Hardware Sleep/Wake Support functions for the
* extended FADT-V5 sleep registers.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: hwgpe - Low level GPE enable/disable/clear functions
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -446,7 +446,7 @@ struct acpi_bit_register_info *acpi_hw_get_bit_register_info(u32 register_id)
* RETURN: Status
*
* DESCRIPTION: Write the PM1 A/B control registers. These registers are
* different than than the PM1 A/B status and enable registers
* different than the PM1 A/B status and enable registers
* in that different values can be written to the A/B registers.
* Most notably, the SLP_TYP bits can be different, as per the
* values returned from the _Sx predefined methods.

View file

@ -4,7 +4,7 @@
* Name: hwsleep.c - ACPI Hardware Sleep/Wake Support functions for the
* original/legacy sleep/PM registers.
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: hwtimer.c - ACPI Power Management Timer Interface
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: hwvalid - I/O request validation
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: hwxface - Public ACPICA hardware interfaces
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Name: hwxfsleep.c - ACPI Hardware Sleep/Wake External Interfaces
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsarguments - Validation of args for ACPI predefined methods
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: nsconvert - Object conversions for objects returned by
* predefined methods
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsdump - table dumping routines for debug
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsdump - table dumping routines for debug
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsinit - namespace initialization
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsload - namespace loading/expanding/contracting procedures
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsparse - namespace interface to AML parser
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nspredef - Validation of ACPI predefined methods and objects
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsprepkg - Validation of package objects for predefined names
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nsrepair - Repair for objects returned by predefined methods
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: nsrepair2 - Repair for objects returned by specific
* predefined methods
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -4,7 +4,7 @@
* Module Name: nsutils - Utilities for accessing ACPI namespace, accessing
* parents and siblings and Scope manipulation
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

View file

@ -3,7 +3,7 @@
*
* Module Name: nswalk - Functions for walking the ACPI namespace
*
* Copyright (C) 2000 - 2021, Intel Corp.
* Copyright (C) 2000 - 2022, Intel Corp.
*
*****************************************************************************/

Some files were not shown because too many files have changed in this diff Show more