From c82ced94e79aeee3701a92fdc0e4df778e106266 Mon Sep 17 00:00:00 2001 From: Kamala Narasimhan Date: Wed, 4 Mar 2009 13:43:32 -0500 Subject: [PATCH] Dell OEM value add - vACPI layer changes. --- tools/firmware/hvmloader/acpi/Makefile | 12 +- .../acpi/ssdt_dell_latitude_eseries.asl | 516 ++++++++++++++++++ .../acpi/ssdt_dell_latitude_eseries.h | 323 +++++++++++ 3 files changed, 848 insertions(+), 3 deletions(-) create mode 100644 tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.asl create mode 100644 tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.h diff --git a/tools/firmware/hvmloader/acpi/Makefile b/tools/firmware/hvmloader/acpi/Makefile index caa799e..6f437b5 100644 --- a/tools/firmware/hvmloader/acpi/Makefile +++ b/tools/firmware/hvmloader/acpi/Makefile @@ -19,7 +19,7 @@ XEN_ROOT = ../../../.. include $(XEN_ROOT)/tools/firmware/Rules.mk C_SRC = build.c dsdt.c static_tables.c -H_SRC = $(wildcard *.h) ssdt_pm.h ssdt_hp_6930p_elitebook.h ssdt_tpm.h +H_SRC = $(wildcard *.h) ssdt_pm.h ssdt_hp_6930p_elitebook.h ssdt_dell_latitude_eseries.h ssdt_tpm.h OBJS = $(patsubst %.c,%.o,$(C_SRC)) build.o: $(H_SRC) build.c @@ -46,6 +46,13 @@ ssdt_hp_6930p_elitebook.h: ssdt_hp_6930p_elitebook.asl mv $*.hex $@ rm -f *.aml +ssdt_dell_latitude_eseries.h: ssdt_dell_latitude_eseries.asl + $(MAKE) iasl + iasl -tc $< + sed -i'' -re 's/AmlCode/AmlCode_DELL_LATITUDE_ESERIES/g' $*.hex + mv $*.hex $@ + rm -f *.aml + ssdt_tpm.h: ssdt_tpm.asl $(MAKE) iasl iasl -tc $< @@ -80,7 +87,6 @@ acpi.a: $(OBJS) $(AR) rc $@ $(OBJS) clean: - rm -rf *.a *.o $(IASL_VER) $(IASL_VER).tar.gz -# rm -rf dsdt.c ssdt_pm.h ssdt_hp_6930p_elitebook.h ssdt_tpm.h + rm -rf *.a *.o dsdt.c ssdt_pm.h ssdt_hp_6930p_elitebook.h ssdt_dell_latitude_eseries.h ssdt_tpm.h $(IASL_VER) $(IASL_VER).tar.gz install: all diff --git a/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.asl b/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.asl new file mode 100644 index 0000000..998774f --- /dev/null +++ b/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.asl @@ -0,0 +1,516 @@ +/* + * ssdt_dell_latitude_eseries.asl + * + * Copyright (c) 2009 Kamala Narasimhan + * Copyright (c) 2009 Citrix Systems, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* SSDT for exposing Dell latitude eseries specific value add functionalities like + * hotkeys, special buttons. + */ + +/* IMPLEMENTATION DETAILS: OEM value add features are generally exposed through + * WMI psuedo device objects. For our guests to benefit from such value add, we + * expose a psuedo device object in our vACPI layer also. This psuedo object is + * similar to the underlying base firmware object in the sense we expose the + * same _WDG method which describes the WMI methods, data objects and events + * provided by the WMI psuedo object. Guest wmi wrapper driver which automatically + * gets loaded upon identifying this WMI pseudo device object, calls _WDG to get + * known entry points and calls those entry points for further information exchange. + * Reference - http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx + */ + +/* COMMUNICATION DETAILS - + * Command port - 0x96 + * Writes to this port describe what type of information is about + * to be exchanged. E.g., guid, input argument transfer etc. + * Data Port - 0x98 and 0x9A for byte and dword data transfer respectively. + * Communicates data to and from the backend. E.g. Input buffer values + * get written to this port and output buffer values are read from this + * port. + */ + +DefinitionBlock ("SSDT_DELL_LATITUDE_ESERIES.aml", "SSDT", 2, "Xen", "HVM", 0) +{ + Scope (\_SB) + { + + OperationRegion (LAT1, SystemIO, 0x96, 0x01) + Field (LAT1, ByteAcc, NoLock, Preserve) + { + P96, 8 + } + + OperationRegion (LAT2, SystemIO, 0x98, 0x01) + Field (LAT2, ByteAcc, NoLock, Preserve) + { + P98, 8 + } + + OperationRegion (LAT3, SystemIO, 0x9A, 0x04) + Field (LAT3, DWordAcc, NoLock, Preserve) + { + P9A, 32 + } + + Device (AMW0) + { + /* Exposing a pseudo device with HID PNP0C14 will + * result in Windows guest loading their WMI wrapper + * driver - wmiacpi.sys + */ + Name (_HID, EisaId ("PNP0C14")) + Name (_UID, 0x00) + + /* Following list of data blocks exposed by _WDG is same as the + * one provided by the underlying firmware. Refer to - + * http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx + * for further information about _WDG and what it exposes. + */ + Name (_WDG, Buffer (0x78) + { + /* Data Block 1 */ + /* GUID */ + 0xBC, 0xDC, 0x9D, 0x8D, 0x97, 0xA9, 0xDA, 0x11, + 0xB0, 0x12, 0xB6, 0x22, 0xA1, 0xEF, 0x54, 0x92, + 0x41, 0x41, /* Object ID - WQAA */ + 0x01, /* Instance count */ + 0x00, /* Flag - Data */ + + /* Data Block 2 */ + /* GUID */ + 0xCE, 0x93, 0x05, 0xA8, 0x97, 0xA9, 0xDA, 0x11, + 0xB0, 0x12, 0xB6, 0x22, 0xA1, 0xEF, 0x54, 0x92, + 0x42, 0x41, /*Object ID - WMBA */ + 0x01, /* Instance count */ + 0x02, /* Flag - Method */ + + /* Data Block 3 */ + /* GUID */ + 0x94, 0x59, 0xBB, 0x9D, 0x97, 0xA9, 0xDA, 0x11, + 0xB0, 0x12, 0xB6, 0x22, 0xA1, 0xEF, 0x54, 0x92, + 0xD0, 0x00, /* Event notification ID */ + 0x01, /* Instance count */ + 0x08, /* Flag - Event */ + + /* Data Block 4 */ + /* GUID */ + 0xE0, 0x6C, 0x77, 0xA3, 0x88, 0x1E, 0xDB, 0x11, + 0xA9, 0x8B, 0x08, 0x00, 0x20, 0x0C, 0x9A, 0x66, + 0x42, 0x43, /* Object ID - WQBC */ + 0x01, /* Instance count */ + 0x00, /* Flag - Data */ + + /* Data Block 5 */ + /* GUID */ + 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, + 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, + 0x4D, 0x4F, /* Object ID - WQMO */ + 0x01, /* Instance count */ + 0x00, /* Flag - Method */ + + /* Data Block 6 */ + /* GUID */ + 0x28, 0x07, 0xBD, 0x77, 0x34, 0x2E, 0x8C, 0x47, + 0xB6, 0x25, 0x67, 0xF0, 0x2A, 0x7E, 0x48, 0x97, + 0x42, 0x44, /* Object ID - WMBD */ + 0x01, /* Instance count */ + 0x02, /* Flag - Method */ + + }) + + /* Initialize cmd port and communicate invocation type + * i.e., method execution or query or set object + */ + Method (INIT, 1, Serialized) + { + Store (100, P96) + Store (Arg0, P98) + } + + /* Pass the guid pertaining to the operation */ + Method (GUID, 1, Serialized) + { + Store (101, P96) + Store (0x0, Local0) + Store (Arg0, Local1) + + While ( LLess(Local0,16) ) + { + Add(Local1, Local0, Local2) + Store (DerefOf(Index (_WDG, Local2)), P98 ) + Increment( Local0 ) + } + } + + /* Pass instance # for the associated object pertaining + * to the invocation. + */ + Method (INST, 1, Serialized) + { + Store(102, P96) + Store(Arg0, P9A) + } + + /* Pass method id relevant to the method about to be + * executed. + */ + Method (MTID, 1, Serialized) + { + Store(103, P96) + Store(Arg0, P9A) + } + + /* Pass input buffer pertaining to the current operation */ + Method (IBUF, 1, Serialized) + { + Store (105, P96) + Store (SizeOf(Arg0), Local0) + Store (Local0, P9A) + ToBuffer (Arg0, Local1) + Store (0, Local2) + Store (104, P96) + While ( LLess(Local2,Local0) ) + { + Store (DerefOf(Index (Local1, Local2)), P98) + Increment (Local2) + } + } + + /* Now that the input arguments are passed, execute the command */ + Method (EXEC, 0, Serialized) + { + Store (106, P96) + } + + /* Get the output buffer pertaining to the just executed command */ + Method (OBUF, 0, Serialized) + { + Store (108, P96) + Store (P9A, Local0) + Store (Buffer(Local0) {}, Local2) + Store (0, Local1) + Store (107, P96) + While ( LLess(Local1, Local0) ) + { + Store (P98, Index(Local2, Local1)) + Increment (Local1) + } + Return (Local2) + } + + /* Get event data */ + Method (_WED, 1, Serialized) + { + INIT (4) + Store (109, P96) + Store (Arg0, P98) + EXEC () + Return (OBUF()) + } + + /* Following are well know entry points as supplied by + * _WDG. + * @TODO: Though current testing suggest that defining + * a method for seralized execution is enough to prevent + * synchronization issues, consider using explicit mutexes + * for further protection. + */ + Method (WQAA, 1, Serialized) + { + INIT (2) + GUID (0) + INST (Arg0) + EXEC () + Return (OBUF()) + } + + Method (WMBA, 3, Serialized) + { + INIT (1) + GUID (20) + INST (Arg0) + MTID (Arg1) + IBUF (Arg2) + EXEC () + Return (OBUF()) + } + + Method (WQBC, 1, Serialized) + { + INIT (2) + GUID (60) + INST (Arg0) + EXEC () + Return (OBUF()) + } + + /* Like all other well know entry points, we could delegate + * the below to the base firmware also. But, why ask for a + * static list (that too this big) and go through layer after + * layer to get it? Also, port i/o is not a good idea for this + * much data transfer. Luckily, this is the only place that appear + * to transfer so much data. + */ + Name (WQMO, Buffer (0x06CD) + { + /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, + /* 0008 */ 0xBD, 0x06, 0x00, 0x00, 0x66, 0x23, 0x00, 0x00, + /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, + /* 0018 */ 0x98, 0x40, 0x91, 0x00, 0x01, 0x06, 0x18, 0x42, + /* 0020 */ 0x10, 0x11, 0x10, 0x22, 0x21, 0x30, 0x34, 0x32, + /* 0028 */ 0x0B, 0x03, 0x63, 0x04, 0x8A, 0x0B, 0x21, 0x07, + /* 0030 */ 0x10, 0x12, 0x07, 0x85, 0x12, 0x02, 0xA1, 0xFE, + /* 0038 */ 0x04, 0xF2, 0x2B, 0x00, 0xA1, 0x43, 0x01, 0x32, + /* 0040 */ 0x05, 0x18, 0x14, 0xE0, 0x14, 0x41, 0x04, 0xBD, + /* 0048 */ 0x0A, 0xB0, 0x29, 0xC0, 0xA4, 0x00, 0x8B, 0x02, + /* 0050 */ 0xB4, 0x0B, 0xB0, 0x2C, 0x40, 0xB7, 0x00, 0xE9, + /* 0058 */ 0xB0, 0x44, 0x24, 0x38, 0x4A, 0x0C, 0x38, 0x4A, + /* 0060 */ 0x27, 0xB6, 0x70, 0xC3, 0x06, 0x2F, 0x14, 0x45, + /* 0068 */ 0x33, 0x88, 0x92, 0xA0, 0x72, 0x01, 0xBE, 0x11, + /* 0070 */ 0x04, 0x5E, 0xAE, 0x00, 0xC9, 0x13, 0x90, 0x66, + /* 0078 */ 0x01, 0x86, 0x05, 0x58, 0x17, 0x20, 0x7B, 0x08, + /* 0080 */ 0x54, 0xEA, 0x10, 0x50, 0x72, 0x86, 0x80, 0x1A, + /* 0088 */ 0x40, 0xAB, 0x13, 0x10, 0x7E, 0xA5, 0x53, 0x42, + /* 0090 */ 0x12, 0x84, 0x33, 0x56, 0xF1, 0xF8, 0x9A, 0x45, + /* 0098 */ 0xD3, 0x73, 0x92, 0x73, 0x0C, 0x39, 0x1E, 0x17, + /* 00A0 */ 0x7A, 0x10, 0x3C, 0x90, 0x02, 0x10, 0x16, 0x1E, + /* 00A8 */ 0x42, 0x11, 0x60, 0x50, 0x12, 0xC6, 0x42, 0x5D, + /* 00B0 */ 0x8C, 0x1A, 0x35, 0x52, 0x36, 0x20, 0x43, 0x94, + /* 00B8 */ 0x36, 0x6A, 0xF4, 0x80, 0xCE, 0xEF, 0x48, 0xCE, + /* 00C0 */ 0xEE, 0xE8, 0x8E, 0x24, 0x81, 0x51, 0x8F, 0xE9, + /* 00C8 */ 0x18, 0x0B, 0x9B, 0x91, 0x50, 0x63, 0x34, 0x07, + /* 00D0 */ 0x45, 0xA0, 0x71, 0x83, 0xB6, 0x44, 0x58, 0x8D, + /* 00D8 */ 0x2B, 0xF6, 0x99, 0x59, 0xF8, 0xB0, 0x84, 0x71, + /* 00E0 */ 0x04, 0x07, 0x96, 0xA0, 0x51, 0x34, 0xCD, 0xF1, + /* 00E8 */ 0x6C, 0x43, 0x24, 0x38, 0x88, 0xD0, 0x18, 0x19, + /* 00F0 */ 0x10, 0xF2, 0x3C, 0x6C, 0x81, 0x1E, 0x79, 0x02, + /* 00F8 */ 0xBB, 0x47, 0x94, 0x42, 0x04, 0xCD, 0xF7, 0x44, + /* 0100 */ 0x6A, 0x14, 0xA0, 0x0D, 0x43, 0xB6, 0xCE, 0x06, + /* 0108 */ 0x1A, 0x6A, 0xAC, 0xC6, 0x50, 0x04, 0x11, 0x21, + /* 0110 */ 0x68, 0x14, 0x83, 0x45, 0x08, 0x15, 0xE2, 0xFF, + /* 0118 */ 0x1F, 0x25, 0xEA, 0x29, 0x05, 0x89, 0x5A, 0x19, + /* 0120 */ 0x88, 0xD0, 0x82, 0x19, 0x81, 0xD9, 0x1F, 0x04, + /* 0128 */ 0x89, 0x71, 0x66, 0xD0, 0x61, 0xC1, 0x32, 0x40, + /* 0130 */ 0x64, 0x44, 0xD0, 0x68, 0xD8, 0x59, 0xC0, 0xC3, + /* 0138 */ 0xF1, 0x4C, 0x9A, 0x9F, 0x98, 0x06, 0x67, 0x82, + /* 0140 */ 0xB1, 0x21, 0xA4, 0x01, 0x42, 0xA2, 0x0E, 0x0E, + /* 0148 */ 0x94, 0xC0, 0x52, 0x06, 0x4E, 0x6C, 0x8F, 0x4B, + /* 0150 */ 0xE3, 0x3B, 0xE3, 0xA8, 0x21, 0x4E, 0xFD, 0xCC, + /* 0158 */ 0xFC, 0x8F, 0xF0, 0x16, 0x7C, 0x04, 0xE0, 0x63, + /* 0160 */ 0xF0, 0x60, 0x0F, 0x21, 0xE0, 0x11, 0xB2, 0x33, + /* 0168 */ 0x80, 0x01, 0xF1, 0xDE, 0x27, 0x4D, 0xE6, 0xE2, + /* 0170 */ 0xB3, 0x00, 0x8C, 0xE1, 0xC3, 0x35, 0x3E, 0x0A, + /* 0178 */ 0x8D, 0x87, 0x9D, 0x0F, 0xD8, 0xB8, 0x38, 0xBC, + /* 0180 */ 0x0F, 0x05, 0x27, 0x5C, 0x2C, 0x88, 0x02, 0x40, + /* 0188 */ 0x48, 0xD6, 0xF9, 0x00, 0x3D, 0xEB, 0x63, 0x0B, + /* 0190 */ 0xF8, 0x30, 0xD0, 0xEC, 0x1D, 0x82, 0x10, 0xBC, + /* 0198 */ 0x08, 0xF8, 0xE8, 0xE0, 0xE3, 0x86, 0xC7, 0xFD, + /* 01A0 */ 0xBC, 0x01, 0x86, 0xC3, 0x81, 0x87, 0xE3, 0xD3, + /* 01A8 */ 0x06, 0x70, 0x19, 0x01, 0x97, 0xF6, 0xA4, 0x30, + /* 01B0 */ 0x81, 0x24, 0x3F, 0x01, 0x24, 0x06, 0x06, 0x75, + /* 01B8 */ 0x20, 0xF0, 0xC1, 0x02, 0xAE, 0x24, 0x38, 0xD4, + /* 01C0 */ 0xF0, 0x3C, 0xB1, 0x07, 0x84, 0xFF, 0xFF, 0x51, + /* 01C8 */ 0x9E, 0xC8, 0x8B, 0x81, 0xA7, 0xFF, 0x18, 0x00, + /* 01D0 */ 0xE3, 0x80, 0xE0, 0x69, 0x9D, 0x94, 0x6F, 0x1E, + /* 01D8 */ 0x0F, 0x12, 0x1E, 0x54, 0x98, 0x04, 0x3E, 0x25, + /* 01E0 */ 0x30, 0x34, 0x7E, 0xDC, 0x00, 0xEB, 0xA8, 0xF1, + /* 01E8 */ 0x07, 0x04, 0x78, 0x27, 0x89, 0xF3, 0xEB, 0x73, + /* 01F0 */ 0x00, 0x3A, 0x34, 0x9C, 0x22, 0x03, 0x79, 0x0D, + /* 01F8 */ 0x38, 0xE9, 0x53, 0xF2, 0xF8, 0x12, 0xF8, 0xCC, + /* 0200 */ 0x01, 0xFB, 0x6E, 0x70, 0x18, 0x07, 0x13, 0x22, + /* 0208 */ 0xC2, 0x7B, 0xC0, 0x53, 0x87, 0xEF, 0x1A, 0x8F, + /* 0210 */ 0x02, 0x81, 0x22, 0xF4, 0x76, 0xE6, 0xA0, 0xA7, + /* 0218 */ 0x10, 0xA3, 0x44, 0x3B, 0xAB, 0x30, 0x0F, 0x1C, + /* 0220 */ 0x51, 0x7C, 0xE4, 0x30, 0xC2, 0xBB, 0x87, 0xEF, + /* 0228 */ 0x04, 0x0F, 0x20, 0xAD, 0x4D, 0x4E, 0xB8, 0x81, + /* 0230 */ 0x9E, 0x39, 0x58, 0xB4, 0x33, 0x8B, 0x2C, 0x80, + /* 0238 */ 0x28, 0xD2, 0x68, 0x50, 0x67, 0x04, 0x9F, 0x06, + /* 0240 */ 0x3C, 0xAD, 0xA7, 0x18, 0x1F, 0x25, 0x0C, 0x72, + /* 0248 */ 0x86, 0x07, 0xF6, 0x9C, 0xF0, 0x18, 0xE0, 0x01, + /* 0250 */ 0xB3, 0xFB, 0x81, 0x8F, 0x13, 0x3E, 0x17, 0xE0, + /* 0258 */ 0x5D, 0x03, 0x6A, 0x86, 0x3E, 0x6C, 0xC0, 0x39, + /* 0260 */ 0x74, 0xE0, 0x4F, 0x13, 0xF8, 0x83, 0x05, 0x7E, + /* 0268 */ 0x3C, 0xBE, 0xE6, 0xB0, 0x09, 0x27, 0xB0, 0xFC, + /* 0270 */ 0x41, 0xA0, 0x46, 0x66, 0x68, 0xCF, 0xF2, 0xB4, + /* 0278 */ 0x5E, 0x03, 0x7C, 0xDA, 0x31, 0x81, 0xCF, 0x1B, + /* 0280 */ 0xFE, 0xFF, 0xFF, 0x73, 0x3C, 0x1E, 0xF0, 0x2B, + /* 0288 */ 0x3E, 0x5D, 0x90, 0xBB, 0x82, 0xE7, 0xEB, 0xB3, + /* 0290 */ 0x0B, 0xB3, 0x31, 0x1E, 0xD4, 0x28, 0x7C, 0xC0, + /* 0298 */ 0xC1, 0x9D, 0x5D, 0x7C, 0x04, 0xF0, 0xD9, 0x05, + /* 02A0 */ 0x78, 0x4E, 0xE2, 0x59, 0x02, 0xBC, 0x87, 0x00, + /* 02A8 */ 0x9F, 0x48, 0xE2, 0x3D, 0x6C, 0xC1, 0x18, 0x31, + /* 02B0 */ 0x1E, 0xF2, 0x8C, 0xAB, 0x1E, 0x86, 0x2E, 0x02, + /* 02B8 */ 0x56, 0x77, 0x5F, 0x41, 0x1D, 0xBD, 0xC0, 0x04, + /* 02C0 */ 0xF5, 0x9A, 0x81, 0x3B, 0xBD, 0x00, 0x9F, 0x53, + /* 02C8 */ 0x16, 0xBC, 0xFF, 0xFF, 0x29, 0x0B, 0xB8, 0x5F, + /* 02D0 */ 0x15, 0xF8, 0x11, 0x05, 0x0C, 0x90, 0x9D, 0x9D, + /* 02D8 */ 0x4E, 0x84, 0xF0, 0x5E, 0xF2, 0x1C, 0xE2, 0xDB, + /* 02E0 */ 0x95, 0x0F, 0x26, 0x41, 0x9E, 0x03, 0x22, 0x3C, + /* 02E8 */ 0x65, 0xF1, 0xFB, 0x40, 0x94, 0x98, 0x07, 0x14, + /* 02F0 */ 0x29, 0x8A, 0x11, 0x83, 0x3C, 0x61, 0xF9, 0x7A, + /* 02F8 */ 0x12, 0xC3, 0xD0, 0xC1, 0xC2, 0x85, 0x8F, 0xF0, + /* 0300 */ 0x94, 0x05, 0x58, 0xBC, 0x64, 0x61, 0x4E, 0x59, + /* 0308 */ 0x30, 0xDF, 0x06, 0x3E, 0x65, 0x81, 0xE3, 0xFF, + /* 0310 */ 0x7F, 0xCA, 0x02, 0xD7, 0xB8, 0x9F, 0xB2, 0x80, + /* 0318 */ 0x99, 0xF4, 0xA7, 0x80, 0x4F, 0x35, 0x7E, 0x02, + /* 0320 */ 0x28, 0xFA, 0xC1, 0x82, 0xC2, 0xF8, 0x94, 0x05, + /* 0328 */ 0xB8, 0x92, 0x77, 0x40, 0x00, 0xCD, 0xD9, 0xC9, + /* 0330 */ 0xB7, 0x05, 0x83, 0x1D, 0xB3, 0x2F, 0x19, 0x3E, + /* 0338 */ 0x25, 0x82, 0xE1, 0x90, 0xE1, 0x3B, 0xD5, 0xA1, + /* 0340 */ 0x3C, 0x72, 0x3C, 0x05, 0xF8, 0x88, 0x05, 0xF6, + /* 0348 */ 0x38, 0xC7, 0x00, 0x1D, 0x57, 0x7C, 0xC4, 0xF2, + /* 0350 */ 0xFF, 0xFF, 0x88, 0x05, 0x70, 0xE3, 0x00, 0x82, + /* 0358 */ 0x3F, 0x75, 0xC0, 0xBA, 0x07, 0x84, 0xF5, 0xA1, + /* 0360 */ 0x03, 0x78, 0xC8, 0x7E, 0x08, 0xE8, 0x0C, 0x63, + /* 0368 */ 0xC9, 0x20, 0xB2, 0x71, 0xAE, 0xA1, 0x63, 0xB4, + /* 0370 */ 0xF8, 0x85, 0xEA, 0xA6, 0x10, 0xFB, 0x60, 0xB8, + /* 0378 */ 0x6C, 0x20, 0x81, 0x7A, 0xB8, 0x16, 0x4C, 0x21, + /* 0380 */ 0x51, 0x34, 0x1A, 0x8D, 0x81, 0x09, 0x8C, 0xE0, + /* 0388 */ 0x0C, 0x62, 0x40, 0x67, 0x84, 0xD0, 0xA1, 0x0C, + /* 0390 */ 0xA7, 0xE2, 0x3C, 0x84, 0xFA, 0xFF, 0x13, 0x0C, + /* 0398 */ 0x75, 0x63, 0xA2, 0xB3, 0xF3, 0xFC, 0xF9, 0x6D, + /* 03A0 */ 0xC4, 0x27, 0x02, 0x03, 0xFB, 0x0A, 0xF1, 0x96, + /* 03A8 */ 0x01, 0x96, 0x61, 0x79, 0x71, 0x4F, 0x00, 0xC7, + /* 03B0 */ 0x78, 0x92, 0x09, 0xAA, 0x39, 0xD6, 0xA0, 0xE6, + /* 03B8 */ 0xE0, 0xAB, 0xC0, 0x1B, 0x99, 0x09, 0x7C, 0x05, + /* 03C0 */ 0x03, 0xDB, 0x69, 0x06, 0xA3, 0xEF, 0x4E, 0x00, + /* 03C8 */ 0x0A, 0x20, 0x1F, 0x05, 0x7C, 0x5F, 0x7E, 0x1B, + /* 03D0 */ 0x60, 0xB3, 0x78, 0x65, 0x36, 0x9A, 0xCF, 0x9F, + /* 03D8 */ 0x88, 0xA1, 0xA3, 0xC4, 0x0C, 0x9D, 0x82, 0x78, + /* 03E0 */ 0xE8, 0x0E, 0x3A, 0x74, 0xF4, 0x71, 0xC0, 0x27, + /* 03E8 */ 0x2B, 0x5C, 0xB0, 0xC3, 0x17, 0xB4, 0xC9, 0x1D, + /* 03F0 */ 0xED, 0x89, 0x79, 0x16, 0x9E, 0x27, 0x6E, 0xEE, + /* 03F8 */ 0x60, 0x3A, 0x22, 0xC1, 0x18, 0x3C, 0x66, 0xF2, + /* 0400 */ 0x60, 0x16, 0x38, 0x79, 0x50, 0xFC, 0xFF, 0x27, + /* 0408 */ 0x0F, 0x13, 0x1E, 0x13, 0xF6, 0x70, 0x48, 0x0F, + /* 0410 */ 0x1D, 0x1E, 0x19, 0x1F, 0xA7, 0x4F, 0x3F, 0x0C, + /* 0418 */ 0xFB, 0x74, 0xCE, 0xA5, 0xE8, 0x19, 0xE9, 0x8E, + /* 0420 */ 0xF1, 0xCC, 0x85, 0x81, 0xF5, 0xC8, 0x39, 0xAC, + /* 0428 */ 0xD1, 0xC2, 0x1E, 0xF0, 0x73, 0x88, 0xEF, 0x30, + /* 0430 */ 0x3E, 0xF0, 0x30, 0x58, 0x9F, 0x5E, 0xC0, 0x71, + /* 0438 */ 0xFC, 0x82, 0x7F, 0x1A, 0x00, 0xCF, 0x01, 0xC4, + /* 0440 */ 0x63, 0x78, 0x01, 0xE1, 0x04, 0x73, 0x9D, 0xA6, + /* 0448 */ 0x50, 0xF1, 0x4F, 0x53, 0x80, 0xF6, 0xFF, 0xFF, + /* 0450 */ 0x69, 0x0A, 0xE6, 0x61, 0xD0, 0x67, 0x08, 0x4F, + /* 0458 */ 0x25, 0xC8, 0xEB, 0xD3, 0xAB, 0xA0, 0x31, 0x9E, + /* 0460 */ 0x1B, 0x1E, 0xA8, 0x8E, 0x27, 0x4A, 0x88, 0x50, + /* 0468 */ 0x91, 0xCE, 0xE0, 0x55, 0x8A, 0x1F, 0xA4, 0xA2, + /* 0470 */ 0x04, 0x09, 0xF5, 0x1A, 0xF0, 0x34, 0xE8, 0x2B, + /* 0478 */ 0x44, 0x94, 0xA8, 0x21, 0x23, 0xBE, 0x58, 0xF9, + /* 0480 */ 0x34, 0xC5, 0x22, 0x9D, 0xA6, 0x00, 0x9A, 0x9C, + /* 0488 */ 0x18, 0xF0, 0xA7, 0x29, 0x58, 0xB7, 0x04, 0xCF, + /* 0490 */ 0xEE, 0x11, 0x83, 0x9F, 0xA7, 0xC0, 0xFD, 0xFF, + /* 0498 */ 0x3F, 0x4F, 0xE1, 0xF2, 0x9C, 0xA7, 0x68, 0x96, + /* 04A0 */ 0xF3, 0x14, 0xEA, 0x7C, 0xE1, 0x24, 0x4B, 0x15, + /* 04A8 */ 0xFE, 0x23, 0x85, 0x11, 0x8E, 0x87, 0x13, 0x58, + /* 04B0 */ 0xFF, 0x89, 0x0A, 0xA5, 0x9C, 0x42, 0xCA, 0xCE, + /* 04B8 */ 0x41, 0x28, 0x2D, 0xE7, 0x20, 0x0A, 0xE2, 0x73, + /* 04C0 */ 0x10, 0x9C, 0x13, 0x15, 0x36, 0xD9, 0x89, 0x0A, + /* 04C8 */ 0xFA, 0x15, 0x07, 0x77, 0x41, 0x86, 0x3D, 0x2F, + /* 04D0 */ 0xB6, 0xBE, 0x77, 0x2A, 0xC0, 0x92, 0xBC, 0xC9, + /* 04D8 */ 0xA3, 0x04, 0x4D, 0x9E, 0x82, 0x78, 0xF2, 0xBE, + /* 04E0 */ 0x0D, 0xF9, 0x4E, 0x05, 0x37, 0xDC, 0x9D, 0x0A, + /* 04E8 */ 0x14, 0xC3, 0x07, 0xC3, 0xFF, 0x7F, 0xF8, 0xB0, + /* 04F0 */ 0x6F, 0x55, 0x80, 0x9B, 0xE0, 0xB7, 0x2A, 0x40, + /* 04F8 */ 0xCF, 0x00, 0x9F, 0x07, 0xC0, 0x72, 0x0D, 0xE1, + /* 0500 */ 0xD7, 0x2A, 0xDF, 0x08, 0x30, 0x07, 0x82, 0x67, + /* 0508 */ 0x1E, 0x63, 0x62, 0x2E, 0x33, 0x7A, 0x2B, 0xF8, + /* 0510 */ 0x0A, 0xE5, 0x25, 0x4A, 0x1E, 0x0C, 0xEA, 0x6E, + /* 0518 */ 0x05, 0xF6, 0xFF, 0xFF, 0xDD, 0x0A, 0xD8, 0x5E, + /* 0520 */ 0xB4, 0xC1, 0x73, 0x57, 0x78, 0x14, 0xF2, 0xA1, + /* 0528 */ 0xC0, 0x37, 0x2B, 0xF8, 0xC3, 0x38, 0x82, 0xC3, + /* 0530 */ 0x8F, 0xF0, 0xDC, 0x6B, 0x84, 0xE7, 0x2A, 0x5F, + /* 0538 */ 0x7B, 0xC1, 0x1D, 0xFB, 0x39, 0xA2, 0x43, 0x80, + /* 0540 */ 0x6F, 0x56, 0x80, 0xE9, 0xFF, 0xFF, 0xCD, 0x0A, + /* 0548 */ 0xAC, 0x6F, 0x10, 0x9F, 0x6B, 0xE0, 0x06, 0x3E, + /* 0550 */ 0x97, 0xD0, 0xEB, 0x3F, 0xF0, 0xBC, 0x30, 0x82, + /* 0558 */ 0xE7, 0x18, 0xE1, 0xDB, 0x28, 0xEE, 0x84, 0x03, + /* 0560 */ 0x36, 0xA3, 0x27, 0x1C, 0x04, 0x38, 0xFE, 0x66, + /* 0568 */ 0x06, 0x6B, 0x0C, 0x7D, 0xA2, 0xE8, 0x8C, 0x81, + /* 0570 */ 0xBB, 0x9A, 0x01, 0x8F, 0x1B, 0x91, 0x87, 0xC0, + /* 0578 */ 0x4F, 0x13, 0x1E, 0x02, 0x1F, 0x40, 0xAB, 0xD3, + /* 0580 */ 0x23, 0x67, 0x9F, 0x53, 0xC2, 0x1D, 0x07, 0xF8, + /* 0588 */ 0x94, 0x70, 0x03, 0xE0, 0xFF, 0x7F, 0x82, 0x01, + /* 0590 */ 0x6E, 0x9C, 0xA8, 0xE8, 0x37, 0x4E, 0x80, 0x10, + /* 0598 */ 0x20, 0x11, 0x5E, 0x35, 0x7D, 0x88, 0x79, 0xD0, + /* 05A0 */ 0xF4, 0x60, 0xDE, 0x62, 0x8C, 0xF3, 0xD6, 0xF0, + /* 05A8 */ 0xB2, 0xE9, 0x83, 0x8C, 0xF1, 0xC2, 0x44, 0x39, + /* 05B0 */ 0x86, 0x43, 0x8A, 0x19, 0xC5, 0x88, 0x41, 0x42, + /* 05B8 */ 0xBC, 0x71, 0x1A, 0xC3, 0xA8, 0xC1, 0xC2, 0x45, + /* 05C0 */ 0x8F, 0xF0, 0x20, 0xC3, 0xE2, 0xDC, 0x38, 0x01, + /* 05C8 */ 0x21, 0xFF, 0xFF, 0x83, 0x0C, 0x60, 0xE5, 0x68, + /* 05D0 */ 0xE6, 0x83, 0x08, 0xFC, 0xE3, 0xC3, 0x9B, 0x42, + /* 05D8 */ 0xF0, 0xA7, 0x10, 0x60, 0x22, 0xFE, 0xBE, 0x49, + /* 05E0 */ 0x85, 0xDF, 0x37, 0x51, 0x63, 0xB4, 0xF8, 0x85, + /* 05E8 */ 0xEA, 0xFA, 0xEC, 0xB9, 0x78, 0xDA, 0x96, 0x7D, + /* 05F0 */ 0xDB, 0x44, 0x09, 0xA6, 0x90, 0xA8, 0x13, 0x22, + /* 05F8 */ 0x4A, 0xC6, 0x09, 0x91, 0x82, 0x18, 0xD0, 0x19, + /* 0600 */ 0x6F, 0x9B, 0x90, 0x43, 0xDD, 0x36, 0xA1, 0xDF, + /* 0608 */ 0x1E, 0x9E, 0xE1, 0xC1, 0x79, 0xD6, 0x04, 0xDB, + /* 0610 */ 0xFF, 0xFF, 0xAC, 0x09, 0x4C, 0xA5, 0x0D, 0x1D, + /* 0618 */ 0x25, 0x66, 0xE8, 0x14, 0xC4, 0xF7, 0x56, 0x38, + /* 0620 */ 0x87, 0x28, 0x7C, 0xB0, 0xB3, 0x26, 0x28, 0x4E, + /* 0628 */ 0x4C, 0xE0, 0x99, 0x3B, 0xF6, 0xA4, 0x09, 0xD8, + /* 0630 */ 0x89, 0x7C, 0xD2, 0x04, 0x82, 0xFF, 0xFF, 0xE3, + /* 0638 */ 0x18, 0xD8, 0x8F, 0x54, 0xB8, 0xD3, 0x00, 0xDC, + /* 0640 */ 0x03, 0x88, 0xC7, 0x70, 0x9C, 0xEF, 0x4F, 0x06, + /* 0648 */ 0x79, 0x1E, 0xF1, 0x81, 0xC0, 0x47, 0x19, 0xA6, + /* 0650 */ 0xD0, 0xA6, 0x4F, 0x8D, 0x46, 0xAD, 0x1A, 0x94, + /* 0658 */ 0xA9, 0x51, 0xA6, 0x41, 0xAD, 0x3E, 0x95, 0x1A, + /* 0660 */ 0x33, 0x76, 0xC0, 0xB0, 0x88, 0xB5, 0x6A, 0xB0, + /* 0668 */ 0x0E, 0xB5, 0x5E, 0x81, 0x58, 0xD2, 0x13, 0x43, + /* 0670 */ 0x20, 0x16, 0xE5, 0x01, 0x84, 0xC5, 0x35, 0x01, + /* 0678 */ 0xC2, 0x84, 0xAF, 0x4A, 0x20, 0x8E, 0x0D, 0x42, + /* 0680 */ 0xC5, 0xEA, 0x80, 0x68, 0x64, 0x88, 0x06, 0x11, + /* 0688 */ 0x90, 0x43, 0xF8, 0x00, 0x62, 0x91, 0x40, 0x04, + /* 0690 */ 0xE4, 0xC8, 0x4A, 0x40, 0x98, 0x60, 0x27, 0x20, + /* 0698 */ 0x2C, 0xF3, 0xAB, 0x4A, 0x80, 0x16, 0x60, 0x05, + /* 06A0 */ 0x88, 0xE9, 0xD1, 0x02, 0xC4, 0xD4, 0x81, 0x08, + /* 06A8 */ 0xC8, 0x29, 0xCC, 0x80, 0x30, 0x0D, 0xAB, 0x12, + /* 06B0 */ 0x88, 0xF3, 0x83, 0xD0, 0xD4, 0x76, 0x40, 0x98, + /* 06B8 */ 0x66, 0x3D, 0x20, 0x2C, 0xA9, 0x1F, 0x70, 0x16, + /* 06C0 */ 0x1B, 0x44, 0x40, 0x56, 0x60, 0x08, 0x88, 0xE9, + /* 06C8 */ 0x01, 0x11, 0x90, 0xFF, 0xFF + }) + + Method (WMBD, 3, Serialized) + { + INIT (1) + GUID (100) + INST (Arg0) + MTID (Arg1) + IBUF (Arg2) + EXEC () + Return (OBUF()) + } + + } + } + + /* Wire GPE events to notify OEM + * added value events. + */ + Scope (\_GPE) + { + Method (_L18, 0, Serialized) + { + Notify (\_SB.AMW0, 0xD0) + } + } +} + diff --git a/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.h b/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.h new file mode 100644 index 0000000..82cc309 --- /dev/null +++ b/tools/firmware/hvmloader/acpi/ssdt_dell_latitude_eseries.h @@ -0,0 +1,323 @@ +/* + * + * Intel ACPI Component Architecture + * ASL Optimizing Compiler version 20061109 [May 18 2007] + * Copyright (C) 2000 - 2006 Intel Corporation + * Supports ACPI Specification Revision 3.0a + * + * Compilation of "ssdt_dell_latitude_eseries.asl" - Tue Mar 3 15:58:14 2009 + * + * C source code output + * + */ +unsigned char AmlCode_DELL_LATITUDE_ESERIES[] = +{ + 0x53,0x53,0x44,0x54,0x99,0x09,0x00,0x00, /* 00000000 "SSDT...." */ + 0x02,0x5E,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 ".^Xen..." */ + 0x48,0x56,0x4D,0x00,0x00,0x00,0x00,0x00, /* 00000010 "HVM....." */ + 0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */ + 0x09,0x11,0x06,0x20,0x10,0x49,0x95,0x5C, /* 00000020 "... .I.\" */ + 0x5F,0x53,0x42,0x5F,0x5B,0x80,0x4C,0x41, /* 00000028 "_SB_[.LA" */ + 0x54,0x31,0x01,0x0A,0x96,0x01,0x5B,0x81, /* 00000030 "T1....[." */ + 0x0B,0x4C,0x41,0x54,0x31,0x01,0x50,0x39, /* 00000038 ".LAT1.P9" */ + 0x36,0x5F,0x08,0x5B,0x80,0x4C,0x41,0x54, /* 00000040 "6_.[.LAT" */ + 0x32,0x01,0x0A,0x98,0x01,0x5B,0x81,0x0B, /* 00000048 "2....[.." */ + 0x4C,0x41,0x54,0x32,0x01,0x50,0x39,0x38, /* 00000050 "LAT2.P98" */ + 0x5F,0x08,0x5B,0x80,0x4C,0x41,0x54,0x33, /* 00000058 "_.[.LAT3" */ + 0x01,0x0A,0x9A,0x0A,0x04,0x5B,0x81,0x0B, /* 00000060 ".....[.." */ + 0x4C,0x41,0x54,0x33,0x03,0x50,0x39,0x41, /* 00000068 "LAT3.P9A" */ + 0x5F,0x20,0x5B,0x82,0x4A,0x90,0x41,0x4D, /* 00000070 "_ [.J.AM" */ + 0x57,0x30,0x08,0x5F,0x48,0x49,0x44,0x0C, /* 00000078 "W0._HID." */ + 0x41,0xD0,0x0C,0x14,0x08,0x5F,0x55,0x49, /* 00000080 "A...._UI" */ + 0x44,0x00,0x08,0x5F,0x57,0x44,0x47,0x11, /* 00000088 "D.._WDG." */ + 0x4C,0x07,0x0A,0x78,0xBC,0xDC,0x9D,0x8D, /* 00000090 "L..x...." */ + 0x97,0xA9,0xDA,0x11,0xB0,0x12,0xB6,0x22, /* 00000098 "......."" */ + 0xA1,0xEF,0x54,0x92,0x41,0x41,0x01,0x00, /* 000000A0 "..T.AA.." */ + 0xCE,0x93,0x05,0xA8,0x97,0xA9,0xDA,0x11, /* 000000A8 "........" */ + 0xB0,0x12,0xB6,0x22,0xA1,0xEF,0x54,0x92, /* 000000B0 "..."..T." */ + 0x42,0x41,0x01,0x02,0x94,0x59,0xBB,0x9D, /* 000000B8 "BA...Y.." */ + 0x97,0xA9,0xDA,0x11,0xB0,0x12,0xB6,0x22, /* 000000C0 "......."" */ + 0xA1,0xEF,0x54,0x92,0xD0,0x00,0x01,0x08, /* 000000C8 "..T....." */ + 0xE0,0x6C,0x77,0xA3,0x88,0x1E,0xDB,0x11, /* 000000D0 ".lw....." */ + 0xA9,0x8B,0x08,0x00,0x20,0x0C,0x9A,0x66, /* 000000D8 ".... ..f" */ + 0x42,0x43,0x01,0x00,0x21,0x12,0x90,0x05, /* 000000E0 "BC..!..." */ + 0x66,0xD5,0xD1,0x11,0xB2,0xF0,0x00,0xA0, /* 000000E8 "f......." */ + 0xC9,0x06,0x29,0x10,0x4D,0x4F,0x01,0x00, /* 000000F0 "..).MO.." */ + 0x28,0x07,0xBD,0x77,0x34,0x2E,0x8C,0x47, /* 000000F8 "(..w4..G" */ + 0xB6,0x25,0x67,0xF0,0x2A,0x7E,0x48,0x97, /* 00000100 ".%g.*~H." */ + 0x42,0x44,0x01,0x02,0x14,0x13,0x49,0x4E, /* 00000108 "BD....IN" */ + 0x49,0x54,0x09,0x70,0x0A,0x64,0x50,0x39, /* 00000110 "IT.p.dP9" */ + 0x36,0x5F,0x70,0x68,0x50,0x39,0x38,0x5F, /* 00000118 "6_phP98_" */ + 0x14,0x2C,0x47,0x55,0x49,0x44,0x09,0x70, /* 00000120 ".,GUID.p" */ + 0x0A,0x65,0x50,0x39,0x36,0x5F,0x70,0x00, /* 00000128 ".eP96_p." */ + 0x60,0x70,0x68,0x61,0xA2,0x18,0x95,0x60, /* 00000130 "`pha...`" */ + 0x0A,0x10,0x72,0x61,0x60,0x62,0x70,0x83, /* 00000138 "..ra`bp." */ + 0x88,0x5F,0x57,0x44,0x47,0x62,0x00,0x50, /* 00000140 "._WDGb.P" */ + 0x39,0x38,0x5F,0x75,0x60,0x14,0x13,0x49, /* 00000148 "98_u`..I" */ + 0x4E,0x53,0x54,0x09,0x70,0x0A,0x66,0x50, /* 00000150 "NST.p.fP" */ + 0x39,0x36,0x5F,0x70,0x68,0x50,0x39,0x41, /* 00000158 "96_phP9A" */ + 0x5F,0x14,0x13,0x4D,0x54,0x49,0x44,0x09, /* 00000160 "_..MTID." */ + 0x70,0x0A,0x67,0x50,0x39,0x36,0x5F,0x70, /* 00000168 "p.gP96_p" */ + 0x68,0x50,0x39,0x41,0x5F,0x14,0x35,0x49, /* 00000170 "hP9A_.5I" */ + 0x42,0x55,0x46,0x09,0x70,0x0A,0x69,0x50, /* 00000178 "BUF.p.iP" */ + 0x39,0x36,0x5F,0x70,0x87,0x68,0x60,0x70, /* 00000180 "96_p.h`p" */ + 0x60,0x50,0x39,0x41,0x5F,0x96,0x68,0x61, /* 00000188 "`P9A_.ha" */ + 0x70,0x00,0x62,0x70,0x0A,0x68,0x50,0x39, /* 00000190 "p.bp.hP9" */ + 0x36,0x5F,0xA2,0x10,0x95,0x62,0x60,0x70, /* 00000198 "6_...b`p" */ + 0x83,0x88,0x61,0x62,0x00,0x50,0x39,0x38, /* 000001A0 "..ab.P98" */ + 0x5F,0x75,0x62,0x14,0x0D,0x45,0x58,0x45, /* 000001A8 "_ub..EXE" */ + 0x43,0x08,0x70,0x0A,0x6A,0x50,0x39,0x36, /* 000001B0 "C.p.jP96" */ + 0x5F,0x14,0x34,0x4F,0x42,0x55,0x46,0x08, /* 000001B8 "_.4OBUF." */ + 0x70,0x0A,0x6C,0x50,0x39,0x36,0x5F,0x70, /* 000001C0 "p.lP96_p" */ + 0x50,0x39,0x41,0x5F,0x60,0x70,0x11,0x02, /* 000001C8 "P9A_`p.." */ + 0x60,0x62,0x70,0x00,0x61,0x70,0x0A,0x6B, /* 000001D0 "`bp.ap.k" */ + 0x50,0x39,0x36,0x5F,0xA2,0x0F,0x95,0x61, /* 000001D8 "P96_...a" */ + 0x60,0x70,0x50,0x39,0x38,0x5F,0x88,0x62, /* 000001E0 "`pP98_.b" */ + 0x61,0x00,0x75,0x61,0xA4,0x62,0x14,0x22, /* 000001E8 "a.ua.b."" */ + 0x5F,0x57,0x45,0x44,0x09,0x49,0x4E,0x49, /* 000001F0 "_WED.INI" */ + 0x54,0x0A,0x04,0x70,0x0A,0x6D,0x50,0x39, /* 000001F8 "T..p.mP9" */ + 0x36,0x5F,0x70,0x68,0x50,0x39,0x38,0x5F, /* 00000200 "6_phP98_" */ + 0x45,0x58,0x45,0x43,0xA4,0x4F,0x42,0x55, /* 00000208 "EXEC.OBU" */ + 0x46,0x14,0x1F,0x57,0x51,0x41,0x41,0x09, /* 00000210 "F..WQAA." */ + 0x49,0x4E,0x49,0x54,0x0A,0x02,0x47,0x55, /* 00000218 "INIT..GU" */ + 0x49,0x44,0x00,0x49,0x4E,0x53,0x54,0x68, /* 00000220 "ID.INSTh" */ + 0x45,0x58,0x45,0x43,0xA4,0x4F,0x42,0x55, /* 00000228 "EXEC.OBU" */ + 0x46,0x14,0x29,0x57,0x4D,0x42,0x41,0x0B, /* 00000230 "F.)WMBA." */ + 0x49,0x4E,0x49,0x54,0x01,0x47,0x55,0x49, /* 00000238 "INIT.GUI" */ + 0x44,0x0A,0x14,0x49,0x4E,0x53,0x54,0x68, /* 00000240 "D..INSTh" */ + 0x4D,0x54,0x49,0x44,0x69,0x49,0x42,0x55, /* 00000248 "MTIDiIBU" */ + 0x46,0x6A,0x45,0x58,0x45,0x43,0xA4,0x4F, /* 00000250 "FjEXEC.O" */ + 0x42,0x55,0x46,0x14,0x20,0x57,0x51,0x42, /* 00000258 "BUF. WQB" */ + 0x43,0x09,0x49,0x4E,0x49,0x54,0x0A,0x02, /* 00000260 "C.INIT.." */ + 0x47,0x55,0x49,0x44,0x0A,0x3C,0x49,0x4E, /* 00000268 "GUID..." */ + 0x87,0x9D,0x0F,0xD8,0xB8,0x38,0xBC,0x0F, /* 00000400 ".....8.." */ + 0x05,0x27,0x5C,0x2C,0x88,0x02,0x40,0x48, /* 00000408 ".'\,..@H" */ + 0xD6,0xF9,0x00,0x3D,0xEB,0x63,0x0B,0xF8, /* 00000410 "...=.c.." */ + 0x30,0xD0,0xEC,0x1D,0x82,0x10,0xBC,0x08, /* 00000418 "0......." */ + 0xF8,0xE8,0xE0,0xE3,0x86,0xC7,0xFD,0xBC, /* 00000420 "........" */ + 0x01,0x86,0xC3,0x81,0x87,0xE3,0xD3,0x06, /* 00000428 "........" */ + 0x70,0x19,0x01,0x97,0xF6,0xA4,0x30,0x81, /* 00000430 "p.....0." */ + 0x24,0x3F,0x01,0x24,0x06,0x06,0x75,0x20, /* 00000438 "$?.$..u " */ + 0xF0,0xC1,0x02,0xAE,0x24,0x38,0xD4,0xF0, /* 00000440 "....$8.." */ + 0x3C,0xB1,0x07,0x84,0xFF,0xFF,0x51,0x9E, /* 00000448 "<.....Q." */ + 0xC8,0x8B,0x81,0xA7,0xFF,0x18,0x00,0xE3, /* 00000450 "........" */ + 0x80,0xE0,0x69,0x9D,0x94,0x6F,0x1E,0x0F, /* 00000458 "..i..o.." */ + 0x12,0x1E,0x54,0x98,0x04,0x3E,0x25,0x30, /* 00000460 "..T..>%0" */ + 0x34,0x7E,0xDC,0x00,0xEB,0xA8,0xF1,0x07, /* 00000468 "4~......" */ + 0x04,0x78,0x27,0x89,0xF3,0xEB,0x73,0x00, /* 00000470 ".x'...s." */ + 0x3A,0x34,0x9C,0x22,0x03,0x79,0x0D,0x38, /* 00000478 ":4.".y.8" */ + 0xE9,0x53,0xF2,0xF8,0x12,0xF8,0xCC,0x01, /* 00000480 ".S......" */ + 0xFB,0x6E,0x70,0x18,0x07,0x13,0x22,0xC2, /* 00000488 ".np..."." */ + 0x7B,0xC0,0x53,0x87,0xEF,0x1A,0x8F,0x02, /* 00000490 "{.S....." */ + 0x81,0x22,0xF4,0x76,0xE6,0xA0,0xA7,0x10, /* 00000498 ".".v...." */ + 0xA3,0x44,0x3B,0xAB,0x30,0x0F,0x1C,0x51, /* 000004A0 ".D;.0..Q" */ + 0x7C,0xE4,0x30,0xC2,0xBB,0x87,0xEF,0x04, /* 000004A8 "|.0....." */ + 0x0F,0x20,0xAD,0x4D,0x4E,0xB8,0x81,0x9E, /* 000004B0 ". .MN..." */ + 0x39,0x58,0xB4,0x33,0x8B,0x2C,0x80,0x28, /* 000004B8 "9X.3.,.(" */ + 0xD2,0x68,0x50,0x67,0x04,0x9F,0x06,0x3C, /* 000004C0 ".hPg...<" */ + 0xAD,0xA7,0x18,0x1F,0x25,0x0C,0x72,0x86, /* 000004C8 "....%.r." */ + 0x07,0xF6,0x9C,0xF0,0x18,0xE0,0x01,0xB3, /* 000004D0 "........" */ + 0xFB,0x81,0x8F,0x13,0x3E,0x17,0xE0,0x5D, /* 000004D8 "....>..]" */ + 0x03,0x6A,0x86,0x3E,0x6C,0xC0,0x39,0x74, /* 000004E0 ".j.>l.9t" */ + 0xE0,0x4F,0x13,0xF8,0x83,0x05,0x7E,0x3C, /* 000004E8 ".O....~<" */ + 0xBE,0xE6,0xB0,0x09,0x27,0xB0,0xFC,0x41, /* 000004F0 "....'..A" */ + 0xA0,0x46,0x66,0x68,0xCF,0xF2,0xB4,0x5E, /* 000004F8 ".Ffh...^" */ + 0x03,0x7C,0xDA,0x31,0x81,0xCF,0x1B,0xFE, /* 00000500 ".|.1...." */ + 0xFF,0xFF,0x73,0x3C,0x1E,0xF0,0x2B,0x3E, /* 00000508 "..s<..+>" */ + 0x5D,0x90,0xBB,0x82,0xE7,0xEB,0xB3,0x0B, /* 00000510 "]......." */ + 0xB3,0x31,0x1E,0xD4,0x28,0x7C,0xC0,0xC1, /* 00000518 ".1..(|.." */ + 0x9D,0x5D,0x7C,0x04,0xF0,0xD9,0x05,0x78, /* 00000520 ".]|....x" */ + 0x4E,0xE2,0x59,0x02,0xBC,0x87,0x00,0x9F, /* 00000528 "N.Y....." */ + 0x48,0xE2,0x3D,0x6C,0xC1,0x18,0x31,0x1E, /* 00000530 "H.=l..1." */ + 0xF2,0x8C,0xAB,0x1E,0x86,0x2E,0x02,0x56, /* 00000538 ".......V" */ + 0x77,0x5F,0x41,0x1D,0xBD,0xC0,0x04,0xF5, /* 00000540 "w_A....." */ + 0x9A,0x81,0x3B,0xBD,0x00,0x9F,0x53,0x16, /* 00000548 "..;...S." */ + 0xBC,0xFF,0xFF,0x29,0x0B,0xB8,0x5F,0x15, /* 00000550 "...).._." */ + 0xF8,0x11,0x05,0x0C,0x90,0x9D,0x9D,0x4E, /* 00000558 ".......N" */ + 0x84,0xF0,0x5E,0xF2,0x1C,0xE2,0xDB,0x95, /* 00000560 "..^....." */ + 0x0F,0x26,0x41,0x9E,0x03,0x22,0x3C,0x65, /* 00000568 ".&A.."e...." */ + 0xCA,0x02,0xD7,0xB8,0x9F,0xB2,0x80,0x99, /* 00000598 "........" */ + 0xF4,0xA7,0x80,0x4F,0x35,0x7E,0x02,0x28, /* 000005A0 "...O5~.(" */ + 0xFA,0xC1,0x82,0xC2,0xF8,0x94,0x05,0xB8, /* 000005A8 "........" */ + 0x92,0x77,0x40,0x00,0xCD,0xD9,0xC9,0xB7, /* 000005B0 ".w@....." */ + 0x05,0x83,0x1D,0xB3,0x2F,0x19,0x3E,0x25, /* 000005B8 "..../.>%" */ + 0x82,0xE1,0x90,0xE1,0x3B,0xD5,0xA1,0x3C, /* 000005C0 "....;..<" */ + 0x72,0x3C,0x05,0xF8,0x88,0x05,0xF6,0x38, /* 000005C8 "r<.....8" */ + 0xC7,0x00,0x1D,0x57,0x7C,0xC4,0xF2,0xFF, /* 000005D0 "...W|..." */ + 0xFF,0x88,0x05,0x70,0xE3,0x00,0x82,0x3F, /* 000005D8 "...p...?" */ + 0x75,0xC0,0xBA,0x07,0x84,0xF5,0xA1,0x03, /* 000005E0 "u......." */ + 0x78,0xC8,0x7E,0x08,0xE8,0x0C,0x63,0xC9, /* 000005E8 "x.~...c." */ + 0x20,0xB2,0x71,0xAE,0xA1,0x63,0xB4,0xF8, /* 000005F0 " .q..c.." */ + 0x85,0xEA,0xA6,0x10,0xFB,0x60,0xB8,0x6C, /* 000005F8 ".....`.l" */ + 0x20,0x81,0x7A,0xB8,0x16,0x4C,0x21,0x51, /* 00000600 " .z..L!Q" */ + 0x34,0x1A,0x8D,0x81,0x09,0x8C,0xE0,0x0C, /* 00000608 "4......." */ + 0x62,0x40,0x67,0x84,0xD0,0xA1,0x0C,0xA7, /* 00000610 "b@g....." */ + 0xE2,0x3C,0x84,0xFA,0xFF,0x13,0x0C,0x75, /* 00000618 ".<.....u" */ + 0x63,0xA2,0xB3,0xF3,0xFC,0xF9,0x6D,0xC4, /* 00000620 "c.....m." */ + 0x27,0x02,0x03,0xFB,0x0A,0xF1,0x96,0x01, /* 00000628 "'......." */ + 0x96,0x61,0x79,0x71,0x4F,0x00,0xC7,0x78, /* 00000630 ".ayqO..x" */ + 0x92,0x09,0xAA,0x39,0xD6,0xA0,0xE6,0xE0, /* 00000638 "...9...." */ + 0xAB,0xC0,0x1B,0x99,0x09,0x7C,0x05,0x03, /* 00000640 ".....|.." */ + 0xDB,0x69,0x06,0xA3,0xEF,0x4E,0x00,0x0A, /* 00000648 ".i...N.." */ + 0x20,0x1F,0x05,0x7C,0x5F,0x7E,0x1B,0x60, /* 00000650 " ..|_~.`" */ + 0xB3,0x78,0x65,0x36,0x9A,0xCF,0x9F,0x88, /* 00000658 ".xe6...." */ + 0xA1,0xA3,0xC4,0x0C,0x9D,0x82,0x78,0xE8, /* 00000660 "......x." */ + 0x0E,0x3A,0x74,0xF4,0x71,0xC0,0x27,0x2B, /* 00000668 ".:t.q.'+" */ + 0x5C,0xB0,0xC3,0x17,0xB4,0xC9,0x1D,0xED, /* 00000670 "\......." */ + 0x89,0x79,0x16,0x9E,0x27,0x6E,0xEE,0x60, /* 00000678 ".y..'n.`" */ + 0x3A,0x22,0xC1,0x18,0x3C,0x66,0xF2,0x60, /* 00000680 ":".." */ + 0xF0,0x30,0x58,0x9F,0x5E,0xC0,0x71,0xFC, /* 000006B8 ".0X.^.q." */ + 0x82,0x7F,0x1A,0x00,0xCF,0x01,0xC4,0x63, /* 000006C0 ".......c" */ + 0x78,0x01,0xE1,0x04,0x73,0x9D,0xA6,0x50, /* 000006C8 "x...s..P" */ + 0xF1,0x4F,0x53,0x80,0xF6,0xFF,0xFF,0x69, /* 000006D0 ".OS....i" */ + 0x0A,0xE6,0x61,0xD0,0x67,0x08,0x4F,0x25, /* 000006D8 "..a.g.O%" */ + 0xC8,0xEB,0xD3,0xAB,0xA0,0x31,0x9E,0x1B, /* 000006E0 ".....1.." */ + 0x1E,0xA8,0x8E,0x27,0x4A,0x88,0x50,0x91, /* 000006E8 "...'J.P." */ + 0xCE,0xE0,0x55,0x8A,0x1F,0xA4,0xA2,0x04, /* 000006F0 "..U....." */ + 0x09,0xF5,0x1A,0xF0,0x34,0xE8,0x2B,0x44, /* 000006F8 "....4.+D" */ + 0x94,0xA8,0x21,0x23,0xBE,0x58,0xF9,0x34, /* 00000700 "..!#.X.4" */ + 0xC5,0x22,0x9D,0xA6,0x00,0x9A,0x9C,0x18, /* 00000708 "."......" */ + 0xF0,0xA7,0x29,0x58,0xB7,0x04,0xCF,0xEE, /* 00000710 "..)X...." */ + 0x11,0x83,0x9F,0xA7,0xC0,0xFD,0xFF,0x3F, /* 00000718 ".......?" */ + 0x4F,0xE1,0xF2,0x9C,0xA7,0x68,0x96,0xF3, /* 00000720 "O....h.." */ + 0x14,0xEA,0x7C,0xE1,0x24,0x4B,0x15,0xFE, /* 00000728 "..|.$K.." */ + 0x23,0x85,0x11,0x8E,0x87,0x13,0x58,0xFF, /* 00000730 "#.....X." */ + 0x89,0x0A,0xA5,0x9C,0x42,0xCA,0xCE,0x41, /* 00000738 "....B..A" */ + 0x28,0x2D,0xE7,0x20,0x0A,0xE2,0x73,0x10, /* 00000740 "(-. ..s." */ + 0x9C,0x13,0x15,0x36,0xD9,0x89,0x0A,0xFA, /* 00000748 "...6...." */ + 0x15,0x07,0x77,0x41,0x86,0x3D,0x2F,0xB6, /* 00000750 "..wA.=/." */ + 0xBE,0x77,0x2A,0xC0,0x92,0xBC,0xC9,0xA3, /* 00000758 ".w*....." */ + 0x04,0x4D,0x9E,0x82,0x78,0xF2,0xBE,0x0D, /* 00000760 ".M..x..." */ + 0xF9,0x4E,0x05,0x37,0xDC,0x9D,0x0A,0x14, /* 00000768 ".N.7...." */ + 0xC3,0x07,0xC3,0xFF,0x7F,0xF8,0xB0,0x6F, /* 00000770 ".......o" */ + 0x55,0x80,0x9B,0xE0,0xB7,0x2A,0x40,0xCF, /* 00000778 "U....*@." */ + 0x00,0x9F,0x07,0xC0,0x72,0x0D,0xE1,0xD7, /* 00000780 "....r..." */ + 0x2A,0xDF,0x08,0x30,0x07,0x82,0x67,0x1E, /* 00000788 "*..0..g." */ + 0x63,0x62,0x2E,0x33,0x7A,0x2B,0xF8,0x0A, /* 00000790 "cb.3z+.." */ + 0xE5,0x25,0x4A,0x1E,0x0C,0xEA,0x6E,0x05, /* 00000798 ".%J...n." */ + 0xF6,0xFF,0xFF,0xDD,0x0A,0xD8,0x5E,0xB4, /* 000007A0 "......^." */ + 0xC1,0x73,0x57,0x78,0x14,0xF2,0xA1,0xC0, /* 000007A8 ".sWx...." */ + 0x37,0x2B,0xF8,0xC3,0x38,0x82,0xC3,0x8F, /* 000007B0 "7+..8..." */ + 0xF0,0xDC,0x6B,0x84,0xE7,0x2A,0x5F,0x7B, /* 000007B8 "..k..*_{" */ + 0xC1,0x1D,0xFB,0x39,0xA2,0x43,0x80,0x6F, /* 000007C0 "...9.C.o" */ + 0x56,0x80,0xE9,0xFF,0xFF,0xCD,0x0A,0xAC, /* 000007C8 "V......." */ + 0x6F,0x10,0x9F,0x6B,0xE0,0x06,0x3E,0x97, /* 000007D0 "o..k..>." */ + 0xD0,0xEB,0x3F,0xF0,0xBC,0x30,0x82,0xE7, /* 000007D8 "..?..0.." */ + 0x18,0xE1,0xDB,0x28,0xEE,0x84,0x03,0x36, /* 000007E0 "...(...6" */ + 0xA3,0x27,0x1C,0x04,0x38,0xFE,0x66,0x06, /* 000007E8 ".'..8.f." */ + 0x6B,0x0C,0x7D,0xA2,0xE8,0x8C,0x81,0xBB, /* 000007F0 "k.}....." */ + 0x9A,0x01,0x8F,0x1B,0x91,0x87,0xC0,0x4F, /* 000007F8 ".......O" */ + 0x13,0x1E,0x02,0x1F,0x40,0xAB,0xD3,0x23, /* 00000800 "....@..#" */ + 0x67,0x9F,0x53,0xC2,0x1D,0x07,0xF8,0x94, /* 00000808 "g.S....." */ + 0x70,0x03,0xE0,0xFF,0x7F,0x82,0x01,0x6E, /* 00000810 "p......n" */ + 0x9C,0xA8,0xE8,0x37,0x4E,0x80,0x10,0x20, /* 00000818 "...7N.. " */ + 0x11,0x5E,0x35,0x7D,0x88,0x79,0xD0,0xF4, /* 00000820 ".^5}.y.." */ + 0x60,0xDE,0x62,0x8C,0xF3,0xD6,0xF0,0xB2, /* 00000828 "`.b....." */ + 0xE9,0x83,0x8C,0xF1,0xC2,0x44,0x39,0x86, /* 00000830 ".....D9." */ + 0x43,0x8A,0x19,0xC5,0x88,0x41,0x42,0xBC, /* 00000838 "C....AB." */ + 0x71,0x1A,0xC3,0xA8,0xC1,0xC2,0x45,0x8F, /* 00000840 "q.....E." */ + 0xF0,0x20,0xC3,0xE2,0xDC,0x38,0x01,0x21, /* 00000848 ". ...8.!" */ + 0xFF,0xFF,0x83,0x0C,0x60,0xE5,0x68,0xE6, /* 00000850 "....`.h." */ + 0x83,0x08,0xFC,0xE3,0xC3,0x9B,0x42,0xF0, /* 00000858 "......B." */ + 0xA7,0x10,0x60,0x22,0xFE,0xBE,0x49,0x85, /* 00000860 "..`"..I." */ + 0xDF,0x37,0x51,0x63,0xB4,0xF8,0x85,0xEA, /* 00000868 ".7Qc...." */ + 0xFA,0xEC,0xB9,0x78,0xDA,0x96,0x7D,0xDB, /* 00000870 "...x..}." */ + 0x44,0x09,0xA6,0x90,0xA8,0x13,0x22,0x4A, /* 00000878 "D....."J" */ + 0xC6,0x09,0x91,0x82,0x18,0xD0,0x19,0x6F, /* 00000880 ".......o" */ + 0x9B,0x90,0x43,0xDD,0x36,0xA1,0xDF,0x1E, /* 00000888 "..C.6..." */ + 0x9E,0xE1,0xC1,0x79,0xD6,0x04,0xDB,0xFF, /* 00000890 "...y...." */ + 0xFF,0xAC,0x09,0x4C,0xA5,0x0D,0x1D,0x25, /* 00000898 "...L...%" */ + 0x66,0xE8,0x14,0xC4,0xF7,0x56,0x38,0x87, /* 000008A0 "f....V8." */ + 0x28,0x7C,0xB0,0xB3,0x26,0x28,0x4E,0x4C, /* 000008A8 "(|..&(NL" */ + 0xE0,0x99,0x3B,0xF6,0xA4,0x09,0xD8,0x89, /* 000008B0 "..;....." */ + 0x7C,0xD2,0x04,0x82,0xFF,0xFF,0xE3,0x18, /* 000008B8 "|......." */ + 0xD8,0x8F,0x54,0xB8,0xD3,0x00,0xDC,0x03, /* 000008C0 "..T....." */ + 0x88,0xC7,0x70,0x9C,0xEF,0x4F,0x06,0x79, /* 000008C8 "..p..O.y" */ + 0x1E,0xF1,0x81,0xC0,0x47,0x19,0xA6,0xD0, /* 000008D0 "....G..." */ + 0xA6,0x4F,0x8D,0x46,0xAD,0x1A,0x94,0xA9, /* 000008D8 ".O.F...." */ + 0x51,0xA6,0x41,0xAD,0x3E,0x95,0x1A,0x33, /* 000008E0 "Q.A.>..3" */ + 0x76,0xC0,0xB0,0x88,0xB5,0x6A,0xB0,0x0E, /* 000008E8 "v....j.." */ + 0xB5,0x5E,0x81,0x58,0xD2,0x13,0x43,0x20, /* 000008F0 ".^.X..C " */ + 0x16,0xE5,0x01,0x84,0xC5,0x35,0x01,0xC2, /* 000008F8 ".....5.." */ + 0x84,0xAF,0x4A,0x20,0x8E,0x0D,0x42,0xC5, /* 00000900 "..J ..B." */ + 0xEA,0x80,0x68,0x64,0x88,0x06,0x11,0x90, /* 00000908 "..hd...." */ + 0x43,0xF8,0x00,0x62,0x91,0x40,0x04,0xE4, /* 00000910 "C..b.@.." */ + 0xC8,0x4A,0x40,0x98,0x60,0x27,0x20,0x2C, /* 00000918 ".J@.`' ," */ + 0xF3,0xAB,0x4A,0x80,0x16,0x60,0x05,0x88, /* 00000920 "..J..`.." */ + 0xE9,0xD1,0x02,0xC4,0xD4,0x81,0x08,0xC8, /* 00000928 "........" */ + 0x29,0xCC,0x80,0x30,0x0D,0xAB,0x12,0x88, /* 00000930 ")..0...." */ + 0xF3,0x83,0xD0,0xD4,0x76,0x40,0x98,0x66, /* 00000938 "....v@.f" */ + 0x3D,0x20,0x2C,0xA9,0x1F,0x70,0x16,0x1B, /* 00000940 "= ,..p.." */ + 0x44,0x40,0x56,0x60,0x08,0x88,0xE9,0x01, /* 00000948 "D@V`...." */ + 0x11,0x90,0xFF,0xFF,0x14,0x29,0x57,0x4D, /* 00000950 ".....)WM" */ + 0x42,0x44,0x0B,0x49,0x4E,0x49,0x54,0x01, /* 00000958 "BD.INIT." */ + 0x47,0x55,0x49,0x44,0x0A,0x64,0x49,0x4E, /* 00000960 "GUID.dIN" */ + 0x53,0x54,0x68,0x4D,0x54,0x49,0x44,0x69, /* 00000968 "SThMTIDi" */ + 0x49,0x42,0x55,0x46,0x6A,0x45,0x58,0x45, /* 00000970 "IBUFjEXE" */ + 0x43,0xA4,0x4F,0x42,0x55,0x46,0x10,0x1A, /* 00000978 "C.OBUF.." */ + 0x5C,0x5F,0x47,0x50,0x45,0x14,0x13,0x5F, /* 00000980 "\_GPE.._" */ + 0x4C,0x31,0x38,0x08,0x86,0x5C,0x2E,0x5F, /* 00000988 "L18..\._" */ + 0x53,0x42,0x5F,0x41,0x4D,0x57,0x30,0x0A, /* 00000990 "SB_AMW0." */ + 0xD0, +}; -- 2.39.5