mirror of
https://github.com/acpica/acpica/
synced 2025-01-13 21:09:18 +03:00
ACPI 5.0/iASL: Add new I/O restriction keyword (GPIO descriptors)
Late addition of IoRestrictionNoneAndPreserve. Lin Ming.
This commit is contained in:
parent
a673cc5676
commit
642b20401e
@ -488,6 +488,7 @@ NamePathTail [.]{NameSeg}
|
||||
"IoRestrictionNone" { count (0); return (PARSEOP_IORESTRICT_NONE); }
|
||||
"IoRestrictionInputOnly" { count (0); return (PARSEOP_IORESTRICT_IN); }
|
||||
"IoRestrictionOutputOnly" { count (0); return (PARSEOP_IORESTRICT_OUT); }
|
||||
"IoRestrictionNoneAndPreserve" { count (0); return (PARSEOP_IORESTRICT_PRESERVE); }
|
||||
|
||||
/* LockRuleKeyword: Global Lock use for Field Operator */
|
||||
|
||||
|
@ -321,6 +321,7 @@ void * AslLocalAllocate (unsigned int Size);
|
||||
%token <i> PARSEOP_IORESTRICT_IN
|
||||
%token <i> PARSEOP_IORESTRICT_NONE
|
||||
%token <i> PARSEOP_IORESTRICT_OUT
|
||||
%token <i> PARSEOP_IORESTRICT_PRESERVE
|
||||
%token <i> PARSEOP_IRQ
|
||||
%token <i> PARSEOP_IRQNOFLAGS
|
||||
%token <i> PARSEOP_LAND
|
||||
@ -2347,6 +2348,7 @@ IoRestrictionKeyword
|
||||
: PARSEOP_IORESTRICT_IN {$$ = TrCreateLeafNode (PARSEOP_IORESTRICT_IN);}
|
||||
| PARSEOP_IORESTRICT_OUT {$$ = TrCreateLeafNode (PARSEOP_IORESTRICT_OUT);}
|
||||
| PARSEOP_IORESTRICT_NONE {$$ = TrCreateLeafNode (PARSEOP_IORESTRICT_NONE);}
|
||||
| PARSEOP_IORESTRICT_PRESERVE {$$ = TrCreateLeafNode (PARSEOP_IORESTRICT_PRESERVE);}
|
||||
;
|
||||
|
||||
LockRuleKeyword
|
||||
|
@ -330,6 +330,7 @@ const ASL_MAPPING_ENTRY AslKeywordMapping [] =
|
||||
/* IORESTRICT_IN */ OP_TABLE_ENTRY (AML_BYTE_OP, 1, 0, 0),
|
||||
/* IORESTRICT_NONE */ OP_TABLE_ENTRY (AML_BYTE_OP, 0, 0, 0),
|
||||
/* IORESTRICT_OUT */ OP_TABLE_ENTRY (AML_BYTE_OP, 2, 0, 0),
|
||||
/* IORESTRICT_PRESERVE */ OP_TABLE_ENTRY (AML_BYTE_OP, 3, 0, 0),
|
||||
/* IRQ */ OP_TABLE_ENTRY (AML_DEFAULT_ARG_OP, 0, 0, 0),
|
||||
/* IRQNOFLAGS */ OP_TABLE_ENTRY (AML_DEFAULT_ARG_OP, 0, 0, 0),
|
||||
/* LAND */ OP_TABLE_ENTRY (AML_LAND_OP, 0, 0, ACPI_BTYPE_INTEGER),
|
||||
|
@ -264,7 +264,7 @@ const char *AcpiGbl_IorDecode[] =
|
||||
"IoRestrictionNone",
|
||||
"IoRestrictionInputOnly",
|
||||
"IoRestrictionOutputOnly",
|
||||
"/* UNKNOWN IoRestriction */"
|
||||
"IoRestrictionNoneAndPreserve"
|
||||
};
|
||||
|
||||
const char *AcpiGbl_DtsDecode[] =
|
||||
|
@ -524,9 +524,10 @@ typedef struct acpi_resource_gpio
|
||||
|
||||
/* Values for IoRestriction field above */
|
||||
|
||||
#define ACPI_IO_INPUT_OUTPUT 0
|
||||
#define ACPI_IO_INPUT_ONLY 1
|
||||
#define ACPI_IO_OUTPUT_ONLY 2
|
||||
#define ACPI_IO_RESTRICT_NONE 0
|
||||
#define ACPI_IO_RESTRICT_INPUT 1
|
||||
#define ACPI_IO_RESTRICT_OUTPUT 2
|
||||
#define ACPI_IO_RESTRICT_NONE_PRESERVE 3
|
||||
|
||||
|
||||
/* Common structure for I2C, SPI, and UART serial descriptors */
|
||||
|
@ -160,7 +160,8 @@ const AH_ASL_KEYWORD AslKeywordInfo[] =
|
||||
{"IoDecodeKeyword", "I/O Decoding - IO Resource Descriptor",
|
||||
":= Decode16 | Decode10"},
|
||||
{"IoRestrictionKeyword", "I/O Restriction - GPIO Resource Descriptors",
|
||||
":= IoRestrictionNone | IoRestrictionInputOnly | IoRestrictionOutputOnly"},
|
||||
":= IoRestrictionNone | IoRestrictionInputOnly | "
|
||||
"IoRestrictionOutputOnly | IoRestrictionNoneAndPreserve"},
|
||||
{"LockRuleKeyword", "Global Lock use for Field Operator",
|
||||
":= Lock | NoLock"},
|
||||
{"MatchOpKeyword", "Types for Match Operator",
|
||||
|
Loading…
Reference in New Issue
Block a user