/************************************************************************************; | |
;* *; | |
;* *; | |
;* Intel Corporation - ACPI Reference Code for the Baytrail *; | |
;* Family of Customer Reference Boards. *; | |
;* *; | |
;* MPG-MSAE *; | |
;* *; | |
;* Copyright (c) 1999 - 2014, Intel Corporation. *; | |
;* *; | |
;* This program and the accompanying materials are licensed and made available under*; | |
;* the terms and conditions of the BSD License that accompanies this distribution. *; | |
;* The full text of the license may be found at *; | |
;* http://opensource.org/licenses/bsd-license.php. *; | |
;* *; | |
;* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, *; | |
;* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. *; | |
;* *; | |
;* *; | |
;* This program has been developed by Intel Corporation. *; | |
;* Licensee has Intel's permission to incorporate this source code *; | |
;* into their product, royalty free. This source code may NOT be *; | |
;* redistributed to anyone without Intel's written permission. *; | |
;* *; | |
;* Intel specifically disclaims all warranties, express or *; | |
;* implied, and all liability, including consequential and other *; | |
;* indirect damages, for the use of this code, including liability *; | |
;* for infringement of any proprietary rights, and including the *; | |
;* warranties of merchantability and fitness for a particular *; | |
;* purpose. Intel does not assume any responsibility for any *; | |
;* errors which may appear in this code nor any responsibility to *; | |
;* update it. *; | |
;* *; | |
;* Version: See README.TXT *; | |
;* *; | |
;************************************************************************************/ | |
// | |
// _DSM : Device Specific Method supporting USB Sideband Deferring function | |
// | |
// Arg0: UUID Unique function identifier | |
// Arg1: Integer Revision Level | |
// Arg2: Integer Function Index | |
// Arg3: Package Parameters | |
// | |
Method (_DSM, 4, Serialized, 0, UnknownObj, {BuffObj, IntObj, IntObj, PkgObj}) | |
{ | |
If (LEqual(Arg0, ToUUID ("A5FC708F-8775-4BA6-BD0C-BA90A1EC72F8"))) | |
{ | |
// | |
// Switch by function index | |
// | |
Switch (ToInteger(Arg2)) | |
{ | |
// | |
// Standard query - A bitmask of functions supported | |
// Supports function 0-2 | |
// | |
Case (0) | |
{ | |
if (LEqual(Arg1, 1)) // test Arg1 for the revision | |
{ | |
Return (Buffer () {0x07}) | |
} | |
else | |
{ | |
Return (Buffer () {0}) | |
} | |
} | |
// | |
// USB Sideband Deferring Support | |
// 0: USB Sideband Deferring not supported on this device | |
// 1: USB Sideband Deferring supported | |
// | |
Case (1) | |
{ | |
if (LEqual(SDGV,0xFF)) // check for valid GPE vector | |
{ | |
Return (0) | |
} | |
else | |
{ | |
Return (1) | |
} | |
} | |
// | |
// GPE Vector | |
// Return the bit offset within the GPE block of the GPIO (HOST_ALERT) driven by this device | |
// | |
Case (2) | |
{ | |
Return (SDGV) | |
} | |
} | |
} | |
Return (0) | |
} |