[Sorry, forgot to reply to all the first time.]
How about this plan (basically what you suggested, but I want to
confirm its sensibility since these tests take a while):
Since I know (or think I know) that just THM0 with just _TMP causes
problems when investigating it by modifying the kernel, I'll instead
use a vanilla kernel but modify the DSDT as follows:
Remove the THM2, THM6, and THM7 code blocks. See whether the DSDT
even compiles (e.g. TWAK might complain because of the "Notify
(\_TZ.THM7, 0x81)"). If it does, see if the resulting kernel hangs.
If it hangs (which I expect), then I'll bisect within THM0 to find at
least one method that causes a problem.
So, before I begin that search, which THM0 methods can I safely get
rid of? All of PSL, TC1, TC2, TSP, MODP? That'll leave _TMP, _AC0,
_SCP, PSV to bisect among. I'll assume that the NAME statements are
okay.
Here's the THM0 code:
ThermalZone (THM0)
{
Name (MODE, 0x00)
Name (AC0M, 0x00)
Name (AC1M, 0x00)
Name (TBL0, Package (0x02)
{
Package (0x03)
{
Package (0x02)
{
0x0E62,
0x0E49
},
Package (0x02)
{
0x0E30,
0x0DBD
},
Package (0x02)
{
0x0E26,
0x0DB3
}
},
Package (0x03)
{
Package (0x02)
{
0x0E26,
0x0DB3
},
Package (0x02)
{
0x0E62,
0x0E49
},
Package (0x02)
{
0x0E30,
0x0DBD
}
}
})
Method (MODP, 1, NotSerialized)
{
Return (Index (DerefOf (Index (TBL0, MODE)), Arg0))
}
Method (_TMP, 0, NotSerialized)
{
\_SB.PCI0.ISA0.EC0.UPDT ()
Store (\_SB.PCI0.ISA0.EC0.TMP0, Local0)
If (LGreater (Local0, 0x0AAC))
{
Return (Local0)
}
Else
{
Return (0x0BB8)
}
}
Method (_AC0, 0, NotSerialized)
{
If (H8DR)
{
Store (\_SB.PCI0.ISA0.EC0.HT00, Local1)
}
Else
{
And (\_SB.RBEC (0x20), 0x01, Local1)
}
Store (Local1, \_TZ.THM0.AC0M)
Store (DerefOf (Index (DerefOf (MODP (0x01)),
Local1)), Local0)
Return (Local0)
}
Name (_CRT, 0x0E80)
Method (_SCP, 1, NotSerialized)
{
Notify (\_TZ.THM0, 0x81)
}
Name (_AL0, Package (0x01)
{
FN00
})
Method (_PSV, 0, NotSerialized)
{
Store (DerefOf (Index (DerefOf (MODP (0x00)), 0x01)),
Local0)
Return (Local0)
}
Name (_PSL, Package (0x01)
{
\_PR.CPU0
})
Method (_TC1, 0, NotSerialized)
{
Return (TTC1)
}
Method (_TC2, 0, NotSerialized)
{
Return (TTC2)
}
Method (_TSP, 0, NotSerialized)
{
Return (TTSP)
}
}
-Sanjoy
`Never underestimate the evil of which men of power are capable.'
--Bertrand Russell, _War Crimes in Vietnam_, chapter 1.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]