blob: 0d1158dd370fa23f0a23f4aa1c2c706a5b1435e4 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0-only */
Scope (\_SB.PCI0.I2C2)
{
Device (PMIC)
{
Name (_HID, "INT3472") /* _HID: Hardware ID */
Name (_UID, Zero) // _UID: Unique ID */
Name (_DDN, "TPS68470 PMIC") /* _DDN: DOS Device Name */
Name (CAMD, 0x64)
Method (_STA, 0, NotSerialized) /* _STA: Status */
{
Return (0x0F)
}
/* Marks the availability of all the operation regions */
Name (AVP1, Zero)
Name (AVGP, Zero)
Name (AVB0, Zero)
Name (AVB1, Zero)
Name (AVB2, Zero)
Name (AVB3, Zero)
Method (_REG, 2, NotSerialized)
{
If (Arg0 == 0x08)
{
/* Marks the availability of GeneralPurposeIO
* 0x08: opregion space for GeneralPurposeIO
*/
AVGP = Arg1
}
If (Arg0 == 0xB0)
{
/* Marks the availability of
* TI_PMIC_POWER_OPREGION_ID */
AVB0 = Arg1
}
If (Arg0 == 0xB1)
{
/* Marks the availability of
* TI_PMIC_VR_VAL_OPREGION_ID */
AVB1 = Arg1
}
If (Arg0 == 0xB2)
{
/* Marks the availability of
* TI_PMIC_CLK_OPREGION_ID */
AVB2 = Arg1
}
If (Arg0 == 0xB3)
{
/* Marks the availability of
* TI_PMIC_CLK_FREQ_OPREGION_ID */
AVB3 = Arg1
}
If (AVGP && AVB0 && AVB1 && AVB2 && AVB3)
{
/* Marks the availability of all opregions */
AVP1 = 1
}
Else
{
AVP1 = 0
}
}
OperationRegion (GPOP, GeneralPurposeIo, 0, 0x2)
Name (_CRS, ResourceTemplate ()
{
I2cSerialBus (0x004D, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C2",
0x00, ResourceConsumer, ,
)
/* GPIO.9 is XSHUTDOWN pin for world facing camera */
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly, "\\_SB.PCI0.I2C2.PMIC",
0x00, ResourceConsumer,,)
{
9
}
})
/* PMIC operation regions */
/* 0xB0: TI_PMIC_POWER_OPREGION_ID
* VSIO: Sensor IO LDO output
* VCMC: VCM LDO output
* VAX1: Auxiliary LDO1 output
* VAX2: Auxiliary LDO2 output
* VACT: Analog LDO output
* VDCT: Core buck output
*/
OperationRegion (PWR1, 0xB0, Zero, 0x0100)
Field (PWR1, DWordAcc, NoLock, Preserve)
{
VSIO, 32,
VCMC, 32,
VAX1, 32,
VAX2, 32,
VACT, 32,
VDCT, 32,
}
/* 0xB1: TI_PMIC_VR_VAL_OPREGION_ID
* SIOV: VSIO VR voltage value
* IOVA: VIO VR voltage value
* VCMV: VCM VR voltage value
* AX1V: Auxiliary LDO1 VR voltage value
* AX2V: Auxiliary LDO2 VR voltage value
* ACVA: Analog LDO VR voltage
* DCVA: Core buck VR voltage
*/
OperationRegion (PWR2, 0xB1, Zero, 0x0100)
Field (PWR2, DWordAcc, NoLock, Preserve)
{
SIOV, 32,
IOVA, 32,
VCMV, 32,
AX1V, 32,
AX2V, 32,
ACVA, 32,
DCVA, 32,
}
/* 0xB2: TI_PMIC_CLK_OPREGION_ID
* PCTL: PLL control register
* PCT2: PLL control 2 register
* CFG1: Clock configuration 1 register
* CFG2: Clock configuration 2 register
*/
OperationRegion (CLKC, 0xB2, Zero, 0x0100)
Field (CLKC, DWordAcc, NoLock, Preserve)
{
PCTL, 32,
PCT2, 32,
CFG1, 32,
CFG2, 32,
}
/* 0xB3: TI_PMIC_CLK_FREQ_OPREGION_ID
* PDV2: PLL output divider for HCLK_B
* BODI: PLL output divider for boost clock
* BUDI: PLL output divider for buck clock
* PSWR: PLL reference clock setting
* XTDV: Reference crystal divider
* PLDV: PLL feedback divider
* PODV: PLL output divider for HCLK_A
*/
OperationRegion (CLKF, 0xB3, Zero, 0x0100)
Field (CLKF, DWordAcc, NoLock, Preserve)
{
PDV2, 32,
BODI, 32,
BUDI, 32,
PSWR, 32,
XTDV, 32,
PLDV, 32,
PODV, 32,
}
Mutex (MUTC, 0)
Method (CLKE, 0, Serialized) {
/* save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTC, 1000)
/* check for Mutex acquired */
If (Local0 == 0) {
/* Set boost clock divider */
BODI = 3
/* Set buck clock divider */
BUDI = 2
/* Set the PLL_REF_CLK cyles */
PSWR = 19
/* Set the reference crystal divider */
XTDV = 170
/* Set PLL feedback divider */
PLDV = 32
/* Set PLL output divider for HCLK_A */
PODV = 1
/* Enable HCLK_A clock.
* CFG1: output selection for HCLK_A.
* CFG2: set drive strength for HCLK_A.
*/
CFG2 = 1
CFG1 = 2
/* Enable PLL output, crystal oscillator
* input capacitance control and set
* Xtal oscillator as clock source.
*/
PCTL = 209
Sleep(1)
Release (MUTC)
}
}
Method (CLKD, 0, Serialized) {
/* save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTC, 1000)
/* check for Mutex acquired */
If (Local0 == 0) {
BODI = 0
BUDI = 0
PSWR = 0
XTDV = 0
PLDV = 0
PODV = 0
/* Disable HCLK_A clock */
CFG2 = 0
CFG1 = 0
PCTL = 0
Release (MUTC)
}
}
/* Reference count for VSIO */
Mutex (MUTV, 0)
Name (VSIC, 0)
Method (DOVD, 1, Serialized) {
/* Save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTV, 1000)
/* Check for Mutex acquired */
If (Local0 == 0) {
/* Turn off VSIO */
If (Arg0 == 0) {
/* Decrement only if VSIC > 0 */
if (VSIC > 0) {
VSIC--
If (VSIC == 0) {
VSIO = 0
}
}
} ElseIf (Arg0 == 1) {
/* Increment only if VSIC < 2 */
If (VSIC < 2) {
/* Turn on VSIO */
If (VSIC == 0) {
VSIO = 3
}
VSIC++
}
}
Release (MUTV)
}
}
/* Power resource methods for CAM0 */
PowerResource (OVTH, 0, 0) {
Name (STA, 0)
Method (_ON, 0, Serialized) {
If (AVP1 == 1) {
If (STA == 0) {
/* Enable VSIO regulator +
daisy chain */
DOVD(1)
if (IOVA != 52) {
/* Set VSIO value as
1.8006 V */
IOVA = 52
}
if (SIOV != 52) {
/* Set VSIO value as
1.8006 V */
SIOV = 52
}
Sleep(3)
VACT = 1
if (ACVA != 109) {
/* Set ANA at 2.8152V */
ACVA = 109
}
Sleep(3)
\_SB.PCI0.I2C2.PMIC.CLKE()
VDCT = 1
if (DCVA != 12) {
/* Set CORE at 1.2V */
DCVA = 12
}
Sleep(3)
\_SB.PCI0.I2C2.CAM0.CRST(1)
Sleep(5)
STA = 1
}
}
}
Method (_OFF, 0, Serialized) {
If (AVP1 == 1) {
If (STA == 1) {
Sleep(2)
\_SB.PCI0.I2C2.PMIC.CLKD()
Sleep(2)
\_SB.PCI0.I2C2.CAM0.CRST(0)
Sleep(3)
VDCT = 0
Sleep(3)
VACT = 0
Sleep(1)
DOVD(0)
Sleep(1)
}
}
STA = 0
}
Method (_STA, 0, NotSerialized) {
Return (STA)
}
}
/* Power resource methods for VCM */
PowerResource (VCMP, 0, 0) {
Name (STA, 0)
Method (_ON, 0, Serialized) {
If (AVP1 == 1) {
If (STA == 0) {
/* Enable VSIO regulator +
daisy chain */
DOVD(1)
if (IOVA != 52) {
/* Set VSIO value as
1.8006 V */
IOVA = 52
}
if (SIOV != 52) {
/* Set VSIO value as
1.8006 V */
SIOV = 52
}
Sleep(3)
/* Enable VCM regulator */
VCMC = 1
if (VCMV != 109) {
/* Set VCM value at
2.8152 V */
VCMV = 109
}
Sleep(3)
STA = 1
}
}
}
Method (_OFF, 0, Serialized) {
If (AVP1 == 1) {
If (STA == 1) {
VCMC = 0 /* Disable regulator */
Sleep(1)
DOVD(0) /* Disable regulator */
Sleep(1)
STA = 0
}
}
}
Method (_STA, 0, NotSerialized) {
Return (STA)
}
}
}
Device (CAM0)
{
Name (_HID, "OVTID858") /* _HID: Hardware ID */
Name (_UID, Zero) /* _UID: Unique ID */
Name (_DDN, "OV 13858 Camera") /* _DDN: DOS Device Name */
Name (CAMD, 0x02)
Method (_STA, 0, NotSerialized) /* _STA: Status */
{
Return (0x0F)
}
Name (_DEP, Package() {\_SB.PCI0.I2C2.PMIC})
Name (_CRS, ResourceTemplate ()
{
I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C2",
0x00, ResourceConsumer, ,
)
})
Field (\_SB.PCI0.I2C2.PMIC.GPOP, ByteAcc, NoLock, Preserve)
{
Connection
(
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly,
"\\_SB.PCI0.I2C2.PMIC", 0x00,
ResourceConsumer,,)
{
9
}
),
GRST, 1,
}
/* Set or clear GRST GPIO */
Method (CRST, 1, Serialized)
{
GRST = Arg0
}
Name (_PR0, Package () { ^^I2C2.PMIC.OVTH })
Name (_PR3, Package () { ^^I2C2.PMIC.OVTH })
/* Port0 of CAM0 is connected to port0 of CIO2 device */
Name (_DSD, Package () {
ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
Package () {
Package () { "port0", "PRT0" },
},
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "clock-frequency", 19200000 },
}
})
Name (PRT0, Package() {
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "port", 0 },
},
ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
Package () {
Package () { "endpoint0", "EP00" },
}
})
Name (EP00, Package() {
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "endpoint", 0 },
Package () { "clock-lanes", 0 },
Package () { "data-lanes",
Package () { 1, 2, 3, 4 }
},
Package () { "link-frequencies",
Package() { 1190400000, 640000000 }
},
Package () { "remote-endpoint",
Package() { \_SB.PCI0.CIO2, 0, 0 }
},
}
})
Method (SSDB, 0, Serialized)
{
Return (Buffer (0x5E)
{
/* 0000 */ 0x00, 0x50, 0x00, 0x00, 0x00, 0x00,0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x03,
/* 0050 */ 0x09, 0x00, 0x02, 0x01, 0x00, 0x01, 0x00, 0x36,
/* 0058 */ 0x6E, 0x01, 0x00, 0x00, 0x00, 0x00
})
}
}
Device (VCM0)
{
Name (_HID, "DWDWD000") /* _HID: Hardware ID */
Name (_UID, Zero) /* _UID: Unique ID */
Name (_DDN, "Dongwoon AF DAC") /* _DDN: DOS Device Name */
Name (CAMD, 0x03)
Method (_STA, 0, NotSerialized) /* _STA: Status */
{
Return (0x0F)
}
Name (_DEP, Package() {\_SB.PCI0.I2C2.PMIC})
Name (_CRS, ResourceTemplate ()
{
I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C2",
0x00, ResourceConsumer, ,
)
})
Name (_PR0, Package () { ^PMIC.VCMP })
Name (_PR3, Package () { ^PMIC.VCMP })
}
}
Scope (\_SB.PCI0.I2C3)
{
Device (PMIC)
{
Name (_HID, "INT3473") /* _HID: Hardware ID */
Name (_UID, Zero) /* _UID: Unique ID */
Name (_DDN, "TPS68470 PMIC 2") /* _DDN: DOS Device Name */
Name (CAMD, 0x64)
Method (_STA, 0, NotSerialized) /* _STA: Status */
{
Return (0x0F)
}
/* Marks the availability of all the operation regions */
Name (AVP2, Zero)
Name (AVGP, Zero)
Name (AVB0, Zero)
Name (AVB1, Zero)
Name (AVB2, Zero)
Name (AVB3, Zero)
Method (_REG, 2, NotSerialized)
{
If (Arg0 == 0x08)
{
/* Marks the availability of GeneralPurposeIO
* 0x08: opregion space for GeneralPurposeIO
*/
AVGP = Arg1
}
If (Arg0 == 0xB0)
{
/* Marks the availability of
* TI_PMIC_POWER_OPREGION_ID */
AVB0 = Arg1
}
If (Arg0 == 0xB1)
{
/* Marks the availability of
* TI_PMIC_VR_VAL_OPREGION_ID */
AVB1 = Arg1
}
If (Arg0 == 0xB2)
{
/* Marks the availability of
* TI_PMIC_CLK_OPREGION_ID */
AVB2 = Arg1
}
If (Arg0 == 0xB3)
{
/* Marks the availability of
* TI_PMIC_CLK_FREQ_OPREGION_ID */
AVB3 = Arg1
}
If (AVGP && AVB0 && AVB1 && AVB2 && AVB3)
{
/* Marks the availability of all opregions */
AVP2 = 1
}
Else
{
AVP2 = 0
}
}
OperationRegion (GPOP, GeneralPurposeIo, 0, 0x2)
Name (_CRS, ResourceTemplate ()
{
I2cSerialBus (0x0049, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C3",
0x00, ResourceConsumer, ,
)
/* GPIO.4 is AVDD pin for user facing camera */
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly, "\\_SB.PCI0.I2C3.PMIC",
0x00, ResourceConsumer,,)
{
4
}
/* GPIO.5 is XSHUTDOWN pin for user facing camera */
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly, "\\_SB.PCI0.I2C3.PMIC",
0x00, ResourceConsumer,,)
{
5
}
})
/* PMIC operation regions */
/* 0xB0: TI_PMIC_POWER_OPREGION_ID
* VSIO: Sensor IO LDO output
* VCMC: VCM LDO output
* VAX1: Auxiliary LDO1 output
* VAX2: Auxiliary LDO2 output
* VACT: Analog LDO output
* VDCT: Core buck output
*/
OperationRegion (PWR1, 0xB0, Zero, 0x0100)
Field (PWR1, DWordAcc, NoLock, Preserve)
{
VSIO, 32,
VCMC, 32,
VAX1, 32,
VAX2, 32,
VACT, 32,
VDCT, 32,
}
/* 0xB1: TI_PMIC_VR_VAL_OPREGION_ID
* SIOV: VSIO VR voltage value
* IOVA: VIO VR voltage value
* VCMV: VCM VR voltage value
* AX1V: Auxiliary LDO1 VR voltage value
* AX2V: Auxiliary LDO2 VR voltage value
* ACVA: Analog LDO VR voltage
* DCVA: Core buck VR voltage
*/
OperationRegion (PWR2, 0xB1, Zero, 0x0100)
Field (PWR2, DWordAcc, NoLock, Preserve)
{
SIOV, 32,
IOVA, 32,
VCMV, 32,
AX1V, 32,
AX2V, 32,
ACVA, 32,
DCVA, 32,
}
/* 0xB2: TI_PMIC_CLK_OPREGION_ID
* PCTL: PLL control register
* PCT2: PLL control 2 register
* CFG1: Clock configuration 1 register
* CFG2: Clock configuration 2 register
*/
OperationRegion (CLKC, 0xB2, Zero, 0x0100)
Field (CLKC, DWordAcc, NoLock, Preserve)
{
PCTL, 32,
PCT2, 32,
CFG1, 32,
CFG2, 32,
}
/* 0xB3: TI_PMIC_CLK_FREQ_OPREGION_ID
* PDV2: PLL output divider for HCLK_B
* BODI: PLL output divider for boost clock
* BUDI: PLL output divider for buck clock
* PSWR: PLL reference clock setting
* XTDV: Reference crystal divider
* PLDV: PLL feedback divider
* PODV: PLL output divider for HCLK_A
*/
OperationRegion (CLKF, 0xB3, Zero, 0x0100)
Field (CLKF, DWordAcc, NoLock, Preserve)
{
PDV2, 32,
BODI, 32,
BUDI, 32,
PSWR, 32,
XTDV, 32,
PLDV, 32,
PODV, 32,
}
Mutex (MUTC, 0)
Method (CLKE, 0, Serialized) {
/* save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTC, 1000)
/* check for Mutex acquired */
If (Local0 == 0) {
/* Set boost clock divider */
BODI = 3
/* Set buck clock divider */
BUDI = 2
/* Set the PLL_REF_CLK cyles */
PSWR = 19
/* Set the reference crystal divider */
XTDV = 170
/* Set PLL feedback divider */
PLDV = 32
/* Set PLL output divider for HCLK_A */
PODV = 1
/* Enable HCLK_A clock.
* CFG1: output selection for HCLK_A.
* CFG2: set drive strength for HCLK_A.
*/
CFG2 = 1
CFG1 = 2
/* Enable PLL output, crystal oscillator
* input capacitance control and set
* Xtal oscillator as clock source.
*/
PCTL = 209
Sleep(1)
Release (MUTC)
}
}
Method (CLKD, 0, Serialized) {
/* save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTC, 1000)
/* check for Mutex acquired */
If (Local0 == 0) {
BODI = 0
BUDI = 0
PSWR = 0
XTDV = 0
PLDV = 0
PODV = 0
/* Disable HCLK_A clock */
CFG2 = 0
CFG1 = 0
PCTL = 0
Release (MUTC)
}
}
/* Reference count for VSIO */
Mutex (MUTV, 0)
Name (VSIC, 0)
Method (DOVD, 1, Serialized) {
/* Save Acquire result so we can check for
Mutex acquired */
Local0 = Acquire (MUTV, 1000)
/* Check for Mutex acquired */
If (Local0 == 0) {
/* Turn off VSIO */
If (Arg0 == 0) {
VSIO = 0
} ElseIf (Arg0 == 1) {
VSIO = 3
}
Release (MUTV)
}
}
/* Power resource methods for CAM1 */
PowerResource (OVFI, 0, 0) {
Name (STA, 0)
Method (_ON, 0, Serialized) {
If (AVP2 == 1) {
If (STA == 0) {
/* Enable VSIO regulator +
daisy chain */
DOVD(1)
VAX2 = 1 /* Enable VAUX2 */
if (AX2V != 52) {
/* Set VAUX2 as
1.8006 V */
AX2V = 52
}
Sleep(1)
\_SB.PCI0.I2C3.PMIC.CLKE()
VAX1 = 1 /* Enable VAUX1 */
if (AX1V != 19) {
/* Set VAUX1 as 1.2132V */
AX1V = 19
}
Sleep(3)
\_SB.PCI0.I2C3.CAM1.CGP4(1)
Sleep(3)
\_SB.PCI0.I2C3.CAM1.CGP5(1)
Sleep(5)
STA = 1
}
}
}
Method (_OFF, 0, Serialized) {
If (AVP2 == 1) {
If (STA == 1) {
Sleep(2)
\_SB.PCI0.I2C3.PMIC.CLKD()
Sleep(2)
\_SB.PCI0.I2C3.CAM1.CGP5(0)
Sleep(3)
VAX1 = 0
Sleep(1)
\_SB.PCI0.I2C3.CAM1.CGP4(0)
Sleep(1)
VAX2 = 0
Sleep(1)
DOVD(0)
Sleep(1)
}
STA = 0
}
}
Method (_STA, 0, NotSerialized) {
Return (STA)
}
}
}
Device (CAM1)
{
Name (_HID, "INT3479") /* _HID: Hardware ID */
Name (_UID, Zero) /* _UID: Unique ID */
Name (_DDN, "OV 5670 Camera") /* _DDN: DOS Device Name */
Name (CAMD, 0x02)
Method (_STA, 0, NotSerialized) /* _STA: Status */
{
Return (0x0F)
}
Name (_DEP, Package() {\_SB.PCI0.I2C3.PMIC})
Name (_CRS, ResourceTemplate ()
{
I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C3",
0x00, ResourceConsumer, ,
)
})
Field (\_SB.PCI0.I2C3.PMIC.GPOP, ByteAcc, NoLock, Preserve)
{
Connection
(
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly,
"\\_SB.PCI0.I2C3.PMIC", 0x00,
ResourceConsumer,,)
{
4
}
),
GPO4, 1,
Connection
(
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000,
IoRestrictionOutputOnly,
"\\_SB.PCI0.I2C3.PMIC", 0x00,
ResourceConsumer,,)
{
5
}
),
GPO5, 1,
}
/* Set or clear GPO4 GPIO */
Method (CGP4, 1, Serialized)
{
GPO4 = Arg0
}
/* Set or clear GPO5 GPIO */
Method (CGP5, 1, Serialized)
{
GPO5 = Arg0
}
Name (_PR0, Package () { ^^I2C3.PMIC.OVFI })
Name (_PR3, Package () { ^^I2C3.PMIC.OVFI })
/* Port0 of CAM1 is connected to port1 of CIO2 device */
Name (_DSD, Package () {
ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
Package () {
Package () { "port0", "PRT0" },
},
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "clock-frequency", 19200000 },
}
})
Name (PRT0, Package() {
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "port", 0 },
},
ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
Package () {
Package () { "endpoint0", "EP00" },
}
})
Name (EP00, Package() {
ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () { "endpoint", 0 },
Package () { "clock-lanes", 0 },
Package () { "data-lanes",
Package () { 1, 2 }
},
Package () { "link-frequencies",
Package() { 844800000 }
},
Package () { "remote-endpoint",
Package() { \_SB.PCI0.CIO2, 1, 0 }
},
}
})
Method (SSDB, 0, Serialized)
{
Return (Buffer (0x5E)
{
/* 0000 */ 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x03,
/* 0050 */ 0x09, 0x00, 0x02, 0x01, 0x00, 0x01, 0x00, 0x36,
/* 0058 */ 0x6E, 0x01, 0x00, 0x00, 0x00, 0x00
})
}
}
}