1 /*******************************************************************************
3 * Module Name: utresdecode - Resource descriptor keyword strings
5 ******************************************************************************/
8 * Copyright (C) 2000 - 2018, Intel Corp.
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
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.
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.
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.
44 #include <acpi/acpi.h>
48 #define _COMPONENT ACPI_UTILITIES
49 ACPI_MODULE_NAME("utresdecode")
51 #if defined (ACPI_DEBUG_OUTPUT) || \
52 defined (ACPI_DISASSEMBLER) || \
53 defined (ACPI_DEBUGGER)
55 * Strings used to decode resource descriptors.
56 * Used by both the disassembler and the debugger resource dump routines
58 const char *acpi_gbl_bm_decode
[] = {
63 const char *acpi_gbl_config_decode
[] = {
64 "0 - Good Configuration",
65 "1 - Acceptable Configuration",
66 "2 - Suboptimal Configuration",
67 "3 - ***Invalid Configuration***",
70 const char *acpi_gbl_consume_decode
[] = {
75 const char *acpi_gbl_dec_decode
[] = {
80 const char *acpi_gbl_he_decode
[] = {
85 const char *acpi_gbl_io_decode
[] = {
90 const char *acpi_gbl_ll_decode
[] = {
97 const char *acpi_gbl_max_decode
[] = {
102 const char *acpi_gbl_mem_decode
[] = {
109 const char *acpi_gbl_min_decode
[] = {
114 const char *acpi_gbl_mtp_decode
[] = {
115 "AddressRangeMemory",
116 "AddressRangeReserved",
121 const char *acpi_gbl_rng_decode
[] = {
128 const char *acpi_gbl_rw_decode
[] = {
133 const char *acpi_gbl_shr_decode
[] = {
136 "ExclusiveAndWake", /* ACPI 5.0 */
137 "SharedAndWake" /* ACPI 5.0 */
140 const char *acpi_gbl_siz_decode
[] = {
147 const char *acpi_gbl_trs_decode
[] = {
152 const char *acpi_gbl_ttp_decode
[] = {
157 const char *acpi_gbl_typ_decode
[] = {
164 const char *acpi_gbl_ppc_decode
[] = {
171 const char *acpi_gbl_ior_decode
[] = {
173 "IoRestrictionInputOnly",
174 "IoRestrictionOutputOnly",
175 "IoRestrictionNoneAndPreserve"
178 const char *acpi_gbl_dts_decode
[] = {
187 /* GPIO connection type */
189 const char *acpi_gbl_ct_decode
[] = {
194 /* Serial bus type */
196 const char *acpi_gbl_sbt_decode
[] = {
197 "/* UNKNOWN serial bus type */",
203 /* I2C serial bus access mode */
205 const char *acpi_gbl_am_decode
[] = {
206 "AddressingMode7Bit",
207 "AddressingMode10Bit"
210 /* I2C serial bus slave mode */
212 const char *acpi_gbl_sm_decode
[] = {
213 "ControllerInitiated",
217 /* SPI serial bus wire mode */
219 const char *acpi_gbl_wm_decode
[] = {
224 /* SPI serial clock phase */
226 const char *acpi_gbl_cph_decode
[] = {
231 /* SPI serial bus clock polarity */
233 const char *acpi_gbl_cpo_decode
[] = {
238 /* SPI serial bus device polarity */
240 const char *acpi_gbl_dp_decode
[] = {
245 /* UART serial bus endian */
247 const char *acpi_gbl_ed_decode
[] = {
252 /* UART serial bus bits per byte */
254 const char *acpi_gbl_bpb_decode
[] = {
260 "/* UNKNOWN Bits per byte */",
261 "/* UNKNOWN Bits per byte */",
262 "/* UNKNOWN Bits per byte */"
265 /* UART serial bus stop bits */
267 const char *acpi_gbl_sb_decode
[] = {
270 "StopBitsOnePlusHalf",
274 /* UART serial bus flow control */
276 const char *acpi_gbl_fc_decode
[] = {
278 "FlowControlHardware",
280 "/* UNKNOWN flow control keyword */"
283 /* UART serial bus parity type */
285 const char *acpi_gbl_pt_decode
[] = {
291 "/* UNKNOWN parity keyword */",
292 "/* UNKNOWN parity keyword */",
293 "/* UNKNOWN parity keyword */"
296 /* pin_config type */
298 const char *acpi_gbl_ptyp_decode
[] = {
304 "Bias High Impedance",
312 "Input Schmitt Trigger",