Piker-Alpha / ssdtPRGen.sh

Script to generate a SSDT for Power Management
710 stars 155 forks source link

Power Management issues #178

Open arkanisman opened 8 years ago

arkanisman commented 8 years ago

Hey Piker,

Writing to you because I'm having issues with my rig and you might have a clue.

I'm running a pair or Sandy Xeon E5-2650 (8 physical/16 logical each) on a Supermicro X9DAi, I've generated an SSDT and I've been running nicely under Mavericks.

I installed recently Yosemite on another drive and decided to give it a go. Using the same previously generated SSDT gives me all successes messages on the PlatformShim until the very last line where it outputs this:

Stepper dictionary from plist is NULL!

Then of course stepper fails

Only difference with Mavericks is that I had to patch the kernel to unlock the 32 cores recognition (from Yosemite Apple locked the last core number 32).

I'm currently using SMBIOS: MacPro 5,1, a patched AICPM.kext and the HackPlatformPlugin.kext

Any ideas why this is happening ?

Also when generating a new SSDT the script spits some errors:

1) If I use no flags at all, the script generates a weird SSDT where a lot of DeviceObj (_SB...) are missing and it weirdly creates four ACPI scopes (when in the previous SSDT there where only 2).

2) Using the -w 3 flag (even if this is for Ivy only) generates something correct but same problem as the beginning of this message.

This is the SSDT that IS working under Mavericks:

DefinitionBlock ("SSDT.aml", "SSDT", 1, "APPLE ", "CpuPm", 0x00014500)
{
    External (\_SB_.SCK1.C10F, DeviceObj)
    External (\_SB_.SCK1.C10E, DeviceObj)
    External (\_SB_.SCK1.C10D, DeviceObj)
    External (\_SB_.SCK1.C10C, DeviceObj)
    External (\_SB_.SCK1.C10B, DeviceObj)
    External (\_SB_.SCK1.C10A, DeviceObj)
    External (\_SB_.SCK1.C109, DeviceObj)
    External (\_SB_.SCK1.C108, DeviceObj)
    External (\_SB_.SCK1.C107, DeviceObj)
    External (\_SB_.SCK1.C106, DeviceObj)
    External (\_SB_.SCK1.C105, DeviceObj)
    External (\_SB_.SCK1.C104, DeviceObj)
    External (\_SB_.SCK1.C103, DeviceObj)
    External (\_SB_.SCK1.C102, DeviceObj)
    External (\_SB_.SCK1.C101, DeviceObj)
    External (\_SB_.SCK1.C100, DeviceObj)
    External (\_SB_.SCK0.C00F, DeviceObj)
    External (\_SB_.SCK0.C00E, DeviceObj)
    External (\_SB_.SCK0.C00D, DeviceObj)
    External (\_SB_.SCK0.C00C, DeviceObj)
    External (\_SB_.SCK0.C00B, DeviceObj)
    External (\_SB_.SCK0.C00A, DeviceObj)
    External (\_SB_.SCK0.C009, DeviceObj)
    External (\_SB_.SCK0.C008, DeviceObj)
    External (\_SB_.SCK0.C007, DeviceObj)
    External (\_SB_.SCK0.C006, DeviceObj)
    External (\_SB_.SCK0.C005, DeviceObj)
    External (\_SB_.SCK0.C004, DeviceObj)
    External (\_SB_.SCK0.C003, DeviceObj)
    External (\_SB_.SCK0.C002, DeviceObj)
    External (\_SB_.SCK0.C001, DeviceObj)
    External (\_SB_.SCK0.C000, DeviceObj)
    Scope (\_SB.SCK0.C000)
    {
        Method (_INI, 0, NotSerialized)
        {
            Store ("ssdtPRGen version....: 14.5 / Mac OS X 10.9.3 (13D65)", Debug)
            Store ("target processor.....: E5-2650 v2", Debug)
            Store ("running processor....: Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz", Debug)
            Store ("baseFrequency........: 1200", Debug)
            Store ("frequency............: 2000", Debug)
            Store ("busFrequency.........: 100", Debug)
            Store ("logicalCPUs..........: 32", Debug)
            Store ("maximum TDP..........: 95", Debug)
            Store ("packageLength........: 17", Debug)
            Store ("turboStates..........: 8", Debug)
            Store ("maxTurboFrequency....: 2800", Debug)
            Store ("IvyWorkArounds.......: 1", Debug)
            Store ("machdep.xcpm.mode....: 0", Debug)
            Store ("number of ACPI scopes: 2", Debug)
        }
        Name (APLF, Zero)
        Name (APSN, 0x09)
        Name (APSS, Package (0x12)
        {
            Package (0x06)
            {
                0x0AF1, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1D00, 
                0x1D00
            }, 
            Package (0x06)
            {
                0x0AF0, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1C00, 
                0x1C00
            }, 
            Package (0x06)
            {
                0x0A8C, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1B00, 
                0x1B00
            }, 
            Package (0x06)
            {
                0x0A28, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1A00, 
                0x1A00
            }, 
            Package (0x06)
            {
                0x09C4, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1900, 
                0x1900
            }, 
            Package (0x06)
            {
                0x0960, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1800, 
                0x1800
            }, 
            Package (0x06)
            {
                0x08FC, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1700, 
                0x1700
            }, 
            Package (0x06)
            {
                0x0898, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1600, 
                0x1600
            }, 
            Package (0x06)
            {
                0x0834, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1500, 
                0x1500
            }, 
            Package (0x06)
            {
                0x07D0, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1400, 
                0x1400
            }, 
            Package (0x06)
            {
                0x076C, 
                0x00015C8B, 
                0x0A, 
                0x0A, 
                0x1300, 
                0x1300
            }, 
            Package (0x06)
            {
                0x0708, 
                0x0001466F, 
                0x0A, 
                0x0A, 
                0x1200, 
                0x1200
            }, 
            Package (0x06)
            {
                0x06A4, 
                0x000130C4, 
                0x0A, 
                0x0A, 
                0x1100, 
                0x1100
            }, 
            Package (0x06)
            {
                0x0640, 
                0x00011B88, 
                0x0A, 
                0x0A, 
                0x1000, 
                0x1000
            }, 
            Package (0x06)
            {
                0x05DC, 
                0x000106BB, 
                0x0A, 
                0x0A, 
                0x0F00, 
                0x0F00
            }, 
            Package (0x06)
            {
                0x0578, 
                0xF25B, 
                0x0A, 
                0x0A, 
                0x0E00, 
                0x0E00
            }, 
            Package (0x06)
            {
                0x0514, 
                0xDE67, 
                0x0A, 
                0x0A, 
                0x0D00, 
                0x0D00
            }, 
            Package (0x06)
            {
                0x04B0, 
                0xCADF, 
                0x0A, 
                0x0A, 
                0x0C00, 
                0x0C00
            }
        })
        Method (ACST, 0, NotSerialized)
        {
            Store ("Method C000.ACST Called", Debug)
            Store ("C000 C-States    : 13", Debug)
            Return (Package (0x05)
            {
                One, 
                0x03, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000000, // Address
                            0x01,               // Access Size
                            )
                    }, 
                    One, 
                    Zero, 
                    0x03E8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000010, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x03, 
                    0xCD, 
                    0x01F4
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000020, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x06, 
                    0xF5, 
                    0x015E
                }
            })
        }
        Method (_DSM, 4, NotSerialized)
        {
            Store ("Method C000._DSM Called", Debug)
            If (LEqual (Arg2, Zero))
            {
                Return (Buffer (One)
                {
                     0x03
                })
            }
            Return (Package (0x02)
            {
                "plugin-type", 
                One
            })
        }
    }
    Scope (\_SB.SCK0.C001)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C001.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Store ("Method C001.ACST Called", Debug)
            Store ("C001 C-States    : 13", Debug)
            Return (Package (0x05)
            {
                One, 
                0x03, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000000, // Address
                            0x01,               // Access Size
                            )
                    }, 
                    One, 
                    0x03E8, 
                    0x03E8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000020, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x03, 
                    0xC6, 
                    0xC8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000030, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x06, 
                    0xF5, 
                    0x015E
                }
            })
        }
    }
    Scope (\_SB.SCK0.C002)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C002.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C003)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C003.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C004)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C004.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C005)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C005.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C006)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C006.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C007)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C007.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C008)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C008.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C009)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C009.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00A)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00A.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00B)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00B.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00C)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00C.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00D)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00D.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00E)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00E.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK0.C00F)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK0.C00F.APSS Called", Debug)
            Return (\_SB.SCK0.C000.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK0.C001.ACST ())
        }
    }
    Scope (\_SB.SCK1.C100)
    {
        Name (APLF, Zero)
        Name (APSN, 0x09)
        Name (APSS, Package (0x12)
        {
            Package (0x06)
            {
                0x0AF1, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1D00, 
                0x1D00
            }, 
            Package (0x06)
            {
                0x0AF0, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1C00, 
                0x1C00
            }, 
            Package (0x06)
            {
                0x0A8C, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1B00, 
                0x1B00
            }, 
            Package (0x06)
            {
                0x0A28, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1A00, 
                0x1A00
            }, 
            Package (0x06)
            {
                0x09C4, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1900, 
                0x1900
            }, 
            Package (0x06)
            {
                0x0960, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1800, 
                0x1800
            }, 
            Package (0x06)
            {
                0x08FC, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1700, 
                0x1700
            }, 
            Package (0x06)
            {
                0x0898, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1600, 
                0x1600
            }, 
            Package (0x06)
            {
                0x0834, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1500, 
                0x1500
            }, 
            Package (0x06)
            {
                0x07D0, 
                0x00017318, 
                0x0A, 
                0x0A, 
                0x1400, 
                0x1400
            }, 
            Package (0x06)
            {
                0x076C, 
                0x00015C8B, 
                0x0A, 
                0x0A, 
                0x1300, 
                0x1300
            }, 
            Package (0x06)
            {
                0x0708, 
                0x0001466F, 
                0x0A, 
                0x0A, 
                0x1200, 
                0x1200
            }, 
            Package (0x06)
            {
                0x06A4, 
                0x000130C4, 
                0x0A, 
                0x0A, 
                0x1100, 
                0x1100
            }, 
            Package (0x06)
            {
                0x0640, 
                0x00011B88, 
                0x0A, 
                0x0A, 
                0x1000, 
                0x1000
            }, 
            Package (0x06)
            {
                0x05DC, 
                0x000106BB, 
                0x0A, 
                0x0A, 
                0x0F00, 
                0x0F00
            }, 
            Package (0x06)
            {
                0x0578, 
                0xF25B, 
                0x0A, 
                0x0A, 
                0x0E00, 
                0x0E00
            }, 
            Package (0x06)
            {
                0x0514, 
                0xDE67, 
                0x0A, 
                0x0A, 
                0x0D00, 
                0x0D00
            }, 
            Package (0x06)
            {
                0x04B0, 
                0xCADF, 
                0x0A, 
                0x0A, 
                0x0C00, 
                0x0C00
            }
        })
        Method (ACST, 0, NotSerialized)
        {
            Store ("Method C000.ACST Called", Debug)
            Store ("C000 C-States    : 13", Debug)
            Return (Package (0x05)
            {
                One, 
                0x03, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000000, // Address
                            0x01,               // Access Size
                            )
                    }, 
                    One, 
                    Zero, 
                    0x03E8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000010, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x03, 
                    0xCD, 
                    0x01F4
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000020, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x06, 
                    0xF5, 
                    0x015E
                }
            })
        }
    }
    Scope (\_SB.SCK1.C101)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C101.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Store ("Method C001.ACST Called", Debug)
            Store ("C001 C-States    : 13", Debug)
            Return (Package (0x05)
            {
                One, 
                0x03, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000000, // Address
                            0x01,               // Access Size
                            )
                    }, 
                    One, 
                    0x03E8, 
                    0x03E8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000020, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x03, 
                    0xC6, 
                    0xC8
                }, 
                Package (0x04)
                {
                    ResourceTemplate ()
                    {
                        Register (FFixedHW, 
                            0x01,               // Bit Width
                            0x02,               // Bit Offset
                            0x0000000000000030, // Address
                            0x03,               // Access Size
                            )
                    }, 
                    0x06, 
                    0xF5, 
                    0x015E
                }
            })
        }
    }
    Scope (\_SB.SCK1.C102)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C102.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C103)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C103.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C104)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C104.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C105)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C105.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C106)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C106.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C107)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C107.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C108)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C108.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C109)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C109.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10A)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10A.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10B)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10B.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10C)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10C.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10D)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10D.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10E)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10E.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
    Scope (\_SB.SCK1.C10F)
    {
        Method (APSS, 0, NotSerialized)
        {
            Store ("Method _SB_.SCK1.C10F.APSS Called", Debug)
            Return (\_SB.SCK1.C100.APSS)
        }
        Method (ACST, 0, NotSerialized)
        {
            Return (\_SB.SCK1.C101.ACST ())
        }
    }
}
Piker-Alpha commented 8 years ago

I had a quick look at your SSDT and see that it was created by: ./ssdtPRGen.sh -w 1 -l 32 Not by using ./ssdtPRGen.sh -w 3 You probably also used the -c -m and -b arguments.

And I assume that HackPlatformPlugin.kext injects the missing stepper dictionary, since there is no Mac-F221BEC8.plist, and that appears to be failing for you. You did setup your hack as a MacPro5,1 with board-id Mac-F221BEC8 right?

arkanisman commented 8 years ago

Dear Piker,

Thank you for getting back to me as quickly ;)

I can't really remember what flags where used, since I did a lot of trial and error. The HackPlatformPlugin.kext was recommended on InsanelyMac when using the patched AICPM in conjunction with your SSDT for those of us running Sandy Xeons. What it does I'm not exactly sure, but I can upload the file for you to have a look if you want.

Regarding the MacPro5,1 definition in the SMBIOS I will check that ASAP (on the move right now and not at the office) and will report back if I did that correctly or not, so if I get it correctly maybe just fixing that in the SMBIOS (using clover) could fix my issues ?

I verified on the Mavericks side and there I was using a MacPro 6,1 definition but that was problematic for a reason I do not know on Yosemite so I used MacPro 5,1 and it is way more stable.

One more thing, I'm using a patched DSDT (USB and LAN patches)... but when using the SSDT (that is failing) I lose the LAN... weird, you know what, I will upload everything as I get home for you to have a look (DSDT, SSDT, config.plist from Clover), might be easier for you to have a clearer picture.

On a side note that has nothing to do with our discussion here :D I tried to install El Capitan but at some point the screen gets garbled with a stop sign and it's a no go, I suspect those are the USB ports... but that is another discussion as I was saying ;)

Thanks again

EDIT : and oh, if I don't talk to you before it happens, I wish you a happy new year to you, your family and close friends!

arkanisman commented 8 years ago

Dear Piker,

I did setup my rig as a MacPro5,1 with board-id Mac-F221BEC8, I checked inside the kext and yes the plist was missing for that board-id. I was unable to find on plist, I tried searching around in the internet and found some topics here and there but I must be probably too much of a noob to understand maybe how to generate one myself.

Result is that I reverted back to the Mac Pro 6,1 definition for now, using the SSDT I copy pasted here I don't get anymore the error messages when booting in verbose mode and everything is labeled as success by PlatformShim. But when I get into the system not all the steps are working and the GeekBench score really sucks.

I tried to generate a new SSDT, using no flags but the SSDT generated is pretty weird. You will find below the output from the script when generating the SSDT, and also a link where I packed the following things:

1) SSDT working under Mavericks 2) Newly generated SSD which is weird and doesn't work 3) config.plist from Clover 4) Kext used to get PM working

Output from the script:

ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl v6.6 Copyright (c) 2013 by † Jeroen

v16.5 Copyright (c) 2013-2016 by Pike R. Alpha

Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <

cmp: Data/Models.cfg: No such file or directory System information: Mac OS X 10.10.5 (14F1509) Brandstring 'Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz'

gModelDataVersion: 150 Generating ssdt.dsl for a 'MacPro6,1' with board-id [Mac-F60DEB81FF30ACF6] Sandy Bridge Core E5-2650 processor [0x206D7] setup [0x0402] Processor matched! With a maximum TDP of 95 Watt, as specified by Intel Number logical CPU's: 16 (Core Frequency: 2000 MHz) Number of Turbo States: 8 (2100-2800 MHz) Number of P-States: 17 (1200-2800 MHz) Injected C-States for C000 (C1,C3,C6,C7) Warning: 'cpu-type' may be set improperly (0x0402 instead of 0x0a02) sed: 1: "s/^[\n]* Error:// ": unterminated substitute pattern

Error: Do you want to continue (y/n)? y Warning: 'system-type' may be set improperly (1 instead of 2)

Intel ACPI Component Architecture ASL Optimizing Compiler version 20140926-64 [Nov 6 2014] Copyright (c) 2000 - 2014 Intel Corporation

ASL Input: /Users/agustin/Library/ssdtPRGen/ssdt.dsl - 591 lines, 18920 bytes, 90 keywords AML Output: /Users/agustin/Library/ssdtPRGen/ssdt.aml - 3864 bytes, 41 named objects, 49 executable opcodes

Compilation complete. 0 Errors, 0 Warnings, 0 Remarks, 0 Optimizations -e Do you want to copy /Users/agustin/Library/ssdtPRGen/ssdt.aml to /Extra/ssdt.aml? (y/n)? n Do you want to open ssdt.dsl (y/n)? n

Link to the mentioned files:

https://mega.nz/#!HYdFTRLQ!E4xyRUvmDjSlyqITGt2s1-fYLZOmgb2-sr3xRRaZQ4A

Small recap:

Dual Xeon E5-2650 Sandy Bridge v1 (8 physical / 16 logical each = 32 logical in total)

EDIT:

When using the SSDT that was working under Mavericks with some manual modifications I get lower state (x12), but as soon as I start pushing (using Geekbench) it gets stuck at x24 when on Mavericks it goes to 28 full time.

Thanks again

arkanisman commented 8 years ago

Small info,

Installed El Capitan, no more strange errors in SSDT generation and the SSDT seems somewhat correct (different and less fields), still having problems with PM.

What I did, tell me if I'm correct, I went inside the X86PlatformPlugin and duplicated the MacPro 6,1 plist and renamed it F221BEC8.plist

Did the same inside the HackingPlatform kext...

I get some states in El Capitan, running GeekBench gives me scores not so bad either... but I'm missing all the lower states, and when running GeekBench sensors don't seem to go to the top (monitoring with HWSensors, maybe not the most reliable tool ?).

Curious thing too is that it still says that the catalog is NULL and that stepper failed... :/ pretty strange. I'm getting some ErP messages too (will post a pic later today).

Let me know how I can report back to you to test, debug and fix this.

EDIT : Going to redo a clean install of El Capitan, without rootless and touching the S/L/E structure. Using only Stinga Clover patching method and kexts from Clover. Will report back when that is done.

EDIT 2:

Still to do, find why the generated SSDT by ssdtprgen doesn't work, for one I directly see the it's missing the APLF compared to mine, other than that I don't know much more.

EDIT 3:

States stay relatively high all the time (at 2Ghz or above) and very rarely go back to 1.2 Ghz, is that normal ?

Piker-Alpha commented 8 years ago

Please use the latest Beta (v17.3) and see if it creates the SSDT without errors.