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 * Miscellaneous named object creation 30 */ 31 Name (Z134, 0x86) 32 /* 33 * This sub-test is intended to comprehensively verify 34 * the Function declaration syntax implementation. 35 * 36 * Declare the Function Control Method Objects of different, 37 * signature check that properly specified or default arguments 38 * values provide required functionality. 39 * 40 * The overall functionality of the Function Objects is indirectly 41 * verified by other tests as far as "Functions are equivalent to a 42 * Method that specifies NotSerialized". 43 * 44 * 17.5.49 Function (Declare Control Method) 45 * Syntax 46 * Function (FunctionName, ReturnType, ParameterTypes) {TermList} 47 * 48 * Validated Assertions: 49 * 50 * - Function declaration creates an Object in the ACPI 51 * namespace which can be referred by the specified FunctionName 52 * either to initiate its invocation or to obtain its AML Object 53 * type. Also FunctionName can be used to save a copy of the Object 54 * or a reference to it in another AML Object. 55 * 56 * - ASL compiler should allow only a Namestring data type in the 57 * FunctionName position. 58 * 59 * - ASL compiler should allow only an ObjectTypeKeyword or 60 * a comma-separated ObjectTypeKeywords enclosed with curly 61 * brackets (OTK package) in the ReturnType position. ReturnType 62 * is optional argument. If no ReturnType is specified, ReturnType 63 * UnknownObj is assumed. 64 * ObjectTypeKeyword := UnknownObj | IntObj | StrObj | BuffObj | 65 * PkgObj | FieldUnitObj | DeviceObj | EventObj | 66 * MethodObj | MutexObj | OpRegionObj | PowerResObj | 67 * ThermalZoneObj | BuffFieldObj | DDBHandleObj 68 * 69 * - ASL compiler should report an error when an actual Object specified 70 * to be returned is of inappropriate type. 71 * 72 * - ASL compiler should report an error when there is at least one 73 * control path in the method that returns no any actual Object. 74 * 75 * - ASL compiler should report an error when some different from 76 * UnknownObj ObjectType Keyword specified in the ReturnType position 77 * but no any actual Object specified to be returned. 78 * 79 * - ASL compiler should allow only an OTK package or a package 80 * containing OTK packages along with ObjectTypeKeywords in the 81 * ParameterTypes position. 82 * 83 * - ASL compiler should report an error when ParameterTypes is specified 84 * and the number of members in the ParameterTypes package exceeds 7. 85 * 86 * - If ParameterTypes is not specified, then the number of parameters 87 * is Zero. 88 * 89 * - ASL compiler should report an error when an actual Object 90 * specified to be a respective argument of the Method is of 91 * inappropriate type. 92 * 93 * - System software should execute a Function control method 94 * by referencing the objects in the Function body in order. 95 * 96 * - Function opens a name scope. All namespace references that occur 97 * during the method execution are relative to the Function package 98 * location. 99 * 100 * - All namespace objects created by a Function should be destroyed 101 * when Function execution exits. 102 * 103 */ 104 Scope (\_SB) 105 { 106 Method (M20D, 0, NotSerialized) 107 { 108 } 109 } 110 111 Method (M20E, 0, Serialized) 112 { 113 Method (M316, 0, NotSerialized) 114 { 115 Method (MM00, 0, NotSerialized) 116 { 117 Return ("\\m20e.m316.mm00") 118 } 119 120 Method (\_SB.M20D.MM00, 0, NotSerialized) 121 { 122 Return ("\\_SB.m20d.mm00") 123 } 124 125 M205 (__METHOD__, 0x01, ObjectType (MM00), 0x08) 126 M205 (__METHOD__, 0x02, MM00 (), "\\m20e.m316.mm00") 127 M205 (__METHOD__, 0x03, ObjectType (\M20E.M316.MM00), 0x08) 128 M205 (__METHOD__, 0x04, \M20E.M316.MM00 (), "\\m20e.m316.mm00") 129 M205 (__METHOD__, 0x05, ObjectType (^M316.MM00), 0x08) 130 M205 (__METHOD__, 0x06, ^M316.MM00 (), "\\m20e.m316.mm00") 131 M205 (__METHOD__, 0x07, ObjectType (\_SB.M20D.MM00), 0x08) 132 M205 (__METHOD__, 0x08, \_SB.M20D.MM00 (), "\\_SB.m20d.mm00") 133 } 134 135 Method (M317, 0, NotSerialized) 136 { 137 Method (MM10, 0, NotSerialized) 138 { 139 Return ("\\m20e.m317.mm10") 140 } 141 142 Method (MM20, 0, NotSerialized) 143 { 144 Return ("\\m20e.m317.mm20") 145 } 146 147 Method (MM30, 0, NotSerialized) 148 { 149 Return ("\\m20e.m317.mm30") 150 } 151 152 M205 (__METHOD__, 0x09, ObjectType (MM10), 0x08) 153 M205 (__METHOD__, 0x0A, MM10 (), "\\m20e.m317.mm10") 154 M205 (__METHOD__, 0x0B, ObjectType (MM20), 0x08) 155 M205 (__METHOD__, 0x0C, MM20 (), "\\m20e.m317.mm20") 156 M205 (__METHOD__, 0x0D, ObjectType (MM30), 0x08) 157 If (Y157) 158 { 159 M205 (__METHOD__, 0x0E, MM30 (), "\\m20e.m317.mm30") 160 } 161 } 162 163 /* Integer */ 164 165 Name (INT0, 0xFEDCBA9876543210) 166 /* String */ 167 168 Name (STR0, "source string") 169 /* Buffer */ 170 171 Name (BUF0, Buffer (0x09) 172 { 173 /* 0000 */ 0x09, 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, // ........ 174 /* 0008 */ 0x01 // . 175 }) 176 /* Initializer of Fields */ 177 178 Name (BUF2, Buffer (0x09) 179 { 180 /* 0000 */ 0x95, 0x85, 0x75, 0x65, 0x55, 0x45, 0x35, 0x25, // ..ueUE5% 181 /* 0008 */ 0x15 // . 182 }) 183 /* Base of Buffer Fields */ 184 185 Name (BUFZ, Buffer (0x30){}) 186 /* Package */ 187 188 Name (PAC0, Package (0x03) 189 { 190 0xFEDCBA987654321F, 191 "test package", 192 Buffer (0x09) 193 { 194 /* 0000 */ 0x13, 0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D, 0x0C, // ........ 195 /* 0008 */ 0x0B // . 196 } 197 }) 198 /* Operation Region */ 199 200 OperationRegion (OPR0, SystemMemory, 0x00, 0x30) 201 /* Field Unit */ 202 203 Field (OPR0, ByteAcc, NoLock, Preserve) 204 { 205 FLU0, 69, 206 FLU2, 64, 207 FLU4, 32 208 } 209 210 /* Device */ 211 212 Device (DEV0) 213 { 214 Name (S000, "DEV0") 215 } 216 217 /* Event */ 218 219 Event (EVE0) 220 /* Method */ 221 222 Method (MMM0, 0, NotSerialized) 223 { 224 Return ("ff0X") 225 } 226 227 /* Mutex */ 228 229 Mutex (MTX0, 0x00) 230 /* Power Resource */ 231 232 PowerResource (PWR0, 0x00, 0x0000) 233 { 234 Name (S000, "PWR0") 235 } 236 237 /* Processor */ 238 239 Processor (CPU0, 0x00, 0xFFFFFFFF, 0x00) 240 { 241 Name (S000, "CPU0") 242 } 243 244 /* Thermal Zone */ 245 246 ThermalZone (TZN0) 247 { 248 Name (S000, "TZN0") 249 } 250 251 /* Buffer Field */ 252 253 CreateField (BUFZ, 0x00, 0x45, BFL0) 254 CreateField (BUFZ, 0x50, 0x40, BFL2) 255 CreateField (BUFZ, 0xA0, 0x20, BFL4) 256 /* DDBHandle */ 257 258 Name (DDB0, Ones) 259 /* Reference */ 260 261 Name (ORF0, "ORF0") 262 Name (REF0, Package (0x01){}) 263 Method (M318, 0, NotSerialized) 264 { 265 Method (MM00, 1, NotSerialized) 266 { 267 Arg0 = (DerefOf (Arg0) + 0x01) 268 } 269 270 Method (MM01, 0, NotSerialized) 271 { 272 Return (INT0) /* \M20E.INT0 */ 273 } 274 275 Method (MM11, 0, NotSerialized) 276 { 277 Return (INT0) /* \M20E.INT0 */ 278 } 279 280 Method (MM02, 0, NotSerialized) 281 { 282 Return (STR0) /* \M20E.STR0 */ 283 } 284 285 Method (MM03, 0, NotSerialized) 286 { 287 Return (BUF0) /* \M20E.BUF0 */ 288 } 289 290 Method (MM04, 0, NotSerialized) 291 { 292 Return (PAC0) /* \M20E.PAC0 */ 293 } 294 295 Method (MM05, 0, NotSerialized) 296 { 297 Return (FLU0) /* \M20E.FLU0 */ 298 } 299 300 Method (MM06, 0, NotSerialized) 301 { 302 Return (DEV0) /* \M20E.DEV0 */ 303 } 304 305 Method (MM07, 0, NotSerialized) 306 { 307 Return (EVE0) /* \M20E.EVE0 */ 308 } 309 310 Method (MM08, 0, NotSerialized) 311 { 312 CopyObject (MMM0 (), Local0) 313 Return (Local0) 314 } 315 316 Method (MM09, 0, NotSerialized) 317 { 318 Return (MTX0) /* \M20E.MTX0 */ 319 } 320 321 Method (MM0A, 0, NotSerialized) 322 { 323 Return (OPR0) /* \M20E.OPR0 */ 324 } 325 326 Method (MM0B, 0, NotSerialized) 327 { 328 Return (PWR0) /* \M20E.PWR0 */ 329 } 330 331 Method (MM0C, 0, NotSerialized) 332 { 333 Return (CPU0) /* \M20E.CPU0 */ 334 } 335 336 Method (MM0D, 0, NotSerialized) 337 { 338 Return (TZN0) /* \M20E.TZN0 */ 339 } 340 341 Method (MM0E, 0, NotSerialized) 342 { 343 Return (BFL0) /* \M20E.BFL0 */ 344 } 345 346 Method (MM0F, 0, NotSerialized) 347 { 348 Return (DDB0) /* \M20E.DDB0 */ 349 } 350 351 /* Formal declaration */ 352 /* Function(mm0g, DebugObj) {Return (Debug)} */ 353 Method (MM0H, 0, NotSerialized) 354 { 355 Return (RefOf (ORF0)) 356 } 357 358 Local0 = 0xFEDCBA9876543210 359 M205 (__METHOD__, 0x0F, ObjectType (MM00), 0x08) 360 /* 361 // Bug 148 362 mm00(Refof(Local0)) 363 m205(ts, 16, Local0, 0xfedcba9876543211) 364 */ 365 M205 (__METHOD__, 0x11, ObjectType (MM01), 0x08) 366 M205 (__METHOD__, 0x12, MM01 (), INT0) 367 M205 (__METHOD__, 0x13, ObjectType (MM02), 0x08) 368 M205 (__METHOD__, 0x14, MM02 (), STR0) 369 M205 (__METHOD__, 0x15, ObjectType (MM03), 0x08) 370 M205 (__METHOD__, 0x16, MM03 (), BUF0) 371 M205 (__METHOD__, 0x17, ObjectType (MM04), 0x08) 372 M205 (__METHOD__, 0x18, MM04 (), PAC0) 373 M205 (__METHOD__, 0x19, ObjectType (MM05), 0x08) 374 M205 (__METHOD__, 0x1A, MM05 (), FLU0) 375 M205 (__METHOD__, 0x1B, ObjectType (MM06), 0x08) 376 M205 (__METHOD__, 0x1C, MM06 (), DEV0) 377 M205 (__METHOD__, 0x1D, ObjectType (MM07), 0x08) 378 M205 (__METHOD__, 0x1E, MM07 (), EVE0) 379 M205 (__METHOD__, 0x1F, ObjectType (MM08), 0x08) 380 CopyObject (MMM0 (), Local0) 381 M205 (__METHOD__, 0x20, MM08 (), Local0) 382 M205 (__METHOD__, 0x21, ObjectType (MM09), 0x08) 383 M205 (__METHOD__, 0x22, MM09 (), MTX0) 384 M205 (__METHOD__, 0x23, ObjectType (MM0A), 0x08) 385 M205 (__METHOD__, 0x24, MM0A (), OPR0) 386 M205 (__METHOD__, 0x25, ObjectType (MM0B), 0x08) 387 M205 (__METHOD__, 0x26, MM0B (), PWR0) 388 M205 (__METHOD__, 0x27, ObjectType (MM0C), 0x08) 389 M205 (__METHOD__, 0x28, MM0C (), CPU0) 390 M205 (__METHOD__, 0x29, ObjectType (MM0D), 0x08) 391 If (Y350) 392 { 393 M205 (__METHOD__, 0x2A, MM0D (), TZN0) 394 } 395 396 M205 (__METHOD__, 0x2B, ObjectType (MM0E), 0x08) 397 M205 (__METHOD__, 0x2C, MM0E (), BFL0) 398 M205 (__METHOD__, 0x2D, ObjectType (MM0F), 0x08) 399 M205 (__METHOD__, 0x2E, MM0F (), DDB0) 400 /* 401 m205(ts, 47, ObjectType(mm0g), 8) 402 m205(ts, 48, mm0g(), Debug) 403 */ 404 M205 (__METHOD__, 0x31, ObjectType (MM0H), 0x08) 405 M205 (__METHOD__, 0x32, DerefOf (MM0H ()), ORF0) 406 } 407 408 Method (M319, 0, NotSerialized) 409 { 410 Method (MM00, 0, NotSerialized) 411 { 412 Return (STR0) /* \M20E.STR0 */ 413 } 414 415 Method (MM01, 0, NotSerialized) 416 { 417 Return (INT0) /* \M20E.INT0 */ 418 } 419 420 M205 (__METHOD__, 0x33, ObjectType (MM00), 0x08) 421 M205 (__METHOD__, 0x34, MM00 (), STR0) 422 M205 (__METHOD__, 0x35, ObjectType (MM01), 0x08) 423 M205 (__METHOD__, 0x36, MM01 (), INT0) 424 } 425 426 Method (M31A, 0, Serialized) 427 { 428 Name (FLAG, Ones) 429 /* List of types of the parameters contains the same keyword */ 430 431 Method (MM00, 1, NotSerialized) 432 { 433 FLAG = 0x00 434 } 435 436 Method (MM01, 1, NotSerialized) 437 { 438 FLAG = 0x01 439 } 440 441 Method (MM02, 2, NotSerialized) 442 { 443 FLAG = 0x02 444 } 445 446 Method (MM03, 3, NotSerialized) 447 { 448 FLAG = 0x03 449 } 450 451 Method (MM04, 4, NotSerialized) 452 { 453 FLAG = 0x04 454 } 455 456 Method (MM05, 5, NotSerialized) 457 { 458 FLAG = 0x05 459 } 460 461 Method (MM06, 6, NotSerialized) 462 { 463 FLAG = 0x06 464 } 465 466 Method (MM07, 7, NotSerialized) 467 { 468 FLAG = 0x07 469 } 470 471 /* List of types of the parameters contains the UnknownObj keyword */ 472 473 Method (MM08, 1, NotSerialized) 474 { 475 FLAG = 0x08 476 } 477 478 Method (MM09, 1, NotSerialized) 479 { 480 FLAG = 0x09 481 } 482 483 Method (MM0A, 7, NotSerialized) 484 { 485 FLAG = 0x0A 486 } 487 488 /* List of types of the parameters contains different keywords */ 489 490 Method (MM10, 2, NotSerialized) 491 { 492 FLAG = 0x10 493 } 494 495 Method (MM11, 2, NotSerialized) 496 { 497 FLAG = 0x11 498 } 499 500 Method (MM12, 2, NotSerialized) 501 { 502 FLAG = 0x12 503 } 504 505 Method (MM13, 3, NotSerialized) 506 { 507 FLAG = 0x13 508 } 509 510 Method (MM14, 4, NotSerialized) 511 { 512 FLAG = 0x14 513 } 514 515 Method (MM15, 5, NotSerialized) 516 { 517 FLAG = 0x15 518 } 519 520 Method (MM16, 6, NotSerialized) 521 { 522 FLAG = 0x16 523 } 524 525 Method (MM17, 7, NotSerialized) 526 { 527 FLAG = 0x17 528 } 529 530 Method (MM18, 7, NotSerialized) 531 { 532 FLAG = 0x18 533 } 534 535 /* List of types of the parameters contains keyword packages */ 536 /* along with different keywords */ 537 Method (MM20, 1, NotSerialized) 538 { 539 FLAG = 0x20 540 } 541 542 Method (MM21, 2, NotSerialized) 543 { 544 FLAG = 0x21 545 } 546 547 /* 548 // Bug 148 549 Function(mm22, , {{IntObj, StrObj, BuffObj, PkgObj, 550 FieldUnitObj, DeviceObj, EventObj, MethodObj, 551 MutexObj, OpRegionObj, PowerResObj, ProcessorObj, 552 ThermalZoneObj, BuffFieldObj, DDBHandleObj}}) {Store(34, Flag)} 553 */ 554 Method (MM23, 2, NotSerialized) 555 { 556 FLAG = 0x23 557 } 558 559 Method (MM24, 2, NotSerialized) 560 { 561 FLAG = 0x24 562 } 563 564 Method (MM25, 2, NotSerialized) 565 { 566 FLAG = 0x25 567 } 568 569 Method (MM26, 2, NotSerialized) 570 { 571 FLAG = 0x26 572 } 573 574 Method (MM27, 2, NotSerialized) 575 { 576 FLAG = 0x27 577 } 578 579 Method (MM28, 2, NotSerialized) 580 { 581 FLAG = 0x28 582 } 583 584 Method (MM29, 2, NotSerialized) 585 { 586 FLAG = 0x29 587 } 588 /* 589 // Bug 148 590 Function(mm3a, , { 591 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 592 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 593 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 594 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 595 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 596 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 597 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 598 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 599 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 600 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 601 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 602 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 603 {IntObj, StrObj, BuffObj, PkgObj, FieldUnitObj, DeviceObj, EventObj, MethodObj, 604 MutexObj, OpRegionObj, PowerResObj, ThermalZoneObj, BuffFieldObj, DDBHandleObj}, 605 }) {Store(42, Flag)} 606 */ 607 /* 608 // Bug 148 609 // List of types of the parameters contains the same keyword 610 m205(ts, 55, ObjectType(mm00), 8) 611 mm00(1) 612 m205(ts, 56, Flag, 0) 613 m205(ts, 57, ObjectType(mm01), 8) 614 mm01(1) 615 m205(ts, 58, Flag, 1) 616 m205(ts, 59, ObjectType(mm02), 8) 617 mm02(1, 2) 618 m205(ts, 60, Flag, 2) 619 m205(ts, 61, ObjectType(mm03), 8) 620 mm03(1, 2, 3) 621 m205(ts, 62, Flag, 3) 622 m205(ts, 63, ObjectType(mm04), 8) 623 mm04(1, 2, 3, 4) 624 m205(ts, 64, Flag, 4) 625 m205(ts, 65, ObjectType(mm05), 8) 626 mm05(1, 2, 3, 4, 5) 627 m205(ts, 66, Flag, 5) 628 m205(ts, 67, ObjectType(mm06), 8) 629 mm06(1, 2, 3, 4, 5, 6) 630 m205(ts, 68, Flag, 6) 631 m205(ts, 69, ObjectType(mm07), 8) 632 mm07(1, 2, 3, 4, 5, 6, 7) 633 m205(ts, 70, Flag, 7) 634 // List of types of the parameters contains the UnknownObj keyword 635 m205(ts, 71, ObjectType(mm08), 8) 636 mm08(1) 637 m205(ts, 72, Flag, 8) 638 m205(ts, 73, ObjectType(mm09), 8) 639 mm09(1) 640 m205(ts, 74, Flag, 9) 641 m205(ts, 75, ObjectType(mm0a), 8) 642 mm08(1, 2, 3, 4, 5, 6, 7) 643 m205(ts, 76, Flag, 10) 644 // List of types of the parameters contains different keywords 645 m205(ts, 77, ObjectType(mm10), 8) 646 mm10(1, 2) 647 m205(ts, 78, Flag, 16) 648 m205(ts, 79, ObjectType(mm11), 8) 649 mm11(1, 2) 650 m205(ts, 80, Flag, 17) 651 m205(ts, 81, ObjectType(mm12), 8) 652 mm12(1, 2) 653 m205(ts, 82, Flag, 18) 654 m205(ts, 83, ObjectType(mm13), 8) 655 mm13(1, 2, 3) 656 m205(ts, 84, Flag, 19) 657 m205(ts, 85, ObjectType(mm14), 8) 658 mm14(1, 2, 3, 4) 659 m205(ts, 86, Flag, 20) 660 m205(ts, 87, ObjectType(mm15), 8) 661 mm15(1, 2, 3, 4, 5) 662 m205(ts, 88, Flag, 21) 663 m205(ts, 89, ObjectType(mm16), 8) 664 mm16(1, 2, 3, 4, 5, 6) 665 m205(ts, 90, Flag, 22) 666 m205(ts, 91, ObjectType(mm17), 8) 667 mm17(1, 2, 3, 4, 5, 6, 7) 668 m205(ts, 92, Flag, 23) 669 m205(ts, 93, ObjectType(mm18), 8) 670 mm18(1, 2, 3, 4, 5, 6, 7) 671 m205(ts, 94, Flag, 24) 672 // List of types of the parameters contains keyword packages 673 // along with different keywords 674 m205(ts, 95, ObjectType(mm20), 8) 675 mm20(1) 676 m205(ts, 96, Flag, 32) 677 m205(ts, 97, ObjectType(mm21), 8) 678 mm21(1) 679 m205(ts, 98, Flag, 33) 680 m205(ts, 99, ObjectType(mm22), 8) 681 mm22(1) 682 m205(ts, 100, Flag, 34) 683 m205(ts, 101, ObjectType(mm23), 8) 684 mm23(1, 2) 685 m205(ts, 102, Flag, 35) 686 m205(ts, 103, ObjectType(mm24), 8) 687 mm24(1, 2) 688 m205(ts, 104, Flag, 36) 689 m205(ts, 105, ObjectType(mm25), 8) 690 mm25(1, 2) 691 m205(ts, 106, Flag, 37) 692 m205(ts, 107, ObjectType(mm26), 8) 693 mm26(1, 2) 694 m205(ts, 108, Flag, 38) 695 m205(ts, 109, ObjectType(mm27), 8) 696 mm27(1, 2) 697 m205(ts, 110, Flag, 39) 698 m205(ts, 149, ObjectType(mm28), 8) 699 mm28(1, 2) 700 m205(ts, 111, Flag, 40) 701 m205(ts, 112, ObjectType(mm29), 8) 702 mm29(1, 2) 703 m205(ts, 113, Flag, 41) 704 m205(ts, 114, ObjectType(mm2a), 8) 705 mm2a(1, 2, 3, 4, 5, 6, 7) 706 m205(ts, 115, Flag, 42) 707 */ 708 } 709 710 SRMT ("m316") 711 M316 () 712 SRMT ("m317") 713 M317 () 714 SRMT ("m318") 715 M318 () 716 SRMT ("m319") 717 M319 () 718 SRMT ("m31a") 719 M31A () 720 } 721 722 /* Run-method */ 723 724 Method (NM02, 0, NotSerialized) 725 { 726 Debug = "TEST: NM02, Declare Function Control Method Named Object" 727 M20E () 728 CH03 ("NM02", Z134, __LINE__, 0x00, 0x00) 729 } 730