Righty Hoe!
I've got as far as changing the P and C state parts as per MC's v2.8.
Please note I edited and checked that it compiles on XP (Quite day at work!) -
I have NOT tested this yet !
Chief can you please have a wee look for me - see what you think?
{
Scope (_PR)
{
Name (NCPU, 0x04)
Name (CFGD, 0x040383F2)
Processor (CPU0, 0x00, 0x00000410, 0x06)
{
OperationRegion (STBL, SystemMemory, 0xDFEE7F00, 0x022A)
Name (TYPE, 0x80000000)
Name (HNDL, 0x80000000)
Name (TBLD, 0x80)
Method (_PDC, 1, NotSerialized)
{
Store (SizeOf (Arg0), Local0)
Store (Subtract (Local0, 0x08), Local1)
CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
Concatenate (Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}, TEMP, Local2)
_OSC (Buffer (Zero) {}, One, Zero, Local2)
}
Method (_OSC, 4, NotSerialized)
{
CreateDWordField (Arg3, 0x04, CAP0)
Or (And (TYPE, 0x7FFFFFFF), CAP0, TYPE)
If (LAnd (LEqual (And (TYPE, 0x09), 0x09), LNot (And (
TBLD, One))))
{
Or (TBLD, One, TBLD)
Load (STBL, HNDL)
}
Return (Arg3)
}
Name (_PSS, Package (0x03)
{
Package (0x06)
{
0x0C20,
0x000124F8,
0xA0,
0x0A,
0x0820,
0x0820
},
Package (0x06)
{
0x0A9C,
0xFDE8,
0xA0,
0x0A,
0x071C,
0x071C
},
Package (0x06)
{
0x0918,
0xEA60,
0xA0,
0x0A,
0x061A,
0x061A
}
})
Method (_CST, 0, NotSerialized)
{
If (And (TYPE, 0x18))
{
Return (^^CPU1._CST ())
}
Else
{
Return (Package (0x02)
{
One,
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x00, // Bit Width
0x00, // Bit Offset
0x0000000000000000, // Address
,)
},
One,
0x9D,
0x03E8
}
})
}
}
}
Processor (CPU1, 0x01, 0x00000410, 0x06)
{
OperationRegion (STBL, SystemMemory, 0xDFEE83C0, 0x0152)
Name (TYPE, 0x80000000)
Name (HNDL, 0x80000000)
Name (TBLD, 0x80)
Method (_PDC, 1, NotSerialized)
{
Store (SizeOf (Arg0), Local0)
Store (Subtract (Local0, 0x08), Local1)
CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
Concatenate (Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}, TEMP, Local2)
_OSC (Buffer (Zero) {}, One, Zero, Local2)
}
Method (_OSC, 4, NotSerialized)
{
CreateDWordField (Arg3, 0x04, CAP1)
Or (And (TYPE, 0x7FFFFFFF), CAP1, TYPE)
If (LAnd (LEqual (And (TYPE, 0x09), 0x09), LNot (And (
TBLD, One))))
{
Or (TBLD, 0x03, TBLD)
Load (STBL, HNDL)
}
Return (Arg3)
}
Method (_CST, 0, NotSerialized)
{
Return (Package (0x04)
{
0x03,
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x01, // Bit Width
0x02, // Bit Offset
0x0000000000000000, // Address
0x01, // Access Size
)
},
One,
One,
0x03E8
},
Package (0x04)
{
ResourceTemplate ()
{
Register (SystemIO,
0x08, // Bit Width
0x00, // Bit Offset
0x0000000000000814, // Address
,)
},
0x02,
One,
0x01F4
},
Package (0x04)
{
ResourceTemplate ()
{
Register (SystemIO,
0x08, // Bit Width
0x00, // Bit Offset
0x0000000000000815, // Address
,)
},
0x03,
0x11,
0xFA
}
})
}
}
Processor (CPU2, 0x02, 0x00000410, 0x06)
{
OperationRegion (STBL, SystemMemory, 0xDFEE8520, 0x0152)
Name (TYPE, 0x80000000)
Name (HNDL, 0x80000000)
Name (TBLD, 0x80)
Method (_PDC, 1, NotSerialized)
{
Store (SizeOf (Arg0), Local0)
Store (Subtract (Local0, 0x08), Local1)
CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
Concatenate (Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}, TEMP, Local2)
_OSC (Buffer (Zero) {}, One, Zero, Local2)
}
Method (_OSC, 4, NotSerialized)
{
CreateDWordField (Arg3, 0x04, CAP2)
Or (And (TYPE, 0x7FFFFFFF), CAP2, TYPE)
If (LAnd (LEqual (And (TYPE, 0x09), 0x09), LNot (And (
TBLD, One))))
{
Or (TBLD, 0x03, TBLD)
Load (STBL, HNDL)
}
Return (Arg3)
}
Method (_CST, 0, NotSerialized)
{
Return (^^CPU1._CST ())
}
}
Processor (CPU3, 0x03, 0x00000410, 0x06)
{
OperationRegion (STBL, SystemMemory, 0xDFEE8680, 0x0152)
Name (TYPE, 0x80000000)
Name (HNDL, 0x80000000)
Name (TBLD, 0x80)
Method (_PDC, 1, NotSerialized)
{
Store (SizeOf (Arg0), Local0)
Store (Subtract (Local0, 0x08), Local1)
CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
Concatenate (Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}, TEMP, Local2)
_OSC (Buffer (Zero) {}, One, Zero, Local2)
}
Method (_OSC, 4, NotSerialized)
{
CreateDWordField (Arg3, 0x04, CAP3)
Or (And (TYPE, 0x7FFFFFFF), CAP3, TYPE)
If (LAnd (LEqual (And (TYPE, 0x09), 0x09), LNot (And (
TBLD, One))))
{
Or (TBLD, 0x03, TBLD)
Load (STBL, HNDL)
}
Return (Arg3)
}
Method (_CST, 0, NotSerialized)
{
Return (^^CPU1._CST ())
}
}
}
DSDT17_10_09.dsl.zip 12.96K
13 downloads
**EDIT** this is in vein and last ditch attempt to get C-states working !
I stopped at the SMBUS changes .... I'm saving this for another day