![]() |
Thanks guys... testing this tomorrow.. quick question:
since AppleAHCIPort.kext - info.plist does not have a section listing ICH9 or ICH9M.. should I copy & paste that one section from netkas's version and ADD it to the info.plist making sure I include the correct device id? (it's actually 2922)
Otherwise I could simply modify the device id string in the "Generic AHCI" section? Thanks! |
If you still use the AppleAHCI class it makes no difference the device id (the Generic AHCI matches all controllers anyway) or the controller name (its probably only used for identification purposes).
I have no noticeable problems (just shortly tested) with ICH10 on a P45 in 32 bits, maybe Apple is doing something weird to the controller in 64 bits. Just a wild guess, but maybe Apple is doing different things on same AHCI controllers depending on the computer class, try changing the computer identification (MacPro, iMac, MacBook, etc.) in smbios. |
Quick Update
Seems there are several threads about slow SATA 1-x on other motherboards as well. The following link seems to favor a fix in the dsdt.aml file for several interrupts that are conflicting.
http://www.insanelymac.com/forum/ind...=120&start=120 Work right now prevents me from testing... but I wanted to pass it along. Seriously for now I just turned off SATA 1-5 and Snow x64 is rock solid :) |
Solved
Many thanks to The King & CSHARP for this fix... originally from InsanelyMac.
http://www.insanelymac.com/forum/ind...=181981&st=160 Post #162 Open & edit dsdt.dsl find occurrence of the following and delete any IRQ# within brackets { }: Device RTC / RTC0 Device TMR / TIMR Device PIC / IPIC For example my x38 motherboard dsdt.aml had no IRQ set for RTC… but TMR & PIC did so I deleted the number leaving {} with nothing in the brackets. Then I saved the dsdt.dsl… converted back to dsdt.aml and all SATA now show no signs of stalling or delay. Device (TMR) { Name (_HID, EisaId ("PNP0100")) Method (_CRS, 0, NotSerialized) { Name (TMRB, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x20, // Length ) IRQNoFlags () DELETE THE 0-> {0} }) Return (TMRB) } } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Method (_CRS, 0, NotSerialized) { Name (PICB, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x01, // Alignment 0x02, // Length ) IRQNoFlags () DELETE THE 2-> {2} }) Return (PICB) } } |