1/* 2 * Some or all of this work - Copyright (c) 2006 - 2016, Intel Corp. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without modification, 6 * are permitted provided that the following conditions are met: 7 * 8 * Redistributions of source code must retain the above copyright notice, 9 * this list of conditions and the following disclaimer. 10 * Redistributions in binary form must reproduce the above copyright notice, 11 * this list of conditions and the following disclaimer in the documentation 12 * and/or other materials provided with the distribution. 13 * Neither the name of Intel Corporation nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 21 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29/* 30 * Resource Descriptor macros 31 * 32 * Extended Space Resource Descriptor Macro 33 */ 34 35Name (p432, Package() { 36 37 // Byte 4 (General Flags) of Extended Address Space Descriptor 38 39 ResourceTemplate () { 40 ExtendedSpace (0xc0, ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, 0x0a, 41 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 42 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 43 }, 44 ResourceTemplate () { 45 ExtendedSpace (0xc1, ResourceProducer, PosDecode, MinNotFixed, MaxFixed, 0x1a, 46 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 47 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 48 }, 49 ResourceTemplate () { 50 ExtendedSpace (0xc2, ResourceProducer, PosDecode, MinFixed, MaxNotFixed, 0x2a, 51 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 52 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 53 }, 54 ResourceTemplate () { 55 ExtendedSpace (0xc3, ResourceProducer, PosDecode, MinFixed, MaxFixed, 0x3a, 56 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 57 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 58 }, 59 ResourceTemplate () { 60 ExtendedSpace (0xc4, ResourceProducer, SubDecode, MinNotFixed, MaxNotFixed, 0x4a, 61 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 62 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 63 }, 64 ResourceTemplate () { 65 ExtendedSpace (0xc5, ResourceProducer, SubDecode, MinNotFixed, MaxFixed, 0x5a, 66 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 67 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 68 }, 69 ResourceTemplate () { 70 ExtendedSpace (0xc6, ResourceProducer, SubDecode, MinFixed, MaxNotFixed, 0x6a, 71 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 72 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 73 }, 74 ResourceTemplate () { 75 ExtendedSpace (0xc7, ResourceProducer, SubDecode, MinFixed, MaxFixed, 0x7a, 76 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 77 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 78 }, 79 ResourceTemplate () { 80 ExtendedSpace (0xc8, ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, 0x8a, 81 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 82 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 83 }, 84 ResourceTemplate () { 85 ExtendedSpace (0xc9, ResourceConsumer, PosDecode, MinNotFixed, MaxFixed, 0x9a, 86 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 87 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 88 }, 89 ResourceTemplate () { 90 ExtendedSpace (0xca, ResourceConsumer, PosDecode, MinFixed, MaxNotFixed, 0xaa, 91 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 92 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 93 }, 94 ResourceTemplate () { 95 ExtendedSpace (0xcb, ResourceConsumer, PosDecode, MinFixed, MaxFixed, 0xba, 96 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 97 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 98 }, 99 ResourceTemplate () { 100 ExtendedSpace (0xcc, ResourceConsumer, SubDecode, MinNotFixed, MaxNotFixed, 0xca, 101 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 102 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 103 }, 104 ResourceTemplate () { 105 ExtendedSpace (0xcd, ResourceConsumer, SubDecode, MinNotFixed, MaxFixed, 0xda, 106 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 107 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 108 }, 109 ResourceTemplate () { 110 ExtendedSpace (0xce, ResourceConsumer, SubDecode, MinFixed, MaxNotFixed, 0xea, 111 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 112 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 113 }, 114 ResourceTemplate () { 115 ExtendedSpace (0xff, ResourceConsumer, SubDecode, MinFixed, MaxFixed, 0xfa, 116 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 117 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 118 }, 119 120 // Byte 5 (Type Specific Flags) of Extended Address Space Descriptor 121 122 ResourceTemplate () { 123 ExtendedSpace (0xc0, , , , , 0x00, 124 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 125 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 126 }, 127 ResourceTemplate () { 128 ExtendedSpace (0xc0, , , , , 0xff, 129 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 130 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 131 }, 132 133 // Particular cases 134 135 ResourceTemplate () { 136 ExtendedSpace (0xc0, , , , , 0x5a, 137 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 138 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff) 139 }, 140 ResourceTemplate () { 141 ExtendedSpace (0xc0, , , , , 0x5a, 142 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 143 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7) 144 }, 145 ResourceTemplate () { 146 ExtendedSpace (0xc0, , , , , 0x5a, 147 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 148 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff, 149 ) 150 }, 151 ResourceTemplate () { 152 ExtendedSpace (0xc0, , , , , 0x5a, 153 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 154 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, , 155 ) 156 }, 157 ResourceTemplate () { 158 ExtendedSpace (0xc0, ResourceConsumer, SubDecode, MinFixed, MaxFixed, 0x5a, 159 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 160 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff, 161 ESP0) 162 }, 163 ResourceTemplate () { 164 ExtendedSpace (0xc0, ResourceConsumer, SubDecode, MinFixed, MaxFixed, 0, 165 0, 0, 0, 0, 0, 0, 166 ) 167 }, 168}) 169 170/* 171ACPI Specification, Revision 3.0, September 2, 2004 1726.4.3.5.4 Extended Address Space Descriptor 173 174Space Extended Address Space Descriptor layout: 175 176Byte 0 (Tag Bits): Value=10001011B (0x8b) (Type = 1, Large item name = 0xB) 177Byte 1 (Length, bits[7:0]): Variable: Value = 53 (minimum) 178Byte 2 (Length, bits[15:8]): Variable: Value = 0 (minimum) 179Byte 3 (Resource Type): 180 192-255 Hardware Vendor Defined 181Byte 4 (General Flags): 182 Bits[7:4] Reserved (must be 0) 183 Bit[3] Min Address Fixed, _MAF: 184 1 The specified maximum address is fixed 185 0 The specified maximum address is not fixed 186 and can be changed 187 Bit[2] Max Address Fixed,_MIF: 188 1 The specified minimum address is fixed 189 0 The specified minimum address is not fixed 190 and can be changed 191 Bit[1] Decode Type, _DEC: 192 1 This bridge subtractively decodes this address 193 (top level bridges only) 194 0 This bridge positively decodes this address 195 Bit[0] Consumer/Producer: 196 1-This device consumes this resource 197 0-This device produces and consumes this resource 198Byte 5 (Type Specific Flags): 199 Flags that are specific to each resource type. The meaning of the flags 200 in this field depends on the value of the Resource Type field (see above) 201Byte 6 (Revision ID): 202 Indicates the revision of the Extended Address Space descriptor. 203 For ACPI 3.0, this value is 1. 204Byte 7 (Reserved): 0 205Byte 8 (Address space granularity, _GRA bits[7:0]): 206 A set bit in this mask means that this bit is decoded. All bits less 207 significant than the most significant set bit must be set. (in other 208 words, the value of the full Address Space Granularity field (all 32 209 bits) must be a number (2**n-1). 210Byte 9 (Address space granularity, _GRA bits[15:8]) 211Byte 10 (Address space granularity, _GRA bits[23:16]) 212Byte 11 (Address space granularity, _GRA bits[31:24]) 213Byte 12 (Address space granularity, _GRA bits[39:32]) 214Byte 13 (Address space granularity, _GRA bits[47:40]) 215Byte 14 (Address space granularity, _GRA bits[55:48]) 216Byte 15 (Address space granularity, _GRA bits[63:56]) 217Byte 16 (Address range minimum, _MIN bits [7:0]): 218 For bridges that translate addresses, this is the address space 219 on the secondary side of the bridge 220Byte 17 (Address range minimum, _MIN bits[15:8]) 221Byte 18 (Address range minimum, _MIN bits[23:16]) 222Byte 19 (Address range minimum, _MIN bits[31:24]) 223Byte 20 (Address range minimum, _MIN bits[39:32]) 224Byte 21 (Address range minimum, _MIN bits[47:40]) 225Byte 22 (Address range minimum, _MIN bits[55:48]) 226Byte 23 (Address range minimum, _MIN bits[63:56]) 227Byte 24 (Address range maximum, _MAX bits [7:0]): See comment for _MIN 228Byte 25 (Address range maximum, _MAX bits[15:8]) 229Byte 26 (Address range maximum, _MAX bits[23:16]) 230Byte 27 (Address range maximum, _MAX bits[31:24]) 231Byte 28 (Address range maximum, _MAX bits[39:32]) 232Byte 29 (Address range maximum, _MAX bits[47:40]) 233Byte 30 (Address range maximum, _MAX bits[55:48]) 234Byte 31 (Address range maximum, _MAX bits[63:56]) 235Byte 32 (Address Translation offset, _TRA bits [7:0]): 236 For bridges that translate addresses across the bridge, this is the 237 offset that must be added to the address on the secondary side to obtain 238 the address on the primary side. Non-bridge devices must list 0 for all 239 Address Translation offset bits 240Byte 33 (Address Translation offset, _TRA bits[15:8]) 241Byte 34 (Address Translation offset, _TRA bits[23:16]) 242Byte 35 (Address Translation offset, _TRA bits[31:24]) 243Byte 36 (Address Translation offset, _TRA bits[39:32]) 244Byte 37 (Address Translation offset, _TRA bits[47:40]) 245Byte 38 (Address Translation offset, _TRA bits[55:48]) 246Byte 39 (Address Translation offset, _TRA bits[63:56]) 247Byte 40 (Address Length, _LEN bits [7:0]) 248Byte 41 (Address Length, _LEN bits[15:8]) 249Byte 42 (Address Length, _LEN bits[23:16]) 250Byte 43 (Address Length, _LEN bits[31:24]) 251Byte 44 (Address Length, _LEN bits[39:32]) 252Byte 45 (Address Length, _LEN bits[47:40]) 253Byte 46 (Address Length, _LEN bits[55:48]) 254Byte 47 (Address Length, _LEN bits[63:56]) 255Byte 48 (Type Specific Attribute, _ATT bits [7:0]): 256 Attributes that are specific to each resource type. The meaning 257 of the attributes in this field depends on the value of the Resource 258 Type field (see above). For the Memory Resource Type, the definition 259 is defined section 6.4.3.5.4.1. For other Resource Types, this field 260 is reserved to 0 261Byte 49 (Type Specific Attribute, _ATT bits[15:8]) 262Byte 50 (Type Specific Attribute, _ATT bits[23:16]) 263Byte 51 (Type Specific Attribute, _ATT bits[31:24]) 264Byte 52 (Type Specific Attribute, _ATT bits[39:32]) 265Byte 53 (Type Specific Attribute, _ATT bits[47:40]) 266Byte 54 (Type Specific Attribute, _ATT bits[55:48]) 267Byte 55 (Type Specific Attribute, _ATT bits[63:56]) 268*/ 269 270Name (p433, Package() { 271 272 // Byte 4 (General Flags) of Extended Address Space Descriptor 273 274 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x00, 0x0a, 0x01, 0x00, 275 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 276 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 277 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 278 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 279 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 280 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 281 Buffer () {0x8b, 0x35, 0x00, 0xc1, 0x08, 0x1a, 0x01, 0x00, 282 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 283 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 284 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 285 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 286 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 287 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 288 Buffer () {0x8b, 0x35, 0x00, 0xc2, 0x04, 0x2a, 0x01, 0x00, 289 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 290 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 291 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 292 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 293 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 294 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 295 Buffer () {0x8b, 0x35, 0x00, 0xc3, 0x0c, 0x3a, 0x01, 0x00, 296 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 297 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 298 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 299 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 300 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 301 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 302 Buffer () {0x8b, 0x35, 0x00, 0xc4, 0x02, 0x4a, 0x01, 0x00, 303 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 304 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 305 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 306 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 307 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 308 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 309 Buffer () {0x8b, 0x35, 0x00, 0xc5, 0x0a, 0x5a, 0x01, 0x00, 310 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 311 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 312 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 313 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 314 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 315 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 316 Buffer () {0x8b, 0x35, 0x00, 0xc6, 0x06, 0x6a, 0x01, 0x00, 317 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 318 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 319 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 320 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 321 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 322 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 323 Buffer () {0x8b, 0x35, 0x00, 0xc7, 0x0e, 0x7a, 0x01, 0x00, 324 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 325 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 326 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 327 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 328 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 329 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 330 Buffer () {0x8b, 0x35, 0x00, 0xc8, 0x01, 0x8a, 0x01, 0x00, 331 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 332 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 333 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 334 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 335 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 336 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 337 Buffer () {0x8b, 0x35, 0x00, 0xc9, 0x09, 0x9a, 0x01, 0x00, 338 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 339 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 340 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 341 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 342 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 343 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 344 Buffer () {0x8b, 0x35, 0x00, 0xca, 0x05, 0xaa, 0x01, 0x00, 345 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 346 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 347 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 348 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 349 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 350 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 351 Buffer () {0x8b, 0x35, 0x00, 0xcb, 0x0d, 0xba, 0x01, 0x00, 352 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 353 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 354 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 355 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 356 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 357 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 358 Buffer () {0x8b, 0x35, 0x00, 0xcc, 0x03, 0xca, 0x01, 0x00, 359 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 360 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 361 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 362 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 363 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 364 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 365 Buffer () {0x8b, 0x35, 0x00, 0xcd, 0x0b, 0xda, 0x01, 0x00, 366 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 367 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 368 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 369 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 370 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 371 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 372 Buffer () {0x8b, 0x35, 0x00, 0xce, 0x07, 0xea, 0x01, 0x00, 373 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 374 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 375 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 376 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 377 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 378 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 379 Buffer () {0x8b, 0x35, 0x00, 0xff, 0x0f, 0xfa, 0x01, 0x00, 380 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 381 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 382 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 383 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 384 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 385 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 386 387 // Byte 5 (Type Specific Flags) of Extended Address Space Descriptor 388 389 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0x00, 0x01, 0x00, 390 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 391 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 392 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 393 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 394 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 395 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 396 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0xff, 0x01, 0x00, 397 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 398 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 399 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 400 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 401 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 402 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 403 404 // Particular cases 405 406 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0x5a, 0x01, 0x00, 407 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 408 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 409 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 410 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 411 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 412 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 413 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0x5a, 0x01, 0x00, 414 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 415 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 416 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 417 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 418 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 419 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00}, 420 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0x5a, 0x01, 0x00, 421 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 422 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 423 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 424 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 425 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 426 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 427 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x01, 0x5a, 0x01, 0x00, 428 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 429 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 430 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 431 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 432 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 433 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00}, 434 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x0f, 0x5a, 0x01, 0x00, 435 0xd7, 0xd6, 0xd5, 0xd4, 0xd3, 0xd2, 0xd1, 0xd0, 436 0xdf, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xd9, 0xd8, 437 0xe7, 0xe6, 0xe5, 0xe4, 0xe3, 0xe2, 0xe1, 0xe0, 438 0xef, 0xee, 0xed, 0xec, 0xeb, 0xea, 0xe9, 0xe8, 439 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0, 440 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0x79, 0x00}, 441 Buffer () {0x8b, 0x35, 0x00, 0xc0, 0x0f, 0x00, 0x01, 0x00, 442 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 443 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 444 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 445 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 446 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 447 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00}, 448}) 449 450Method(RT17,, Serialized) 451{ 452 Name(ts, "RT17") 453 454 // Emit test header, set the filename 455 456 THDR (ts, "ExtendedSpace Resource Descriptor Macro", __FILE__) 457 458 // Main test case for packages above 459 460 m330(ts, 24, "p432", p432, p433) 461 462 // Check resource descriptor tag offsets 463 464 Store ( 465 ResourceTemplate () { 466 ExtendedSpace (0xc0, ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, 0x5a, 467 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 468 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff, ESP0) 469 ExtendedSpace (0xc0, ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, 0x5a, 470 0xd0d1d2d3d4d5d6d7, 0xd8d9dadbdcdddedf, 0xe0e1e2e3e4e5e6e7, 471 0xe8e9eaebecedeeef, 0xf0f1f2f3f4f5f6f7, 0xf8f9fafbfcfdfeff, ESP1) 472 }, Local0) 473 474 m331(ts, 1, ESP0._DEC, 0x21, ESP1._DEC, 0x1e1, "_DEC") 475 m331(ts, 2, ESP0._MIF, 0x22, ESP1._MIF, 0x1e2, "_MIF") 476 m331(ts, 3, ESP0._MAF, 0x23, ESP1._MAF, 0x1e3, "_MAF") 477 m331(ts, 4, ESP0._GRA, 0x40, ESP1._GRA, 0x200, "_GRA") 478 m331(ts, 5, ESP0._MIN, 0x80, ESP1._MIN, 0x240, "_MIN") 479 m331(ts, 6, ESP0._MAX, 0xC0, ESP1._MAX, 0x280, "_MAX") 480 m331(ts, 7, ESP0._TRA, 0x100, ESP1._TRA, 0x2C0, "_TRA") 481 m331(ts, 8, ESP0._LEN, 0x140, ESP1._LEN, 0x300, "_LEN") 482 m331(ts, 9, ESP0._ATT, 0x180, ESP1._ATT, 0x340, "_ATT") 483} 484 485 486