1    /*
2     * Some or all of this work - Copyright (c) 2006 - 2021, 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     * Resource Descriptor macros
30     *
31     * DWord Memory Resource Descriptor Macro
32     */
33    Name (P426, Package (0x59)
34    {
35        ResourceTemplate ()
36        {
37            DWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
38                0xECEDEEEF,         // Granularity
39                0xF0F1F2F3,         // Range Minimum
40                0xF4F5F6F7,         // Range Maximum
41                0xF8F9FAFB,         // Translation Offset
42                0xFCFDFEFF,         // Length
43                ,, , AddressRangeMemory, TypeStatic)
44        },
45
46        ResourceTemplate ()
47        {
48            DWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
49                0xECEDEEEF,         // Granularity
50                0xF0F1F2F3,         // Range Minimum
51                0xF4F5F6F7,         // Range Maximum
52                0xF8F9FAFB,         // Translation Offset
53                0xFCFDFEFF,         // Length
54                ,, , AddressRangeMemory, TypeStatic)
55        },
56
57        ResourceTemplate ()
58        {
59            DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
60                0xECEDEEEF,         // Granularity
61                0xF0F1F2F3,         // Range Minimum
62                0xF4F5F6F7,         // Range Maximum
63                0xF8F9FAFB,         // Translation Offset
64                0xFCFDFEFF,         // Length
65                ,, , AddressRangeMemory, TypeStatic)
66        },
67
68        ResourceTemplate ()
69        {
70            DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
71                0xECEDEEEF,         // Granularity
72                0xF0F1F2F3,         // Range Minimum
73                0xF4F5F6F7,         // Range Maximum
74                0xF8F9FAFB,         // Translation Offset
75                0xFCFDFEFF,         // Length
76                ,, , AddressRangeMemory, TypeStatic)
77        },
78
79        ResourceTemplate ()
80        {
81            DWordMemory (ResourceProducer, SubDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
82                0xECEDEEEF,         // Granularity
83                0xF0F1F2F3,         // Range Minimum
84                0xF4F5F6F7,         // Range Maximum
85                0xF8F9FAFB,         // Translation Offset
86                0xFCFDFEFF,         // Length
87                ,, , AddressRangeMemory, TypeStatic)
88        },
89
90        ResourceTemplate ()
91        {
92            DWordMemory (ResourceProducer, SubDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
93                0xECEDEEEF,         // Granularity
94                0xF0F1F2F3,         // Range Minimum
95                0xF4F5F6F7,         // Range Maximum
96                0xF8F9FAFB,         // Translation Offset
97                0xFCFDFEFF,         // Length
98                ,, , AddressRangeMemory, TypeStatic)
99        },
100
101        ResourceTemplate ()
102        {
103            DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
104                0xECEDEEEF,         // Granularity
105                0xF0F1F2F3,         // Range Minimum
106                0xF4F5F6F7,         // Range Maximum
107                0xF8F9FAFB,         // Translation Offset
108                0xFCFDFEFF,         // Length
109                ,, , AddressRangeMemory, TypeStatic)
110        },
111
112        ResourceTemplate ()
113        {
114            DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
115                0xECEDEEEF,         // Granularity
116                0xF0F1F2F3,         // Range Minimum
117                0xF4F5F6F7,         // Range Maximum
118                0xF8F9FAFB,         // Translation Offset
119                0xFCFDFEFF,         // Length
120                ,, , AddressRangeMemory, TypeStatic)
121        },
122
123        ResourceTemplate ()
124        {
125            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
126                0xECEDEEEF,         // Granularity
127                0xF0F1F2F3,         // Range Minimum
128                0xF4F5F6F7,         // Range Maximum
129                0xF8F9FAFB,         // Translation Offset
130                0xFCFDFEFF,         // Length
131                ,, , AddressRangeMemory, TypeStatic)
132        },
133
134        ResourceTemplate ()
135        {
136            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
137                0xECEDEEEF,         // Granularity
138                0xF0F1F2F3,         // Range Minimum
139                0xF4F5F6F7,         // Range Maximum
140                0xF8F9FAFB,         // Translation Offset
141                0xFCFDFEFF,         // Length
142                ,, , AddressRangeMemory, TypeStatic)
143        },
144
145        ResourceTemplate ()
146        {
147            DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
148                0xECEDEEEF,         // Granularity
149                0xF0F1F2F3,         // Range Minimum
150                0xF4F5F6F7,         // Range Maximum
151                0xF8F9FAFB,         // Translation Offset
152                0xFCFDFEFF,         // Length
153                ,, , AddressRangeMemory, TypeStatic)
154        },
155
156        ResourceTemplate ()
157        {
158            DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
159                0xECEDEEEF,         // Granularity
160                0xF0F1F2F3,         // Range Minimum
161                0xF4F5F6F7,         // Range Maximum
162                0xF8F9FAFB,         // Translation Offset
163                0xFCFDFEFF,         // Length
164                ,, , AddressRangeMemory, TypeStatic)
165        },
166
167        ResourceTemplate ()
168        {
169            DWordMemory (ResourceConsumer, SubDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
170                0xECEDEEEF,         // Granularity
171                0xF0F1F2F3,         // Range Minimum
172                0xF4F5F6F7,         // Range Maximum
173                0xF8F9FAFB,         // Translation Offset
174                0xFCFDFEFF,         // Length
175                ,, , AddressRangeMemory, TypeStatic)
176        },
177
178        ResourceTemplate ()
179        {
180            DWordMemory (ResourceConsumer, SubDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
181                0xECEDEEEF,         // Granularity
182                0xF0F1F2F3,         // Range Minimum
183                0xF4F5F6F7,         // Range Maximum
184                0xF8F9FAFB,         // Translation Offset
185                0xFCFDFEFF,         // Length
186                ,, , AddressRangeMemory, TypeStatic)
187        },
188
189        ResourceTemplate ()
190        {
191            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
192                0xECEDEEEF,         // Granularity
193                0xF0F1F2F3,         // Range Minimum
194                0xF4F5F6F7,         // Range Maximum
195                0xF8F9FAFB,         // Translation Offset
196                0xFCFDFEFF,         // Length
197                ,, , AddressRangeMemory, TypeStatic)
198        },
199
200        ResourceTemplate ()
201        {
202            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
203                0xECEDEEEF,         // Granularity
204                0xF0F1F2F3,         // Range Minimum
205                0xF4F5F6F7,         // Range Maximum
206                0xF8F9FAFB,         // Translation Offset
207                0xFCFDFEFF,         // Length
208                ,, , AddressRangeMemory, TypeStatic)
209        },
210
211        ResourceTemplate ()
212        {
213            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
214                0xECEDEEEF,         // Granularity
215                0xF0F1F2F3,         // Range Minimum
216                0xF4F5F6F7,         // Range Maximum
217                0xF8F9FAFB,         // Translation Offset
218                0xFCFDFEFF,         // Length
219                ,, , AddressRangeMemory, TypeStatic)
220        },
221
222        ResourceTemplate ()
223        {
224            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
225                0xECEDEEEF,         // Granularity
226                0xF0F1F2F3,         // Range Minimum
227                0xF4F5F6F7,         // Range Maximum
228                0xF8F9FAFB,         // Translation Offset
229                0xFCFDFEFF,         // Length
230                ,, , AddressRangeMemory, TypeTranslation)
231        },
232
233        ResourceTemplate ()
234        {
235            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
236                0xECEDEEEF,         // Granularity
237                0xF0F1F2F3,         // Range Minimum
238                0xF4F5F6F7,         // Range Maximum
239                0xF8F9FAFB,         // Translation Offset
240                0xFCFDFEFF,         // Length
241                ,, , AddressRangeReserved, TypeStatic)
242        },
243
244        ResourceTemplate ()
245        {
246            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
247                0xECEDEEEF,         // Granularity
248                0xF0F1F2F3,         // Range Minimum
249                0xF4F5F6F7,         // Range Maximum
250                0xF8F9FAFB,         // Translation Offset
251                0xFCFDFEFF,         // Length
252                ,, , AddressRangeReserved, TypeTranslation)
253        },
254
255        ResourceTemplate ()
256        {
257            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
258                0xECEDEEEF,         // Granularity
259                0xF0F1F2F3,         // Range Minimum
260                0xF4F5F6F7,         // Range Maximum
261                0xF8F9FAFB,         // Translation Offset
262                0xFCFDFEFF,         // Length
263                ,, , AddressRangeACPI, TypeStatic)
264        },
265
266        ResourceTemplate ()
267        {
268            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
269                0xECEDEEEF,         // Granularity
270                0xF0F1F2F3,         // Range Minimum
271                0xF4F5F6F7,         // Range Maximum
272                0xF8F9FAFB,         // Translation Offset
273                0xFCFDFEFF,         // Length
274                ,, , AddressRangeACPI, TypeTranslation)
275        },
276
277        ResourceTemplate ()
278        {
279            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
280                0xECEDEEEF,         // Granularity
281                0xF0F1F2F3,         // Range Minimum
282                0xF4F5F6F7,         // Range Maximum
283                0xF8F9FAFB,         // Translation Offset
284                0xFCFDFEFF,         // Length
285                ,, , AddressRangeNVS, TypeStatic)
286        },
287
288        ResourceTemplate ()
289        {
290            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
291                0xECEDEEEF,         // Granularity
292                0xF0F1F2F3,         // Range Minimum
293                0xF4F5F6F7,         // Range Maximum
294                0xF8F9FAFB,         // Translation Offset
295                0xFCFDFEFF,         // Length
296                ,, , AddressRangeNVS, TypeTranslation)
297        },
298
299        ResourceTemplate ()
300        {
301            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
302                0xECEDEEEF,         // Granularity
303                0xF0F1F2F3,         // Range Minimum
304                0xF4F5F6F7,         // Range Maximum
305                0xF8F9FAFB,         // Translation Offset
306                0xFCFDFEFF,         // Length
307                ,, , AddressRangeMemory, TypeStatic)
308        },
309
310        ResourceTemplate ()
311        {
312            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
313                0xECEDEEEF,         // Granularity
314                0xF0F1F2F3,         // Range Minimum
315                0xF4F5F6F7,         // Range Maximum
316                0xF8F9FAFB,         // Translation Offset
317                0xFCFDFEFF,         // Length
318                ,, , AddressRangeMemory, TypeTranslation)
319        },
320
321        ResourceTemplate ()
322        {
323            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
324                0xECEDEEEF,         // Granularity
325                0xF0F1F2F3,         // Range Minimum
326                0xF4F5F6F7,         // Range Maximum
327                0xF8F9FAFB,         // Translation Offset
328                0xFCFDFEFF,         // Length
329                ,, , AddressRangeReserved, TypeStatic)
330        },
331
332        ResourceTemplate ()
333        {
334            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
335                0xECEDEEEF,         // Granularity
336                0xF0F1F2F3,         // Range Minimum
337                0xF4F5F6F7,         // Range Maximum
338                0xF8F9FAFB,         // Translation Offset
339                0xFCFDFEFF,         // Length
340                ,, , AddressRangeReserved, TypeTranslation)
341        },
342
343        ResourceTemplate ()
344        {
345            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
346                0xECEDEEEF,         // Granularity
347                0xF0F1F2F3,         // Range Minimum
348                0xF4F5F6F7,         // Range Maximum
349                0xF8F9FAFB,         // Translation Offset
350                0xFCFDFEFF,         // Length
351                ,, , AddressRangeACPI, TypeStatic)
352        },
353
354        ResourceTemplate ()
355        {
356            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
357                0xECEDEEEF,         // Granularity
358                0xF0F1F2F3,         // Range Minimum
359                0xF4F5F6F7,         // Range Maximum
360                0xF8F9FAFB,         // Translation Offset
361                0xFCFDFEFF,         // Length
362                ,, , AddressRangeACPI, TypeTranslation)
363        },
364
365        ResourceTemplate ()
366        {
367            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
368                0xECEDEEEF,         // Granularity
369                0xF0F1F2F3,         // Range Minimum
370                0xF4F5F6F7,         // Range Maximum
371                0xF8F9FAFB,         // Translation Offset
372                0xFCFDFEFF,         // Length
373                ,, , AddressRangeNVS, TypeStatic)
374        },
375
376        ResourceTemplate ()
377        {
378            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
379                0xECEDEEEF,         // Granularity
380                0xF0F1F2F3,         // Range Minimum
381                0xF4F5F6F7,         // Range Maximum
382                0xF8F9FAFB,         // Translation Offset
383                0xFCFDFEFF,         // Length
384                ,, , AddressRangeNVS, TypeTranslation)
385        },
386
387        ResourceTemplate ()
388        {
389            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
390                0xECEDEEEF,         // Granularity
391                0xF0F1F2F3,         // Range Minimum
392                0xF4F5F6F7,         // Range Maximum
393                0xF8F9FAFB,         // Translation Offset
394                0xFCFDFEFF,         // Length
395                ,, , AddressRangeMemory, TypeStatic)
396        },
397
398        ResourceTemplate ()
399        {
400            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
401                0xECEDEEEF,         // Granularity
402                0xF0F1F2F3,         // Range Minimum
403                0xF4F5F6F7,         // Range Maximum
404                0xF8F9FAFB,         // Translation Offset
405                0xFCFDFEFF,         // Length
406                ,, , AddressRangeMemory, TypeTranslation)
407        },
408
409        ResourceTemplate ()
410        {
411            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
412                0xECEDEEEF,         // Granularity
413                0xF0F1F2F3,         // Range Minimum
414                0xF4F5F6F7,         // Range Maximum
415                0xF8F9FAFB,         // Translation Offset
416                0xFCFDFEFF,         // Length
417                ,, , AddressRangeReserved, TypeStatic)
418        },
419
420        ResourceTemplate ()
421        {
422            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
423                0xECEDEEEF,         // Granularity
424                0xF0F1F2F3,         // Range Minimum
425                0xF4F5F6F7,         // Range Maximum
426                0xF8F9FAFB,         // Translation Offset
427                0xFCFDFEFF,         // Length
428                ,, , AddressRangeReserved, TypeTranslation)
429        },
430
431        ResourceTemplate ()
432        {
433            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
434                0xECEDEEEF,         // Granularity
435                0xF0F1F2F3,         // Range Minimum
436                0xF4F5F6F7,         // Range Maximum
437                0xF8F9FAFB,         // Translation Offset
438                0xFCFDFEFF,         // Length
439                ,, , AddressRangeACPI, TypeStatic)
440        },
441
442        ResourceTemplate ()
443        {
444            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
445                0xECEDEEEF,         // Granularity
446                0xF0F1F2F3,         // Range Minimum
447                0xF4F5F6F7,         // Range Maximum
448                0xF8F9FAFB,         // Translation Offset
449                0xFCFDFEFF,         // Length
450                ,, , AddressRangeACPI, TypeTranslation)
451        },
452
453        ResourceTemplate ()
454        {
455            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
456                0xECEDEEEF,         // Granularity
457                0xF0F1F2F3,         // Range Minimum
458                0xF4F5F6F7,         // Range Maximum
459                0xF8F9FAFB,         // Translation Offset
460                0xFCFDFEFF,         // Length
461                ,, , AddressRangeNVS, TypeStatic)
462        },
463
464        ResourceTemplate ()
465        {
466            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
467                0xECEDEEEF,         // Granularity
468                0xF0F1F2F3,         // Range Minimum
469                0xF4F5F6F7,         // Range Maximum
470                0xF8F9FAFB,         // Translation Offset
471                0xFCFDFEFF,         // Length
472                ,, , AddressRangeNVS, TypeTranslation)
473        },
474
475        ResourceTemplate ()
476        {
477            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
478                0xECEDEEEF,         // Granularity
479                0xF0F1F2F3,         // Range Minimum
480                0xF4F5F6F7,         // Range Maximum
481                0xF8F9FAFB,         // Translation Offset
482                0xFCFDFEFF,         // Length
483                ,, , AddressRangeMemory, TypeStatic)
484        },
485
486        ResourceTemplate ()
487        {
488            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
489                0xECEDEEEF,         // Granularity
490                0xF0F1F2F3,         // Range Minimum
491                0xF4F5F6F7,         // Range Maximum
492                0xF8F9FAFB,         // Translation Offset
493                0xFCFDFEFF,         // Length
494                ,, , AddressRangeMemory, TypeTranslation)
495        },
496
497        ResourceTemplate ()
498        {
499            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
500                0xECEDEEEF,         // Granularity
501                0xF0F1F2F3,         // Range Minimum
502                0xF4F5F6F7,         // Range Maximum
503                0xF8F9FAFB,         // Translation Offset
504                0xFCFDFEFF,         // Length
505                ,, , AddressRangeReserved, TypeStatic)
506        },
507
508        ResourceTemplate ()
509        {
510            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
511                0xECEDEEEF,         // Granularity
512                0xF0F1F2F3,         // Range Minimum
513                0xF4F5F6F7,         // Range Maximum
514                0xF8F9FAFB,         // Translation Offset
515                0xFCFDFEFF,         // Length
516                ,, , AddressRangeReserved, TypeTranslation)
517        },
518
519        ResourceTemplate ()
520        {
521            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
522                0xECEDEEEF,         // Granularity
523                0xF0F1F2F3,         // Range Minimum
524                0xF4F5F6F7,         // Range Maximum
525                0xF8F9FAFB,         // Translation Offset
526                0xFCFDFEFF,         // Length
527                ,, , AddressRangeACPI, TypeStatic)
528        },
529
530        ResourceTemplate ()
531        {
532            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
533                0xECEDEEEF,         // Granularity
534                0xF0F1F2F3,         // Range Minimum
535                0xF4F5F6F7,         // Range Maximum
536                0xF8F9FAFB,         // Translation Offset
537                0xFCFDFEFF,         // Length
538                ,, , AddressRangeACPI, TypeTranslation)
539        },
540
541        ResourceTemplate ()
542        {
543            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
544                0xECEDEEEF,         // Granularity
545                0xF0F1F2F3,         // Range Minimum
546                0xF4F5F6F7,         // Range Maximum
547                0xF8F9FAFB,         // Translation Offset
548                0xFCFDFEFF,         // Length
549                ,, , AddressRangeNVS, TypeStatic)
550        },
551
552        ResourceTemplate ()
553        {
554            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
555                0xECEDEEEF,         // Granularity
556                0xF0F1F2F3,         // Range Minimum
557                0xF4F5F6F7,         // Range Maximum
558                0xF8F9FAFB,         // Translation Offset
559                0xFCFDFEFF,         // Length
560                ,, , AddressRangeNVS, TypeTranslation)
561        },
562
563        ResourceTemplate ()
564        {
565            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
566                0xECEDEEEF,         // Granularity
567                0xF0F1F2F3,         // Range Minimum
568                0xF4F5F6F7,         // Range Maximum
569                0xF8F9FAFB,         // Translation Offset
570                0xFCFDFEFF,         // Length
571                ,, , AddressRangeMemory, TypeStatic)
572        },
573
574        ResourceTemplate ()
575        {
576            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
577                0xECEDEEEF,         // Granularity
578                0xF0F1F2F3,         // Range Minimum
579                0xF4F5F6F7,         // Range Maximum
580                0xF8F9FAFB,         // Translation Offset
581                0xFCFDFEFF,         // Length
582                ,, , AddressRangeMemory, TypeTranslation)
583        },
584
585        ResourceTemplate ()
586        {
587            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
588                0xECEDEEEF,         // Granularity
589                0xF0F1F2F3,         // Range Minimum
590                0xF4F5F6F7,         // Range Maximum
591                0xF8F9FAFB,         // Translation Offset
592                0xFCFDFEFF,         // Length
593                ,, , AddressRangeReserved, TypeStatic)
594        },
595
596        ResourceTemplate ()
597        {
598            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
599                0xECEDEEEF,         // Granularity
600                0xF0F1F2F3,         // Range Minimum
601                0xF4F5F6F7,         // Range Maximum
602                0xF8F9FAFB,         // Translation Offset
603                0xFCFDFEFF,         // Length
604                ,, , AddressRangeReserved, TypeTranslation)
605        },
606
607        ResourceTemplate ()
608        {
609            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
610                0xECEDEEEF,         // Granularity
611                0xF0F1F2F3,         // Range Minimum
612                0xF4F5F6F7,         // Range Maximum
613                0xF8F9FAFB,         // Translation Offset
614                0xFCFDFEFF,         // Length
615                ,, , AddressRangeACPI, TypeStatic)
616        },
617
618        ResourceTemplate ()
619        {
620            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
621                0xECEDEEEF,         // Granularity
622                0xF0F1F2F3,         // Range Minimum
623                0xF4F5F6F7,         // Range Maximum
624                0xF8F9FAFB,         // Translation Offset
625                0xFCFDFEFF,         // Length
626                ,, , AddressRangeACPI, TypeTranslation)
627        },
628
629        ResourceTemplate ()
630        {
631            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
632                0xECEDEEEF,         // Granularity
633                0xF0F1F2F3,         // Range Minimum
634                0xF4F5F6F7,         // Range Maximum
635                0xF8F9FAFB,         // Translation Offset
636                0xFCFDFEFF,         // Length
637                ,, , AddressRangeNVS, TypeStatic)
638        },
639
640        ResourceTemplate ()
641        {
642            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
643                0xECEDEEEF,         // Granularity
644                0xF0F1F2F3,         // Range Minimum
645                0xF4F5F6F7,         // Range Maximum
646                0xF8F9FAFB,         // Translation Offset
647                0xFCFDFEFF,         // Length
648                ,, , AddressRangeNVS, TypeTranslation)
649        },
650
651        ResourceTemplate ()
652        {
653            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
654                0xECEDEEEF,         // Granularity
655                0xF0F1F2F3,         // Range Minimum
656                0xF4F5F6F7,         // Range Maximum
657                0xF8F9FAFB,         // Translation Offset
658                0xFCFDFEFF,         // Length
659                ,, , AddressRangeMemory, TypeStatic)
660        },
661
662        ResourceTemplate ()
663        {
664            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
665                0xECEDEEEF,         // Granularity
666                0xF0F1F2F3,         // Range Minimum
667                0xF4F5F6F7,         // Range Maximum
668                0xF8F9FAFB,         // Translation Offset
669                0xFCFDFEFF,         // Length
670                ,, , AddressRangeMemory, TypeTranslation)
671        },
672
673        ResourceTemplate ()
674        {
675            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
676                0xECEDEEEF,         // Granularity
677                0xF0F1F2F3,         // Range Minimum
678                0xF4F5F6F7,         // Range Maximum
679                0xF8F9FAFB,         // Translation Offset
680                0xFCFDFEFF,         // Length
681                ,, , AddressRangeReserved, TypeStatic)
682        },
683
684        ResourceTemplate ()
685        {
686            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
687                0xECEDEEEF,         // Granularity
688                0xF0F1F2F3,         // Range Minimum
689                0xF4F5F6F7,         // Range Maximum
690                0xF8F9FAFB,         // Translation Offset
691                0xFCFDFEFF,         // Length
692                ,, , AddressRangeReserved, TypeTranslation)
693        },
694
695        ResourceTemplate ()
696        {
697            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
698                0xECEDEEEF,         // Granularity
699                0xF0F1F2F3,         // Range Minimum
700                0xF4F5F6F7,         // Range Maximum
701                0xF8F9FAFB,         // Translation Offset
702                0xFCFDFEFF,         // Length
703                ,, , AddressRangeACPI, TypeStatic)
704        },
705
706        ResourceTemplate ()
707        {
708            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
709                0xECEDEEEF,         // Granularity
710                0xF0F1F2F3,         // Range Minimum
711                0xF4F5F6F7,         // Range Maximum
712                0xF8F9FAFB,         // Translation Offset
713                0xFCFDFEFF,         // Length
714                ,, , AddressRangeACPI, TypeTranslation)
715        },
716
717        ResourceTemplate ()
718        {
719            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
720                0xECEDEEEF,         // Granularity
721                0xF0F1F2F3,         // Range Minimum
722                0xF4F5F6F7,         // Range Maximum
723                0xF8F9FAFB,         // Translation Offset
724                0xFCFDFEFF,         // Length
725                ,, , AddressRangeNVS, TypeStatic)
726        },
727
728        ResourceTemplate ()
729        {
730            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
731                0xECEDEEEF,         // Granularity
732                0xF0F1F2F3,         // Range Minimum
733                0xF4F5F6F7,         // Range Maximum
734                0xF8F9FAFB,         // Translation Offset
735                0xFCFDFEFF,         // Length
736                ,, , AddressRangeNVS, TypeTranslation)
737        },
738
739        ResourceTemplate ()
740        {
741            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
742                0xECEDEEEF,         // Granularity
743                0xF0F1F2F3,         // Range Minimum
744                0xF4F5F6F7,         // Range Maximum
745                0xF8F9FAFB,         // Translation Offset
746                0xFCFDFEFF,         // Length
747                ,, , AddressRangeMemory, TypeStatic)
748        },
749
750        ResourceTemplate ()
751        {
752            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
753                0xECEDEEEF,         // Granularity
754                0xF0F1F2F3,         // Range Minimum
755                0xF4F5F6F7,         // Range Maximum
756                0xF8F9FAFB,         // Translation Offset
757                0xFCFDFEFF,         // Length
758                ,, , AddressRangeMemory, TypeTranslation)
759        },
760
761        ResourceTemplate ()
762        {
763            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
764                0xECEDEEEF,         // Granularity
765                0xF0F1F2F3,         // Range Minimum
766                0xF4F5F6F7,         // Range Maximum
767                0xF8F9FAFB,         // Translation Offset
768                0xFCFDFEFF,         // Length
769                ,, , AddressRangeReserved, TypeStatic)
770        },
771
772        ResourceTemplate ()
773        {
774            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
775                0xECEDEEEF,         // Granularity
776                0xF0F1F2F3,         // Range Minimum
777                0xF4F5F6F7,         // Range Maximum
778                0xF8F9FAFB,         // Translation Offset
779                0xFCFDFEFF,         // Length
780                ,, , AddressRangeReserved, TypeTranslation)
781        },
782
783        ResourceTemplate ()
784        {
785            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
786                0xECEDEEEF,         // Granularity
787                0xF0F1F2F3,         // Range Minimum
788                0xF4F5F6F7,         // Range Maximum
789                0xF8F9FAFB,         // Translation Offset
790                0xFCFDFEFF,         // Length
791                ,, , AddressRangeACPI, TypeStatic)
792        },
793
794        ResourceTemplate ()
795        {
796            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
797                0xECEDEEEF,         // Granularity
798                0xF0F1F2F3,         // Range Minimum
799                0xF4F5F6F7,         // Range Maximum
800                0xF8F9FAFB,         // Translation Offset
801                0xFCFDFEFF,         // Length
802                ,, , AddressRangeACPI, TypeTranslation)
803        },
804
805        ResourceTemplate ()
806        {
807            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
808                0xECEDEEEF,         // Granularity
809                0xF0F1F2F3,         // Range Minimum
810                0xF4F5F6F7,         // Range Maximum
811                0xF8F9FAFB,         // Translation Offset
812                0xFCFDFEFF,         // Length
813                ,, , AddressRangeNVS, TypeStatic)
814        },
815
816        ResourceTemplate ()
817        {
818            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
819                0xECEDEEEF,         // Granularity
820                0xF0F1F2F3,         // Range Minimum
821                0xF4F5F6F7,         // Range Maximum
822                0xF8F9FAFB,         // Translation Offset
823                0xFCFDFEFF,         // Length
824                ,, , AddressRangeNVS, TypeTranslation)
825        },
826
827        ResourceTemplate ()
828        {
829            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
830                0xECEDEEEF,         // Granularity
831                0xF0F1F2F3,         // Range Minimum
832                0xF4F5F6F7,         // Range Maximum
833                0xF8F9FAFB,         // Translation Offset
834                0xFCFDFEFF,         // Length
835                ,, , AddressRangeMemory, TypeStatic)
836        },
837
838        ResourceTemplate ()
839        {
840            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
841                0xECEDEEEF,         // Granularity
842                0xF0F1F2F3,         // Range Minimum
843                0xF4F5F6F7,         // Range Maximum
844                0xF8F9FAFB,         // Translation Offset
845                0xFCFDFEFF,         // Length
846                ,, , AddressRangeMemory, TypeTranslation)
847        },
848
849        ResourceTemplate ()
850        {
851            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
852                0xECEDEEEF,         // Granularity
853                0xF0F1F2F3,         // Range Minimum
854                0xF4F5F6F7,         // Range Maximum
855                0xF8F9FAFB,         // Translation Offset
856                0xFCFDFEFF,         // Length
857                ,, , AddressRangeReserved, TypeStatic)
858        },
859
860        ResourceTemplate ()
861        {
862            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
863                0xECEDEEEF,         // Granularity
864                0xF0F1F2F3,         // Range Minimum
865                0xF4F5F6F7,         // Range Maximum
866                0xF8F9FAFB,         // Translation Offset
867                0xFCFDFEFF,         // Length
868                ,, , AddressRangeReserved, TypeTranslation)
869        },
870
871        ResourceTemplate ()
872        {
873            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
874                0xECEDEEEF,         // Granularity
875                0xF0F1F2F3,         // Range Minimum
876                0xF4F5F6F7,         // Range Maximum
877                0xF8F9FAFB,         // Translation Offset
878                0xFCFDFEFF,         // Length
879                ,, , AddressRangeACPI, TypeStatic)
880        },
881
882        ResourceTemplate ()
883        {
884            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
885                0xECEDEEEF,         // Granularity
886                0xF0F1F2F3,         // Range Minimum
887                0xF4F5F6F7,         // Range Maximum
888                0xF8F9FAFB,         // Translation Offset
889                0xFCFDFEFF,         // Length
890                ,, , AddressRangeACPI, TypeTranslation)
891        },
892
893        ResourceTemplate ()
894        {
895            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
896                0xECEDEEEF,         // Granularity
897                0xF0F1F2F3,         // Range Minimum
898                0xF4F5F6F7,         // Range Maximum
899                0xF8F9FAFB,         // Translation Offset
900                0xFCFDFEFF,         // Length
901                ,, , AddressRangeNVS, TypeStatic)
902        },
903
904        ResourceTemplate ()
905        {
906            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
907                0xECEDEEEF,         // Granularity
908                0xF0F1F2F3,         // Range Minimum
909                0xF4F5F6F7,         // Range Maximum
910                0xF8F9FAFB,         // Translation Offset
911                0xFCFDFEFF,         // Length
912                ,, , AddressRangeNVS, TypeTranslation)
913        },
914
915        ResourceTemplate ()
916        {
917            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
918                0xECEDEEEF,         // Granularity
919                0xF0F1F2F3,         // Range Minimum
920                0xF4F5F6F7,         // Range Maximum
921                0xF8F9FAFB,         // Translation Offset
922                0xFCFDFEFF,         // Length
923                ,, , AddressRangeMemory, TypeStatic)
924        },
925
926        ResourceTemplate ()
927        {
928            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
929                0xECEDEEEF,         // Granularity
930                0xF0F1F2F3,         // Range Minimum
931                0xF4F5F6F7,         // Range Maximum
932                0xF8F9FAFB,         // Translation Offset
933                0xFCFDFEFF,         // Length
934                ,, , AddressRangeMemory, TypeStatic)
935        },
936
937        ResourceTemplate ()
938        {
939            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
940                0xECEDEEEF,         // Granularity
941                0xF0F1F2F3,         // Range Minimum
942                0xF4F5F6F7,         // Range Maximum
943                0xF8F9FAFB,         // Translation Offset
944                0xFCFDFEFF,         // Length
945                0x01, "", , AddressRangeMemory, TypeStatic)
946        },
947
948        ResourceTemplate ()
949        {
950            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
951                0xECEDEEEF,         // Granularity
952                0xF0F1F2F3,         // Range Minimum
953                0xF4F5F6F7,         // Range Maximum
954                0xF8F9FAFB,         // Translation Offset
955                0xFCFDFEFF,         // Length
956                0x0F, "P", , AddressRangeMemory, TypeStatic)
957        },
958
959        ResourceTemplate ()
960        {
961            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
962                0xECEDEEEF,         // Granularity
963                0xF0F1F2F3,         // Range Minimum
964                0xF4F5F6F7,         // Range Maximum
965                0xF8F9FAFB,         // Translation Offset
966                0xFCFDFEFF,         // Length
967                0xF0, "PATH", , AddressRangeMemory, TypeStatic)
968        },
969
970        ResourceTemplate ()
971        {
972            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
973                0xECEDEEEF,         // Granularity
974                0xF0F1F2F3,         // Range Minimum
975                0xF4F5F6F7,         // Range Maximum
976                0xF8F9FAFB,         // Translation Offset
977                0xFCFDFEFF,         // Length
978                0xFF, "!\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&\'()*", , AddressRangeMemory, TypeStatic)
979        },
980
981        ResourceTemplate ()
982        {
983            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
984                0xECEDEEEF,         // Granularity
985                0xF0F1F2F3,         // Range Minimum
986                0xF4F5F6F7,         // Range Maximum
987                0xF8F9FAFB,         // Translation Offset
988                0xFCFDFEFF,         // Length
989                0xFF, "PATHPATHPATH", , AddressRangeACPI, TypeTranslation)
990        },
991
992        ResourceTemplate ()
993        {
994            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
995                0x00000000,         // Granularity
996                0x00000000,         // Range Minimum
997                0x00000000,         // Range Maximum
998                0x00000000,         // Translation Offset
999                0x00000000,         // Length
1000                0xFF, "PATHPATHPATH", , AddressRangeACPI, TypeTranslation)
1001        },
1002
1003        ResourceTemplate ()
1004        {
1005            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1006                0xECEDEEEF,         // Granularity
1007                0xF0F1F2F3,         // Range Minimum
1008                0xF4F5F6F7,         // Range Maximum
1009                0xF8F9FAFB,         // Translation Offset
1010                0xFCFDFEFF,         // Length
1011                0x0F,, , AddressRangeMemory, TypeStatic)
1012        }
1013    })
1014    /*
1015     ACPI Specification, Revision 3.0, September 2, 2004
1016     6.4.3.5.2   DWord Address Space Descriptor
1017     Memory DWord Address Space Descriptor layout:
1018     Byte 0 (Tag Bits): Value=10000111B (0x87) (Type = 1, Large item name = 0x7)
1019     Byte 1 (Length, bits[7:0]): Variable: Value = 23 (minimum)
1020     Byte 2 (Length, bits[15:8]): Variable: Value = 0 (minimum)
1021     Byte 3 (Resource Type):
1022     0		Memory range
1023     Byte 4 (General Flags):
1024     Bits[7:4] 	Reserved (must be 0)
1025     Bit[3] 		Min Address Fixed, _MAF:
1026     1	The specified maximum address is fixed
1027     0	The specified maximum address is not fixed
1028     and can be changed
1029     Bit[2] 		Max Address Fixed,_MIF:
1030     1	The specified minimum address is fixed
1031     0	The specified minimum address is not fixed
1032     and can be changed
1033     Bit[1] 		Decode Type, _DEC:
1034     1	This bridge subtractively decodes this address
1035     (top level bridges only)
1036     0	This bridge positively decodes this address
1037     Bit[0] 		Consumer/Producer:
1038     1-This device consumes this resource
1039     0-This device produces and consumes this resource
1040     Byte 5 (Type Specific Flags):
1041     Flags that are specific to each resource type. The meaning of the flags
1042     in this field depends on the value of the Resource Type field (see above)
1043     Bits[7:6]	Reserved (must be 0)
1044     Bit[5]		Memory to I/O Translation, _TTP
1045     1	TypeTranslation: This resource, which is memory on the secondary
1046     side of the bridge, is I/O on the primary side of the bridge.
1047     0	TypeStatic: This resource, which is memory on the secondary side
1048     of the bridge, is also memory on the primary side of the bridge.
1049     Bits[4:3] 	Memory attributes, _MTP. These bits are only defined if this memory
1050     resource describes system RAM. For a definition of the labels described
1051     here, see section 15, "System Address Map Interfaces."
1052     0	AddressRangeMemory
1053     1	AddressRangeReserved
1054     2	AddressRangeACPI
1055     3	AddressRangeNVS
1056     Bits[2:1] 	Memory attributes, _MEM
1057     0	The memory is non-cacheable.
1058     1	The memory is cacheable.
1059     2	The memory is cacheable and supports write combining.
1060     3	The memory is cacheable and prefetchable.
1061     (Notice: OSPM ignores this field in the Extended address space descriptor.
1062     Instead it uses the Type Specific Attributes field to determine memory attributes)
1063     Bit[0]		Write status, _RW
1064     1	This memory range is read-write.
1065     0	This memory range is read-only.
1066     Byte 6 (Address space granularity, _GRA bits[7:0]):
1067     A set bit in this mask means that this bit is decoded. All bits less
1068     significant than the most significant set bit must be set. (in other
1069     words, the value of the full Address Space Granularity field (all 32
1070     bits) must be a number (2**n-1).
1071     Byte 7 (Address space granularity, _GRA bits[15:8])
1072     Byte 8 (Address space granularity, _GRA bits[23:16])
1073     Byte 9 (Address space granularity, _GRA bits[31:24])
1074     Byte 10 (Address range minimum, _MIN bits [7:0]):
1075     For bridges that translate addresses, this is the address space
1076     on the secondary side of the bridge
1077     Byte 11 (Address range minimum, _MIN bits[15:8])
1078     Byte 12 (Address range minimum, _MIN bits[23:16])
1079     Byte 13 (Address range minimum, _MIN bits[31:24])
1080     Byte 14 (Address range maximum, _MAX bits [7:0]): See comment for _MIN
1081     Byte 15 (Address range maximum, _MAX bits[15:8])
1082     Byte 16 (Address range maximum, _MAX bits[23:16])
1083     Byte 17 (Address range maximum, _MAX bits[31:24])
1084     Byte 18 (Address Translation offset, _TRA bits [7:0]):
1085     For bridges that translate addresses across the bridge, this is the
1086     offset that must be added to the address on the secondary side to obtain
1087     the address on the primary side. Non-bridge devices must list 0 for all
1088     Address Translation offset bits
1089     Byte 19 (Address Translation offset, _TRA bits[15:8])
1090     Byte 20 (Address Translation offset, _TRA bits[23:16])
1091     Byte 21 (Address Translation offset, _TRA bits[31:24])
1092     Byte 22 (Address Length, _LEN bits [7:0])
1093     Byte 23 (Address Length, _LEN bits[15:8])
1094     Byte 24 (Address Length, _LEN bits[23:16])
1095     Byte 25 (Address Length, _LEN bits[31:24])
1096     Byte 26 (Resource Source Index):
1097     (Optional) Only present if Resource Source (below) is present. This
1098     field gives an index to the specific resource descriptor that this
1099     device consumes from in the current resource template for the device
1100     object pointed to in Resource Source
1101     String (Resource Source):
1102     (Optional) If present, the device that uses this descriptor consumes
1103     its resources from the resources produced by the named device object.
1104     If not present, the device consumes its resources out of a global pool.
1105     If not present, the device consumes this resource from its hierarchical
1106     parent.
1107     */
1108    Name (P427, Package (0x59)
1109    {
1110        /* Byte 4 (General Flags) of DWord Address Space Descriptor */
1111
1112        ResourceTemplate ()
1113        {
1114            DWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1115                0xECEDEEEF,         // Granularity
1116                0xF0F1F2F3,         // Range Minimum
1117                0xF4F5F6F7,         // Range Maximum
1118                0xF8F9FAFB,         // Translation Offset
1119                0xFCFDFEFF,         // Length
1120                ,, , AddressRangeMemory, TypeStatic)
1121        },
1122
1123        ResourceTemplate ()
1124        {
1125            DWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
1126                0xECEDEEEF,         // Granularity
1127                0xF0F1F2F3,         // Range Minimum
1128                0xF4F5F6F7,         // Range Maximum
1129                0xF8F9FAFB,         // Translation Offset
1130                0xFCFDFEFF,         // Length
1131                ,, , AddressRangeMemory, TypeStatic)
1132        },
1133
1134        ResourceTemplate ()
1135        {
1136            DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
1137                0xECEDEEEF,         // Granularity
1138                0xF0F1F2F3,         // Range Minimum
1139                0xF4F5F6F7,         // Range Maximum
1140                0xF8F9FAFB,         // Translation Offset
1141                0xFCFDFEFF,         // Length
1142                ,, , AddressRangeMemory, TypeStatic)
1143        },
1144
1145        ResourceTemplate ()
1146        {
1147            DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
1148                0xECEDEEEF,         // Granularity
1149                0xF0F1F2F3,         // Range Minimum
1150                0xF4F5F6F7,         // Range Maximum
1151                0xF8F9FAFB,         // Translation Offset
1152                0xFCFDFEFF,         // Length
1153                ,, , AddressRangeMemory, TypeStatic)
1154        },
1155
1156        ResourceTemplate ()
1157        {
1158            DWordMemory (ResourceProducer, SubDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1159                0xECEDEEEF,         // Granularity
1160                0xF0F1F2F3,         // Range Minimum
1161                0xF4F5F6F7,         // Range Maximum
1162                0xF8F9FAFB,         // Translation Offset
1163                0xFCFDFEFF,         // Length
1164                ,, , AddressRangeMemory, TypeStatic)
1165        },
1166
1167        ResourceTemplate ()
1168        {
1169            DWordMemory (ResourceProducer, SubDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
1170                0xECEDEEEF,         // Granularity
1171                0xF0F1F2F3,         // Range Minimum
1172                0xF4F5F6F7,         // Range Maximum
1173                0xF8F9FAFB,         // Translation Offset
1174                0xFCFDFEFF,         // Length
1175                ,, , AddressRangeMemory, TypeStatic)
1176        },
1177
1178        ResourceTemplate ()
1179        {
1180            DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
1181                0xECEDEEEF,         // Granularity
1182                0xF0F1F2F3,         // Range Minimum
1183                0xF4F5F6F7,         // Range Maximum
1184                0xF8F9FAFB,         // Translation Offset
1185                0xFCFDFEFF,         // Length
1186                ,, , AddressRangeMemory, TypeStatic)
1187        },
1188
1189        ResourceTemplate ()
1190        {
1191            DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
1192                0xECEDEEEF,         // Granularity
1193                0xF0F1F2F3,         // Range Minimum
1194                0xF4F5F6F7,         // Range Maximum
1195                0xF8F9FAFB,         // Translation Offset
1196                0xFCFDFEFF,         // Length
1197                ,, , AddressRangeMemory, TypeStatic)
1198        },
1199
1200        ResourceTemplate ()
1201        {
1202            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1203                0xECEDEEEF,         // Granularity
1204                0xF0F1F2F3,         // Range Minimum
1205                0xF4F5F6F7,         // Range Maximum
1206                0xF8F9FAFB,         // Translation Offset
1207                0xFCFDFEFF,         // Length
1208                ,, , AddressRangeMemory, TypeStatic)
1209        },
1210
1211        ResourceTemplate ()
1212        {
1213            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
1214                0xECEDEEEF,         // Granularity
1215                0xF0F1F2F3,         // Range Minimum
1216                0xF4F5F6F7,         // Range Maximum
1217                0xF8F9FAFB,         // Translation Offset
1218                0xFCFDFEFF,         // Length
1219                ,, , AddressRangeMemory, TypeStatic)
1220        },
1221
1222        ResourceTemplate ()
1223        {
1224            DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
1225                0xECEDEEEF,         // Granularity
1226                0xF0F1F2F3,         // Range Minimum
1227                0xF4F5F6F7,         // Range Maximum
1228                0xF8F9FAFB,         // Translation Offset
1229                0xFCFDFEFF,         // Length
1230                ,, , AddressRangeMemory, TypeStatic)
1231        },
1232
1233        ResourceTemplate ()
1234        {
1235            DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
1236                0xECEDEEEF,         // Granularity
1237                0xF0F1F2F3,         // Range Minimum
1238                0xF4F5F6F7,         // Range Maximum
1239                0xF8F9FAFB,         // Translation Offset
1240                0xFCFDFEFF,         // Length
1241                ,, , AddressRangeMemory, TypeStatic)
1242        },
1243
1244        ResourceTemplate ()
1245        {
1246            DWordMemory (ResourceConsumer, SubDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1247                0xECEDEEEF,         // Granularity
1248                0xF0F1F2F3,         // Range Minimum
1249                0xF4F5F6F7,         // Range Maximum
1250                0xF8F9FAFB,         // Translation Offset
1251                0xFCFDFEFF,         // Length
1252                ,, , AddressRangeMemory, TypeStatic)
1253        },
1254
1255        ResourceTemplate ()
1256        {
1257            DWordMemory (ResourceConsumer, SubDecode, MinNotFixed, MaxFixed, NonCacheable, ReadWrite,
1258                0xECEDEEEF,         // Granularity
1259                0xF0F1F2F3,         // Range Minimum
1260                0xF4F5F6F7,         // Range Maximum
1261                0xF8F9FAFB,         // Translation Offset
1262                0xFCFDFEFF,         // Length
1263                ,, , AddressRangeMemory, TypeStatic)
1264        },
1265
1266        ResourceTemplate ()
1267        {
1268            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxNotFixed, NonCacheable, ReadWrite,
1269                0xECEDEEEF,         // Granularity
1270                0xF0F1F2F3,         // Range Minimum
1271                0xF4F5F6F7,         // Range Maximum
1272                0xF8F9FAFB,         // Translation Offset
1273                0xFCFDFEFF,         // Length
1274                ,, , AddressRangeMemory, TypeStatic)
1275        },
1276
1277        ResourceTemplate ()
1278        {
1279            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
1280                0xECEDEEEF,         // Granularity
1281                0xF0F1F2F3,         // Range Minimum
1282                0xF4F5F6F7,         // Range Maximum
1283                0xF8F9FAFB,         // Translation Offset
1284                0xFCFDFEFF,         // Length
1285                ,, , AddressRangeMemory, TypeStatic)
1286        },
1287
1288        /* Byte 5 (Type Specific Flags) of DWord Address Space Descriptor */
1289        /* NonCacheable */
1290        ResourceTemplate ()
1291        {
1292            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1293                0xECEDEEEF,         // Granularity
1294                0xF0F1F2F3,         // Range Minimum
1295                0xF4F5F6F7,         // Range Maximum
1296                0xF8F9FAFB,         // Translation Offset
1297                0xFCFDFEFF,         // Length
1298                ,, , AddressRangeMemory, TypeStatic)
1299        },
1300
1301        ResourceTemplate ()
1302        {
1303            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1304                0xECEDEEEF,         // Granularity
1305                0xF0F1F2F3,         // Range Minimum
1306                0xF4F5F6F7,         // Range Maximum
1307                0xF8F9FAFB,         // Translation Offset
1308                0xFCFDFEFF,         // Length
1309                ,, , AddressRangeMemory, TypeTranslation)
1310        },
1311
1312        ResourceTemplate ()
1313        {
1314            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1315                0xECEDEEEF,         // Granularity
1316                0xF0F1F2F3,         // Range Minimum
1317                0xF4F5F6F7,         // Range Maximum
1318                0xF8F9FAFB,         // Translation Offset
1319                0xFCFDFEFF,         // Length
1320                ,, , AddressRangeReserved, TypeStatic)
1321        },
1322
1323        ResourceTemplate ()
1324        {
1325            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1326                0xECEDEEEF,         // Granularity
1327                0xF0F1F2F3,         // Range Minimum
1328                0xF4F5F6F7,         // Range Maximum
1329                0xF8F9FAFB,         // Translation Offset
1330                0xFCFDFEFF,         // Length
1331                ,, , AddressRangeReserved, TypeTranslation)
1332        },
1333
1334        ResourceTemplate ()
1335        {
1336            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1337                0xECEDEEEF,         // Granularity
1338                0xF0F1F2F3,         // Range Minimum
1339                0xF4F5F6F7,         // Range Maximum
1340                0xF8F9FAFB,         // Translation Offset
1341                0xFCFDFEFF,         // Length
1342                ,, , AddressRangeACPI, TypeStatic)
1343        },
1344
1345        ResourceTemplate ()
1346        {
1347            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1348                0xECEDEEEF,         // Granularity
1349                0xF0F1F2F3,         // Range Minimum
1350                0xF4F5F6F7,         // Range Maximum
1351                0xF8F9FAFB,         // Translation Offset
1352                0xFCFDFEFF,         // Length
1353                ,, , AddressRangeACPI, TypeTranslation)
1354        },
1355
1356        ResourceTemplate ()
1357        {
1358            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1359                0xECEDEEEF,         // Granularity
1360                0xF0F1F2F3,         // Range Minimum
1361                0xF4F5F6F7,         // Range Maximum
1362                0xF8F9FAFB,         // Translation Offset
1363                0xFCFDFEFF,         // Length
1364                ,, , AddressRangeNVS, TypeStatic)
1365        },
1366
1367        ResourceTemplate ()
1368        {
1369            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
1370                0xECEDEEEF,         // Granularity
1371                0xF0F1F2F3,         // Range Minimum
1372                0xF4F5F6F7,         // Range Maximum
1373                0xF8F9FAFB,         // Translation Offset
1374                0xFCFDFEFF,         // Length
1375                ,, , AddressRangeNVS, TypeTranslation)
1376        },
1377
1378        ResourceTemplate ()
1379        {
1380            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1381                0xECEDEEEF,         // Granularity
1382                0xF0F1F2F3,         // Range Minimum
1383                0xF4F5F6F7,         // Range Maximum
1384                0xF8F9FAFB,         // Translation Offset
1385                0xFCFDFEFF,         // Length
1386                ,, , AddressRangeMemory, TypeStatic)
1387        },
1388
1389        ResourceTemplate ()
1390        {
1391            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1392                0xECEDEEEF,         // Granularity
1393                0xF0F1F2F3,         // Range Minimum
1394                0xF4F5F6F7,         // Range Maximum
1395                0xF8F9FAFB,         // Translation Offset
1396                0xFCFDFEFF,         // Length
1397                ,, , AddressRangeMemory, TypeTranslation)
1398        },
1399
1400        ResourceTemplate ()
1401        {
1402            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1403                0xECEDEEEF,         // Granularity
1404                0xF0F1F2F3,         // Range Minimum
1405                0xF4F5F6F7,         // Range Maximum
1406                0xF8F9FAFB,         // Translation Offset
1407                0xFCFDFEFF,         // Length
1408                ,, , AddressRangeReserved, TypeStatic)
1409        },
1410
1411        ResourceTemplate ()
1412        {
1413            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1414                0xECEDEEEF,         // Granularity
1415                0xF0F1F2F3,         // Range Minimum
1416                0xF4F5F6F7,         // Range Maximum
1417                0xF8F9FAFB,         // Translation Offset
1418                0xFCFDFEFF,         // Length
1419                ,, , AddressRangeReserved, TypeTranslation)
1420        },
1421
1422        ResourceTemplate ()
1423        {
1424            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1425                0xECEDEEEF,         // Granularity
1426                0xF0F1F2F3,         // Range Minimum
1427                0xF4F5F6F7,         // Range Maximum
1428                0xF8F9FAFB,         // Translation Offset
1429                0xFCFDFEFF,         // Length
1430                ,, , AddressRangeACPI, TypeStatic)
1431        },
1432
1433        ResourceTemplate ()
1434        {
1435            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1436                0xECEDEEEF,         // Granularity
1437                0xF0F1F2F3,         // Range Minimum
1438                0xF4F5F6F7,         // Range Maximum
1439                0xF8F9FAFB,         // Translation Offset
1440                0xFCFDFEFF,         // Length
1441                ,, , AddressRangeACPI, TypeTranslation)
1442        },
1443
1444        ResourceTemplate ()
1445        {
1446            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1447                0xECEDEEEF,         // Granularity
1448                0xF0F1F2F3,         // Range Minimum
1449                0xF4F5F6F7,         // Range Maximum
1450                0xF8F9FAFB,         // Translation Offset
1451                0xFCFDFEFF,         // Length
1452                ,, , AddressRangeNVS, TypeStatic)
1453        },
1454
1455        ResourceTemplate ()
1456        {
1457            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
1458                0xECEDEEEF,         // Granularity
1459                0xF0F1F2F3,         // Range Minimum
1460                0xF4F5F6F7,         // Range Maximum
1461                0xF8F9FAFB,         // Translation Offset
1462                0xFCFDFEFF,         // Length
1463                ,, , AddressRangeNVS, TypeTranslation)
1464        },
1465
1466        /* Cacheable */
1467
1468        ResourceTemplate ()
1469        {
1470            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1471                0xECEDEEEF,         // Granularity
1472                0xF0F1F2F3,         // Range Minimum
1473                0xF4F5F6F7,         // Range Maximum
1474                0xF8F9FAFB,         // Translation Offset
1475                0xFCFDFEFF,         // Length
1476                ,, , AddressRangeMemory, TypeStatic)
1477        },
1478
1479        ResourceTemplate ()
1480        {
1481            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1482                0xECEDEEEF,         // Granularity
1483                0xF0F1F2F3,         // Range Minimum
1484                0xF4F5F6F7,         // Range Maximum
1485                0xF8F9FAFB,         // Translation Offset
1486                0xFCFDFEFF,         // Length
1487                ,, , AddressRangeMemory, TypeTranslation)
1488        },
1489
1490        ResourceTemplate ()
1491        {
1492            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1493                0xECEDEEEF,         // Granularity
1494                0xF0F1F2F3,         // Range Minimum
1495                0xF4F5F6F7,         // Range Maximum
1496                0xF8F9FAFB,         // Translation Offset
1497                0xFCFDFEFF,         // Length
1498                ,, , AddressRangeReserved, TypeStatic)
1499        },
1500
1501        ResourceTemplate ()
1502        {
1503            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1504                0xECEDEEEF,         // Granularity
1505                0xF0F1F2F3,         // Range Minimum
1506                0xF4F5F6F7,         // Range Maximum
1507                0xF8F9FAFB,         // Translation Offset
1508                0xFCFDFEFF,         // Length
1509                ,, , AddressRangeReserved, TypeTranslation)
1510        },
1511
1512        ResourceTemplate ()
1513        {
1514            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1515                0xECEDEEEF,         // Granularity
1516                0xF0F1F2F3,         // Range Minimum
1517                0xF4F5F6F7,         // Range Maximum
1518                0xF8F9FAFB,         // Translation Offset
1519                0xFCFDFEFF,         // Length
1520                ,, , AddressRangeACPI, TypeStatic)
1521        },
1522
1523        ResourceTemplate ()
1524        {
1525            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1526                0xECEDEEEF,         // Granularity
1527                0xF0F1F2F3,         // Range Minimum
1528                0xF4F5F6F7,         // Range Maximum
1529                0xF8F9FAFB,         // Translation Offset
1530                0xFCFDFEFF,         // Length
1531                ,, , AddressRangeACPI, TypeTranslation)
1532        },
1533
1534        ResourceTemplate ()
1535        {
1536            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1537                0xECEDEEEF,         // Granularity
1538                0xF0F1F2F3,         // Range Minimum
1539                0xF4F5F6F7,         // Range Maximum
1540                0xF8F9FAFB,         // Translation Offset
1541                0xFCFDFEFF,         // Length
1542                ,, , AddressRangeNVS, TypeStatic)
1543        },
1544
1545        ResourceTemplate ()
1546        {
1547            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadOnly,
1548                0xECEDEEEF,         // Granularity
1549                0xF0F1F2F3,         // Range Minimum
1550                0xF4F5F6F7,         // Range Maximum
1551                0xF8F9FAFB,         // Translation Offset
1552                0xFCFDFEFF,         // Length
1553                ,, , AddressRangeNVS, TypeTranslation)
1554        },
1555
1556        ResourceTemplate ()
1557        {
1558            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1559                0xECEDEEEF,         // Granularity
1560                0xF0F1F2F3,         // Range Minimum
1561                0xF4F5F6F7,         // Range Maximum
1562                0xF8F9FAFB,         // Translation Offset
1563                0xFCFDFEFF,         // Length
1564                ,, , AddressRangeMemory, TypeStatic)
1565        },
1566
1567        ResourceTemplate ()
1568        {
1569            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1570                0xECEDEEEF,         // Granularity
1571                0xF0F1F2F3,         // Range Minimum
1572                0xF4F5F6F7,         // Range Maximum
1573                0xF8F9FAFB,         // Translation Offset
1574                0xFCFDFEFF,         // Length
1575                ,, , AddressRangeMemory, TypeTranslation)
1576        },
1577
1578        ResourceTemplate ()
1579        {
1580            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1581                0xECEDEEEF,         // Granularity
1582                0xF0F1F2F3,         // Range Minimum
1583                0xF4F5F6F7,         // Range Maximum
1584                0xF8F9FAFB,         // Translation Offset
1585                0xFCFDFEFF,         // Length
1586                ,, , AddressRangeReserved, TypeStatic)
1587        },
1588
1589        ResourceTemplate ()
1590        {
1591            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1592                0xECEDEEEF,         // Granularity
1593                0xF0F1F2F3,         // Range Minimum
1594                0xF4F5F6F7,         // Range Maximum
1595                0xF8F9FAFB,         // Translation Offset
1596                0xFCFDFEFF,         // Length
1597                ,, , AddressRangeReserved, TypeTranslation)
1598        },
1599
1600        ResourceTemplate ()
1601        {
1602            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1603                0xECEDEEEF,         // Granularity
1604                0xF0F1F2F3,         // Range Minimum
1605                0xF4F5F6F7,         // Range Maximum
1606                0xF8F9FAFB,         // Translation Offset
1607                0xFCFDFEFF,         // Length
1608                ,, , AddressRangeACPI, TypeStatic)
1609        },
1610
1611        ResourceTemplate ()
1612        {
1613            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1614                0xECEDEEEF,         // Granularity
1615                0xF0F1F2F3,         // Range Minimum
1616                0xF4F5F6F7,         // Range Maximum
1617                0xF8F9FAFB,         // Translation Offset
1618                0xFCFDFEFF,         // Length
1619                ,, , AddressRangeACPI, TypeTranslation)
1620        },
1621
1622        ResourceTemplate ()
1623        {
1624            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1625                0xECEDEEEF,         // Granularity
1626                0xF0F1F2F3,         // Range Minimum
1627                0xF4F5F6F7,         // Range Maximum
1628                0xF8F9FAFB,         // Translation Offset
1629                0xFCFDFEFF,         // Length
1630                ,, , AddressRangeNVS, TypeStatic)
1631        },
1632
1633        ResourceTemplate ()
1634        {
1635            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Cacheable, ReadWrite,
1636                0xECEDEEEF,         // Granularity
1637                0xF0F1F2F3,         // Range Minimum
1638                0xF4F5F6F7,         // Range Maximum
1639                0xF8F9FAFB,         // Translation Offset
1640                0xFCFDFEFF,         // Length
1641                ,, , AddressRangeNVS, TypeTranslation)
1642        },
1643
1644        /* WriteCombining */
1645
1646        ResourceTemplate ()
1647        {
1648            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1649                0xECEDEEEF,         // Granularity
1650                0xF0F1F2F3,         // Range Minimum
1651                0xF4F5F6F7,         // Range Maximum
1652                0xF8F9FAFB,         // Translation Offset
1653                0xFCFDFEFF,         // Length
1654                ,, , AddressRangeMemory, TypeStatic)
1655        },
1656
1657        ResourceTemplate ()
1658        {
1659            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1660                0xECEDEEEF,         // Granularity
1661                0xF0F1F2F3,         // Range Minimum
1662                0xF4F5F6F7,         // Range Maximum
1663                0xF8F9FAFB,         // Translation Offset
1664                0xFCFDFEFF,         // Length
1665                ,, , AddressRangeMemory, TypeTranslation)
1666        },
1667
1668        ResourceTemplate ()
1669        {
1670            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1671                0xECEDEEEF,         // Granularity
1672                0xF0F1F2F3,         // Range Minimum
1673                0xF4F5F6F7,         // Range Maximum
1674                0xF8F9FAFB,         // Translation Offset
1675                0xFCFDFEFF,         // Length
1676                ,, , AddressRangeReserved, TypeStatic)
1677        },
1678
1679        ResourceTemplate ()
1680        {
1681            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1682                0xECEDEEEF,         // Granularity
1683                0xF0F1F2F3,         // Range Minimum
1684                0xF4F5F6F7,         // Range Maximum
1685                0xF8F9FAFB,         // Translation Offset
1686                0xFCFDFEFF,         // Length
1687                ,, , AddressRangeReserved, TypeTranslation)
1688        },
1689
1690        ResourceTemplate ()
1691        {
1692            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1693                0xECEDEEEF,         // Granularity
1694                0xF0F1F2F3,         // Range Minimum
1695                0xF4F5F6F7,         // Range Maximum
1696                0xF8F9FAFB,         // Translation Offset
1697                0xFCFDFEFF,         // Length
1698                ,, , AddressRangeACPI, TypeStatic)
1699        },
1700
1701        ResourceTemplate ()
1702        {
1703            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1704                0xECEDEEEF,         // Granularity
1705                0xF0F1F2F3,         // Range Minimum
1706                0xF4F5F6F7,         // Range Maximum
1707                0xF8F9FAFB,         // Translation Offset
1708                0xFCFDFEFF,         // Length
1709                ,, , AddressRangeACPI, TypeTranslation)
1710        },
1711
1712        ResourceTemplate ()
1713        {
1714            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1715                0xECEDEEEF,         // Granularity
1716                0xF0F1F2F3,         // Range Minimum
1717                0xF4F5F6F7,         // Range Maximum
1718                0xF8F9FAFB,         // Translation Offset
1719                0xFCFDFEFF,         // Length
1720                ,, , AddressRangeNVS, TypeStatic)
1721        },
1722
1723        ResourceTemplate ()
1724        {
1725            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadOnly,
1726                0xECEDEEEF,         // Granularity
1727                0xF0F1F2F3,         // Range Minimum
1728                0xF4F5F6F7,         // Range Maximum
1729                0xF8F9FAFB,         // Translation Offset
1730                0xFCFDFEFF,         // Length
1731                ,, , AddressRangeNVS, TypeTranslation)
1732        },
1733
1734        ResourceTemplate ()
1735        {
1736            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1737                0xECEDEEEF,         // Granularity
1738                0xF0F1F2F3,         // Range Minimum
1739                0xF4F5F6F7,         // Range Maximum
1740                0xF8F9FAFB,         // Translation Offset
1741                0xFCFDFEFF,         // Length
1742                ,, , AddressRangeMemory, TypeStatic)
1743        },
1744
1745        ResourceTemplate ()
1746        {
1747            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1748                0xECEDEEEF,         // Granularity
1749                0xF0F1F2F3,         // Range Minimum
1750                0xF4F5F6F7,         // Range Maximum
1751                0xF8F9FAFB,         // Translation Offset
1752                0xFCFDFEFF,         // Length
1753                ,, , AddressRangeMemory, TypeTranslation)
1754        },
1755
1756        ResourceTemplate ()
1757        {
1758            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1759                0xECEDEEEF,         // Granularity
1760                0xF0F1F2F3,         // Range Minimum
1761                0xF4F5F6F7,         // Range Maximum
1762                0xF8F9FAFB,         // Translation Offset
1763                0xFCFDFEFF,         // Length
1764                ,, , AddressRangeReserved, TypeStatic)
1765        },
1766
1767        ResourceTemplate ()
1768        {
1769            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1770                0xECEDEEEF,         // Granularity
1771                0xF0F1F2F3,         // Range Minimum
1772                0xF4F5F6F7,         // Range Maximum
1773                0xF8F9FAFB,         // Translation Offset
1774                0xFCFDFEFF,         // Length
1775                ,, , AddressRangeReserved, TypeTranslation)
1776        },
1777
1778        ResourceTemplate ()
1779        {
1780            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1781                0xECEDEEEF,         // Granularity
1782                0xF0F1F2F3,         // Range Minimum
1783                0xF4F5F6F7,         // Range Maximum
1784                0xF8F9FAFB,         // Translation Offset
1785                0xFCFDFEFF,         // Length
1786                ,, , AddressRangeACPI, TypeStatic)
1787        },
1788
1789        ResourceTemplate ()
1790        {
1791            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1792                0xECEDEEEF,         // Granularity
1793                0xF0F1F2F3,         // Range Minimum
1794                0xF4F5F6F7,         // Range Maximum
1795                0xF8F9FAFB,         // Translation Offset
1796                0xFCFDFEFF,         // Length
1797                ,, , AddressRangeACPI, TypeTranslation)
1798        },
1799
1800        ResourceTemplate ()
1801        {
1802            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1803                0xECEDEEEF,         // Granularity
1804                0xF0F1F2F3,         // Range Minimum
1805                0xF4F5F6F7,         // Range Maximum
1806                0xF8F9FAFB,         // Translation Offset
1807                0xFCFDFEFF,         // Length
1808                ,, , AddressRangeNVS, TypeStatic)
1809        },
1810
1811        ResourceTemplate ()
1812        {
1813            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, WriteCombining, ReadWrite,
1814                0xECEDEEEF,         // Granularity
1815                0xF0F1F2F3,         // Range Minimum
1816                0xF4F5F6F7,         // Range Maximum
1817                0xF8F9FAFB,         // Translation Offset
1818                0xFCFDFEFF,         // Length
1819                ,, , AddressRangeNVS, TypeTranslation)
1820        },
1821
1822        /* Prefetchable */
1823
1824        ResourceTemplate ()
1825        {
1826            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1827                0xECEDEEEF,         // Granularity
1828                0xF0F1F2F3,         // Range Minimum
1829                0xF4F5F6F7,         // Range Maximum
1830                0xF8F9FAFB,         // Translation Offset
1831                0xFCFDFEFF,         // Length
1832                ,, , AddressRangeMemory, TypeStatic)
1833        },
1834
1835        ResourceTemplate ()
1836        {
1837            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1838                0xECEDEEEF,         // Granularity
1839                0xF0F1F2F3,         // Range Minimum
1840                0xF4F5F6F7,         // Range Maximum
1841                0xF8F9FAFB,         // Translation Offset
1842                0xFCFDFEFF,         // Length
1843                ,, , AddressRangeMemory, TypeTranslation)
1844        },
1845
1846        ResourceTemplate ()
1847        {
1848            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1849                0xECEDEEEF,         // Granularity
1850                0xF0F1F2F3,         // Range Minimum
1851                0xF4F5F6F7,         // Range Maximum
1852                0xF8F9FAFB,         // Translation Offset
1853                0xFCFDFEFF,         // Length
1854                ,, , AddressRangeReserved, TypeStatic)
1855        },
1856
1857        ResourceTemplate ()
1858        {
1859            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1860                0xECEDEEEF,         // Granularity
1861                0xF0F1F2F3,         // Range Minimum
1862                0xF4F5F6F7,         // Range Maximum
1863                0xF8F9FAFB,         // Translation Offset
1864                0xFCFDFEFF,         // Length
1865                ,, , AddressRangeReserved, TypeTranslation)
1866        },
1867
1868        ResourceTemplate ()
1869        {
1870            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1871                0xECEDEEEF,         // Granularity
1872                0xF0F1F2F3,         // Range Minimum
1873                0xF4F5F6F7,         // Range Maximum
1874                0xF8F9FAFB,         // Translation Offset
1875                0xFCFDFEFF,         // Length
1876                ,, , AddressRangeACPI, TypeStatic)
1877        },
1878
1879        ResourceTemplate ()
1880        {
1881            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1882                0xECEDEEEF,         // Granularity
1883                0xF0F1F2F3,         // Range Minimum
1884                0xF4F5F6F7,         // Range Maximum
1885                0xF8F9FAFB,         // Translation Offset
1886                0xFCFDFEFF,         // Length
1887                ,, , AddressRangeACPI, TypeTranslation)
1888        },
1889
1890        ResourceTemplate ()
1891        {
1892            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1893                0xECEDEEEF,         // Granularity
1894                0xF0F1F2F3,         // Range Minimum
1895                0xF4F5F6F7,         // Range Maximum
1896                0xF8F9FAFB,         // Translation Offset
1897                0xFCFDFEFF,         // Length
1898                ,, , AddressRangeNVS, TypeStatic)
1899        },
1900
1901        ResourceTemplate ()
1902        {
1903            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadOnly,
1904                0xECEDEEEF,         // Granularity
1905                0xF0F1F2F3,         // Range Minimum
1906                0xF4F5F6F7,         // Range Maximum
1907                0xF8F9FAFB,         // Translation Offset
1908                0xFCFDFEFF,         // Length
1909                ,, , AddressRangeNVS, TypeTranslation)
1910        },
1911
1912        ResourceTemplate ()
1913        {
1914            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1915                0xECEDEEEF,         // Granularity
1916                0xF0F1F2F3,         // Range Minimum
1917                0xF4F5F6F7,         // Range Maximum
1918                0xF8F9FAFB,         // Translation Offset
1919                0xFCFDFEFF,         // Length
1920                ,, , AddressRangeMemory, TypeStatic)
1921        },
1922
1923        ResourceTemplate ()
1924        {
1925            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1926                0xECEDEEEF,         // Granularity
1927                0xF0F1F2F3,         // Range Minimum
1928                0xF4F5F6F7,         // Range Maximum
1929                0xF8F9FAFB,         // Translation Offset
1930                0xFCFDFEFF,         // Length
1931                ,, , AddressRangeMemory, TypeTranslation)
1932        },
1933
1934        ResourceTemplate ()
1935        {
1936            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1937                0xECEDEEEF,         // Granularity
1938                0xF0F1F2F3,         // Range Minimum
1939                0xF4F5F6F7,         // Range Maximum
1940                0xF8F9FAFB,         // Translation Offset
1941                0xFCFDFEFF,         // Length
1942                ,, , AddressRangeReserved, TypeStatic)
1943        },
1944
1945        ResourceTemplate ()
1946        {
1947            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1948                0xECEDEEEF,         // Granularity
1949                0xF0F1F2F3,         // Range Minimum
1950                0xF4F5F6F7,         // Range Maximum
1951                0xF8F9FAFB,         // Translation Offset
1952                0xFCFDFEFF,         // Length
1953                ,, , AddressRangeReserved, TypeTranslation)
1954        },
1955
1956        ResourceTemplate ()
1957        {
1958            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1959                0xECEDEEEF,         // Granularity
1960                0xF0F1F2F3,         // Range Minimum
1961                0xF4F5F6F7,         // Range Maximum
1962                0xF8F9FAFB,         // Translation Offset
1963                0xFCFDFEFF,         // Length
1964                ,, , AddressRangeACPI, TypeStatic)
1965        },
1966
1967        ResourceTemplate ()
1968        {
1969            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1970                0xECEDEEEF,         // Granularity
1971                0xF0F1F2F3,         // Range Minimum
1972                0xF4F5F6F7,         // Range Maximum
1973                0xF8F9FAFB,         // Translation Offset
1974                0xFCFDFEFF,         // Length
1975                ,, , AddressRangeACPI, TypeTranslation)
1976        },
1977
1978        ResourceTemplate ()
1979        {
1980            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1981                0xECEDEEEF,         // Granularity
1982                0xF0F1F2F3,         // Range Minimum
1983                0xF4F5F6F7,         // Range Maximum
1984                0xF8F9FAFB,         // Translation Offset
1985                0xFCFDFEFF,         // Length
1986                ,, , AddressRangeNVS, TypeStatic)
1987        },
1988
1989        ResourceTemplate ()
1990        {
1991            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, Prefetchable, ReadWrite,
1992                0xECEDEEEF,         // Granularity
1993                0xF0F1F2F3,         // Range Minimum
1994                0xF4F5F6F7,         // Range Maximum
1995                0xF8F9FAFB,         // Translation Offset
1996                0xFCFDFEFF,         // Length
1997                ,, , AddressRangeNVS, TypeTranslation)
1998        },
1999
2000        /* Particular cases */
2001
2002        ResourceTemplate ()
2003        {
2004            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2005                0xECEDEEEF,         // Granularity
2006                0xF0F1F2F3,         // Range Minimum
2007                0xF4F5F6F7,         // Range Maximum
2008                0xF8F9FAFB,         // Translation Offset
2009                0xFCFDFEFF,         // Length
2010                ,, , AddressRangeMemory, TypeStatic)
2011        },
2012
2013        ResourceTemplate ()
2014        {
2015            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2016                0xECEDEEEF,         // Granularity
2017                0xF0F1F2F3,         // Range Minimum
2018                0xF4F5F6F7,         // Range Maximum
2019                0xF8F9FAFB,         // Translation Offset
2020                0xFCFDFEFF,         // Length
2021                ,, , AddressRangeMemory, TypeStatic)
2022        },
2023
2024        /* Resource Source */
2025
2026        ResourceTemplate ()
2027        {
2028            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2029                0xECEDEEEF,         // Granularity
2030                0xF0F1F2F3,         // Range Minimum
2031                0xF4F5F6F7,         // Range Maximum
2032                0xF8F9FAFB,         // Translation Offset
2033                0xFCFDFEFF,         // Length
2034                0x01, "", , AddressRangeMemory, TypeStatic)
2035        },
2036
2037        ResourceTemplate ()
2038        {
2039            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2040                0xECEDEEEF,         // Granularity
2041                0xF0F1F2F3,         // Range Minimum
2042                0xF4F5F6F7,         // Range Maximum
2043                0xF8F9FAFB,         // Translation Offset
2044                0xFCFDFEFF,         // Length
2045                0x0F, "P", , AddressRangeMemory, TypeStatic)
2046        },
2047
2048        ResourceTemplate ()
2049        {
2050            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2051                0xECEDEEEF,         // Granularity
2052                0xF0F1F2F3,         // Range Minimum
2053                0xF4F5F6F7,         // Range Maximum
2054                0xF8F9FAFB,         // Translation Offset
2055                0xFCFDFEFF,         // Length
2056                0xF0, "PATH", , AddressRangeMemory, TypeStatic)
2057        },
2058
2059        ResourceTemplate ()
2060        {
2061            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2062                0xECEDEEEF,         // Granularity
2063                0xF0F1F2F3,         // Range Minimum
2064                0xF4F5F6F7,         // Range Maximum
2065                0xF8F9FAFB,         // Translation Offset
2066                0xFCFDFEFF,         // Length
2067                0xFF, "!\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&\'()*", , AddressRangeMemory, TypeStatic)
2068        },
2069
2070        /* Particular cases */
2071
2072        ResourceTemplate ()
2073        {
2074            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
2075                0xECEDEEEF,         // Granularity
2076                0xF0F1F2F3,         // Range Minimum
2077                0xF4F5F6F7,         // Range Maximum
2078                0xF8F9FAFB,         // Translation Offset
2079                0xFCFDFEFF,         // Length
2080                0xFF, "PATHPATHPATH", , AddressRangeACPI, TypeTranslation)
2081        },
2082
2083        ResourceTemplate ()
2084        {
2085            DWordMemory (ResourceConsumer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
2086                0x00000000,         // Granularity
2087                0x00000000,         // Range Minimum
2088                0x00000000,         // Range Maximum
2089                0x00000000,         // Translation Offset
2090                0x00000000,         // Length
2091                0xFF, "PATHPATHPATH", , AddressRangeACPI, TypeTranslation)
2092        },
2093
2094        /* 20051021, relaxation for omitted ResourceSource (bug-fix 70 rejection) */
2095
2096        ResourceTemplate ()
2097        {
2098            DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
2099                0xECEDEEEF,         // Granularity
2100                0xF0F1F2F3,         // Range Minimum
2101                0xF4F5F6F7,         // Range Maximum
2102                0xF8F9FAFB,         // Translation Offset
2103                0xFCFDFEFF,         // Length
2104                0x0F,, , AddressRangeMemory, TypeStatic)
2105        }
2106    })
2107    Method (RT11, 0, Serialized)
2108    {
2109        /* Emit test header, set the filename */
2110
2111        THDR (__METHOD__, "DWordMemory Resource Descriptor Macro", "dwordmemory.asl")
2112        /* Main test case for packages above */
2113
2114        M330 (__METHOD__, 0x59, "p426", P426, P427)
2115        /* Check resource descriptor tag offsets */
2116
2117        Local0 = ResourceTemplate ()
2118            {
2119                DWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
2120                    0xECEDEEEF,         // Granularity
2121                    0xF0F1F2F3,         // Range Minimum
2122                    0xF4F5F6F7,         // Range Maximum
2123                    0xF8F9FAFB,         // Translation Offset
2124                    0xFCFDFEFF,         // Length
2125                    ,, , AddressRangeMemory, TypeStatic)
2126                DWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
2127                    0xECEDEEEF,         // Granularity
2128                    0xF0F1F2F3,         // Range Minimum
2129                    0xF4F5F6F7,         // Range Maximum
2130                    0xF8F9FAFB,         // Translation Offset
2131                    0xFCFDFEFF,         // Length
2132                    ,, , AddressRangeMemory, TypeStatic)
2133            }
2134        M331 (__METHOD__, 0x01, 0x21, 0x21, 0xF1, 0xF1, "_DEC")
2135        M331 (__METHOD__, 0x02, 0x22, 0x22, 0xF2, 0xF2, "_MIF")
2136        M331 (__METHOD__, 0x03, 0x23, 0x23, 0xF3, 0xF3, "_MAF")
2137        M331 (__METHOD__, 0x04, 0x28, 0x28, 0xF8, 0xF8, "_RW")
2138        M331 (__METHOD__, 0x05, 0x29, 0x29, 0xF9, 0xF9, "_MEM")
2139        M331 (__METHOD__, 0x06, 0x2B, 0x2B, 0xFB, 0xFB, "_MTP")
2140        M331 (__METHOD__, 0x06, 0x2D, 0x2D, 0xFD, 0xFD, "_TTP")
2141        M331 (__METHOD__, 0x07, 0x30, 0x30, 0x0100, 0x0100, "_GRA")
2142        M331 (__METHOD__, 0x08, 0x50, 0x50, 0x0120, 0x0120, "_MIN")
2143        M331 (__METHOD__, 0x09, 0x70, 0x70, 0x0140, 0x0140, "_MAX")
2144        M331 (__METHOD__, 0x0A, 0x90, 0x90, 0x0160, 0x0160, "_TRA")
2145        M331 (__METHOD__, 0x0B, 0xB0, 0xB0, 0x0180, 0x0180, "_LEN")
2146    }
2147