Jump to content
InsanelyMac Forum

Apple.User

Members
  • Content count

    6
  • Joined

  • Last visited

About Apple.User

  • Rank
    InsanelyMac Protégé
  1. There is a definitely mapping (P00x, CPUx) using Alias (SourceObject, AliasObject) Arguably, creating objects for Processor Alias() is a "bad" idea; any idea why a BIOS author would do that? What was the purpose of those useless statements? One can load most OS like Linux and Windows without Alias(). And from a programmers perspective there is no actual need; actually these Processor Alias() statements produce more bugs and create unnecessary debugging variables in some Operating Systems. And thats why in OSX we have to remove them. Since AcpiWalkNamespace treats CPUx as the real Processor objects, the probe order for acpi(4) bus children will be P001, CPU1, P002, CPU2, P003, CPU3, P004, CPU4. This is very bad, because half of processors are attached twice and half -- aren't attached at all. Moreover, est (Enhanced SpeedStep cpufreq driver) isn't able to get _PSS for CPUx, so P-states will be missing for half of processors! And that's why the great MacPro has no 'Alias' to 'CPU' statements. Observing the objects "P001" and "CPU1", they have the same type and flags. In other words we shouldn't have to distinguish between the two. They should act the same according to the ACPI spec. According to the ACPI specification: Alias (SourceObject, AliasObject) Creates a new object named AliasObject that refers to and acts exactly the same as SourceObject. AliasObject is created as an alias of SourceObject in the namespace. The SourceObject name must already exist in the namespace. If the alias is to a name within the same definition block, the SourceObject name must be logically ahead of this definition in the block.
  2. Thanks @yeehaa I have an Asus Rampage II X58 motherboard I don't have an SSDT table! I just use the Chameleon RC3 with the default kexts. I have changed every instance of Pxx to CPUx. The question is the following: P001 ---> CPU0 or P001 ---> CPU1? And do I need to copy to each line this ( 0x00000810, 0x06) like on MacPro 4,1? I can see that the SSDT Table is definitely referencing Pxx objects... How do I rectify this? Thanks
  3. @DijitalDJ: thanks for the info. It works great on About This Mac. I am now comparing the dsdt from the Apple MacPro4,1. The dsdt from a typical Asus board is as follows: (_PR) { Processor (P001, 0x01, 0x00000810, 0x06) {} Processor (P002, 0x02, 0x00000000, 0x00) {} Processor (P003, 0x03, 0x00000000, 0x00) {} Processor (P004, 0x04, 0x00000000, 0x00) {} Processor (P005, 0x05, 0x00000000, 0x00) {} Processor (P006, 0x06, 0x00000000, 0x00) {} Processor (P007, 0x07, 0x00000000, 0x00) {} Processor (P008, 0x08, 0x00000000, 0x00) {} Processor (P009, 0x09, 0x00000000, 0x00) {} Processor (P010, 0x0A, 0x00000000, 0x00) {} Processor (P011, 0x0B, 0x00000000, 0x00) {} Processor (P012, 0x0C, 0x00000000, 0x00) {} Processor (P013, 0x0D, 0x00000000, 0x00) {} Processor (P014, 0x0E, 0x00000000, 0x00) {} Processor (P015, 0x0F, 0x00000000, 0x00) {} Processor (P016, 0x10, 0x00000000, 0x00) {} } ...But comparing the above Asus dsdt with the Apple MacPro4,1 that is clearly different (\_PR) { Processor (CPU0, 0x00, 0x00000410, 0x06) {} Processor (CPU1, 0x01, 0x00000410, 0x06) {} Processor (CPU2, 0x02, 0x00000410, 0x06) {} Processor (CPU3, 0x03, 0x00000410, 0x06) {} Processor (CPU4, 0x04, 0x00000410, 0x06) {} Processor (CPU5, 0x05, 0x00000410, 0x06) {} Processor (CPU6, 0x06, 0x00000410, 0x06) {} Processor (CPU7, 0x07, 0x00000410, 0x06) {} Processor (CPU8, 0x08, 0x00000410, 0x06) {} Processor (CPU9, 0x09, 0x00000410, 0x06) {} Processor (CPUA, 0x0A, 0x00000410, 0x06) {} Processor (CPUB, 0x0B, 0x00000410, 0x06) {} Processor (CPUC, 0x0C, 0x00000410, 0x06) {} Processor (CPUD, 0x0D, 0x00000410, 0x06) {} Processor (CPUE, 0x0E, 0x00000410, 0x06) {} Processor (CPUF, 0x0F, 0x00000410, 0x06) {} } Observing the two dsdts above I have replaced all P00x to CPUx and added to each line the 0x00000810, 0x06 Scope (_PR) { Processor (CPU0, 0x01, 0x00000810, 0x06) {} Processor (CPU1, 0x02, 0x00000810, 0x06) {} Processor (CPU2, 0x03, 0x00000810, 0x06) {} Processor (CPU3, 0x04, 0x00000810, 0x06) {} Processor (CPU4, 0x05, 0x00000810, 0x06) {} Processor (CPU5, 0x06, 0x00000810, 0x06) {} Processor (CPU6, 0x07, 0x00000810, 0x06) {} Processor (CPU7, 0x08, 0x00000810, 0x06) {} Processor (CPU8, 0x09, 0x00000810, 0x06) {} Processor (CPU9, 0x0A, 0x00000810, 0x06) {} Processor (CPUA, 0x0B, 0x00000810, 0x06) {} Processor (CPUB, 0x0C, 0x00000810, 0x06) {} Processor (CPUC, 0x0D, 0x00000810, 0x06) {} Processor (CPUD, 0x0E, 0x00000810, 0x06) {} Processor (CPUE, 0x0F, 0x00000810, 0x06) {} Processor (CPUF, 0x10, 0x00000810, 0x06) {} } As I have guessed all the CPUs are listed correctly as my MacPro on the IORegistryExplorer both at 10.5.8 and at 10.6. I have also tried all the other combinations of the above format by replacing for example only the CPUx and let all the other with their initial values: So Processor (P001, 0x01, 0x00000810, 0x06) {}...becomes 1st combination : Processor (CPU0, 0x01, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x02, 0x00000000, 0x00) {}... etc 2nd combination : Processor (CPU0, 0x00, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x01, 0x00000000, 0x00) {}... etc Then I repeat the above with and I add to each line the 0x00000810, 0x06 3rd combination : Processor (CPU0, 0x01, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x02, 0x00000810, 0x06) {}... etc 4th combination : Processor (CPU0, 0x00, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x01, 0x00000810, 0x06) {}... etc All the possible CPUx combinations are having the same result. But looking closer at the IORegistryExplorer using 10.5.8 I did have noticed something very interesting... there was one tiny difference: the ACPI_SMC_PlatformPlugin is having the PerformaceStateArray (with 10 values) only while the dsdt is on P00x format(!) Any ideas why is this so? Why the P00x vs CPUx etc notation makes such difference ? Nevertheless, the system works at its best and the IORegistryExplorer looks now the same with the macpro4,1.
  4. Slow Hard Drive Performance ICH10

    Great thanks! I am also comparing the dsdt file from the Apple MacPro4,1 THe KiNG's dsdt has the typical Asus board format (_PR) { Processor (P001, 0x01, 0x00000810, 0x06) {} Processor (P002, 0x02, 0x00000000, 0x00) {} Processor (P003, 0x03, 0x00000000, 0x00) {} Processor (P004, 0x04, 0x00000000, 0x00) {} Processor (P005, 0x05, 0x00000000, 0x00) {} Processor (P006, 0x06, 0x00000000, 0x00) {} Processor (P007, 0x07, 0x00000000, 0x00) {} Processor (P008, 0x08, 0x00000000, 0x00) {} Processor (P009, 0x09, 0x00000000, 0x00) {} Processor (P010, 0x0A, 0x00000000, 0x00) {} Processor (P011, 0x0B, 0x00000000, 0x00) {} Processor (P012, 0x0C, 0x00000000, 0x00) {} Processor (P013, 0x0D, 0x00000000, 0x00) {} Processor (P014, 0x0E, 0x00000000, 0x00) {} Processor (P015, 0x0F, 0x00000000, 0x00) {} Processor (P016, 0x10, 0x00000000, 0x00) {} } ...But comparing the above dsdt with the Apple MacPro4,1 that is clearly different (\_PR) { Processor (CPU0, 0x00, 0x00000410, 0x06) {} Processor (CPU1, 0x01, 0x00000410, 0x06) {} Processor (CPU2, 0x02, 0x00000410, 0x06) {} Processor (CPU3, 0x03, 0x00000410, 0x06) {} Processor (CPU4, 0x04, 0x00000410, 0x06) {} Processor (CPU5, 0x05, 0x00000410, 0x06) {} Processor (CPU6, 0x06, 0x00000410, 0x06) {} Processor (CPU7, 0x07, 0x00000410, 0x06) {} Processor (CPU8, 0x08, 0x00000410, 0x06) {} Processor (CPU9, 0x09, 0x00000410, 0x06) {} Processor (CPUA, 0x0A, 0x00000410, 0x06) {} Processor (CPUB, 0x0B, 0x00000410, 0x06) {} Processor (CPUC, 0x0C, 0x00000410, 0x06) {} Processor (CPUD, 0x0D, 0x00000410, 0x06) {} Processor (CPUE, 0x0E, 0x00000410, 0x06) {} Processor (CPUF, 0x0F, 0x00000410, 0x06) {} } Observing the two dsdts above I have replaced all P00x to CPUx and added to each line the 0x00000810, 0x06 Scope (_PR) { Processor (CPU0, 0x01, 0x00000810, 0x06) {} Processor (CPU1, 0x02, 0x00000810, 0x06) {} Processor (CPU2, 0x03, 0x00000810, 0x06) {} Processor (CPU3, 0x04, 0x00000810, 0x06) {} Processor (CPU4, 0x05, 0x00000810, 0x06) {} Processor (CPU5, 0x06, 0x00000810, 0x06) {} Processor (CPU6, 0x07, 0x00000810, 0x06) {} Processor (CPU7, 0x08, 0x00000810, 0x06) {} Processor (CPU8, 0x09, 0x00000810, 0x06) {} Processor (CPU9, 0x0A, 0x00000810, 0x06) {} Processor (CPUA, 0x0B, 0x00000810, 0x06) {} Processor (CPUB, 0x0C, 0x00000810, 0x06) {} Processor (CPUC, 0x0D, 0x00000810, 0x06) {} Processor (CPUD, 0x0E, 0x00000810, 0x06) {} Processor (CPUE, 0x0F, 0x00000810, 0x06) {} Processor (CPUF, 0x10, 0x00000810, 0x06) {} } As I have guessed all the CPUs are listed correctly as my MacPro on the IORegistryExplorer both at 10.5.8 and at 10.6. I have also tried all the other combinations of the above format by replacing for example only the CPUx and let all the other with their initial values: So Processor (P001, 0x01, 0x00000810, 0x06) {}...becomes 1st combination : Processor (CPU0, 0x01, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x02, 0x00000000, 0x00) {}... etc 2nd combination : Processor (CPU0, 0x00, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x01, 0x00000000, 0x00) {}... etc Then I repeat the above, and I add to each line the 0x00000810, 0x06 3rd combination : Processor (CPU0, 0x01, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x02, 0x00000810, 0x06) {}... etc 4th combination : Processor (CPU0, 0x00, 0x00000810, 0x06) {} having as 2nd line: Processor (CPU1, 0x01, 0x00000810, 0x06) {}... etc All the possible CPUx combinations are having the same result. But looking closer at the IORegistryExplorer using 10.5.8 I did have noticed something very interesting... there was one tiny difference: the ACPI_SMC_PlatformPlugin is having the PerformaceStateArray (with 10 values) only while the dsdt is on P00x format(!) Any ideas why is this so? Why the P00x vs CPUx etc notation makes such difference ? Nevertheless, the system works at its best and the IORegistryExplorer looks now the same with the macpro4,1.
  5. Slow Hard Drive Performance ICH10

    My question to THe KiNG: Why the modification proposed by you on the Device (TIMR) was not performed on the dsdt file that you provided? I want to make sure that is required or is just cosmetic. In my system I see no difference. Thanks 0x01, // Alignment 0x04, // Length ) IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x01, // Alignment 0x04, // Length
  6. Slow Hard Drive Performance ICH10

    Looking at the suggestions here and following the recommendations from the users, I am perplexed while observing the dsdt file that was supplied to jimmydigital00 On that dsdt file the Device (TIMR) is as follows: { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) } But on the suggestion presented says clearly to replace the Device (TIMR) as: { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x04, // Length ) IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x01, // Alignment 0x04, // Length ) }) } Why that proposed modification was not performed on the dsdt? Was it actually required? Was as previously noted in the end enough just the simple removal of IRQs on (RTC) (PIC) and (TIMR) ?
×