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 * The tests differ those from ns1.asl by that the parent object is 30 * passed to methods as argument (Arg) but not directly by name. 31 */ 32 Name (Z157, 0x9D) 33 Method (M300, 0, Serialized) 34 { 35 Name (P000, Package (0x03) 36 { 37 0xABCD0000, 38 0xABCD0001, 39 0xABCD0002 40 }) 41 Method (M000, 1, NotSerialized) 42 { 43 Method (M001, 2, NotSerialized) 44 { 45 Arg0 [0x00] = 0x11112222 46 } 47 48 M001 (Arg0, RefOf (Arg0)) 49 Local0 = DerefOf (Arg0 [0x00]) 50 If ((Local0 != 0x11112222)) 51 { 52 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x11112222) 53 } 54 } 55 56 M000 (P000) 57 Local0 = DerefOf (P000 [0x00]) 58 If ((Local0 != 0x11112222)) 59 { 60 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x11112222) 61 } 62 63 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 64 } 65 66 Method (M301, 0, Serialized) 67 { 68 Name (B000, Buffer (0x03) 69 { 70 0x10, 0x11, 0x12 // ... 71 }) 72 Method (M000, 1, NotSerialized) 73 { 74 Method (M001, 2, NotSerialized) 75 { 76 Arg0 [0x00] = 0x67 77 } 78 79 M001 (Arg0, RefOf (Arg0)) 80 Local0 = DerefOf (Arg0 [0x00]) 81 If ((Local0 != 0x67)) 82 { 83 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x67) 84 } 85 } 86 87 M000 (B000) 88 Local0 = DerefOf (B000 [0x00]) 89 If ((Local0 != 0x67)) 90 { 91 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x67) 92 } 93 94 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 95 } 96 97 Method (M302, 0, Serialized) 98 { 99 Name (S000, "qqqqqqqqqqqqqq") 100 Method (M000, 1, NotSerialized) 101 { 102 Method (M001, 2, NotSerialized) 103 { 104 Arg0 [0x00] = 0x38 105 } 106 107 M001 (Arg0, RefOf (Arg0)) 108 Local0 = DerefOf (Arg0 [0x00]) 109 If ((Local0 != 0x38)) 110 { 111 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x38) 112 } 113 } 114 115 M000 (S000) 116 Local0 = DerefOf (S000 [0x00]) 117 If ((Local0 != 0x38)) 118 { 119 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x38) 120 } 121 122 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 123 } 124 125 /* 126 * Element of Package instead of i000 (in m001) 127 */ 128 Method (M303, 1, Serialized) 129 { 130 Name (PP00, Package (0x03) 131 { 132 0x11111111, 133 0x01, 134 0x22223333 135 }) 136 Method (M000, 2, Serialized) 137 { 138 Name (I001, 0x00) 139 Name (P000, Package (0x04) 140 { 141 0x01, 142 0x02, 143 0x03, 144 0x04 145 }) 146 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 147 I001 = Arg1 148 Method (M001, 1, NotSerialized) 149 { 150 Method (M002, 1, NotSerialized) 151 { 152 Method (M003, 1, NotSerialized) 153 { 154 Method (M004, 1, NotSerialized) 155 { 156 Method (M005, 1, NotSerialized) 157 { 158 Method (M006, 1, NotSerialized) 159 { 160 Method (M007, 1, NotSerialized) 161 { 162 Method (M008, 1, NotSerialized) 163 { 164 If (I001) 165 { 166 Arg0 [0x01] = P000 /* \M303.M000.P000 */ 167 } 168 169 Return (0x00) 170 } 171 172 Arg0 [0x01] = 0x80000000 173 Return ((DerefOf (Arg0 [0x01]) + M008 (Arg0))) 174 } 175 176 Arg0 [0x01] = 0x07000000 177 Return ((DerefOf (Arg0 [0x01]) + M007 (Arg0))) 178 } 179 180 Arg0 [0x01] = 0x00600000 181 Return ((DerefOf (Arg0 [0x01]) + M006 (Arg0))) 182 } 183 184 Arg0 [0x01] = 0x00050000 185 Return ((DerefOf (Arg0 [0x01]) + M005 (Arg0))) 186 } 187 188 Arg0 [0x01] = 0x4000 189 Return ((DerefOf (Arg0 [0x01]) + M004 (Arg0))) 190 } 191 192 Arg0 [0x01] = 0x0300 193 Return ((DerefOf (Arg0 [0x01]) + M003 (Arg0))) 194 } 195 196 Arg0 [0x01] = 0x20 197 Return ((DerefOf (Arg0 [0x01]) + M002 (Arg0))) 198 } 199 200 Store ((DerefOf (Arg0 [0x01]) + M001 (Arg0)), Local0) 201 If ((Local0 != 0x87654321)) 202 { 203 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 204 } 205 206 Local1 = DerefOf (Arg0 [0x01]) 207 If ((Local1 != 0x80000000)) 208 { 209 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, 0x80000000) 210 } 211 212 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 213 Return (Local0) 214 } 215 216 Local0 = M000 (PP00, Arg0) 217 If ((Local0 != 0x87654321)) 218 { 219 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 220 } 221 222 Local0 = DerefOf (PP00 [0x01]) 223 If ((Local0 != 0x80000000)) 224 { 225 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x80000000) 226 } 227 228 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 229 } 230 231 /* 232 * Element of Package instead of i000 (in m002) 233 */ 234 Method (M304, 0, Serialized) 235 { 236 Name (I001, 0x00) 237 Name (PP00, Package (0x03) 238 { 239 0x11111111, 240 0x00100000, 241 0x22223333 242 }) 243 Method (M000, 1, NotSerialized) 244 { 245 Method (M001, 1, NotSerialized) 246 { 247 If ((I001 < 0x64)) 248 { 249 Local0 = DerefOf (Arg0 [0x01]) 250 Local0++ 251 Arg0 [0x01] = Local0 252 I001++ 253 Local0 = (DerefOf (Arg0 [0x01]) + M001 (Arg0)) 254 Return (Local0) 255 } 256 257 Return (0x00) 258 } 259 260 Store ((DerefOf (Arg0 [0x01]) + M001 (Arg0)), Local0) 261 If ((Local0 != 0x065013BA)) 262 { 263 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x065013BA) 264 } 265 266 Local1 = DerefOf (Arg0 [0x01]) 267 If ((Local1 != 0x00100064)) 268 { 269 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, 0x00100064) 270 } 271 272 Return (Local0) 273 } 274 275 Local0 = M000 (PP00) 276 If ((Local0 != 0x065013BA)) 277 { 278 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x065013BA) 279 } 280 281 Local1 = DerefOf (PP00 [0x01]) 282 If ((Local1 != 0x00100064)) 283 { 284 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, 0x00100064) 285 } 286 287 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 288 } 289 290 /* 291 * Buffer Field instead of i000 (in m001) 292 */ 293 Method (M305, 0, Serialized) 294 { 295 Name (B000, Buffer (0x10){}) 296 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 297 CreateField (B000, 0x05, 0x20, BF00) 298 BF00 = 0xABCDEF70 299 Method (M000, 1, NotSerialized) 300 { 301 Method (M001, 0, NotSerialized) 302 { 303 Method (M002, 0, NotSerialized) 304 { 305 Method (M003, 0, NotSerialized) 306 { 307 Method (M004, 0, NotSerialized) 308 { 309 Method (M005, 0, NotSerialized) 310 { 311 Method (M006, 0, NotSerialized) 312 { 313 Method (M007, 0, NotSerialized) 314 { 315 Method (M008, 0, NotSerialized) 316 { 317 Return (0x00) 318 } 319 320 Arg0 = 0x80000000 321 Return ((Arg0 + M008 ())) 322 } 323 324 Arg0 = 0x07000000 325 Return ((Arg0 + M007 ())) 326 } 327 328 Arg0 = 0x00600000 329 Return ((Arg0 + M006 ())) 330 } 331 332 Arg0 = 0x00050000 333 Return ((Arg0 + M005 ())) 334 } 335 336 Arg0 = 0x4000 337 Return ((Arg0 + M004 ())) 338 } 339 340 Arg0 = 0x0300 341 Return ((Arg0 + M003 ())) 342 } 343 344 Arg0 = 0x20 345 Return ((Arg0 + M002 ())) 346 } 347 348 Arg0 = 0x01 349 Store ((Arg0 + M001 ()), Local0) 350 If ((Local0 != 0x87654321)) 351 { 352 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 353 } 354 355 Local1 = 0x01 356 If ((Arg0 != Local1)) 357 { 358 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Arg0, Local1) 359 } 360 361 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 362 Return (Local0) 363 } 364 365 Local0 = M000 (BF00) 366 If ((Local0 != 0x87654321)) 367 { 368 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 369 } 370 371 Local1 = Buffer () {0x70, 0xEF, 0xCD, 0xAB} 372 If ((BF00 != Local1)) 373 { 374 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, BF00, Local1) 375 } 376 377 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 378 } 379 380 /* 381 * Field instead of i000 (in m001) 382 */ 383 Method (M306, 0, Serialized) 384 { 385 Name (I001, 0x00) 386 OperationRegion (R000, SystemMemory, 0x0100, 0x0100) 387 Field (R000, ByteAcc, NoLock, Preserve) 388 { 389 F000, 32, 390 F001, 32 391 } 392 393 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 394 F000 = 0xABCDEF70 395 Method (M000, 1, NotSerialized) 396 { 397 Method (M001, 0, NotSerialized) 398 { 399 Method (M002, 0, NotSerialized) 400 { 401 Method (M003, 0, NotSerialized) 402 { 403 Method (M004, 0, NotSerialized) 404 { 405 Method (M005, 0, NotSerialized) 406 { 407 Method (M006, 0, NotSerialized) 408 { 409 Method (M007, 0, NotSerialized) 410 { 411 Method (M008, 0, NotSerialized) 412 { 413 Return (0x00) 414 } 415 416 Arg0 = 0x80000000 417 Return ((Arg0 + M008 ())) 418 } 419 420 Arg0 = 0x07000000 421 Return ((Arg0 + M007 ())) 422 } 423 424 Arg0 = 0x00600000 425 Return ((Arg0 + M006 ())) 426 } 427 428 Arg0 = 0x00050000 429 Return ((Arg0 + M005 ())) 430 } 431 432 Arg0 = 0x4000 433 Return ((Arg0 + M004 ())) 434 } 435 436 Arg0 = 0x0300 437 Return ((Arg0 + M003 ())) 438 } 439 440 Arg0 = 0x20 441 Return ((Arg0 + M002 ())) 442 } 443 444 Arg0 = 0x01 445 Store ((Arg0 + M001 ()), Local0) 446 If ((Local0 != 0x87654321)) 447 { 448 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 449 } 450 451 Local1 = 0x01 452 If ((Arg0 != Local1)) 453 { 454 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Arg0, Local1) 455 } 456 457 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 458 Return (Local0) 459 } 460 461 Local0 = M000 (F000) 462 If ((Local0 != 0x87654321)) 463 { 464 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 465 } 466 467 Local1 = 0xABCDEF70 468 If ((F000 != Local1)) 469 { 470 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, F000, Local1) 471 } 472 473 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 474 } 475 476 /* 477 * Bank Field instead of i000 (in m001) 478 */ 479 Method (M307, 0, Serialized) 480 { 481 Name (I001, 0x00) 482 OperationRegion (R000, SystemMemory, 0x0100, 0x0100) 483 Field (R000, ByteAcc, NoLock, Preserve) 484 { 485 F000, 32, 486 F001, 32 487 } 488 489 BankField (R000, F001, 0x00, ByteAcc, NoLock, Preserve) 490 { 491 BNK0, 32 492 } 493 494 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 495 BNK0 = 0xABCDEF70 496 Method (M000, 1, NotSerialized) 497 { 498 Method (M001, 0, NotSerialized) 499 { 500 Method (M002, 0, NotSerialized) 501 { 502 Method (M003, 0, NotSerialized) 503 { 504 Method (M004, 0, NotSerialized) 505 { 506 Method (M005, 0, NotSerialized) 507 { 508 Method (M006, 0, NotSerialized) 509 { 510 Method (M007, 0, NotSerialized) 511 { 512 Method (M008, 0, NotSerialized) 513 { 514 Return (0x00) 515 } 516 517 Arg0 = 0x80000000 518 Return ((Arg0 + M008 ())) 519 } 520 521 Arg0 = 0x07000000 522 Return ((Arg0 + M007 ())) 523 } 524 525 Arg0 = 0x00600000 526 Return ((Arg0 + M006 ())) 527 } 528 529 Arg0 = 0x00050000 530 Return ((Arg0 + M005 ())) 531 } 532 533 Arg0 = 0x4000 534 Return ((Arg0 + M004 ())) 535 } 536 537 Arg0 = 0x0300 538 Return ((Arg0 + M003 ())) 539 } 540 541 Arg0 = 0x20 542 Return ((Arg0 + M002 ())) 543 } 544 545 Arg0 = 0x01 546 Store ((Arg0 + M001 ()), Local0) 547 If ((Local0 != 0x87654321)) 548 { 549 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 550 } 551 552 Local1 = 0x01 553 If ((Arg0 != Local1)) 554 { 555 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Arg0, Local1) 556 } 557 558 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 559 Return (Local0) 560 } 561 562 Local0 = M000 (BNK0) 563 If ((Local0 != 0x87654321)) 564 { 565 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 566 } 567 568 Local1 = 0xABCDEF70 569 If ((BNK0 != Local1)) 570 { 571 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, BNK0, Local1) 572 } 573 574 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 575 } 576 577 /* 578 * Index Field instead of i000 (in m001) 579 */ 580 Method (M308, 0, Serialized) 581 { 582 Name (I001, 0x00) 583 OperationRegion (R000, SystemMemory, 0x0100, 0x0100) 584 Field (R000, ByteAcc, NoLock, Preserve) 585 { 586 F000, 32, 587 F001, 32 588 } 589 590 IndexField (F000, F001, ByteAcc, NoLock, Preserve) 591 { 592 IF00, 32 593 } 594 595 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 596 IF00 = 0xABCDEF70 597 Method (M000, 1, NotSerialized) 598 { 599 Method (M001, 0, NotSerialized) 600 { 601 Method (M002, 0, NotSerialized) 602 { 603 Method (M003, 0, NotSerialized) 604 { 605 Method (M004, 0, NotSerialized) 606 { 607 Method (M005, 0, NotSerialized) 608 { 609 Method (M006, 0, NotSerialized) 610 { 611 Method (M007, 0, NotSerialized) 612 { 613 Method (M008, 0, NotSerialized) 614 { 615 Return (0x00) 616 } 617 618 Arg0 = 0x80000000 619 Return ((Arg0 + M008 ())) 620 } 621 622 Arg0 = 0x07000000 623 Return ((Arg0 + M007 ())) 624 } 625 626 Arg0 = 0x00600000 627 Return ((Arg0 + M006 ())) 628 } 629 630 Arg0 = 0x00050000 631 Return ((Arg0 + M005 ())) 632 } 633 634 Arg0 = 0x4000 635 Return ((Arg0 + M004 ())) 636 } 637 638 Arg0 = 0x0300 639 Return ((Arg0 + M003 ())) 640 } 641 642 Arg0 = 0x20 643 Return ((Arg0 + M002 ())) 644 } 645 646 Arg0 = 0x01 647 Store ((Arg0 + M001 ()), Local0) 648 If ((Local0 != 0x87654321)) 649 { 650 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 651 } 652 653 Local1 = 0x01 654 If ((Arg0 != Local1)) 655 { 656 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Arg0, Local1) 657 } 658 659 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 660 Return (Local0) 661 } 662 663 Local0 = M000 (IF00) 664 If ((Local0 != 0x87654321)) 665 { 666 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 667 } 668 669 Local1 = 0xABCDEF70 670 If ((IF00 != Local1)) 671 { 672 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, IF00, Local1) 673 } 674 675 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 676 } 677 678 /* 679 * Element of Buffer instead of i000 (in m001) 680 */ 681 Method (M309, 1, Serialized) 682 { 683 Name (I001, 0x00) 684 Name (B000, Buffer (0x03) 685 { 686 0x11, 0x01, 0x22 // .." 687 }) 688 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 689 I001 = Arg0 690 Method (M000, 2, NotSerialized) 691 { 692 Method (M001, 1, NotSerialized) 693 { 694 Method (M002, 1, NotSerialized) 695 { 696 Method (M003, 1, NotSerialized) 697 { 698 Method (M004, 1, NotSerialized) 699 { 700 Method (M005, 1, NotSerialized) 701 { 702 Method (M006, 1, NotSerialized) 703 { 704 Method (M007, 1, NotSerialized) 705 { 706 Method (M008, 1, NotSerialized) 707 { 708 If (I001) 709 { 710 Arg0 [0x01] = 0xFF 711 } 712 713 Return (0x00) 714 } 715 716 Arg0 [0x01] = 0x08 717 Return ((DerefOf (Arg0 [0x01]) + M008 (Arg0))) 718 } 719 720 Arg0 [0x01] = 0x07 721 Return ((DerefOf (Arg0 [0x01]) + M007 (Arg0))) 722 } 723 724 Arg0 [0x01] = 0x06 725 Return ((DerefOf (Arg0 [0x01]) + M006 (Arg0))) 726 } 727 728 Arg0 [0x01] = 0x05 729 Return ((DerefOf (Arg0 [0x01]) + M005 (Arg0))) 730 } 731 732 Arg0 [0x01] = 0x04 733 Return ((DerefOf (Arg0 [0x01]) + M004 (Arg0))) 734 } 735 736 Arg0 [0x01] = 0x03 737 Return ((DerefOf (Arg0 [0x01]) + M003 (Arg0))) 738 } 739 740 Arg0 [0x01] = 0x02 741 Return ((DerefOf (Arg0 [0x01]) + M002 (Arg0))) 742 } 743 744 Store ((DerefOf (Arg0 [0x01]) + M001 (Arg0)), Local0) 745 If ((Local0 != 0x24)) 746 { 747 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x24) 748 } 749 750 Local1 = DerefOf (Arg0 [0x01]) 751 If (Arg1) 752 { 753 Local2 = 0xFF 754 } 755 Else 756 { 757 Local2 = 0x08 758 } 759 760 If ((Local1 != Local2)) 761 { 762 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, Local2) 763 } 764 765 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 766 Return (Local0) 767 } 768 769 Local0 = M000 (B000, Arg0) 770 If ((Local0 != 0x24)) 771 { 772 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x24) 773 } 774 775 Local1 = DerefOf (B000 [0x01]) 776 If (Arg0) 777 { 778 Local2 = 0xFF 779 } 780 Else 781 { 782 Local2 = 0x08 783 } 784 785 If ((Local1 != Local2)) 786 { 787 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, Local2) 788 } 789 790 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 791 } 792 793 /* 794 * Element of String instead of i000 (in m001) 795 */ 796 Method (M30A, 1, Serialized) 797 { 798 Name (I001, 0x00) 799 Name (S000, "q\x01ertyuiop") 800 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 801 I001 = Arg0 802 Method (M000, 2, NotSerialized) 803 { 804 Method (M001, 1, NotSerialized) 805 { 806 Method (M002, 1, NotSerialized) 807 { 808 Method (M003, 1, NotSerialized) 809 { 810 Method (M004, 1, NotSerialized) 811 { 812 Method (M005, 1, NotSerialized) 813 { 814 Method (M006, 1, NotSerialized) 815 { 816 Method (M007, 1, NotSerialized) 817 { 818 Method (M008, 1, NotSerialized) 819 { 820 If (I001) 821 { 822 Arg0 [0x01] = 0xFF 823 } 824 825 Return (0x00) 826 } 827 828 Arg0 [0x01] = 0x08 829 Return ((DerefOf (Arg0 [0x01]) + M008 (Arg0))) 830 } 831 832 Arg0 [0x01] = 0x07 833 Return ((DerefOf (Arg0 [0x01]) + M007 (Arg0))) 834 } 835 836 Arg0 [0x01] = 0x06 837 Return ((DerefOf (Arg0 [0x01]) + M006 (Arg0))) 838 } 839 840 Arg0 [0x01] = 0x05 841 Return ((DerefOf (Arg0 [0x01]) + M005 (Arg0))) 842 } 843 844 Arg0 [0x01] = 0x04 845 Return ((DerefOf (Arg0 [0x01]) + M004 (Arg0))) 846 } 847 848 Arg0 [0x01] = 0x03 849 Return ((DerefOf (Arg0 [0x01]) + M003 (Arg0))) 850 } 851 852 Arg0 [0x01] = 0x02 853 Return ((DerefOf (Arg0 [0x01]) + M002 (Arg0))) 854 } 855 856 Store ((DerefOf (Arg0 [0x01]) + M001 (Arg0)), Local0) 857 If ((Local0 != 0x24)) 858 { 859 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x24) 860 } 861 862 Local1 = DerefOf (Arg0 [0x01]) 863 If (Arg1) 864 { 865 Local2 = 0xFF 866 } 867 Else 868 { 869 Local2 = 0x08 870 } 871 872 If ((Local1 != Local2)) 873 { 874 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, Local2) 875 } 876 877 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 878 Return (Local0) 879 } 880 881 Local0 = M000 (S000, Arg0) 882 If ((Local0 != 0x24)) 883 { 884 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x24) 885 } 886 887 Local1 = DerefOf (S000 [0x01]) 888 If (Arg0) 889 { 890 Local2 = 0xFF 891 } 892 Else 893 { 894 Local2 = 0x08 895 } 896 897 If ((Local1 != Local2)) 898 { 899 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local1, Local2) 900 } 901 902 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 903 } 904 905 /* 906 * Buffer Field instead of i000 (in m001) 907 * 908 * CreateField deeper than parent 909 */ 910 Method (M30B, 1, Serialized) 911 { 912 Name (I001, 0x00) 913 Name (B000, Buffer (0x10){}) 914 I001 = Arg0 915 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 916 Method (M000, 2, NotSerialized) 917 { 918 CreateField (B000, 0x05, 0x20, BF00) 919 Method (M001, 0, NotSerialized) 920 { 921 Method (M002, 0, NotSerialized) 922 { 923 Method (M003, 0, NotSerialized) 924 { 925 Method (M004, 0, NotSerialized) 926 { 927 Method (M005, 0, NotSerialized) 928 { 929 Method (M006, 0, NotSerialized) 930 { 931 Method (M007, 0, NotSerialized) 932 { 933 Method (M008, 0, NotSerialized) 934 { 935 If (I001) 936 { 937 BF00 = 0x11223344 938 } 939 940 Return (0x00) 941 } 942 943 BF00 = 0x80000000 944 Return ((BF00 + M008 ())) 945 } 946 947 BF00 = 0x07000000 948 Return ((BF00 + M007 ())) 949 } 950 951 BF00 = 0x00600000 952 Return ((BF00 + M006 ())) 953 } 954 955 BF00 = 0x00050000 956 Return ((BF00 + M005 ())) 957 } 958 959 BF00 = 0x4000 960 Return ((BF00 + M004 ())) 961 } 962 963 BF00 = 0x0300 964 Return ((BF00 + M003 ())) 965 } 966 967 BF00 = 0x20 968 Return ((BF00 + M002 ())) 969 } 970 971 BF00 = 0x01 972 Store ((BF00 + M001 ()), Local0) 973 If ((Local0 != 0x87654321)) 974 { 975 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 976 } 977 978 If (Arg1) 979 { 980 Local1 = Buffer() {0x44, 0x33, 0x22, 0x11} 981 } 982 Else 983 { 984 Local1 = Buffer() {0x00, 0x00, 0x00, 0x80} 985 } 986 987 If ((BF00 != Local1)) 988 { 989 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, BF00, Local1) 990 } 991 992 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 993 Return (Local0) 994 } 995 996 Local0 = M000 (0x00, Arg0) 997 If ((Local0 != 0x87654321)) 998 { 999 ERR (__METHOD__, Z157, __LINE__, 0x00, 0x00, Local0, 0x87654321) 1000 } 1001 1002 CH03 (__METHOD__, Z157, __LINE__, 0x00, 0x00) 1003 } 1004 1005 Method (N003, 0, NotSerialized) 1006 { 1007 If (0x01) 1008 { 1009 SRMT ("m300") 1010 M300 () 1011 SRMT ("m301") 1012 M301 () 1013 SRMT ("m302") 1014 M302 () 1015 SRMT ("m303-0") 1016 M303 (0x00) 1017 SRMT ("m303-1") 1018 If (Y200) 1019 { 1020 M303 (0x01) 1021 } 1022 Else 1023 { 1024 BLCK () 1025 } 1026 1027 SRMT ("m304") 1028 M304 () 1029 SRMT ("m305") 1030 M305 () 1031 SRMT ("m306") 1032 M306 () 1033 SRMT ("m307") 1034 M307 () 1035 SRMT ("m308") 1036 M308 () 1037 SRMT ("m309-0") 1038 M309 (0x00) 1039 SRMT ("m309-1") 1040 M309 (0x01) 1041 SRMT ("m30a-0") 1042 M30A (0x00) 1043 SRMT ("m30a-1") 1044 M30A (0x01) 1045 SRMT ("m30b-0") 1046 M30B (0x00) 1047 SRMT ("m30b-1") 1048 M30B (0x01) 1049 } 1050 Else 1051 { 1052 SRMT ("m300") 1053 M300 () 1054 } 1055 } 1056