Method (ICMB, 0, NotSerialized)
{
DBG1 ("ICMBoot")
Acquire (OSUM, 0xFFFF)
Local1 = 0x64
P2TR = 0x0D
While ((Local1 > Zero))
{
Local1 -= One
Local2 = T2PR /* \_SB_.PCI0.RP05.T2PR */
If ((Local2 & One))
{
Break
}
Sleep (0x32)
}
P2TR = 0x0C
Release (OSUM)
If (CondRefOf (TWIN))
{
DBG1 ("Tbt TWIN set to One")
TWIN = One
}
DBG1 ("Tbt Force Power with FPG0")
SGOV (FPG0, FP0L)
Sleep (0x02F4)
Local0 = 0x08D0
Local1 = Timer
While (Local0)
{
If (UPCK ())
{
DBG1 (Concatenate ("Up Stream VID/DID =", UPVD))
Break
}
ElseIf ((Local0 == 0x07D0))
{
DBG1 ("Slow ICM boot !")
}
Sleep (One)
Local0--
}
If (!Local0)
{
DBG1 ("Tbt Device no boot !")
}
SOHP = Zero
If (CondRefOf (TNAT))
{
DBG1 ("Tbt TNAT set to One")
TNAT = One
}
ICMS ()
DBG1 (Concatenate ("Configuration delay = ", Concatenate (ToDecimalString (((Timer - Local1) / 0x2710)), " ms")))
// New debug statements
DBG1 (Concatenate ("RP18 =", RP18))
DBG1 (Concatenate ("RP19 =", RP19))
DBG1 (Concatenate ("RP1A =", RP1A))
DBG1 (Concatenate ("RP1C =", RP1C))
DBG1 (Concatenate ("R_20 =", R_20))
DBG1 (Concatenate ("R_24 =", R_24))
DBG1 (Concatenate ("R_28 =", R_28))
DBG1 (Concatenate ("R_2C =", R_2C))
DBG1 (Concatenate ("UP18 =", UP18))
DBG1 (Concatenate ("UP19 =", UP19))
DBG1 (Concatenate ("UP1A =", UP1A))
DBG1 (Concatenate ("UP1C =", UP1C))
DBG1 (Concatenate ("UP20 =", UP20))
DBG1 (Concatenate ("UP24 =", UP24))
DBG1 (Concatenate ("UP28 =", UP28))
DBG1 (Concatenate ("UP2C =", UP2C))
DBG1 (Concatenate ("DP18 =", DP18))
DBG1 (Concatenate ("DP19 =", DP19))
DBG1 (Concatenate ("DP1A =", DP1A))
DBG1 (Concatenate ("DP1C =", DP1C))
DBG1 (Concatenate ("DP20 =", DP20))
DBG1 (Concatenate ("DP24 =", DP24))
DBG1 (Concatenate ("DP28 =", DP28))
DBG1 (Concatenate ("DP2C =", DP2C))
DBG1 (Concatenate ("D418 =", D418))
DBG1 (Concatenate ("D419 =", D419))
DBG1 (Concatenate ("D41A =", D41A))
DBG1 (Concatenate ("D420 =", D420))
DBG1 (Concatenate ("D424 =", D424))
DBG1 (Concatenate ("D428 =", D428))
DBG1 (Concatenate ("D42C =", D42C))
DBG1 (Concatenate ("NH10 =", NH10))
DBG1 (Concatenate ("NH14 =", NH14))
}