summaryrefslogtreecommitdiff
path: root/source/include/amlresrc.h
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2017-05-31 22:40:24 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2017-05-31 22:40:24 +0000
commitc457a42be4fca72c51fdca569271b62213d01a37 (patch)
tree0ce624183fb74a6ec5d2260e6904585800e8c4d8 /source/include/amlresrc.h
parent65c600c804e5a81af3a34d461312027000738994 (diff)
Notes
Diffstat (limited to 'source/include/amlresrc.h')
-rw-r--r--source/include/amlresrc.h118
1 files changed, 118 insertions, 0 deletions
diff --git a/source/include/amlresrc.h b/source/include/amlresrc.h
index aee0a05268d2..5f0bcc4bf5bb 100644
--- a/source/include/amlresrc.h
+++ b/source/include/amlresrc.h
@@ -174,6 +174,7 @@
#define ACPI_RESTAG_DRIVESTRENGTH "_DRS"
#define ACPI_RESTAG_ENDIANNESS "_END"
#define ACPI_RESTAG_FLOWCONTROL "_FLC"
+#define ACPI_RESTAG_FUNCTION "_FUN"
#define ACPI_RESTAG_GRANULARITY "_GRA"
#define ACPI_RESTAG_INTERRUPT "_INT"
#define ACPI_RESTAG_INTERRUPTLEVEL "_LL_" /* ActiveLo(1), ActiveHi(0) */
@@ -193,6 +194,8 @@
#define ACPI_RESTAG_PHASE "_PHA"
#define ACPI_RESTAG_PIN "_PIN"
#define ACPI_RESTAG_PINCONFIG "_PPI"
+#define ACPI_RESTAG_PINCONFIG_TYPE "_TYP"
+#define ACPI_RESTAG_PINCONFIG_VALUE "_VAL"
#define ACPI_RESTAG_POLARITY "_POL"
#define ACPI_RESTAG_REGISTERBITOFFSET "_RBO"
#define ACPI_RESTAG_REGISTERBITWIDTH "_RBW"
@@ -636,6 +639,116 @@ typedef struct aml_resource_uart_serialbus
#define AML_RESOURCE_UART_TYPE_REVISION 1 /* ACPI 5.0 */
#define AML_RESOURCE_UART_MIN_DATA_LEN 10
+typedef struct aml_resource_pin_function
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT8 PinConfig;
+ UINT16 FunctionNumber;
+ UINT16 PinTableOffset;
+ UINT8 ResSourceIndex;
+ UINT16 ResSourceOffset;
+ UINT16 VendorOffset;
+ UINT16 VendorLength;
+ /*
+ * Optional fields follow immediately:
+ * 1) PIN list (Words)
+ * 2) Resource Source String
+ * 3) Vendor Data bytes
+ */
+
+} AML_RESOURCE_PIN_FUNCTION;
+
+#define AML_RESOURCE_PIN_FUNCTION_REVISION 1 /* ACPI 6.2 */
+
+typedef struct aml_resource_pin_config
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT8 PinConfigType;
+ UINT32 PinConfigValue;
+ UINT16 PinTableOffset;
+ UINT8 ResSourceIndex;
+ UINT16 ResSourceOffset;
+ UINT16 VendorOffset;
+ UINT16 VendorLength;
+ /*
+ * Optional fields follow immediately:
+ * 1) PIN list (Words)
+ * 2) Resource Source String
+ * 3) Vendor Data bytes
+ */
+
+} AML_RESOURCE_PIN_CONFIG;
+
+#define AML_RESOURCE_PIN_CONFIG_REVISION 1 /* ACPI 6.2 */
+
+typedef struct aml_resource_pin_group
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT16 PinTableOffset;
+ UINT16 LabelOffset;
+ UINT16 VendorOffset;
+ UINT16 VendorLength;
+ /*
+ * Optional fields follow immediately:
+ * 1) PIN list (Words)
+ * 2) Resource Label String
+ * 3) Vendor Data bytes
+ */
+
+} AML_RESOURCE_PIN_GROUP;
+
+#define AML_RESOURCE_PIN_GROUP_REVISION 1 /* ACPI 6.2 */
+
+typedef struct aml_resource_pin_group_function
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT16 FunctionNumber;
+ UINT8 ResSourceIndex;
+ UINT16 ResSourceOffset;
+ UINT16 ResSourceLabelOffset;
+ UINT16 VendorOffset;
+ UINT16 VendorLength;
+ /*
+ * Optional fields follow immediately:
+ * 1) Resource Source String
+ * 2) Resource Source Label String
+ * 3) Vendor Data bytes
+ */
+
+} AML_RESOURCE_PIN_GROUP_FUNCTION;
+
+#define AML_RESOURCE_PIN_GROUP_FUNCTION_REVISION 1 /* ACPI 6.2 */
+
+typedef struct aml_resource_pin_group_config
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT8 PinConfigType;
+ UINT32 PinConfigValue;
+ UINT8 ResSourceIndex;
+ UINT16 ResSourceOffset;
+ UINT16 ResSourceLabelOffset;
+ UINT16 VendorOffset;
+ UINT16 VendorLength;
+ /*
+ * Optional fields follow immediately:
+ * 1) Resource Source String
+ * 2) Resource Source Label String
+ * 3) Vendor Data bytes
+ */
+
+} AML_RESOURCE_PIN_GROUP_CONFIG;
+
+#define AML_RESOURCE_PIN_GROUP_CONFIG_REVISION 1 /* ACPI 6.2 */
/* restore default alignment */
@@ -680,6 +793,11 @@ typedef union aml_resource
AML_RESOURCE_SPI_SERIALBUS SpiSerialBus;
AML_RESOURCE_UART_SERIALBUS UartSerialBus;
AML_RESOURCE_COMMON_SERIALBUS CommonSerialBus;
+ AML_RESOURCE_PIN_FUNCTION PinFunction;
+ AML_RESOURCE_PIN_CONFIG PinConfig;
+ AML_RESOURCE_PIN_GROUP PinGroup;
+ AML_RESOURCE_PIN_GROUP_FUNCTION PinGroupFunction;
+ AML_RESOURCE_PIN_GROUP_CONFIG PinGroupConfig;
/* Utility overlays */