1/****************************************************************************** 2 * 3 * Module Name: uteval - Object evaluation |
4 * $Revision: 51 $ |
5 * 6 *****************************************************************************/ 7 8/****************************************************************************** 9 * 10 * 1. Copyright Notice 11 * |
12 * Some or all of this work - Copyright (c) 1999 - 2004, Intel Corp. |
13 * All rights reserved. 14 * 15 * 2. License 16 * 17 * 2.1. This is your license from Intel Corp. under its intellectual property 18 * rights. You may have additional license terms from the party that provided 19 * you this software, covering your right to use that party's intellectual 20 * property rights. --- 638 unchanged lines hidden (view full) --- 659 660 *Flags = (UINT32) ObjDesc->Integer.Value; 661 662 /* On exit, we must delete the return object */ 663 664 AcpiUtRemoveReference (ObjDesc); 665 return_ACPI_STATUS (Status); 666} |
667 668 669/******************************************************************************* 670 * 671 * FUNCTION: AcpiUtExecute_Sxds 672 * 673 * PARAMETERS: DeviceNode - Node for the device 674 * *Flags - Where the status flags are returned 675 * 676 * RETURN: Status 677 * 678 * DESCRIPTION: Executes _STA for selected device and stores results in 679 * *Flags. 680 * 681 * NOTE: Internal function, no parameter validation 682 * 683 ******************************************************************************/ 684 685ACPI_STATUS 686AcpiUtExecute_Sxds ( 687 ACPI_NAMESPACE_NODE *DeviceNode, 688 UINT8 *Highest) 689{ 690 ACPI_OPERAND_OBJECT *ObjDesc; 691 ACPI_STATUS Status; 692 UINT32 i; 693 694 695 ACPI_FUNCTION_TRACE ("UtExecute_Sxds"); 696 697 698 for (i = 0; i < 4; i++) 699 { 700 Highest[i] = 0xFF; 701 Status = AcpiUtEvaluateObject (DeviceNode, 702 (char *) AcpiGbl_HighestDstateNames[i], 703 ACPI_BTYPE_INTEGER, &ObjDesc); 704 if (ACPI_FAILURE (Status)) 705 { 706 if (Status != AE_NOT_FOUND) 707 { 708 ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, 709 "%s on Device %4.4s, %s\n", 710 (char *) AcpiGbl_HighestDstateNames[i], 711 AcpiUtGetNodeName (DeviceNode), 712 AcpiFormatException (Status))); 713 714 return_ACPI_STATUS (Status); 715 } 716 } 717 else 718 { 719 /* Extract the Dstate value */ 720 721 Highest[i] = (UINT8) ObjDesc->Integer.Value; 722 723 /* Delete the return object */ 724 725 AcpiUtRemoveReference (ObjDesc); 726 } 727 } 728 729 return_ACPI_STATUS (AE_OK); 730} |