direct-io.hg

changeset 10435:e1c8212d78c3

[HVM] ACPI support patch 3 of 4: ACPI _PRT table.
Adds ACPI _PRT table for PCI IRQ routing table in PIC mode
and fixes the _PRT table in APIC mode

Signed-off-by: Tang Liang <tangliang@lenovo.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
author kaf24@firebug.cl.cam.ac.uk
date Sat Jun 17 09:06:46 2006 +0100 (2006-06-17)
parents 5c533b9e2d3f
children 58b374f76a71
files tools/firmware/acpi/acpi_dsdt.asl tools/firmware/acpi/acpi_dsdt.c
line diff
     1.1 --- a/tools/firmware/acpi/acpi_dsdt.asl	Sat Jun 17 09:05:34 2006 +0100
     1.2 +++ b/tools/firmware/acpi/acpi_dsdt.asl	Sat Jun 17 09:06:46 2006 +0100
     1.3 @@ -39,7 +39,23 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1, 
     1.4  
     1.5      }
     1.6  
     1.7 +/* Poweroff support - ties in with qemu emulation */
     1.8  
     1.9 +    Name (\_S5, Package (0x04)
    1.10 +    {
    1.11 +        0x07,
    1.12 +        0x07,
    1.13 +        0x00,
    1.14 +        0x00
    1.15 +    })
    1.16 +
    1.17 +
    1.18 +      	Name(PICD, 0)	
    1.19 +
    1.20 +	Method(_PIC, 1) { 
    1.21 + 
    1.22 +		Store(Arg0, PICD) 
    1.23 +	}
    1.24      Scope (\_SB)
    1.25      {
    1.26          Device (PCI0)
    1.27 @@ -48,6 +64,15 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1, 
    1.28              Name (_UID, 0x00)
    1.29              Name (_ADR, 0x00)
    1.30              Name (_BBN, 0x00)
    1.31 +            OperationRegion (PIRP, PCI_Config, 0x3c, 0x10)
    1.32 +           Field(PIRP, ByteAcc, NoLock, Preserve){        
    1.33 +          IRQ3,3,
    1.34 +          IRQ5,5,
    1.35 +          IRQ7,7,
    1.36 +          IRQ9,9,
    1.37 +          IRQA,10,
    1.38 +          IRQB,11
    1.39 +         }
    1.40   
    1.41              Method (_CRS, 0, NotSerialized)
    1.42              {
    1.43 @@ -121,7 +146,210 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1, 
    1.44                  })
    1.45                  Return (PRT0)
    1.46              }
    1.47 -   
    1.48 +	Name(BUFA, ResourceTemplate() {
    1.49 +                IRQ(Level, ActiveLow, Shared) {
    1.50 +                        3,4,5,6,7,10,11,12,14,15}		 
    1.51 +                }) 
    1.52 +
    1.53 +                Name(BUFB, Buffer(){
    1.54 +                0x23, 0x00, 0x00, 0x18,
    1.55 +                0x79, 0})
    1.56 +
    1.57 +                CreateWordField(BUFB, 0x01, IRQV)
    1.58 +		
    1.59 +                Name(BUFC, Buffer(){
    1.60 +                5, 7, 10, 11
    1.61 +                 })
    1.62 +                
    1.63 +                CreateByteField(BUFC, 0x01, PIQA)
    1.64 +                CreateByteField(BUFC, 0x01, PIQB)
    1.65 +                CreateByteField(BUFC, 0x01, PIQC)
    1.66 +                CreateByteField(BUFC, 0x01, PIQD)
    1.67 +                		
    1.68 +		Device(LNKA)	{
    1.69 +                Name(_HID, EISAID("PNP0C0F")) 	// PCI interrupt link
    1.70 +                Name(_UID, 1)
    1.71 +                Method(_STA, 0) {
    1.72 +                               And(PIRA, 0x80, Local0)
    1.73 +                        If(LEqual(Local0, 0x80)) {
    1.74 +                                Return(0x09)	
    1.75 +                                }
    1.76 +                        Else {
    1.77 +                                Return(0x0B)  	
    1.78 +                                }
    1.79 +                        }
    1.80 +
    1.81 +                Method(_PRS) {
    1.82 +
    1.83 +                        Return(BUFA)
    1.84 +                } // Method(_PRS)
    1.85 +
    1.86 +                Method(_DIS) {
    1.87 +                               Or(PIRA, 0x80, PIRA)
    1.88 +                }
    1.89 +
    1.90 +                Method(_CRS) {
    1.91 +                        And(PIRB, 0x0f, Local0)		 
    1.92 +                        ShiftLeft(0x1, Local0, IRQV)	 
    1.93 +                        Return(BUFB)			 
    1.94 +                } 
    1.95 +
    1.96 +                Method(_SRS, 1) {
    1.97 +                                CreateWordField(ARG0, 0x01, IRQ1)	 
    1.98 +                        FindSetRightBit(IRQ1, Local0)		 
    1.99 +                        Decrement(Local0)			 
   1.100 +                        Store(Local0, PIRA)			 
   1.101 +                 } // Method(_SRS)
   1.102 +        }
   1.103 +
   1.104 +        Device(LNKB)	{
   1.105 +                Name(_HID, EISAID("PNP0C0F")) 	 
   1.106 +                Name(_UID, 2)
   1.107 +                Method(_STA, 0) {
   1.108 +                               And(PIRB, 0x80, Local0)
   1.109 +                        If(LEqual(Local0, 0x80)) {
   1.110 +                                Return(0x09)	 
   1.111 +                                }
   1.112 +                        Else {
   1.113 +                                Return(0x0B)  	 
   1.114 +                                }
   1.115 +                        }
   1.116 +
   1.117 +                Method(_PRS) {
   1.118 +                                Return(BUFA)			 
   1.119 +                } // Method(_PRS)
   1.120 +
   1.121 +                Method(_DIS) {
   1.122 +
   1.123 +                               Or(PIRB, 0x80, PIRB)
   1.124 +                }
   1.125 +
   1.126 +                Method(_CRS) {
   1.127 +                        And(PIRB, 0x0f, Local0)		 
   1.128 +                        ShiftLeft(0x1, Local0, IRQV)	 
   1.129 +                        Return(BUFB)			 
   1.130 +                } // Method(_CRS)
   1.131 +
   1.132 +                Method(_SRS, 1) {
   1.133 +                                CreateWordField(ARG0, 0x01, IRQ1)	 
   1.134 +                        FindSetRightBit(IRQ1, Local0)		 
   1.135 +                        Decrement(Local0)			 
   1.136 +                        Store(Local0, PIRB)			 
   1.137 +                 } // Method(_SRS)
   1.138 +        }
   1.139 +
   1.140 +        Device(LNKC)	{
   1.141 +                Name(_HID, EISAID("PNP0C0F")) 	// PCI interrupt link
   1.142 +                Name(_UID, 3)
   1.143 +                Method(_STA, 0) {
   1.144 +                               And(PIRC, 0x80, Local0)
   1.145 +                        If(LEqual(Local0, 0x80)) {
   1.146 +                                Return(0x09)	 
   1.147 +                        }
   1.148 +                        Else {
   1.149 +                                Return(0x0B)  	 
   1.150 +                        }
   1.151 +                }
   1.152 +
   1.153 +                Method(_PRS) {				 
   1.154 +                        Return(BUFA)			 
   1.155 +                } // Method(_PRS)			 
   1.156 +
   1.157 +                Method(_DIS) {
   1.158 +
   1.159 +                               Or(PIRC, 0x80, PIRC)
   1.160 +                }
   1.161 +
   1.162 +                Method(_CRS) {
   1.163 +                        And(PIRC, 0x0f, Local0)		 
   1.164 +                        ShiftLeft(0x1, Local0, IRQV)	 
   1.165 +                        Return(BUFB)			 
   1.166 +                } // Method(_CRS)
   1.167 +
   1.168 +                Method(_SRS, 1) {
   1.169 +                                CreateWordField(ARG0, 0x01, IRQ1)	 
   1.170 +                        FindSetRightBit(IRQ1, Local0)		 
   1.171 +                        Decrement(Local0)			 
   1.172 +                        Store(Local0, PIRC)			 
   1.173 +                 } // Method(_SRS)
   1.174 +        }
   1.175 +
   1.176 +        Device(LNKD)	{
   1.177 +                Name(_HID, EISAID("PNP0C0F")) 	 
   1.178 +                Name(_UID, 4)
   1.179 +                Method(_STA, 0) {
   1.180 +                               And(PIRD, 0x80, Local0)
   1.181 +                        If(LEqual(Local0, 0x80)) {
   1.182 +                                Return(0x09)	 
   1.183 +                        }
   1.184 +                        Else {
   1.185 +                                Return(0x0B)  	 
   1.186 +                        }
   1.187 +                }
   1.188 +
   1.189 +                Method(_PRS) {				 
   1.190 +                        Return(BUFA)			 
   1.191 +                } // Method(_PRS)			 
   1.192 +
   1.193 +                Method(_DIS) {
   1.194 +                               Or(PIRD, 0x80, PIRD)
   1.195 +                }
   1.196 +
   1.197 +                Method(_CRS) {
   1.198 +                        And(PIRD, 0x0f, Local0)		 
   1.199 +                        ShiftLeft(0x1, Local0, IRQV)	 
   1.200 +                        Return(BUFB)			 
   1.201 +                } // Method(_CRS)
   1.202 +
   1.203 +                Method(_SRS, 1) {
   1.204 +                                CreateWordField(ARG0, 0x01, IRQ1)	 
   1.205 +                        FindSetRightBit(IRQ1, Local0)		 
   1.206 +                        Decrement(Local0)			 
   1.207 +                        Store(Local0, PIRD)			 
   1.208 +                 } // Method(_SRS)
   1.209 +        }
   1.210 +        Method(_PRT,0) {
   1.211 +			If(PICD) {Return(PRTA)}  
   1.212 +			Return (PRTP)  
   1.213 +		} // end _PRT
   1.214 +		
   1.215 +		
   1.216 +        Name(PRTP, Package(){
   1.217 +                        Package(){0x0000ffff, 0, \_SB.PCI0.LNKA, 0}, 	// Slot 1, INTA
   1.218 +                        Package(){0x0000ffff, 1, \_SB.PCI0.LNKB, 0}, 	// Slot 1, INTB
   1.219 +                        Package(){0x0000ffff, 2, \_SB.PCI0.LNKC, 0}, 	// Slot 1, INTC
   1.220 +                        Package(){0x0000ffff, 3, \_SB.PCI0.LNKD, 0}, 	// Slot 1, INTD
   1.221 +
   1.222 +                        Package(){0x0001ffff, 0, \_SB.PCI0.LNKB, 0}, 	// Slot 2, INTB
   1.223 +                        Package(){0x0001ffff, 1, \_SB.PCI0.LNKC, 0}, 	// Slot 2, INTC
   1.224 +                        Package(){0x0001ffff, 2, \_SB.PCI0.LNKD, 0}, 	// Slot 2, INTD
   1.225 +                        Package(){0x0001ffff, 3, \_SB.PCI0.LNKA, 0}, 	// Slot 2, INTA
   1.226 +                        
   1.227 +                        Package(){0x0002ffff, 0, \_SB.PCI0.LNKC, 0}, 	// Slot 3, INTC
   1.228 +                        Package(){0x0002ffff, 1, \_SB.PCI0.LNKD, 0}, 	// Slot 3, INTD
   1.229 +                        Package(){0x0002ffff, 2, \_SB.PCI0.LNKA, 0}, 	// Slot 3, INTA
   1.230 +                        Package(){0x0002ffff, 3, \_SB.PCI0.LNKB, 0}, 	// Slot 3, INTB
   1.231 +                        
   1.232 +                        Package(){0x0003ffff, 0, \_SB.PCI0.LNKD, 0}, 	// Slot 2, INTD
   1.233 +                        Package(){0x0003ffff, 1, \_SB.PCI0.LNKA, 0}, 	// Slot 2, INTA
   1.234 +                        Package(){0x0003ffff, 2, \_SB.PCI0.LNKB, 0}, 	// Slot 2, INTB
   1.235 +                        Package(){0x0003ffff, 3, \_SB.PCI0.LNKC, 0}, 	// Slot 2, INTC
   1.236 +                        
   1.237 +                        }
   1.238 +            )
   1.239 +	Name(PRTA, Package(){
   1.240 +                        Package(){0x0001ffff, 0, 0, 5}, 	// Device 1, INTA
   1.241 +
   1.242 +                        Package(){0x0002ffff, 0, 0, 7}, 	// Device 2, INTA
   1.243 +                       
   1.244 +                        Package(){0x0003ffff, 0, 0, 10}, 	// Device 3, INTA
   1.245 +
   1.246 +                        Package(){0x0003ffff, 0, 0, 11}, 	// Device 4, INTA
   1.247 +                                   
   1.248 +                        
   1.249 +                        }
   1.250 +            )
   1.251 +            
   1.252              Device (ISA)
   1.253              {
   1.254                  Name (_ADR, 0x00000000) /* device id, PCI bus num, ... */
     2.1 --- a/tools/firmware/acpi/acpi_dsdt.c	Sat Jun 17 09:05:34 2006 +0100
     2.2 +++ b/tools/firmware/acpi/acpi_dsdt.c	Sat Jun 17 09:06:46 2006 +0100
     2.3 @@ -5,15 +5,15 @@
     2.4   * Copyright (C) 2000 - 2005 Intel Corporation
     2.5   * Supports ACPI Specification Revision 3.0
     2.6   * 
     2.7 - * Compilation of "acpi_dsdt.asl" - Thu Jun 15 16:01:53 2006
     2.8 + * Compilation of "acpi_dsdt.asl" - Mon Jun 12 22:33:41 2006
     2.9   * 
    2.10   * C source code output
    2.11   *
    2.12   */
    2.13  unsigned char AmlCode[] = 
    2.14  {
    2.15 -    0x44,0x53,0x44,0x54,0xB1,0x04,0x00,0x00,  /* 00000000    "DSDT...." */
    2.16 -    0x01,0x13,0x49,0x4E,0x54,0x45,0x4C,0x00,  /* 00000008    "..INTEL." */
    2.17 +    0x44,0x53,0x44,0x54,0xC3,0x08,0x00,0x00,  /* 00000000    "DSDT...." */
    2.18 +    0x01,0x0C,0x49,0x4E,0x54,0x45,0x4C,0x00,  /* 00000008    "..INTEL." */
    2.19      0x69,0x6E,0x74,0x2D,0x78,0x65,0x6E,0x00,  /* 00000010    "int-xen." */
    2.20      0xD6,0x07,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    2.21      0x13,0x05,0x05,0x20,0x08,0x50,0x4D,0x42,  /* 00000020    "... .PMB" */
    2.22 @@ -30,138 +30,268 @@ unsigned char AmlCode[] =
    2.23      0x00,0x5B,0x83,0x0B,0x43,0x50,0x55,0x32,  /* 00000078    ".[..CPU2" */
    2.24      0x02,0x00,0x00,0x00,0x00,0x00,0x5B,0x83,  /* 00000080    "......[." */
    2.25      0x0B,0x43,0x50,0x55,0x33,0x03,0x00,0x00,  /* 00000088    ".CPU3..." */
    2.26 -    0x00,0x00,0x00,0x10,0x4D,0x41,0x5F,0x53,  /* 00000090    "....MA_S" */
    2.27 -    0x42,0x5F,0x5B,0x82,0x45,0x41,0x50,0x43,  /* 00000098    "B_[.EAPC" */
    2.28 -    0x49,0x30,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 000000A0    "I0._HID." */
    2.29 -    0x41,0xD0,0x0A,0x03,0x08,0x5F,0x55,0x49,  /* 000000A8    "A...._UI" */
    2.30 -    0x44,0x00,0x08,0x5F,0x41,0x44,0x52,0x00,  /* 000000B0    "D.._ADR." */
    2.31 -    0x08,0x5F,0x42,0x42,0x4E,0x00,0x14,0x48,  /* 000000B8    "._BBN..H" */
    2.32 -    0x0D,0x5F,0x43,0x52,0x53,0x00,0x08,0x50,  /* 000000C0    "._CRS..P" */
    2.33 -    0x52,0x54,0x30,0x11,0x46,0x0C,0x0A,0xC2,  /* 000000C8    "RT0.F..." */
    2.34 -    0x88,0x0D,0x00,0x02,0x0F,0x00,0x00,0x00,  /* 000000D0    "........" */
    2.35 -    0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x01,  /* 000000D8    "........" */
    2.36 -    0x47,0x01,0xF8,0x0C,0xF8,0x0C,0x01,0x08,  /* 000000E0    "G......." */
    2.37 -    0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,0x00,  /* 000000E8    "........" */
    2.38 -    0x00,0x00,0xF7,0x0C,0x00,0x00,0xF8,0x0C,  /* 000000F0    "........" */
    2.39 -    0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,0x00,  /* 000000F8    "........" */
    2.40 -    0x00,0x0D,0xFF,0x0F,0x00,0x00,0x00,0x03,  /* 00000100    "........" */
    2.41 -    0x88,0x0D,0x00,0x01,0x0D,0x03,0x00,0x00,  /* 00000108    "........" */
    2.42 -    0x00,0xC0,0x1F,0xC0,0x00,0x00,0x20,0x00,  /* 00000110    "...... ." */
    2.43 -    0x88,0x0D,0x00,0x01,0x0D,0x03,0x00,0x00,  /* 00000118    "........" */
    2.44 -    0x20,0xC0,0x3F,0xC0,0x00,0x00,0x10,0x00,  /* 00000120    " .?....." */
    2.45 -    0x87,0x17,0x00,0x00,0x0C,0x02,0x00,0x00,  /* 00000128    "........" */
    2.46 -    0x00,0x00,0x00,0x00,0x0C,0x00,0xFF,0xFF,  /* 00000130    "........" */
    2.47 -    0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000138    "........" */
    2.48 -    0x03,0x00,0x87,0x17,0x00,0x00,0x0D,0x03,  /* 00000140    "........" */
    2.49 -    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,  /* 00000148    "........" */
    2.50 -    0xFF,0xFF,0xFF,0xF1,0x00,0x00,0x00,0x00,  /* 00000150    "........" */
    2.51 -    0x00,0x00,0x00,0x02,0x87,0x17,0x00,0x00,  /* 00000158    "........" */
    2.52 -    0x0D,0x03,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000160    "........" */
    2.53 -    0x00,0xF2,0xFF,0x0F,0x00,0xF2,0x00,0x00,  /* 00000168    "........" */
    2.54 -    0x00,0x00,0x00,0x10,0x00,0x00,0x87,0x17,  /* 00000170    "........" */
    2.55 -    0x00,0x00,0x0D,0x03,0x00,0x00,0x00,0x00,  /* 00000178    "........" */
    2.56 -    0x00,0x10,0x00,0xF2,0x1F,0x10,0x00,0xF2,  /* 00000180    "........" */
    2.57 -    0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,  /* 00000188    ".... ..." */
    2.58 -    0x79,0x00,0xA4,0x50,0x52,0x54,0x30,0x5B,  /* 00000190    "y..PRT0[" */
    2.59 -    0x82,0x48,0x31,0x49,0x53,0x41,0x5F,0x08,  /* 00000198    ".H1ISA_." */
    2.60 -    0x5F,0x41,0x44,0x52,0x00,0x5B,0x80,0x50,  /* 000001A0    "_ADR.[.P" */
    2.61 -    0x49,0x52,0x51,0x02,0x0A,0x60,0x0A,0x04,  /* 000001A8    "IRQ..`.." */
    2.62 -    0x10,0x2E,0x5C,0x00,0x5B,0x81,0x29,0x5C,  /* 000001B0    "..\.[.)\" */
    2.63 -    0x2F,0x04,0x5F,0x53,0x42,0x5F,0x50,0x43,  /* 000001B8    "/._SB_PC" */
    2.64 -    0x49,0x30,0x49,0x53,0x41,0x5F,0x50,0x49,  /* 000001C0    "I0ISA_PI" */
    2.65 -    0x52,0x51,0x01,0x50,0x49,0x52,0x41,0x08,  /* 000001C8    "RQ.PIRA." */
    2.66 -    0x50,0x49,0x52,0x42,0x08,0x50,0x49,0x52,  /* 000001D0    "PIRB.PIR" */
    2.67 -    0x43,0x08,0x50,0x49,0x52,0x44,0x08,0x5B,  /* 000001D8    "C.PIRD.[" */
    2.68 -    0x82,0x46,0x0B,0x53,0x59,0x53,0x52,0x08,  /* 000001E0    ".F.SYSR." */
    2.69 -    0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,0x0C,  /* 000001E8    "_HID.A.." */
    2.70 -    0x02,0x08,0x5F,0x55,0x49,0x44,0x01,0x08,  /* 000001F0    ".._UID.." */
    2.71 -    0x43,0x52,0x53,0x5F,0x11,0x4E,0x08,0x0A,  /* 000001F8    "CRS_.N.." */
    2.72 -    0x8A,0x47,0x01,0x10,0x00,0x10,0x00,0x00,  /* 00000200    ".G......" */
    2.73 -    0x10,0x47,0x01,0x22,0x00,0x22,0x00,0x00,  /* 00000208    ".G.".".." */
    2.74 -    0x0C,0x47,0x01,0x30,0x00,0x30,0x00,0x00,  /* 00000210    ".G.0.0.." */
    2.75 -    0x10,0x47,0x01,0x44,0x00,0x44,0x00,0x00,  /* 00000218    ".G.D.D.." */
    2.76 -    0x1C,0x47,0x01,0x62,0x00,0x62,0x00,0x00,  /* 00000220    ".G.b.b.." */
    2.77 -    0x02,0x47,0x01,0x65,0x00,0x65,0x00,0x00,  /* 00000228    ".G.e.e.." */
    2.78 -    0x0B,0x47,0x01,0x72,0x00,0x72,0x00,0x00,  /* 00000230    ".G.r.r.." */
    2.79 -    0x0E,0x47,0x01,0x80,0x00,0x80,0x00,0x00,  /* 00000238    ".G......" */
    2.80 -    0x01,0x47,0x01,0x84,0x00,0x84,0x00,0x00,  /* 00000240    ".G......" */
    2.81 -    0x03,0x47,0x01,0x88,0x00,0x88,0x00,0x00,  /* 00000248    ".G......" */
    2.82 -    0x01,0x47,0x01,0x8C,0x00,0x8C,0x00,0x00,  /* 00000250    ".G......" */
    2.83 -    0x03,0x47,0x01,0x90,0x00,0x90,0x00,0x00,  /* 00000258    ".G......" */
    2.84 -    0x10,0x47,0x01,0xA2,0x00,0xA2,0x00,0x00,  /* 00000260    ".G......" */
    2.85 -    0x1C,0x47,0x01,0xE0,0x00,0xE0,0x00,0x00,  /* 00000268    ".G......" */
    2.86 -    0x10,0x47,0x01,0xA0,0x08,0xA0,0x08,0x00,  /* 00000270    ".G......" */
    2.87 -    0x04,0x47,0x01,0xC0,0x0C,0xC0,0x0C,0x00,  /* 00000278    ".G......" */
    2.88 -    0x10,0x47,0x01,0xD0,0x04,0xD0,0x04,0x00,  /* 00000280    ".G......" */
    2.89 -    0x02,0x79,0x00,0x14,0x0B,0x5F,0x43,0x52,  /* 00000288    ".y..._CR" */
    2.90 -    0x53,0x00,0xA4,0x43,0x52,0x53,0x5F,0x5B,  /* 00000290    "S..CRS_[" */
    2.91 -    0x82,0x2B,0x50,0x49,0x43,0x5F,0x08,0x5F,  /* 00000298    ".+PIC_._" */
    2.92 -    0x48,0x49,0x44,0x0B,0x41,0xD0,0x08,0x5F,  /* 000002A0    "HID.A.._" */
    2.93 -    0x43,0x52,0x53,0x11,0x18,0x0A,0x15,0x47,  /* 000002A8    "CRS....G" */
    2.94 -    0x01,0x20,0x00,0x20,0x00,0x01,0x02,0x47,  /* 000002B0    ". . ...G" */
    2.95 -    0x01,0xA0,0x00,0xA0,0x00,0x01,0x02,0x22,  /* 000002B8    "......."" */
    2.96 -    0x04,0x00,0x79,0x00,0x5B,0x82,0x47,0x05,  /* 000002C0    "..y.[.G." */
    2.97 -    0x44,0x4D,0x41,0x30,0x08,0x5F,0x48,0x49,  /* 000002C8    "DMA0._HI" */
    2.98 -    0x44,0x0C,0x41,0xD0,0x02,0x00,0x08,0x5F,  /* 000002D0    "D.A...._" */
    2.99 -    0x43,0x52,0x53,0x11,0x41,0x04,0x0A,0x3D,  /* 000002D8    "CRS.A..=" */
   2.100 -    0x2A,0x10,0x04,0x47,0x01,0x00,0x00,0x00,  /* 000002E0    "*..G...." */
   2.101 -    0x00,0x00,0x10,0x47,0x01,0x81,0x00,0x81,  /* 000002E8    "...G...." */
   2.102 -    0x00,0x00,0x03,0x47,0x01,0x87,0x00,0x87,  /* 000002F0    "...G...." */
   2.103 -    0x00,0x00,0x01,0x47,0x01,0x89,0x00,0x89,  /* 000002F8    "...G...." */
   2.104 -    0x00,0x00,0x03,0x47,0x01,0x8F,0x00,0x8F,  /* 00000300    "...G...." */
   2.105 -    0x00,0x00,0x01,0x47,0x01,0xC0,0x00,0xC0,  /* 00000308    "...G...." */
   2.106 -    0x00,0x00,0x20,0x47,0x01,0x80,0x04,0x80,  /* 00000310    ".. G...." */
   2.107 -    0x04,0x00,0x10,0x79,0x00,0x5B,0x82,0x25,  /* 00000318    "...y.[.%" */
   2.108 -    0x54,0x4D,0x52,0x5F,0x08,0x5F,0x48,0x49,  /* 00000320    "TMR_._HI" */
   2.109 -    0x44,0x0C,0x41,0xD0,0x01,0x00,0x08,0x5F,  /* 00000328    "D.A...._" */
   2.110 -    0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,  /* 00000330    "CRS....G" */
   2.111 -    0x01,0x40,0x00,0x40,0x00,0x00,0x04,0x22,  /* 00000338    ".@.@..."" */
   2.112 -    0x01,0x00,0x79,0x00,0x5B,0x82,0x25,0x52,  /* 00000340    "..y.[.%R" */
   2.113 -    0x54,0x43,0x5F,0x08,0x5F,0x48,0x49,0x44,  /* 00000348    "TC_._HID" */
   2.114 -    0x0C,0x41,0xD0,0x0B,0x00,0x08,0x5F,0x43,  /* 00000350    ".A...._C" */
   2.115 -    0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,0x01,  /* 00000358    "RS....G." */
   2.116 -    0x70,0x00,0x70,0x00,0x00,0x02,0x22,0x00,  /* 00000360    "p.p..."." */
   2.117 -    0x01,0x79,0x00,0x5B,0x82,0x22,0x53,0x50,  /* 00000368    ".y.[."SP" */
   2.118 -    0x4B,0x52,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 00000370    "KR._HID." */
   2.119 -    0x41,0xD0,0x08,0x00,0x08,0x5F,0x43,0x52,  /* 00000378    "A...._CR" */
   2.120 -    0x53,0x11,0x0D,0x0A,0x0A,0x47,0x01,0x61,  /* 00000380    "S....G.a" */
   2.121 -    0x00,0x61,0x00,0x00,0x01,0x79,0x00,0x5B,  /* 00000388    ".a...y.[" */
   2.122 -    0x82,0x31,0x50,0x53,0x32,0x4D,0x08,0x5F,  /* 00000390    ".1PS2M._" */
   2.123 -    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0F,0x13,  /* 00000398    "HID.A..." */
   2.124 -    0x08,0x5F,0x43,0x49,0x44,0x0C,0x41,0xD0,  /* 000003A0    "._CID.A." */
   2.125 -    0x0F,0x13,0x14,0x09,0x5F,0x53,0x54,0x41,  /* 000003A8    "...._STA" */
   2.126 -    0x00,0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,  /* 000003B0    "....._CR" */
   2.127 -    0x53,0x11,0x08,0x0A,0x05,0x22,0x00,0x10,  /* 000003B8    "S....".." */
   2.128 -    0x79,0x00,0x5B,0x82,0x42,0x04,0x50,0x53,  /* 000003C0    "y.[.B.PS" */
   2.129 -    0x32,0x4B,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 000003C8    "2K._HID." */
   2.130 -    0x41,0xD0,0x03,0x03,0x08,0x5F,0x43,0x49,  /* 000003D0    "A...._CI" */
   2.131 -    0x44,0x0C,0x41,0xD0,0x03,0x0B,0x14,0x09,  /* 000003D8    "D.A....." */
   2.132 -    0x5F,0x53,0x54,0x41,0x00,0xA4,0x0A,0x0F,  /* 000003E0    "_STA...." */
   2.133 -    0x08,0x5F,0x43,0x52,0x53,0x11,0x18,0x0A,  /* 000003E8    "._CRS..." */
   2.134 -    0x15,0x47,0x01,0x60,0x00,0x60,0x00,0x00,  /* 000003F0    ".G.`.`.." */
   2.135 -    0x01,0x47,0x01,0x64,0x00,0x64,0x00,0x00,  /* 000003F8    ".G.d.d.." */
   2.136 -    0x01,0x22,0x02,0x00,0x79,0x00,0x5B,0x82,  /* 00000400    "."..y.[." */
   2.137 -    0x3A,0x46,0x44,0x43,0x30,0x08,0x5F,0x48,  /* 00000408    ":FDC0._H" */
   2.138 -    0x49,0x44,0x0C,0x41,0xD0,0x07,0x00,0x14,  /* 00000410    "ID.A...." */
   2.139 -    0x09,0x5F,0x53,0x54,0x41,0x00,0xA4,0x0A,  /* 00000418    "._STA..." */
   2.140 -    0x0F,0x08,0x5F,0x43,0x52,0x53,0x11,0x1B,  /* 00000420    ".._CRS.." */
   2.141 -    0x0A,0x18,0x47,0x01,0xF0,0x03,0xF0,0x03,  /* 00000428    "..G....." */
   2.142 -    0x01,0x06,0x47,0x01,0xF7,0x03,0xF7,0x03,  /* 00000430    "..G....." */
   2.143 -    0x01,0x01,0x22,0x40,0x00,0x2A,0x04,0x00,  /* 00000438    ".."@.*.." */
   2.144 -    0x79,0x00,0x5B,0x82,0x35,0x55,0x41,0x52,  /* 00000440    "y.[.5UAR" */
   2.145 -    0x31,0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,  /* 00000448    "1._HID.A" */
   2.146 -    0xD0,0x05,0x01,0x08,0x5F,0x55,0x49,0x44,  /* 00000450    "...._UID" */
   2.147 -    0x01,0x14,0x09,0x5F,0x53,0x54,0x41,0x00,  /* 00000458    "..._STA." */
   2.148 -    0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,  /* 00000460    "...._CRS" */
   2.149 -    0x11,0x10,0x0A,0x0D,0x47,0x01,0xF8,0x03,  /* 00000468    "....G..." */
   2.150 -    0xF8,0x03,0x01,0x08,0x22,0x10,0x00,0x79,  /* 00000470    "...."..y" */
   2.151 -    0x00,0x5B,0x82,0x36,0x55,0x41,0x52,0x32,  /* 00000478    ".[.6UAR2" */
   2.152 -    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 00000480    "._HID.A." */
   2.153 -    0x05,0x01,0x08,0x5F,0x55,0x49,0x44,0x0A,  /* 00000488    "..._UID." */
   2.154 -    0x02,0x14,0x09,0x5F,0x53,0x54,0x41,0x00,  /* 00000490    "..._STA." */
   2.155 -    0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,  /* 00000498    "...._CRS" */
   2.156 -    0x11,0x10,0x0A,0x0D,0x47,0x01,0xF8,0x02,  /* 000004A0    "....G..." */
   2.157 -    0xF8,0x02,0x01,0x08,0x22,0x08,0x00,0x79,  /* 000004A8    "...."..y" */
   2.158 -    0x00,
   2.159 +    0x00,0x00,0x00,0x08,0x5F,0x53,0x35,0x5F,  /* 00000090    "...._S5_" */
   2.160 +    0x12,0x08,0x04,0x0A,0x07,0x0A,0x07,0x00,  /* 00000098    "........" */
   2.161 +    0x00,0x08,0x50,0x49,0x43,0x44,0x00,0x14,  /* 000000A0    "..PICD.." */
   2.162 +    0x0C,0x5F,0x50,0x49,0x43,0x01,0x70,0x68,  /* 000000A8    "._PIC.ph" */
   2.163 +    0x50,0x49,0x43,0x44,0x10,0x4E,0x80,0x5F,  /* 000000B0    "PICD.N._" */
   2.164 +    0x53,0x42,0x5F,0x5B,0x82,0x46,0x80,0x50,  /* 000000B8    "SB_[.F.P" */
   2.165 +    0x43,0x49,0x30,0x08,0x5F,0x48,0x49,0x44,  /* 000000C0    "CI0._HID" */
   2.166 +    0x0C,0x41,0xD0,0x0A,0x03,0x08,0x5F,0x55,  /* 000000C8    ".A...._U" */
   2.167 +    0x49,0x44,0x00,0x08,0x5F,0x41,0x44,0x52,  /* 000000D0    "ID.._ADR" */
   2.168 +    0x00,0x08,0x5F,0x42,0x42,0x4E,0x00,0x5B,  /* 000000D8    ".._BBN.[" */
   2.169 +    0x80,0x50,0x49,0x52,0x50,0x02,0x0A,0x3C,  /* 000000E0    ".PIRP..<" */
   2.170 +    0x0A,0x10,0x5B,0x81,0x24,0x50,0x49,0x52,  /* 000000E8    "..[.$PIR" */
   2.171 +    0x50,0x01,0x49,0x52,0x51,0x33,0x03,0x49,  /* 000000F0    "P.IRQ3.I" */
   2.172 +    0x52,0x51,0x35,0x05,0x49,0x52,0x51,0x37,  /* 000000F8    "RQ5.IRQ7" */
   2.173 +    0x07,0x49,0x52,0x51,0x39,0x09,0x49,0x52,  /* 00000100    ".IRQ9.IR" */
   2.174 +    0x51,0x41,0x0A,0x49,0x52,0x51,0x42,0x0B,  /* 00000108    "QA.IRQB." */
   2.175 +    0x14,0x48,0x0D,0x5F,0x43,0x52,0x53,0x00,  /* 00000110    ".H._CRS." */
   2.176 +    0x08,0x50,0x52,0x54,0x30,0x11,0x46,0x0C,  /* 00000118    ".PRT0.F." */
   2.177 +    0x0A,0xC2,0x88,0x0D,0x00,0x02,0x0F,0x00,  /* 00000120    "........" */
   2.178 +    0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,  /* 00000128    "........" */
   2.179 +    0x00,0x01,0x47,0x01,0xF8,0x0C,0xF8,0x0C,  /* 00000130    "..G....." */
   2.180 +    0x01,0x08,0x88,0x0D,0x00,0x01,0x0C,0x03,  /* 00000138    "........" */
   2.181 +    0x00,0x00,0x00,0x00,0xF7,0x0C,0x00,0x00,  /* 00000140    "........" */
   2.182 +    0xF8,0x0C,0x88,0x0D,0x00,0x01,0x0C,0x03,  /* 00000148    "........" */
   2.183 +    0x00,0x00,0x00,0x0D,0xFF,0x0F,0x00,0x00,  /* 00000150    "........" */
   2.184 +    0x00,0x03,0x88,0x0D,0x00,0x01,0x0D,0x03,  /* 00000158    "........" */
   2.185 +    0x00,0x00,0x00,0xC0,0x1F,0xC0,0x00,0x00,  /* 00000160    "........" */
   2.186 +    0x20,0x00,0x88,0x0D,0x00,0x01,0x0D,0x03,  /* 00000168    " ......." */
   2.187 +    0x00,0x00,0x20,0xC0,0x3F,0xC0,0x00,0x00,  /* 00000170    ".. .?..." */
   2.188 +    0x10,0x00,0x87,0x17,0x00,0x00,0x0C,0x02,  /* 00000178    "........" */
   2.189 +    0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,  /* 00000180    "........" */
   2.190 +    0xFF,0xFF,0x0F,0x00,0x00,0x00,0x00,0x00,  /* 00000188    "........" */
   2.191 +    0x00,0x00,0x03,0x00,0x87,0x17,0x00,0x00,  /* 00000190    "........" */
   2.192 +    0x0D,0x03,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000198    "........" */
   2.193 +    0x00,0xF0,0xFF,0xFF,0xFF,0xF1,0x00,0x00,  /* 000001A0    "........" */
   2.194 +    0x00,0x00,0x00,0x00,0x00,0x02,0x87,0x17,  /* 000001A8    "........" */
   2.195 +    0x00,0x00,0x0D,0x03,0x00,0x00,0x00,0x00,  /* 000001B0    "........" */
   2.196 +    0x00,0x00,0x00,0xF2,0xFF,0x0F,0x00,0xF2,  /* 000001B8    "........" */
   2.197 +    0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,  /* 000001C0    "........" */
   2.198 +    0x87,0x17,0x00,0x00,0x0D,0x03,0x00,0x00,  /* 000001C8    "........" */
   2.199 +    0x00,0x00,0x00,0x10,0x00,0xF2,0x1F,0x10,  /* 000001D0    "........" */
   2.200 +    0x00,0xF2,0x00,0x00,0x00,0x00,0x20,0x00,  /* 000001D8    "...... ." */
   2.201 +    0x00,0x00,0x79,0x00,0xA4,0x50,0x52,0x54,  /* 000001E0    "..y..PRT" */
   2.202 +    0x30,0x08,0x42,0x55,0x46,0x41,0x11,0x09,  /* 000001E8    "0.BUFA.." */
   2.203 +    0x0A,0x06,0x23,0xF8,0xDC,0x18,0x79,0x00,  /* 000001F0    "..#...y." */
   2.204 +    0x08,0x42,0x55,0x46,0x42,0x11,0x09,0x0A,  /* 000001F8    ".BUFB..." */
   2.205 +    0x06,0x23,0x00,0x00,0x18,0x79,0x00,0x8B,  /* 00000200    ".#...y.." */
   2.206 +    0x42,0x55,0x46,0x42,0x01,0x49,0x52,0x51,  /* 00000208    "BUFB.IRQ" */
   2.207 +    0x56,0x08,0x42,0x55,0x46,0x43,0x11,0x07,  /* 00000210    "V.BUFC.." */
   2.208 +    0x0A,0x04,0x05,0x07,0x0A,0x0B,0x8C,0x42,  /* 00000218    ".......B" */
   2.209 +    0x55,0x46,0x43,0x01,0x50,0x49,0x51,0x41,  /* 00000220    "UFC.PIQA" */
   2.210 +    0x8C,0x42,0x55,0x46,0x43,0x01,0x50,0x49,  /* 00000228    ".BUFC.PI" */
   2.211 +    0x51,0x42,0x8C,0x42,0x55,0x46,0x43,0x01,  /* 00000230    "QB.BUFC." */
   2.212 +    0x50,0x49,0x51,0x43,0x8C,0x42,0x55,0x46,  /* 00000238    "PIQC.BUF" */
   2.213 +    0x43,0x01,0x50,0x49,0x51,0x44,0x5B,0x82,  /* 00000240    "C.PIQD[." */
   2.214 +    0x48,0x08,0x4C,0x4E,0x4B,0x41,0x08,0x5F,  /* 00000248    "H.LNKA._" */
   2.215 +    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0C,0x0F,  /* 00000250    "HID.A..." */
   2.216 +    0x08,0x5F,0x55,0x49,0x44,0x01,0x14,0x1C,  /* 00000258    "._UID..." */
   2.217 +    0x5F,0x53,0x54,0x41,0x00,0x7B,0x50,0x49,  /* 00000260    "_STA.{PI" */
   2.218 +    0x52,0x41,0x0A,0x80,0x60,0xA0,0x08,0x93,  /* 00000268    "RA..`..." */
   2.219 +    0x60,0x0A,0x80,0xA4,0x0A,0x09,0xA1,0x04,  /* 00000270    "`......." */
   2.220 +    0xA4,0x0A,0x0B,0x14,0x0B,0x5F,0x50,0x52,  /* 00000278    "....._PR" */
   2.221 +    0x53,0x00,0xA4,0x42,0x55,0x46,0x41,0x14,  /* 00000280    "S..BUFA." */
   2.222 +    0x11,0x5F,0x44,0x49,0x53,0x00,0x7D,0x50,  /* 00000288    "._DIS.}P" */
   2.223 +    0x49,0x52,0x41,0x0A,0x80,0x50,0x49,0x52,  /* 00000290    "IRA..PIR" */
   2.224 +    0x41,0x14,0x1A,0x5F,0x43,0x52,0x53,0x00,  /* 00000298    "A.._CRS." */
   2.225 +    0x7B,0x50,0x49,0x52,0x42,0x0A,0x0F,0x60,  /* 000002A0    "{PIRB..`" */
   2.226 +    0x79,0x01,0x60,0x49,0x52,0x51,0x56,0xA4,  /* 000002A8    "y.`IRQV." */
   2.227 +    0x42,0x55,0x46,0x42,0x14,0x1B,0x5F,0x53,  /* 000002B0    "BUFB.._S" */
   2.228 +    0x52,0x53,0x01,0x8B,0x68,0x01,0x49,0x52,  /* 000002B8    "RS..h.IR" */
   2.229 +    0x51,0x31,0x82,0x49,0x52,0x51,0x31,0x60,  /* 000002C0    "Q1.IRQ1`" */
   2.230 +    0x76,0x60,0x70,0x60,0x50,0x49,0x52,0x41,  /* 000002C8    "v`p`PIRA" */
   2.231 +    0x5B,0x82,0x49,0x08,0x4C,0x4E,0x4B,0x42,  /* 000002D0    "[.I.LNKB" */
   2.232 +    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 000002D8    "._HID.A." */
   2.233 +    0x0C,0x0F,0x08,0x5F,0x55,0x49,0x44,0x0A,  /* 000002E0    "..._UID." */
   2.234 +    0x02,0x14,0x1C,0x5F,0x53,0x54,0x41,0x00,  /* 000002E8    "..._STA." */
   2.235 +    0x7B,0x50,0x49,0x52,0x42,0x0A,0x80,0x60,  /* 000002F0    "{PIRB..`" */
   2.236 +    0xA0,0x08,0x93,0x60,0x0A,0x80,0xA4,0x0A,  /* 000002F8    "...`...." */
   2.237 +    0x09,0xA1,0x04,0xA4,0x0A,0x0B,0x14,0x0B,  /* 00000300    "........" */
   2.238 +    0x5F,0x50,0x52,0x53,0x00,0xA4,0x42,0x55,  /* 00000308    "_PRS..BU" */
   2.239 +    0x46,0x41,0x14,0x11,0x5F,0x44,0x49,0x53,  /* 00000310    "FA.._DIS" */
   2.240 +    0x00,0x7D,0x50,0x49,0x52,0x42,0x0A,0x80,  /* 00000318    ".}PIRB.." */
   2.241 +    0x50,0x49,0x52,0x42,0x14,0x1A,0x5F,0x43,  /* 00000320    "PIRB.._C" */
   2.242 +    0x52,0x53,0x00,0x7B,0x50,0x49,0x52,0x42,  /* 00000328    "RS.{PIRB" */
   2.243 +    0x0A,0x0F,0x60,0x79,0x01,0x60,0x49,0x52,  /* 00000330    "..`y.`IR" */
   2.244 +    0x51,0x56,0xA4,0x42,0x55,0x46,0x42,0x14,  /* 00000338    "QV.BUFB." */
   2.245 +    0x1B,0x5F,0x53,0x52,0x53,0x01,0x8B,0x68,  /* 00000340    "._SRS..h" */
   2.246 +    0x01,0x49,0x52,0x51,0x31,0x82,0x49,0x52,  /* 00000348    ".IRQ1.IR" */
   2.247 +    0x51,0x31,0x60,0x76,0x60,0x70,0x60,0x50,  /* 00000350    "Q1`v`p`P" */
   2.248 +    0x49,0x52,0x42,0x5B,0x82,0x49,0x08,0x4C,  /* 00000358    "IRB[.I.L" */
   2.249 +    0x4E,0x4B,0x43,0x08,0x5F,0x48,0x49,0x44,  /* 00000360    "NKC._HID" */
   2.250 +    0x0C,0x41,0xD0,0x0C,0x0F,0x08,0x5F,0x55,  /* 00000368    ".A...._U" */
   2.251 +    0x49,0x44,0x0A,0x03,0x14,0x1C,0x5F,0x53,  /* 00000370    "ID...._S" */
   2.252 +    0x54,0x41,0x00,0x7B,0x50,0x49,0x52,0x43,  /* 00000378    "TA.{PIRC" */
   2.253 +    0x0A,0x80,0x60,0xA0,0x08,0x93,0x60,0x0A,  /* 00000380    "..`...`." */
   2.254 +    0x80,0xA4,0x0A,0x09,0xA1,0x04,0xA4,0x0A,  /* 00000388    "........" */
   2.255 +    0x0B,0x14,0x0B,0x5F,0x50,0x52,0x53,0x00,  /* 00000390    "..._PRS." */
   2.256 +    0xA4,0x42,0x55,0x46,0x41,0x14,0x11,0x5F,  /* 00000398    ".BUFA.._" */
   2.257 +    0x44,0x49,0x53,0x00,0x7D,0x50,0x49,0x52,  /* 000003A0    "DIS.}PIR" */
   2.258 +    0x43,0x0A,0x80,0x50,0x49,0x52,0x43,0x14,  /* 000003A8    "C..PIRC." */
   2.259 +    0x1A,0x5F,0x43,0x52,0x53,0x00,0x7B,0x50,  /* 000003B0    "._CRS.{P" */
   2.260 +    0x49,0x52,0x43,0x0A,0x0F,0x60,0x79,0x01,  /* 000003B8    "IRC..`y." */
   2.261 +    0x60,0x49,0x52,0x51,0x56,0xA4,0x42,0x55,  /* 000003C0    "`IRQV.BU" */
   2.262 +    0x46,0x42,0x14,0x1B,0x5F,0x53,0x52,0x53,  /* 000003C8    "FB.._SRS" */
   2.263 +    0x01,0x8B,0x68,0x01,0x49,0x52,0x51,0x31,  /* 000003D0    "..h.IRQ1" */
   2.264 +    0x82,0x49,0x52,0x51,0x31,0x60,0x76,0x60,  /* 000003D8    ".IRQ1`v`" */
   2.265 +    0x70,0x60,0x50,0x49,0x52,0x43,0x5B,0x82,  /* 000003E0    "p`PIRC[." */
   2.266 +    0x49,0x08,0x4C,0x4E,0x4B,0x44,0x08,0x5F,  /* 000003E8    "I.LNKD._" */
   2.267 +    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0C,0x0F,  /* 000003F0    "HID.A..." */
   2.268 +    0x08,0x5F,0x55,0x49,0x44,0x0A,0x04,0x14,  /* 000003F8    "._UID..." */
   2.269 +    0x1C,0x5F,0x53,0x54,0x41,0x00,0x7B,0x50,  /* 00000400    "._STA.{P" */
   2.270 +    0x49,0x52,0x44,0x0A,0x80,0x60,0xA0,0x08,  /* 00000408    "IRD..`.." */
   2.271 +    0x93,0x60,0x0A,0x80,0xA4,0x0A,0x09,0xA1,  /* 00000410    ".`......" */
   2.272 +    0x04,0xA4,0x0A,0x0B,0x14,0x0B,0x5F,0x50,  /* 00000418    "......_P" */
   2.273 +    0x52,0x53,0x00,0xA4,0x42,0x55,0x46,0x41,  /* 00000420    "RS..BUFA" */
   2.274 +    0x14,0x11,0x5F,0x44,0x49,0x53,0x00,0x7D,  /* 00000428    ".._DIS.}" */
   2.275 +    0x50,0x49,0x52,0x44,0x0A,0x80,0x50,0x49,  /* 00000430    "PIRD..PI" */
   2.276 +    0x52,0x44,0x14,0x1A,0x5F,0x43,0x52,0x53,  /* 00000438    "RD.._CRS" */
   2.277 +    0x00,0x7B,0x50,0x49,0x52,0x44,0x0A,0x0F,  /* 00000440    ".{PIRD.." */
   2.278 +    0x60,0x79,0x01,0x60,0x49,0x52,0x51,0x56,  /* 00000448    "`y.`IRQV" */
   2.279 +    0xA4,0x42,0x55,0x46,0x42,0x14,0x1B,0x5F,  /* 00000450    ".BUFB.._" */
   2.280 +    0x53,0x52,0x53,0x01,0x8B,0x68,0x01,0x49,  /* 00000458    "SRS..h.I" */
   2.281 +    0x52,0x51,0x31,0x82,0x49,0x52,0x51,0x31,  /* 00000460    "RQ1.IRQ1" */
   2.282 +    0x60,0x76,0x60,0x70,0x60,0x50,0x49,0x52,  /* 00000468    "`v`p`PIR" */
   2.283 +    0x44,0x14,0x16,0x5F,0x50,0x52,0x54,0x00,  /* 00000470    "D.._PRT." */
   2.284 +    0xA0,0x0A,0x50,0x49,0x43,0x44,0xA4,0x50,  /* 00000478    "..PICD.P" */
   2.285 +    0x52,0x54,0x41,0xA4,0x50,0x52,0x54,0x50,  /* 00000480    "RTA.PRTP" */
   2.286 +    0x08,0x50,0x52,0x54,0x50,0x12,0x43,0x0E,  /* 00000488    ".PRTP.C." */
   2.287 +    0x10,0x12,0x0B,0x04,0x0B,0xFF,0xFF,0x00,  /* 00000490    "........" */
   2.288 +    0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0B,0x04,  /* 00000498    "LNKA...." */
   2.289 +    0x0B,0xFF,0xFF,0x01,0x4C,0x4E,0x4B,0x42,  /* 000004A0    "....LNKB" */
   2.290 +    0x00,0x12,0x0C,0x04,0x0B,0xFF,0xFF,0x0A,  /* 000004A8    "........" */
   2.291 +    0x02,0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0C,  /* 000004B0    ".LNKC..." */
   2.292 +    0x04,0x0B,0xFF,0xFF,0x0A,0x03,0x4C,0x4E,  /* 000004B8    "......LN" */
   2.293 +    0x4B,0x44,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000004C0    "KD......" */
   2.294 +    0xFF,0x01,0x00,0x00,0x4C,0x4E,0x4B,0x42,  /* 000004C8    "....LNKB" */
   2.295 +    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x01,  /* 000004D0    "........" */
   2.296 +    0x00,0x01,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 000004D8    "..LNKC.." */
   2.297 +    0x0E,0x04,0x0C,0xFF,0xFF,0x01,0x00,0x0A,  /* 000004E0    "........" */
   2.298 +    0x02,0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0E,  /* 000004E8    ".LNKD..." */
   2.299 +    0x04,0x0C,0xFF,0xFF,0x01,0x00,0x0A,0x03,  /* 000004F0    "........" */
   2.300 +    0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0D,0x04,  /* 000004F8    "LNKA...." */
   2.301 +    0x0C,0xFF,0xFF,0x02,0x00,0x00,0x4C,0x4E,  /* 00000500    "......LN" */
   2.302 +    0x4B,0x43,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000508    "KC......" */
   2.303 +    0xFF,0x02,0x00,0x01,0x4C,0x4E,0x4B,0x44,  /* 00000510    "....LNKD" */
   2.304 +    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x02,  /* 00000518    "........" */
   2.305 +    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x41,0x00,  /* 00000520    "...LNKA." */
   2.306 +    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x02,0x00,  /* 00000528    "........" */
   2.307 +    0x0A,0x03,0x4C,0x4E,0x4B,0x42,0x00,0x12,  /* 00000530    "..LNKB.." */
   2.308 +    0x0D,0x04,0x0C,0xFF,0xFF,0x03,0x00,0x00,  /* 00000538    "........" */
   2.309 +    0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0D,0x04,  /* 00000540    "LNKD...." */
   2.310 +    0x0C,0xFF,0xFF,0x03,0x00,0x01,0x4C,0x4E,  /* 00000548    "......LN" */
   2.311 +    0x4B,0x41,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000550    "KA......" */
   2.312 +    0xFF,0x03,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000558    ".....LNK" */
   2.313 +    0x42,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000560    "B......." */
   2.314 +    0x03,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x43,  /* 00000568    "....LNKC" */
   2.315 +    0x00,0x08,0x50,0x52,0x54,0x41,0x12,0x32,  /* 00000570    "..PRTA.2" */
   2.316 +    0x04,0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x01,  /* 00000578    "........" */
   2.317 +    0x00,0x00,0x00,0x0A,0x05,0x12,0x0B,0x04,  /* 00000580    "........" */
   2.318 +    0x0C,0xFF,0xFF,0x02,0x00,0x00,0x00,0x0A,  /* 00000588    "........" */
   2.319 +    0x07,0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x03,  /* 00000590    "........" */
   2.320 +    0x00,0x00,0x00,0x0A,0x0A,0x12,0x0B,0x04,  /* 00000598    "........" */
   2.321 +    0x0C,0xFF,0xFF,0x03,0x00,0x00,0x00,0x0A,  /* 000005A0    "........" */
   2.322 +    0x0B,0x5B,0x82,0x48,0x31,0x49,0x53,0x41,  /* 000005A8    ".[.H1ISA" */
   2.323 +    0x5F,0x08,0x5F,0x41,0x44,0x52,0x00,0x5B,  /* 000005B0    "_._ADR.[" */
   2.324 +    0x80,0x50,0x49,0x52,0x51,0x02,0x0A,0x60,  /* 000005B8    ".PIRQ..`" */
   2.325 +    0x0A,0x04,0x10,0x2E,0x5C,0x00,0x5B,0x81,  /* 000005C0    "....\.[." */
   2.326 +    0x29,0x5C,0x2F,0x04,0x5F,0x53,0x42,0x5F,  /* 000005C8    ")\/._SB_" */
   2.327 +    0x50,0x43,0x49,0x30,0x49,0x53,0x41,0x5F,  /* 000005D0    "PCI0ISA_" */
   2.328 +    0x50,0x49,0x52,0x51,0x01,0x50,0x49,0x52,  /* 000005D8    "PIRQ.PIR" */
   2.329 +    0x41,0x08,0x50,0x49,0x52,0x42,0x08,0x50,  /* 000005E0    "A.PIRB.P" */
   2.330 +    0x49,0x52,0x43,0x08,0x50,0x49,0x52,0x44,  /* 000005E8    "IRC.PIRD" */
   2.331 +    0x08,0x5B,0x82,0x46,0x0B,0x53,0x59,0x53,  /* 000005F0    ".[.F.SYS" */
   2.332 +    0x52,0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,  /* 000005F8    "R._HID.A" */
   2.333 +    0xD0,0x0C,0x02,0x08,0x5F,0x55,0x49,0x44,  /* 00000600    "...._UID" */
   2.334 +    0x01,0x08,0x43,0x52,0x53,0x5F,0x11,0x4E,  /* 00000608    "..CRS_.N" */
   2.335 +    0x08,0x0A,0x8A,0x47,0x01,0x10,0x00,0x10,  /* 00000610    "...G...." */
   2.336 +    0x00,0x00,0x10,0x47,0x01,0x22,0x00,0x22,  /* 00000618    "...G."."" */
   2.337 +    0x00,0x00,0x0C,0x47,0x01,0x30,0x00,0x30,  /* 00000620    "...G.0.0" */
   2.338 +    0x00,0x00,0x10,0x47,0x01,0x44,0x00,0x44,  /* 00000628    "...G.D.D" */
   2.339 +    0x00,0x00,0x1C,0x47,0x01,0x62,0x00,0x62,  /* 00000630    "...G.b.b" */
   2.340 +    0x00,0x00,0x02,0x47,0x01,0x65,0x00,0x65,  /* 00000638    "...G.e.e" */
   2.341 +    0x00,0x00,0x0B,0x47,0x01,0x72,0x00,0x72,  /* 00000640    "...G.r.r" */
   2.342 +    0x00,0x00,0x0E,0x47,0x01,0x80,0x00,0x80,  /* 00000648    "...G...." */
   2.343 +    0x00,0x00,0x01,0x47,0x01,0x84,0x00,0x84,  /* 00000650    "...G...." */
   2.344 +    0x00,0x00,0x03,0x47,0x01,0x88,0x00,0x88,  /* 00000658    "...G...." */
   2.345 +    0x00,0x00,0x01,0x47,0x01,0x8C,0x00,0x8C,  /* 00000660    "...G...." */
   2.346 +    0x00,0x00,0x03,0x47,0x01,0x90,0x00,0x90,  /* 00000668    "...G...." */
   2.347 +    0x00,0x00,0x10,0x47,0x01,0xA2,0x00,0xA2,  /* 00000670    "...G...." */
   2.348 +    0x00,0x00,0x1C,0x47,0x01,0xE0,0x00,0xE0,  /* 00000678    "...G...." */
   2.349 +    0x00,0x00,0x10,0x47,0x01,0xA0,0x08,0xA0,  /* 00000680    "...G...." */
   2.350 +    0x08,0x00,0x04,0x47,0x01,0xC0,0x0C,0xC0,  /* 00000688    "...G...." */
   2.351 +    0x0C,0x00,0x10,0x47,0x01,0xD0,0x04,0xD0,  /* 00000690    "...G...." */
   2.352 +    0x04,0x00,0x02,0x79,0x00,0x14,0x0B,0x5F,  /* 00000698    "...y..._" */
   2.353 +    0x43,0x52,0x53,0x00,0xA4,0x43,0x52,0x53,  /* 000006A0    "CRS..CRS" */
   2.354 +    0x5F,0x5B,0x82,0x2B,0x50,0x49,0x43,0x5F,  /* 000006A8    "_[.+PIC_" */
   2.355 +    0x08,0x5F,0x48,0x49,0x44,0x0B,0x41,0xD0,  /* 000006B0    "._HID.A." */
   2.356 +    0x08,0x5F,0x43,0x52,0x53,0x11,0x18,0x0A,  /* 000006B8    "._CRS..." */
   2.357 +    0x15,0x47,0x01,0x20,0x00,0x20,0x00,0x01,  /* 000006C0    ".G. . .." */
   2.358 +    0x02,0x47,0x01,0xA0,0x00,0xA0,0x00,0x01,  /* 000006C8    ".G......" */
   2.359 +    0x02,0x22,0x04,0x00,0x79,0x00,0x5B,0x82,  /* 000006D0    "."..y.[." */
   2.360 +    0x47,0x05,0x44,0x4D,0x41,0x30,0x08,0x5F,  /* 000006D8    "G.DMA0._" */
   2.361 +    0x48,0x49,0x44,0x0C,0x41,0xD0,0x02,0x00,  /* 000006E0    "HID.A..." */
   2.362 +    0x08,0x5F,0x43,0x52,0x53,0x11,0x41,0x04,  /* 000006E8    "._CRS.A." */
   2.363 +    0x0A,0x3D,0x2A,0x10,0x04,0x47,0x01,0x00,  /* 000006F0    ".=*..G.." */
   2.364 +    0x00,0x00,0x00,0x00,0x10,0x47,0x01,0x81,  /* 000006F8    ".....G.." */
   2.365 +    0x00,0x81,0x00,0x00,0x03,0x47,0x01,0x87,  /* 00000700    ".....G.." */
   2.366 +    0x00,0x87,0x00,0x00,0x01,0x47,0x01,0x89,  /* 00000708    ".....G.." */
   2.367 +    0x00,0x89,0x00,0x00,0x03,0x47,0x01,0x8F,  /* 00000710    ".....G.." */
   2.368 +    0x00,0x8F,0x00,0x00,0x01,0x47,0x01,0xC0,  /* 00000718    ".....G.." */
   2.369 +    0x00,0xC0,0x00,0x00,0x20,0x47,0x01,0x80,  /* 00000720    ".... G.." */
   2.370 +    0x04,0x80,0x04,0x00,0x10,0x79,0x00,0x5B,  /* 00000728    ".....y.[" */
   2.371 +    0x82,0x25,0x54,0x4D,0x52,0x5F,0x08,0x5F,  /* 00000730    ".%TMR_._" */
   2.372 +    0x48,0x49,0x44,0x0C,0x41,0xD0,0x01,0x00,  /* 00000738    "HID.A..." */
   2.373 +    0x08,0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,  /* 00000740    "._CRS..." */
   2.374 +    0x0D,0x47,0x01,0x40,0x00,0x40,0x00,0x00,  /* 00000748    ".G.@.@.." */
   2.375 +    0x04,0x22,0x01,0x00,0x79,0x00,0x5B,0x82,  /* 00000750    "."..y.[." */
   2.376 +    0x25,0x52,0x54,0x43,0x5F,0x08,0x5F,0x48,  /* 00000758    "%RTC_._H" */
   2.377 +    0x49,0x44,0x0C,0x41,0xD0,0x0B,0x00,0x08,  /* 00000760    "ID.A...." */
   2.378 +    0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,  /* 00000768    "_CRS...." */
   2.379 +    0x47,0x01,0x70,0x00,0x70,0x00,0x00,0x02,  /* 00000770    "G.p.p..." */
   2.380 +    0x22,0x00,0x01,0x79,0x00,0x5B,0x82,0x22,  /* 00000778    ""..y.[."" */
   2.381 +    0x53,0x50,0x4B,0x52,0x08,0x5F,0x48,0x49,  /* 00000780    "SPKR._HI" */
   2.382 +    0x44,0x0C,0x41,0xD0,0x08,0x00,0x08,0x5F,  /* 00000788    "D.A...._" */
   2.383 +    0x43,0x52,0x53,0x11,0x0D,0x0A,0x0A,0x47,  /* 00000790    "CRS....G" */
   2.384 +    0x01,0x61,0x00,0x61,0x00,0x00,0x01,0x79,  /* 00000798    ".a.a...y" */
   2.385 +    0x00,0x5B,0x82,0x31,0x50,0x53,0x32,0x4D,  /* 000007A0    ".[.1PS2M" */
   2.386 +    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 000007A8    "._HID.A." */
   2.387 +    0x0F,0x13,0x08,0x5F,0x43,0x49,0x44,0x0C,  /* 000007B0    "..._CID." */
   2.388 +    0x41,0xD0,0x0F,0x13,0x14,0x09,0x5F,0x53,  /* 000007B8    "A....._S" */
   2.389 +    0x54,0x41,0x00,0xA4,0x0A,0x0F,0x08,0x5F,  /* 000007C0    "TA....._" */
   2.390 +    0x43,0x52,0x53,0x11,0x08,0x0A,0x05,0x22,  /* 000007C8    "CRS...."" */
   2.391 +    0x00,0x10,0x79,0x00,0x5B,0x82,0x42,0x04,  /* 000007D0    "..y.[.B." */
   2.392 +    0x50,0x53,0x32,0x4B,0x08,0x5F,0x48,0x49,  /* 000007D8    "PS2K._HI" */
   2.393 +    0x44,0x0C,0x41,0xD0,0x03,0x03,0x08,0x5F,  /* 000007E0    "D.A...._" */
   2.394 +    0x43,0x49,0x44,0x0C,0x41,0xD0,0x03,0x0B,  /* 000007E8    "CID.A..." */
   2.395 +    0x14,0x09,0x5F,0x53,0x54,0x41,0x00,0xA4,  /* 000007F0    ".._STA.." */
   2.396 +    0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,0x11,  /* 000007F8    "..._CRS." */
   2.397 +    0x18,0x0A,0x15,0x47,0x01,0x60,0x00,0x60,  /* 00000800    "...G.`.`" */
   2.398 +    0x00,0x00,0x01,0x47,0x01,0x64,0x00,0x64,  /* 00000808    "...G.d.d" */
   2.399 +    0x00,0x00,0x01,0x22,0x02,0x00,0x79,0x00,  /* 00000810    "..."..y." */
   2.400 +    0x5B,0x82,0x3A,0x46,0x44,0x43,0x30,0x08,  /* 00000818    "[.:FDC0." */
   2.401 +    0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,0x07,  /* 00000820    "_HID.A.." */
   2.402 +    0x00,0x14,0x09,0x5F,0x53,0x54,0x41,0x00,  /* 00000828    "..._STA." */
   2.403 +    0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,  /* 00000830    "...._CRS" */
   2.404 +    0x11,0x1B,0x0A,0x18,0x47,0x01,0xF0,0x03,  /* 00000838    "....G..." */
   2.405 +    0xF0,0x03,0x01,0x06,0x47,0x01,0xF7,0x03,  /* 00000840    "....G..." */
   2.406 +    0xF7,0x03,0x01,0x01,0x22,0x40,0x00,0x2A,  /* 00000848    "...."@.*" */
   2.407 +    0x04,0x00,0x79,0x00,0x5B,0x82,0x35,0x55,  /* 00000850    "..y.[.5U" */
   2.408 +    0x41,0x52,0x31,0x08,0x5F,0x48,0x49,0x44,  /* 00000858    "AR1._HID" */
   2.409 +    0x0C,0x41,0xD0,0x05,0x01,0x08,0x5F,0x55,  /* 00000860    ".A...._U" */
   2.410 +    0x49,0x44,0x01,0x14,0x09,0x5F,0x53,0x54,  /* 00000868    "ID..._ST" */
   2.411 +    0x41,0x00,0xA4,0x0A,0x0F,0x08,0x5F,0x43,  /* 00000870    "A....._C" */
   2.412 +    0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,0x01,  /* 00000878    "RS....G." */
   2.413 +    0xF8,0x03,0xF8,0x03,0x01,0x08,0x22,0x10,  /* 00000880    "......"." */
   2.414 +    0x00,0x79,0x00,0x5B,0x82,0x36,0x55,0x41,  /* 00000888    ".y.[.6UA" */
   2.415 +    0x52,0x32,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 00000890    "R2._HID." */
   2.416 +    0x41,0xD0,0x05,0x01,0x08,0x5F,0x55,0x49,  /* 00000898    "A...._UI" */
   2.417 +    0x44,0x0A,0x02,0x14,0x09,0x5F,0x53,0x54,  /* 000008A0    "D...._ST" */
   2.418 +    0x41,0x00,0xA4,0x0A,0x0F,0x08,0x5F,0x43,  /* 000008A8    "A....._C" */
   2.419 +    0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,0x01,  /* 000008B0    "RS....G." */
   2.420 +    0xF8,0x02,0xF8,0x02,0x01,0x08,0x22,0x08,  /* 000008B8    "......"." */
   2.421 +    0x00,0x79,0x00,
   2.422  };
   2.423  int DsdtLen=sizeof(AmlCode);