diff options
author | Jung-uk Kim <jkim@FreeBSD.org> | 2011-02-11 22:56:14 +0000 |
---|---|---|
committer | Jung-uk Kim <jkim@FreeBSD.org> | 2011-02-11 22:56:14 +0000 |
commit | 19834a6cfd047752c68451e6ded1a2950f6b1f44 (patch) | |
tree | 9d61cc356dc91b33ff673ba89e884aab6cbb55be /compiler/dtcompiler.h | |
parent | 8f74426ca5911529047348ff4731e7f5fbb49c67 (diff) |
Notes
Diffstat (limited to 'compiler/dtcompiler.h')
-rw-r--r-- | compiler/dtcompiler.h | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/compiler/dtcompiler.h b/compiler/dtcompiler.h index 6b969d5a45ce..a344a5ba2fb4 100644 --- a/compiler/dtcompiler.h +++ b/compiler/dtcompiler.h @@ -73,6 +73,7 @@ #define DT_FIELD_TYPE_UUID 7 #define DT_FIELD_TYPE_UNICODE 8 #define DT_FIELD_TYPE_DEVICE_PATH 9 +#define DT_FIELD_TYPE_LABEL 10 /* @@ -80,13 +81,15 @@ */ typedef struct dt_field { - char *Name; - char *Value; - struct dt_field *Next; + char *Name; /* Field name (from name : value) */ + char *Value; /* Field value (from name : value) */ + struct dt_field *Next; /* Next field */ + struct dt_field *NextLabel; /* If field is a label, next label */ UINT32 Line; /* Line number for this field */ UINT32 ByteOffset; /* Offset in source file for field */ UINT32 NameColumn; /* Start column for field name */ UINT32 Column; /* Start column for field value */ + UINT32 TableOffset;/* Binary offset within ACPI table */ UINT8 Flags; } DT_FIELD; @@ -131,6 +134,14 @@ DT_EXTERN DT_SUBTABLE DT_INIT_GLOBAL (*Gbl_RootTable, NULL); DT_EXTERN DT_SUBTABLE DT_INIT_GLOBAL (*Gbl_SubtableStack, NULL); +/* List for defined labels */ + +DT_EXTERN DT_FIELD DT_INIT_GLOBAL (*Gbl_LabelList, NULL); + +/* Current offset within the binary output table */ + +DT_EXTERN UINT32 DT_INIT_GLOBAL (Gbl_CurrentTableOffset, 0); + /* dtcompiler - main module */ @@ -207,6 +218,17 @@ DtGetParentSubtable ( DT_SUBTABLE *Subtable); +/* dtexpress - Integer expressions and labels */ + +UINT64 +DtResolveIntegerExpression ( + DT_FIELD *Field); + +void +DtDetectAllLabels ( + DT_FIELD *FieldList); + + /* dtfield - Compile individual fields within a table */ void @@ -391,6 +413,10 @@ ACPI_STATUS DtCompileXsdt ( void **PFieldList); +ACPI_DMTABLE_INFO * +DtGetGenericTableInfo ( + char *Name); + /* ACPI Table templates */ extern const unsigned char TemplateAsf[]; |