Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.17.
  1/******************************************************************************
  2 *
  3 * Name: acconfig.h - Global configuration constants
  4 *
  5 *****************************************************************************/
  6
  7/*
  8 * Copyright (C) 2000 - 2011, Intel Corp.
  9 * All rights reserved.
 10 *
 11 * Redistribution and use in source and binary forms, with or without
 12 * modification, are permitted provided that the following conditions
 13 * are met:
 14 * 1. Redistributions of source code must retain the above copyright
 15 *    notice, this list of conditions, and the following disclaimer,
 16 *    without modification.
 17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
 18 *    substantially similar to the "NO WARRANTY" disclaimer below
 19 *    ("Disclaimer") and any redistribution must be conditioned upon
 20 *    including a substantially similar Disclaimer requirement for further
 21 *    binary redistribution.
 22 * 3. Neither the names of the above-listed copyright holders nor the names
 23 *    of any contributors may be used to endorse or promote products derived
 24 *    from this software without specific prior written permission.
 25 *
 26 * Alternatively, this software may be distributed under the terms of the
 27 * GNU General Public License ("GPL") version 2 as published by the Free
 28 * Software Foundation.
 29 *
 30 * NO WARRANTY
 31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
 34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
 40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 41 * POSSIBILITY OF SUCH DAMAGES.
 42 */
 43
 44#ifndef _ACCONFIG_H
 45#define _ACCONFIG_H
 46
 47/******************************************************************************
 48 *
 49 * Configuration options
 50 *
 51 *****************************************************************************/
 52
 53/*
 54 * ACPI_DEBUG_OUTPUT    - This switch enables all the debug facilities of the
 55 *                        ACPI subsystem.  This includes the DEBUG_PRINT output
 56 *                        statements.  When disabled, all DEBUG_PRINT
 57 *                        statements are compiled out.
 58 *
 59 * ACPI_APPLICATION     - Use this switch if the subsystem is going to be run
 60 *                        at the application level.
 61 *
 62 */
 63
 64/*
 65 * OS name, used for the _OS object.  The _OS object is essentially obsolete,
 66 * but there is a large base of ASL/AML code in existing machines that check
 67 * for the string below.  The use of this string usually guarantees that
 68 * the ASL will execute down the most tested code path.  Also, there is some
 69 * code that will not execute the _OSI method unless _OS matches the string
 70 * below.  Therefore, change this string at your own risk.
 71 */
 72#define ACPI_OS_NAME                    "Microsoft Windows NT"
 73
 74/* Maximum objects in the various object caches */
 75
 76#define ACPI_MAX_STATE_CACHE_DEPTH      96	/* State objects */
 77#define ACPI_MAX_PARSE_CACHE_DEPTH      96	/* Parse tree objects */
 78#define ACPI_MAX_EXTPARSE_CACHE_DEPTH   96	/* Parse tree objects */
 79#define ACPI_MAX_OBJECT_CACHE_DEPTH     96	/* Interpreter operand objects */
 80#define ACPI_MAX_NAMESPACE_CACHE_DEPTH  96	/* Namespace objects */
 81
 82/*
 83 * Should the subsystem abort the loading of an ACPI table if the
 84 * table checksum is incorrect?
 85 */
 86#define ACPI_CHECKSUM_ABORT             FALSE
 87
 88/******************************************************************************
 89 *
 90 * Subsystem Constants
 91 *
 92 *****************************************************************************/
 93
 94/* Version of ACPI supported */
 95
 96#define ACPI_CA_SUPPORT_LEVEL           3
 97
 98/* Maximum count for a semaphore object */
 99
100#define ACPI_MAX_SEMAPHORE_COUNT        256
101
102/* Maximum object reference count (detects object deletion issues) */
103
104#define ACPI_MAX_REFERENCE_COUNT        0x1000
105
106/* Default page size for use in mapping memory for operation regions */
107
108#define ACPI_DEFAULT_PAGE_SIZE          4096	/* Must be power of 2 */
109
110/* owner_id tracking. 8 entries allows for 255 owner_ids */
111
112#define ACPI_NUM_OWNERID_MASKS          8
113
114/* Size of the root table array is increased by this increment */
115
116#define ACPI_ROOT_TABLE_SIZE_INCREMENT  4
117
118/* Maximum number of While() loop iterations before forced abort */
119
120#define ACPI_MAX_LOOP_ITERATIONS        0xFFFF
121
122/* Maximum sleep allowed via Sleep() operator */
123
124#define ACPI_MAX_SLEEP                  2000	/* Two seconds */
125
126/******************************************************************************
127 *
128 * ACPI Specification constants (Do not change unless the specification changes)
129 *
130 *****************************************************************************/
131
132/* Number of distinct GPE register blocks and register width */
133
134#define ACPI_MAX_GPE_BLOCKS             2
135#define ACPI_GPE_REGISTER_WIDTH         8
136
137/* Method info (in WALK_STATE), containing local variables and argumetns */
138
139#define ACPI_METHOD_NUM_LOCALS          8
140#define ACPI_METHOD_MAX_LOCAL           7
141
142#define ACPI_METHOD_NUM_ARGS            7
143#define ACPI_METHOD_MAX_ARG             6
144
145/* Length of _HID, _UID, _CID, and UUID values */
146
147#define ACPI_DEVICE_ID_LENGTH           0x09
148#define ACPI_MAX_CID_LENGTH             48
149#define ACPI_UUID_LENGTH                16
150
151/*
152 * Operand Stack (in WALK_STATE), Must be large enough to contain METHOD_MAX_ARG
153 */
154#define ACPI_OBJ_NUM_OPERANDS           8
155#define ACPI_OBJ_MAX_OPERAND            7
156
157/* Number of elements in the Result Stack frame, can be an arbitrary value */
158
159#define ACPI_RESULTS_FRAME_OBJ_NUM      8
160
161/*
162 * Maximal number of elements the Result Stack can contain,
163 * it may be an arbitray value not exceeding the types of
164 * result_size and result_count (now u8).
165 */
166#define ACPI_RESULTS_OBJ_NUM_MAX        255
167
168/* Names within the namespace are 4 bytes long */
169
170#define ACPI_NAME_SIZE                  4
171#define ACPI_PATH_SEGMENT_LENGTH        5	/* 4 chars for name + 1 char for separator */
172#define ACPI_PATH_SEPARATOR             '.'
173
174/* Sizes for ACPI table headers */
175
176#define ACPI_OEM_ID_SIZE                6
177#define ACPI_OEM_TABLE_ID_SIZE          8
178
179/* Constants used in searching for the RSDP in low memory */
180
181#define ACPI_EBDA_PTR_LOCATION          0x0000040E	/* Physical Address */
182#define ACPI_EBDA_PTR_LENGTH            2
183#define ACPI_EBDA_WINDOW_SIZE           1024
184#define ACPI_HI_RSDP_WINDOW_BASE        0x000E0000	/* Physical Address */
185#define ACPI_HI_RSDP_WINDOW_SIZE        0x00020000
186#define ACPI_RSDP_SCAN_STEP             16
187
188/* Operation regions */
189
190#define ACPI_USER_REGION_BEGIN          0x80
191
192/* Maximum space_ids for Operation Regions */
193
194#define ACPI_MAX_ADDRESS_SPACE          255
195
196/* Array sizes.  Used for range checking also */
197
198#define ACPI_MAX_MATCH_OPCODE           5
199
200/* RSDP checksums */
201
202#define ACPI_RSDP_CHECKSUM_LENGTH       20
203#define ACPI_RSDP_XCHECKSUM_LENGTH      36
204
205/* SMBus and IPMI bidirectional buffer size */
206
207#define ACPI_SMBUS_BUFFER_SIZE          34
208#define ACPI_IPMI_BUFFER_SIZE           66
209
210/* _sx_d and _sx_w control methods */
211
212#define ACPI_NUM_sx_d_METHODS           4
213#define ACPI_NUM_sx_w_METHODS           5
214
215/******************************************************************************
216 *
217 * ACPI AML Debugger
218 *
219 *****************************************************************************/
220
221#define ACPI_DEBUGGER_MAX_ARGS          8	/* Must be max method args + 1 */
222
223#define ACPI_DEBUGGER_COMMAND_PROMPT    '-'
224#define ACPI_DEBUGGER_EXECUTE_PROMPT    '%'
225
226#endif				/* _ACCONFIG_H */