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     * UartSerialBus Resource Descriptor Macro
32     */
33    Device (UART)
34    {
35    }
36
37    Name (P45A, Package (0x28)
38    {
39        ResourceTemplate ()
40        {
41            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
42                0xA5, BigEndian, ParityTypeEven, FlowControlNone,
43                0x3377, 0x4488, "\\UART",
44                0x8C, ResourceConsumer, , Exclusive,
45                RawDataBuffer (0x07)  // Vendor Data
46                {
47                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
48                })
49        },
50
51        ResourceTemplate ()
52        {
53            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
54                0xA5, BigEndian, ParityTypeEven, FlowControlXON,
55                0x3377, 0x4488, "\\UART",
56                0x8C, ResourceConsumer, , Exclusive,
57                RawDataBuffer (0x07)  // Vendor Data
58                {
59                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
60                })
61        },
62
63        ResourceTemplate ()
64        {
65            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
66                0xA5, BigEndian, ParityTypeEven, FlowControlHardware,
67                0x3377, 0x4488, "\\UART",
68                0x8C, ResourceConsumer, , Exclusive,
69                RawDataBuffer (0x07)  // Vendor Data
70                {
71                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
72                })
73        },
74
75        ResourceTemplate ()
76        {
77            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
78                0xA5, BigEndian, ParityTypeNone, FlowControlNone,
79                0x3377, 0x4488, "\\UART",
80                0x8C, ResourceConsumer, , Exclusive,
81                RawDataBuffer (0x07)  // Vendor Data
82                {
83                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
84                })
85        },
86
87        ResourceTemplate ()
88        {
89            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
90                0xA5, BigEndian, ParityTypeNone, FlowControlXON,
91                0x3377, 0x4488, "\\UART",
92                0x8C, ResourceConsumer, , Exclusive,
93                RawDataBuffer (0x07)  // Vendor Data
94                {
95                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
96                })
97        },
98
99        ResourceTemplate ()
100        {
101            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
102                0xA5, BigEndian, ParityTypeNone, FlowControlHardware,
103                0x3377, 0x4488, "\\UART",
104                0x8C, ResourceConsumer, , Exclusive,
105                RawDataBuffer (0x07)  // Vendor Data
106                {
107                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
108                })
109        },
110
111        ResourceTemplate ()
112        {
113            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
114                0xA5, BigEndian, ParityTypeSpace, FlowControlNone,
115                0x3377, 0x4488, "\\UART",
116                0x8C, ResourceConsumer, , Exclusive,
117                RawDataBuffer (0x07)  // Vendor Data
118                {
119                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
120                })
121        },
122
123        ResourceTemplate ()
124        {
125            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
126                0xA5, BigEndian, ParityTypeSpace, FlowControlXON,
127                0x3377, 0x4488, "\\UART",
128                0x8C, ResourceConsumer, , Exclusive,
129                RawDataBuffer (0x07)  // Vendor Data
130                {
131                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
132                })
133        },
134
135        ResourceTemplate ()
136        {
137            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
138                0xA5, BigEndian, ParityTypeSpace, FlowControlHardware,
139                0x3377, 0x4488, "\\UART",
140                0x8C, ResourceConsumer, , Exclusive,
141                RawDataBuffer (0x07)  // Vendor Data
142                {
143                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
144                })
145        },
146
147        ResourceTemplate ()
148        {
149            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
150                0xA5, BigEndian, ParityTypeMark, FlowControlNone,
151                0x3377, 0x4488, "\\UART",
152                0x8C, ResourceConsumer, , Exclusive,
153                RawDataBuffer (0x07)  // Vendor Data
154                {
155                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
156                })
157        },
158
159        ResourceTemplate ()
160        {
161            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
162                0xA5, BigEndian, ParityTypeMark, FlowControlXON,
163                0x3377, 0x4488, "\\UART",
164                0x8C, ResourceConsumer, , Exclusive,
165                RawDataBuffer (0x07)  // Vendor Data
166                {
167                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
168                })
169        },
170
171        ResourceTemplate ()
172        {
173            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
174                0xA5, BigEndian, ParityTypeMark, FlowControlHardware,
175                0x3377, 0x4488, "\\UART",
176                0x8C, ResourceConsumer, , Exclusive,
177                RawDataBuffer (0x07)  // Vendor Data
178                {
179                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
180                })
181        },
182
183        ResourceTemplate ()
184        {
185            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
186                0xA5, BigEndian, ParityTypeOdd, FlowControlNone,
187                0x3377, 0x4488, "\\UART",
188                0x8C, ResourceConsumer, , Exclusive,
189                RawDataBuffer (0x07)  // Vendor Data
190                {
191                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
192                })
193        },
194
195        ResourceTemplate ()
196        {
197            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
198                0xA5, BigEndian, ParityTypeOdd, FlowControlXON,
199                0x3377, 0x4488, "\\UART",
200                0x8C, ResourceConsumer, , Exclusive,
201                RawDataBuffer (0x07)  // Vendor Data
202                {
203                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
204                })
205        },
206
207        ResourceTemplate ()
208        {
209            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
210                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
211                0x3377, 0x4488, "\\UART",
212                0x8C, ResourceConsumer, , Exclusive,
213                RawDataBuffer (0x07)  // Vendor Data
214                {
215                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
216                })
217        },
218
219        ResourceTemplate ()
220        {
221            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
222                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
223                0x3377, 0x4488, "\\UART",
224                0x8C, ResourceConsumer, , Exclusive,
225                RawDataBuffer (0x07)  // Vendor Data
226                {
227                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
228                })
229        },
230
231        ResourceTemplate ()
232        {
233            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
234                0xA5, BigEndian, ParityTypeOdd, FlowControlNone,
235                0x3377, 0x4488, "\\UART",
236                0x8C, ResourceConsumer, , Exclusive,
237                RawDataBuffer (0x07)  // Vendor Data
238                {
239                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
240                })
241        },
242
243        ResourceTemplate ()
244        {
245            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
246                0xA5, BigEndian, ParityTypeOdd, FlowControlXON,
247                0x3377, 0x4488, "\\UART",
248                0x8C, ResourceConsumer, , Exclusive,
249                RawDataBuffer (0x07)  // Vendor Data
250                {
251                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
252                })
253        },
254
255        ResourceTemplate ()
256        {
257            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
258                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
259                0x3377, 0x4488, "\\UART",
260                0x8C, ResourceConsumer, , Exclusive,
261                RawDataBuffer (0x07)  // Vendor Data
262                {
263                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
264                })
265        },
266
267        ResourceTemplate ()
268        {
269            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
270                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
271                0x3377, 0x4488, "\\UART",
272                0x8C, ResourceConsumer, , Exclusive,
273                RawDataBuffer (0x07)  // Vendor Data
274                {
275                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
276                })
277        },
278
279        ResourceTemplate ()
280        {
281            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
282                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
283                0x3377, 0x4488, "\\UART",
284                0x8C, ResourceConsumer, , Exclusive,
285                RawDataBuffer (0x07)  // Vendor Data
286                {
287                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
288                })
289        },
290
291        ResourceTemplate ()
292        {
293            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
294                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
295                0x3377, 0x4488, "\\UART",
296                0x8C, ResourceConsumer, , Exclusive,
297                RawDataBuffer (0x07)  // Vendor Data
298                {
299                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
300                })
301        },
302
303        ResourceTemplate ()
304        {
305            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
306                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
307                0x3377, 0x4488, "\\UART",
308                0x8C, ResourceConsumer, , Exclusive,
309                RawDataBuffer (0x07)  // Vendor Data
310                {
311                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
312                })
313        },
314
315        ResourceTemplate ()
316        {
317            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
318                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
319                0x3377, 0x4488, "\\UART",
320                0x8C, ResourceConsumer, , Exclusive,
321                RawDataBuffer (0x07)  // Vendor Data
322                {
323                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
324                })
325        },
326
327        ResourceTemplate ()
328        {
329            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
330                0xA5, LittleEndian, ParityTypeOdd, FlowControlNone,
331                0x3377, 0x4488, "\\UART",
332                0x8C, ResourceConsumer, , Exclusive,
333                RawDataBuffer (0x07)  // Vendor Data
334                {
335                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
336                })
337        },
338
339        ResourceTemplate ()
340        {
341            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
342                0xA5, LittleEndian, ParityTypeOdd, FlowControlXON,
343                0x3377, 0x4488, "\\UART",
344                0x8C, ResourceConsumer, , Exclusive,
345                RawDataBuffer (0x07)  // Vendor Data
346                {
347                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
348                })
349        },
350
351        ResourceTemplate ()
352        {
353            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
354                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
355                0x3377, 0x4488, "\\UART",
356                0x8C, ResourceConsumer, , Exclusive,
357                RawDataBuffer (0x07)  // Vendor Data
358                {
359                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
360                })
361        },
362
363        ResourceTemplate ()
364        {
365            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
366                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
367                0x3377, 0x4488, "\\UART",
368                0x8C, ResourceConsumer, , Exclusive,
369                RawDataBuffer (0x07)  // Vendor Data
370                {
371                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
372                })
373        },
374
375        ResourceTemplate ()
376        {
377            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
378                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
379                0x3377, 0x4488, "\\UART",
380                0x8C, ResourceConsumer, , Exclusive,
381                RawDataBuffer (0x07)  // Vendor Data
382                {
383                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
384                })
385        },
386
387        ResourceTemplate ()
388        {
389            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
390                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
391                0x3377, 0x4488, "\\UART",
392                0x8C, ResourceConsumer, , Exclusive,
393                RawDataBuffer (0x07)  // Vendor Data
394                {
395                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
396                })
397        },
398
399        ResourceTemplate ()
400        {
401            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
402                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
403                0x3377, 0x4488, "\\UART",
404                0x8C, ResourceConsumer, , Exclusive,
405                RawDataBuffer (0x07)  // Vendor Data
406                {
407                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
408                })
409        },
410
411        ResourceTemplate ()
412        {
413            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
414                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
415                0x3377, 0x4488, "\\UART",
416                0x8C, ResourceProducer, , Shared,
417                )
418        },
419
420        ResourceTemplate ()
421        {
422            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
423                0xA5, LittleEndian, ParityTypeOdd, FlowControlNone,
424                0x3377, 0x4488, "\\UART",
425                0x8C, ResourceProducer, , Shared,
426                )
427        },
428
429        ResourceTemplate ()
430        {
431            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
432                0xA5, LittleEndian, ParityTypeOdd, FlowControlXON,
433                0x3377, 0x4488, "\\UART",
434                0x8C, ResourceProducer, , Exclusive,
435                )
436        },
437
438        ResourceTemplate ()
439        {
440            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
441                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
442                0x3377, 0x4488, "\\UART",
443                0x8C, ResourceProducer, , Exclusive,
444                )
445        },
446
447        ResourceTemplate ()
448        {
449            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
450                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
451                0x3377, 0x4488, "\\UART",
452                0x8C, ResourceProducer, , Exclusive,
453                )
454        },
455
456        ResourceTemplate ()
457        {
458            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
459                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
460                0x3377, 0x4488, "\\UART",
461                0x8C, ResourceProducer, , Exclusive,
462                )
463        },
464
465        ResourceTemplate ()
466        {
467            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
468                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
469                0x3377, 0x4488, "\\UART",
470                0x8C, ResourceProducer, , Exclusive,
471                )
472        },
473
474        ResourceTemplate ()
475        {
476            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
477                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
478                0x3377, 0x4488, "\\UART",
479                0x8C, ResourceProducer, , Exclusive,
480                )
481        },
482
483        ResourceTemplate ()
484        {
485            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
486                0xA5, LittleEndian, ParityTypeNone, FlowControlNone,
487                0x3300, 0x4400, "\\UART",
488                0x00, ResourceConsumer, , Exclusive,
489                )
490        }
491    })
492    Name (P45B, Package (0x28)
493    {
494        ResourceTemplate ()
495        {
496            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
497                0xA5, BigEndian, ParityTypeEven, FlowControlNone,
498                0x3377, 0x4488, "\\UART",
499                0x8C, ResourceConsumer, , Exclusive,
500                RawDataBuffer (0x07)  // Vendor Data
501                {
502                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
503                })
504        },
505
506        ResourceTemplate ()
507        {
508            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
509                0xA5, BigEndian, ParityTypeEven, FlowControlXON,
510                0x3377, 0x4488, "\\UART",
511                0x8C, ResourceConsumer, , Exclusive,
512                RawDataBuffer (0x07)  // Vendor Data
513                {
514                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
515                })
516        },
517
518        ResourceTemplate ()
519        {
520            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
521                0xA5, BigEndian, ParityTypeEven, FlowControlHardware,
522                0x3377, 0x4488, "\\UART",
523                0x8C, ResourceConsumer, , Exclusive,
524                RawDataBuffer (0x07)  // Vendor Data
525                {
526                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
527                })
528        },
529
530        ResourceTemplate ()
531        {
532            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
533                0xA5, BigEndian, ParityTypeNone, FlowControlNone,
534                0x3377, 0x4488, "\\UART",
535                0x8C, ResourceConsumer, , Exclusive,
536                RawDataBuffer (0x07)  // Vendor Data
537                {
538                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
539                })
540        },
541
542        ResourceTemplate ()
543        {
544            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
545                0xA5, BigEndian, ParityTypeNone, FlowControlXON,
546                0x3377, 0x4488, "\\UART",
547                0x8C, ResourceConsumer, , Exclusive,
548                RawDataBuffer (0x07)  // Vendor Data
549                {
550                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
551                })
552        },
553
554        ResourceTemplate ()
555        {
556            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
557                0xA5, BigEndian, ParityTypeNone, FlowControlHardware,
558                0x3377, 0x4488, "\\UART",
559                0x8C, ResourceConsumer, , Exclusive,
560                RawDataBuffer (0x07)  // Vendor Data
561                {
562                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
563                })
564        },
565
566        ResourceTemplate ()
567        {
568            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
569                0xA5, BigEndian, ParityTypeSpace, FlowControlNone,
570                0x3377, 0x4488, "\\UART",
571                0x8C, ResourceConsumer, , Exclusive,
572                RawDataBuffer (0x07)  // Vendor Data
573                {
574                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
575                })
576        },
577
578        ResourceTemplate ()
579        {
580            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
581                0xA5, BigEndian, ParityTypeSpace, FlowControlXON,
582                0x3377, 0x4488, "\\UART",
583                0x8C, ResourceConsumer, , Exclusive,
584                RawDataBuffer (0x07)  // Vendor Data
585                {
586                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
587                })
588        },
589
590        ResourceTemplate ()
591        {
592            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
593                0xA5, BigEndian, ParityTypeSpace, FlowControlHardware,
594                0x3377, 0x4488, "\\UART",
595                0x8C, ResourceConsumer, , Exclusive,
596                RawDataBuffer (0x07)  // Vendor Data
597                {
598                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
599                })
600        },
601
602        ResourceTemplate ()
603        {
604            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
605                0xA5, BigEndian, ParityTypeMark, FlowControlNone,
606                0x3377, 0x4488, "\\UART",
607                0x8C, ResourceConsumer, , Exclusive,
608                RawDataBuffer (0x07)  // Vendor Data
609                {
610                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
611                })
612        },
613
614        ResourceTemplate ()
615        {
616            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
617                0xA5, BigEndian, ParityTypeMark, FlowControlXON,
618                0x3377, 0x4488, "\\UART",
619                0x8C, ResourceConsumer, , Exclusive,
620                RawDataBuffer (0x07)  // Vendor Data
621                {
622                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
623                })
624        },
625
626        ResourceTemplate ()
627        {
628            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
629                0xA5, BigEndian, ParityTypeMark, FlowControlHardware,
630                0x3377, 0x4488, "\\UART",
631                0x8C, ResourceConsumer, , Exclusive,
632                RawDataBuffer (0x07)  // Vendor Data
633                {
634                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
635                })
636        },
637
638        ResourceTemplate ()
639        {
640            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
641                0xA5, BigEndian, ParityTypeOdd, FlowControlNone,
642                0x3377, 0x4488, "\\UART",
643                0x8C, ResourceConsumer, , Exclusive,
644                RawDataBuffer (0x07)  // Vendor Data
645                {
646                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
647                })
648        },
649
650        ResourceTemplate ()
651        {
652            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
653                0xA5, BigEndian, ParityTypeOdd, FlowControlXON,
654                0x3377, 0x4488, "\\UART",
655                0x8C, ResourceConsumer, , Exclusive,
656                RawDataBuffer (0x07)  // Vendor Data
657                {
658                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
659                })
660        },
661
662        ResourceTemplate ()
663        {
664            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
665                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
666                0x3377, 0x4488, "\\UART",
667                0x8C, ResourceConsumer, , Exclusive,
668                RawDataBuffer (0x07)  // Vendor Data
669                {
670                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
671                })
672        },
673
674        ResourceTemplate ()
675        {
676            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
677                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
678                0x3377, 0x4488, "\\UART",
679                0x8C, ResourceConsumer, , Exclusive,
680                RawDataBuffer (0x07)  // Vendor Data
681                {
682                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
683                })
684        },
685
686        ResourceTemplate ()
687        {
688            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
689                0xA5, BigEndian, ParityTypeOdd, FlowControlNone,
690                0x3377, 0x4488, "\\UART",
691                0x8C, ResourceConsumer, , Exclusive,
692                RawDataBuffer (0x07)  // Vendor Data
693                {
694                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
695                })
696        },
697
698        ResourceTemplate ()
699        {
700            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
701                0xA5, BigEndian, ParityTypeOdd, FlowControlXON,
702                0x3377, 0x4488, "\\UART",
703                0x8C, ResourceConsumer, , Exclusive,
704                RawDataBuffer (0x07)  // Vendor Data
705                {
706                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
707                })
708        },
709
710        ResourceTemplate ()
711        {
712            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
713                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
714                0x3377, 0x4488, "\\UART",
715                0x8C, ResourceConsumer, , Exclusive,
716                RawDataBuffer (0x07)  // Vendor Data
717                {
718                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
719                })
720        },
721
722        ResourceTemplate ()
723        {
724            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
725                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
726                0x3377, 0x4488, "\\UART",
727                0x8C, ResourceConsumer, , Exclusive,
728                RawDataBuffer (0x07)  // Vendor Data
729                {
730                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
731                })
732        },
733
734        ResourceTemplate ()
735        {
736            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
737                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
738                0x3377, 0x4488, "\\UART",
739                0x8C, ResourceConsumer, , Exclusive,
740                RawDataBuffer (0x07)  // Vendor Data
741                {
742                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
743                })
744        },
745
746        ResourceTemplate ()
747        {
748            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
749                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
750                0x3377, 0x4488, "\\UART",
751                0x8C, ResourceConsumer, , Exclusive,
752                RawDataBuffer (0x07)  // Vendor Data
753                {
754                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
755                })
756        },
757
758        ResourceTemplate ()
759        {
760            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
761                0xA5, BigEndian, ParityTypeOdd, FlowControlHardware,
762                0x3377, 0x4488, "\\UART",
763                0x8C, ResourceConsumer, , Exclusive,
764                RawDataBuffer (0x07)  // Vendor Data
765                {
766                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
767                })
768        },
769
770        ResourceTemplate ()
771        {
772            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
773                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
774                0x3377, 0x4488, "\\UART",
775                0x8C, ResourceConsumer, , Exclusive,
776                RawDataBuffer (0x07)  // Vendor Data
777                {
778                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
779                })
780        },
781
782        ResourceTemplate ()
783        {
784            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
785                0xA5, LittleEndian, ParityTypeOdd, FlowControlNone,
786                0x3377, 0x4488, "\\UART",
787                0x8C, ResourceConsumer, , Exclusive,
788                RawDataBuffer (0x07)  // Vendor Data
789                {
790                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
791                })
792        },
793
794        ResourceTemplate ()
795        {
796            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
797                0xA5, LittleEndian, ParityTypeOdd, FlowControlXON,
798                0x3377, 0x4488, "\\UART",
799                0x8C, ResourceConsumer, , Exclusive,
800                RawDataBuffer (0x07)  // Vendor Data
801                {
802                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
803                })
804        },
805
806        ResourceTemplate ()
807        {
808            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
809                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
810                0x3377, 0x4488, "\\UART",
811                0x8C, ResourceConsumer, , Exclusive,
812                RawDataBuffer (0x07)  // Vendor Data
813                {
814                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
815                })
816        },
817
818        ResourceTemplate ()
819        {
820            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
821                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
822                0x3377, 0x4488, "\\UART",
823                0x8C, ResourceConsumer, , Exclusive,
824                RawDataBuffer (0x07)  // Vendor Data
825                {
826                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
827                })
828        },
829
830        ResourceTemplate ()
831        {
832            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
833                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
834                0x3377, 0x4488, "\\UART",
835                0x8C, ResourceConsumer, , Exclusive,
836                RawDataBuffer (0x07)  // Vendor Data
837                {
838                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
839                })
840        },
841
842        ResourceTemplate ()
843        {
844            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
845                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
846                0x3377, 0x4488, "\\UART",
847                0x8C, ResourceConsumer, , Exclusive,
848                RawDataBuffer (0x07)  // Vendor Data
849                {
850                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
851                })
852        },
853
854        ResourceTemplate ()
855        {
856            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
857                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
858                0x3377, 0x4488, "\\UART",
859                0x8C, ResourceConsumer, , Exclusive,
860                RawDataBuffer (0x07)  // Vendor Data
861                {
862                    0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
863                })
864        },
865
866        ResourceTemplate ()
867        {
868            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsZero,
869                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
870                0x3377, 0x4488, "\\UART",
871                0x8C, ResourceProducer, , Shared,
872                )
873        },
874
875        ResourceTemplate ()
876        {
877            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
878                0xA5, LittleEndian, ParityTypeOdd, FlowControlNone,
879                0x3377, 0x4488, "\\UART",
880                0x8C, ResourceProducer, , Shared,
881                )
882        },
883
884        ResourceTemplate ()
885        {
886            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOnePlusHalf,
887                0xA5, LittleEndian, ParityTypeOdd, FlowControlXON,
888                0x3377, 0x4488, "\\UART",
889                0x8C, ResourceProducer, , Exclusive,
890                )
891        },
892
893        ResourceTemplate ()
894        {
895            UartSerialBusV2 (0xFFEEDDCC, DataBitsFive, StopBitsTwo,
896                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
897                0x3377, 0x4488, "\\UART",
898                0x8C, ResourceProducer, , Exclusive,
899                )
900        },
901
902        ResourceTemplate ()
903        {
904            UartSerialBusV2 (0xFFEEDDCC, DataBitsSix, StopBitsTwo,
905                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
906                0x3377, 0x4488, "\\UART",
907                0x8C, ResourceProducer, , Exclusive,
908                )
909        },
910
911        ResourceTemplate ()
912        {
913            UartSerialBusV2 (0xFFEEDDCC, DataBitsSeven, StopBitsTwo,
914                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
915                0x3377, 0x4488, "\\UART",
916                0x8C, ResourceProducer, , Exclusive,
917                )
918        },
919
920        ResourceTemplate ()
921        {
922            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
923                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
924                0x3377, 0x4488, "\\UART",
925                0x8C, ResourceProducer, , Exclusive,
926                )
927        },
928
929        ResourceTemplate ()
930        {
931            UartSerialBusV2 (0xFFEEDDCC, DataBitsNine, StopBitsTwo,
932                0xA5, LittleEndian, ParityTypeOdd, FlowControlHardware,
933                0x3377, 0x4488, "\\UART",
934                0x8C, ResourceProducer, , Exclusive,
935                )
936        },
937
938        ResourceTemplate ()
939        {
940            UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsOne,
941                0xA5, LittleEndian, ParityTypeNone, FlowControlNone,
942                0x3300, 0x4400, "\\UART",
943                0x00, ResourceConsumer, , Exclusive,
944                )
945        }
946    })
947    Method (RT25, 0, Serialized)
948    {
949        /* Emit test header, set the filename */
950
951        THDR (__METHOD__, "UartSerialBus Resource Descriptor Macro", "uartserialbus.asl")
952        /* The main test packages must have the same number of entries */
953
954        If ((SizeOf (P45A) != SizeOf (P45B)))
955        {
956            ERR (__METHOD__, 0xB6, __LINE__, 0x00, 0x00, 0x00, "Incorrect package length")
957            Return (Zero)
958        }
959
960        /* Main test case for packages above */
961
962        M330 (__METHOD__, SizeOf (P45A), "p45A", P45A, P45B)
963        /* Check resource descriptor tag offsets */
964
965        Local0 = ResourceTemplate ()
966            {
967                UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
968                    0xA5, BigEndian, ParityTypeEven, FlowControlNone,
969                    0x3300, 0x4400, "\\UART",
970                    0xEE, ResourceProducer, , Shared,
971                    RawDataBuffer (0x07)  // Vendor Data
972                    {
973                        0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
974                    })
975                UartSerialBusV2 (0xFFEEDDCC, DataBitsEight, StopBitsTwo,
976                    0xA5, BigEndian, ParityTypeEven, FlowControlNone,
977                    0x3300, 0x4400, "\\UART",
978                    0xEE, ResourceConsumer, , Exclusive,
979                    RawDataBuffer (0x07)  // Vendor Data
980                    {
981                        0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6
982                    })
983            }
984        M331 (__METHOD__, 0x01, 0x38, 0x38, 0x0150, 0x0150, "_FLC")
985        M331 (__METHOD__, 0x02, 0x3A, 0x3A, 0x0152, 0x0152, "_STB")
986        M331 (__METHOD__, 0x03, 0x3C, 0x3C, 0x0154, 0x0154, "_LEN")
987        M331 (__METHOD__, 0x04, 0x3F, 0x3F, 0x0157, 0x0157, "_END")
988        M331 (__METHOD__, 0x05, 0x60, 0x60, 0x0178, 0x0178, "_SPE")
989        M331 (__METHOD__, 0x06, 0x80, 0x80, 0x0198, 0x0198, "_RXL")
990        M331 (__METHOD__, 0x07, 0x90, 0x90, 0x01A8, 0x01A8, "_TXL")
991        M331 (__METHOD__, 0x08, 0xA0, 0xA0, 0x01B8, 0x01B8, "_PAR")
992        M331 (__METHOD__, 0x09, 0xA8, 0xA8, 0x01C0, 0x01C0, "_LIN")
993        M331 (__METHOD__, 0x0A, 0xB0, 0xB0, 0x01C8, 0x01C8, "_VEN")
994    }
995