1
0
Fork 0
mirror of https://github.com/tylernguyen/x1c6-hackintosh.git synced 2025-02-05 09:33:13 -06:00
x1c6-hackintosh/ACPI/Disassembled ACPI/BIOS-v1.41/SSDT-2-PerfTune.dsl

345 lines
14 KiB
Text
Raw Permalink Normal View History

/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20190509 (64-bit version)
* Copyright (c) 2000 - 2019 Intel Corporation
*
* Disassembling to non-symbolic legacy ASL operators
*
* Disassembly of SSDT-2-PerfTune.aml, Thu Oct 3 00:56:10 2019
*
* Original Table Header:
* Signature "SSDT"
* Length 0x000005C6 (1478)
* Revision 0x02
* Checksum 0x9F
* OEM ID "LENOVO"
* OEM Table ID "PerfTune"
* OEM Revision 0x00001000 (4096)
* Compiler ID "INTL"
* Compiler Version 0x20160527 (538314023)
*/
DefinitionBlock ("", "SSDT", 2, "LENOVO", "PerfTune", 0x00001000)
{
External (_SB_.PCI0.LPCB.H_EC.CFSP, UnknownObj)
External (_SB_.PCI0.LPCB.H_EC.DIM0, UnknownObj)
External (_SB_.PCI0.LPCB.H_EC.DIM1, UnknownObj)
External (_SB_.PCI0.LPCB.H_EC.ECRD, MethodObj) // 1 Arguments
External (_TZ_.TZ01._TMP, MethodObj) // 0 Arguments
External (ADBG, MethodObj) // 1 Arguments
External (DDRF, UnknownObj)
External (ECON, IntObj)
External (TSOD, IntObj)
External (XMPB, UnknownObj)
External (XSMI, UnknownObj)
External (XTUB, UnknownObj)
External (XTUS, UnknownObj)
Scope (\_SB)
{
Device (PTMD)
{
Name (_HID, EisaId ("INT3394") /* ACPI System Fan */) // _HID: Hardware ID
Name (_CID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _CID: Compatible ID
Name (IVER, 0x00010000)
Name (SIZE, 0x055C)
Method (GACI, 0, NotSerialized)
{
Name (RPKG, Package (0x02){})
Store (Zero, Index (RPKG, Zero))
If (LNotEqual (XTUB, Zero))
{
ADBG ("XTUB")
ADBG (XTUB)
ADBG ("XTUS")
ADBG (XTUS)
OperationRegion (XNVS, SystemMemory, XTUB, SIZE)
Field (XNVS, ByteAcc, NoLock, Preserve)
{
XBUF, 10976
}
Name (TEMP, Buffer (XTUS){})
Store (XBUF, TEMP) /* \_SB_.PTMD.GACI.TEMP */
Store (TEMP, Index (RPKG, One))
}
Else
{
ADBG ("XTUB ZERO")
Store (Zero, Index (RPKG, One))
}
Return (RPKG) /* \_SB_.PTMD.GACI.RPKG */
}
Method (GDSV, 1, Serialized)
{
If (LEqual (Arg0, 0x05))
{
Return (Package (0x02)
{
Zero,
Buffer (0x68)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
/* 0008 */ 0x01, 0x00, 0x00, 0x00, 0x4C, 0x04, 0x00, 0x00, // ....L...
/* 0010 */ 0x02, 0x00, 0x00, 0x00, 0x7E, 0x04, 0x00, 0x00, // ....~...
/* 0018 */ 0x03, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00, // ........
/* 0020 */ 0x04, 0x00, 0x00, 0x00, 0xE2, 0x04, 0x00, 0x00, // ........
/* 0028 */ 0x05, 0x00, 0x00, 0x00, 0x14, 0x05, 0x00, 0x00, // ........
/* 0030 */ 0x06, 0x00, 0x00, 0x00, 0x46, 0x05, 0x00, 0x00, // ....F...
/* 0038 */ 0x07, 0x00, 0x00, 0x00, 0x78, 0x05, 0x00, 0x00, // ....x...
/* 0040 */ 0x08, 0x00, 0x00, 0x00, 0xAA, 0x05, 0x00, 0x00, // ........
/* 0048 */ 0x09, 0x00, 0x00, 0x00, 0xDC, 0x05, 0x00, 0x00, // ........
/* 0050 */ 0x0A, 0x00, 0x00, 0x00, 0x0E, 0x06, 0x00, 0x00, // ........
/* 0058 */ 0x0B, 0x00, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00, // ....@...
/* 0060 */ 0x0C, 0x00, 0x00, 0x00, 0x72, 0x06, 0x00, 0x00 // ....r...
}
})
}
If (LEqual (Arg0, 0x13))
{
ADBG ("DDR MULT")
If (LEqual (DDRF, One))
{
ADBG ("DDR 1")
Return (Package (0x02)
{
Zero,
Buffer (0x50)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
/* 0008 */ 0x04, 0x00, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00, // ....+...
/* 0010 */ 0x05, 0x00, 0x00, 0x00, 0x35, 0x05, 0x00, 0x00, // ....5...
/* 0018 */ 0x06, 0x00, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00, // ....@...
/* 0020 */ 0x07, 0x00, 0x00, 0x00, 0x4B, 0x07, 0x00, 0x00, // ....K...
/* 0028 */ 0x08, 0x00, 0x00, 0x00, 0x55, 0x08, 0x00, 0x00, // ....U...
/* 0030 */ 0x09, 0x00, 0x00, 0x00, 0x60, 0x09, 0x00, 0x00, // ....`...
/* 0038 */ 0x0A, 0x00, 0x00, 0x00, 0x6B, 0x0A, 0x00, 0x00, // ....k...
/* 0040 */ 0x0B, 0x00, 0x00, 0x00, 0x75, 0x0B, 0x00, 0x00, // ....u...
/* 0048 */ 0x0C, 0x00, 0x00, 0x00, 0x80, 0x0C, 0x00, 0x00 // ........
}
})
}
Else
{
ADBG ("DDR ELSE")
Return (Package (0x02)
{
Zero,
Buffer (0x68)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
/* 0008 */ 0x05, 0x00, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00, // ....+...
/* 0010 */ 0x06, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00, // ........
/* 0018 */ 0x07, 0x00, 0x00, 0x00, 0x78, 0x05, 0x00, 0x00, // ....x...
/* 0020 */ 0x08, 0x00, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00, // ....@...
/* 0028 */ 0x09, 0x00, 0x00, 0x00, 0x08, 0x07, 0x00, 0x00, // ........
/* 0030 */ 0x0A, 0x00, 0x00, 0x00, 0xD0, 0x07, 0x00, 0x00, // ........
/* 0038 */ 0x0B, 0x00, 0x00, 0x00, 0x98, 0x08, 0x00, 0x00, // ........
/* 0040 */ 0x0C, 0x00, 0x00, 0x00, 0x60, 0x09, 0x00, 0x00, // ....`...
/* 0048 */ 0x0D, 0x00, 0x00, 0x00, 0x28, 0x0A, 0x00, 0x00, // ....(...
/* 0050 */ 0x0E, 0x00, 0x00, 0x00, 0xF0, 0x0A, 0x00, 0x00, // ........
/* 0058 */ 0x0F, 0x00, 0x00, 0x00, 0xB8, 0x0B, 0x00, 0x00, // ........
/* 0060 */ 0x10, 0x00, 0x00, 0x00, 0x80, 0x0C, 0x00, 0x00 // ........
}
})
}
ADBG ("DDR EXIT")
}
If (LEqual (Arg0, 0x0B))
{
Return (Package (0x02)
{
Zero,
Buffer (0x60)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
/* 0008 */ 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, // ........
/* 0010 */ 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, // ........
/* 0018 */ 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, // ........
/* 0020 */ 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, // ........
/* 0028 */ 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, // ........
/* 0030 */ 0x0C, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, // ........
/* 0038 */ 0x0E, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, // ........
/* 0040 */ 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, // ........
/* 0048 */ 0x12, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, // ........
/* 0050 */ 0x14, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, // ........
/* 0058 */ 0x18, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00 // ........
}
})
}
If (LEqual (Arg0, 0x49))
{
Return (Package (0x02)
{
Zero,
Buffer (0x18)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
/* 0008 */ 0x01, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, // ........
/* 0010 */ 0x02, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 // ....d...
}
})
}
Return (Package (0x01)
{
One
})
}
Method (GXDV, 1, Serialized)
{
If (LNotEqual (XMPB, Zero))
{
OperationRegion (XMPN, SystemMemory, XMPB, SIZE)
Field (XMPN, ByteAcc, NoLock, Preserve)
{
XMP1, 576,
XMP2, 576
}
If (LEqual (Arg0, One))
{
Name (XP_1, Package (0x02){})
Store (Zero, Index (XP_1, Zero))
Store (XMP1, Index (XP_1, One))
Return (XP_1) /* \_SB_.PTMD.GXDV.XP_1 */
}
If (LEqual (Arg0, 0x02))
{
Name (XP_2, Package (0x02){})
Store (Zero, Index (XP_2, Zero))
Store (XMP2, Index (XP_2, One))
Return (XP_2) /* \_SB_.PTMD.GXDV.XP_2 */
}
}
Return (Package (0x01)
{
One
})
}
Method (GSCV, 0, NotSerialized)
{
Return (Package (0x01)
{
0x72
})
}
Method (GSCB, 0, NotSerialized)
{
Return (XSMI) /* External reference */
}
Method (CDRD, 1, Serialized)
{
Return (Package (0x01)
{
One
})
}
Method (CDWR, 2, Serialized)
{
Return (One)
}
Name (RPMV, Package (0x04)
{
One,
0x07,
Zero,
Zero
})
Name (TMP1, Package (0x0C)
{
One,
0x02,
Zero,
Zero,
0x05,
0x04,
Zero,
Zero,
0x06,
0x05,
Zero,
Zero
})
Name (TMP2, Package (0x08)
{
One,
0x02,
Zero,
Zero,
0x05,
0x04,
Zero,
Zero
})
Name (TMP3, Package (0x04)
{
One,
0x02,
Zero,
Zero
})
Method (TSDD, 0, NotSerialized)
{
If (LEqual (XTUS, Zero))
{
Return (Zero)
}
If (\ECON)
{
If (\TSOD)
{
Store (\_TZ.TZ01._TMP (), Index (TMP1, 0x02))
Return (TMP1) /* \_SB_.PTMD.TMP1 */
}
Else
{
Store (\_TZ.TZ01._TMP (), Index (TMP2, 0x02))
Return (TMP2) /* \_SB_.PTMD.TMP2 */
}
}
Else
{
Store (\_TZ.TZ01._TMP (), Index (TMP3, 0x02))
Return (TMP3) /* \_SB_.PTMD.TMP3 */
}
}
Method (FSDD, 0, NotSerialized)
{
If (LEqual (XTUS, Zero))
{
Return (Zero)
}
If (\ECON)
{
Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.CFSP)), Index (RPMV, 0x02))
}
Return (RPMV) /* \_SB_.PTMD.RPMV */
}
Method (SDSP, 0, NotSerialized)
{
Return (0x0A)
}
}
}
}