Deleted Added
full compact
dbmethod.c (249112) dbmethod.c (249663)
1/*******************************************************************************
2 *
3 * Module Name: dbmethod - Debug commands for control methods
4 *
5 ******************************************************************************/
6
7/*
8 * Copyright (C) 2000 - 2013, Intel Corp.

--- 35 unchanged lines hidden (view full) ---

44
45#include <contrib/dev/acpica/include/acpi.h>
46#include <contrib/dev/acpica/include/accommon.h>
47#include <contrib/dev/acpica/include/acdispat.h>
48#include <contrib/dev/acpica/include/acnamesp.h>
49#include <contrib/dev/acpica/include/acdebug.h>
50#include <contrib/dev/acpica/include/acdisasm.h>
51#include <contrib/dev/acpica/include/acparser.h>
1/*******************************************************************************
2 *
3 * Module Name: dbmethod - Debug commands for control methods
4 *
5 ******************************************************************************/
6
7/*
8 * Copyright (C) 2000 - 2013, Intel Corp.

--- 35 unchanged lines hidden (view full) ---

44
45#include <contrib/dev/acpica/include/acpi.h>
46#include <contrib/dev/acpica/include/accommon.h>
47#include <contrib/dev/acpica/include/acdispat.h>
48#include <contrib/dev/acpica/include/acnamesp.h>
49#include <contrib/dev/acpica/include/acdebug.h>
50#include <contrib/dev/acpica/include/acdisasm.h>
51#include <contrib/dev/acpica/include/acparser.h>
52#include <contrib/dev/acpica/include/acpredef.h>
52
53
54#ifdef ACPI_DEBUGGER
55
56#define _COMPONENT ACPI_CA_DEBUGGER
57 ACPI_MODULE_NAME ("dbmethod")
58
59

--- 372 unchanged lines hidden (view full) ---

432
433static ACPI_STATUS
434AcpiDbWalkForExecute (
435 ACPI_HANDLE ObjHandle,
436 UINT32 NestingLevel,
437 void *Context,
438 void **ReturnValue)
439{
53
54
55#ifdef ACPI_DEBUGGER
56
57#define _COMPONENT ACPI_CA_DEBUGGER
58 ACPI_MODULE_NAME ("dbmethod")
59
60

--- 372 unchanged lines hidden (view full) ---

433
434static ACPI_STATUS
435AcpiDbWalkForExecute (
436 ACPI_HANDLE ObjHandle,
437 UINT32 NestingLevel,
438 void *Context,
439 void **ReturnValue)
440{
440 ACPI_NAMESPACE_NODE *Node = (ACPI_NAMESPACE_NODE *) ObjHandle;
441 ACPI_DB_EXECUTE_WALK *Info = (ACPI_DB_EXECUTE_WALK *) Context;
442 ACPI_BUFFER ReturnObj;
443 ACPI_STATUS Status;
444 char *Pathname;
445 UINT32 i;
446 ACPI_DEVICE_INFO *ObjInfo;
447 ACPI_OBJECT_LIST ParamObjects;
448 ACPI_OBJECT Params[ACPI_METHOD_NUM_ARGS];
449 const ACPI_PREDEFINED_INFO *Predefined;
441 ACPI_NAMESPACE_NODE *Node = (ACPI_NAMESPACE_NODE *) ObjHandle;
442 ACPI_DB_EXECUTE_WALK *Info = (ACPI_DB_EXECUTE_WALK *) Context;
443 char *Pathname;
444 const ACPI_PREDEFINED_INFO *Predefined;
445 ACPI_DEVICE_INFO *ObjInfo;
446 ACPI_OBJECT_LIST ParamObjects;
447 ACPI_OBJECT Params[ACPI_METHOD_NUM_ARGS];
448 ACPI_OBJECT *ThisParam;
449 ACPI_BUFFER ReturnObj;
450 ACPI_STATUS Status;
451 UINT16 ArgTypeList;
452 UINT8 ArgCount;
453 UINT8 ArgType;
454 UINT32 i;
450
451
455
456
457 /* The name must be a predefined ACPI name */
458
452 Predefined = AcpiUtMatchPredefinedMethod (Node->Name.Ascii);
453 if (!Predefined)
454 {
455 return (AE_OK);
456 }
457
458 if (Node->Type == ACPI_TYPE_LOCAL_SCOPE)
459 {

--- 9 unchanged lines hidden (view full) ---

469 /* Get the object info for number of method parameters */
470
471 Status = AcpiGetObjectInfo (ObjHandle, &ObjInfo);
472 if (ACPI_FAILURE (Status))
473 {
474 return (Status);
475 }
476
459 Predefined = AcpiUtMatchPredefinedMethod (Node->Name.Ascii);
460 if (!Predefined)
461 {
462 return (AE_OK);
463 }
464
465 if (Node->Type == ACPI_TYPE_LOCAL_SCOPE)
466 {

--- 9 unchanged lines hidden (view full) ---

476 /* Get the object info for number of method parameters */
477
478 Status = AcpiGetObjectInfo (ObjHandle, &ObjInfo);
479 if (ACPI_FAILURE (Status))
480 {
481 return (Status);
482 }
483
484 ParamObjects.Count = 0;
477 ParamObjects.Pointer = NULL;
485 ParamObjects.Pointer = NULL;
478 ParamObjects.Count = 0;
479
480 if (ObjInfo->Type == ACPI_TYPE_METHOD)
481 {
486
487 if (ObjInfo->Type == ACPI_TYPE_METHOD)
488 {
482 /* Setup default parameters */
489 /* Setup default parameters (with proper types) */
483
490
484 for (i = 0; i < ObjInfo->ParamCount; i++)
491 ArgTypeList = Predefined->Info.ArgumentList;
492 ArgCount = METHOD_GET_ARG_COUNT (ArgTypeList);
493
494 /*
495 * Setup the ACPI-required number of arguments, regardless of what
496 * the actual method defines. If there is a difference, then the
497 * method is wrong and a warning will be issued during execution.
498 */
499 ThisParam = Params;
500 for (i = 0; i < ArgCount; i++)
485 {
501 {
486 Params[i].Type = ACPI_TYPE_INTEGER;
487 Params[i].Integer.Value = 1;
502 ArgType = METHOD_GET_NEXT_TYPE (ArgTypeList);
503 ThisParam->Type = ArgType;
504
505 switch (ArgType)
506 {
507 case ACPI_TYPE_INTEGER:
508 ThisParam->Integer.Value = 1;
509 break;
510
511 case ACPI_TYPE_STRING:
512 ThisParam->String.Pointer = "This is the default argument string";
513 ThisParam->String.Length = ACPI_STRLEN (ThisParam->String.Pointer);
514 break;
515
516 case ACPI_TYPE_BUFFER:
517 ThisParam->Buffer.Pointer = (UINT8 *) Params; /* just a garbage buffer */
518 ThisParam->Buffer.Length = 48;
519 break;
520
521 case ACPI_TYPE_PACKAGE:
522 ThisParam->Package.Elements = NULL;
523 ThisParam->Package.Count = 0;
524 break;
525
526 default:
527 AcpiOsPrintf ("%s: Unsupported argument type: %u\n",
528 Pathname, ArgType);
529 break;
530 }
531
532 ThisParam++;
488 }
489
533 }
534
490 ParamObjects.Pointer = Params;
491 ParamObjects.Count = ObjInfo->ParamCount;
535 ParamObjects.Count = ArgCount;
536 ParamObjects.Pointer = Params;
492 }
493
494 ACPI_FREE (ObjInfo);
495 ReturnObj.Pointer = NULL;
496 ReturnObj.Length = ACPI_ALLOCATE_BUFFER;
497
498 /* Do the actual method execution */
499

--- 62 unchanged lines hidden ---
537 }
538
539 ACPI_FREE (ObjInfo);
540 ReturnObj.Pointer = NULL;
541 ReturnObj.Length = ACPI_ALLOCATE_BUFFER;
542
543 /* Do the actual method execution */
544

--- 62 unchanged lines hidden ---