Re: 2.6.16-rc5: known regressions [TP 600X S3, vanilla DSDT]

Sanjoy Mahajan
2006-03-16T06:54:07Z

Okay it's compiling with that change. Now those two methods look
like:

Method (_PSV, 0, NotSerialized)
{
/* Store (DerefOf (Index (DerefOf (MODP (0x00)), 0x01)), Local0) */
Return (Local0)
}
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)
}

But I have two worries:

1. The lines that I commented out are not identical (if they are
identical in your setup, maybe we have different disassembled
DSDT's?).

2. With those lines commented out, the local variables might contain
garbage, since those lines initialize them. The iasl compiler also
worries about this:

thm0-ac0psv-line.dsl 10504: Return (Local0)
Error 1013 - Method local variable is not initialized ^ (Local0)

thm0-ac0psv-line.dsl 10520: Return (Local0)
Error 1013 - Method local variable is not initialized ^ (Local0)

Should I change the Return statement to Return(0)?

-Sanjoy

`Never underestimate the evil of which men of power are capable.'
--Bertrand Russell, _War Crimes in Vietnam_, chapter 1.