imacken Posted January 20, 2010 Share Posted January 20, 2010 I have my HDDs set to AHCI in BIOS. Using a Asus P6T Deluxe MB. For reasons not worth going into I have to reinstall Windows 7 with the drives set to EIDE. Now, I know that my SL - which is on a separate drive - will not boot when the drives are set to EIDE, only AHCI. Is there anything I can do to avoid a reinstall of SL? (Note: My Leo install boots fine with EIDE and it resides on a 3rd physical drive.) Link to comment Share on other sites More sharing options...
oldnapalm Posted January 20, 2010 Share Posted January 20, 2010 Check what is causing the system not to boot (use verbose mode "-v"), maybe AppleIntelPIIXATA.kext isn't being loaded, then you just need to add your device-id to Info.plist, or you can fix it in DSDT if it's a problem related to secondary IDE channel. Link to comment Share on other sites More sharing options...
imacken Posted January 21, 2010 Author Share Posted January 21, 2010 Check what is causing the system not to boot (use verbose mode "-v"), maybe AppleIntelPIIXATA.kext isn't being loaded, then you just need to add your device-id to Info.plist, or you can fix it in DSDT if it's a problem related to secondary IDE channel. Thanks for that. The only thing I can see is the old favourite 'Waiting on Root Device' with 'Waiting for boot volume UUID 3A83......' a few lines above. Now, the UUID mentioned is the partition that SL is installed on. When you say 'add device-id', which Info.plist do you mean? Link to comment Share on other sites More sharing options...
oldnapalm Posted January 21, 2010 Share Posted January 21, 2010 If the problem is the old "waiting for root device" then probably the ATA kext isn't being loaded. You need to check the device-id of your ATA controller (use the command "lspci -nn", if you don't have it, download from here). Then edit the file /System/Library/Extensions/IOATAFamily.kext/Contents/PlugIns/AppleIntelPIIXATA.kext/Contents/Info.plist and add the device-id. You can edit an existing key, for example the "ICH8 Serial ATA", replace with the name of your controller (ICH10R ?), and edit the IOPCIPrimaryMatch under this key to match your device-id (0x????8086). And do a "sudo touch /System/Library/Extensions" to rebuild the kext cache. Link to comment Share on other sites More sharing options...
imacken Posted January 21, 2010 Author Share Posted January 21, 2010 If the problem is the old "waiting for root device" then probably the ATA kext isn't being loaded. You need to check the device-id of your ATA controller (use the command "lspci -nn", if you don't have it, download from here). Then edit the file /System/Library/Extensions/IOATAFamily.kext/Contents/PlugIns/AppleIntelPIIXATA.kext/Contents/Info.plist and add the device-id. You can edit an existing key, for example the "ICH8 Serial ATA", replace with the name of your controller (ICH10R ?), and edit the IOPCIPrimaryMatch under this key to match your device-id (0x????8086). And do a "sudo touch /System/Library/Extensions" to rebuild the kext cache. Thanks for that. Will that affect the ability to boot in AHCI? Link to comment Share on other sites More sharing options...
oldnapalm Posted January 21, 2010 Share Posted January 21, 2010 Thanks for that. Will that affect the ability to boot in AHCI? You are welcome. No, AHCI uses other kexts (IOAHCIFamily), you are editing IOATAFamily. Link to comment Share on other sites More sharing options...
imacken Posted January 21, 2010 Author Share Posted January 21, 2010 You are welcome. No, AHCI uses other kexts (IOAHCIFamily), you are editing IOATAFamily. Running 'lspci -nn' gave the attached screenshot. Not sure where that leaves me! Can only see SATA AHCI controller listed. Should I put that ID in? As '0x3a228086'? grab.tiff Link to comment Share on other sites More sharing options...
oldnapalm Posted January 21, 2010 Share Posted January 21, 2010 Running 'lspci -nn' gave the attached screenshot.Not sure where that leaves me! Can only see SATA AHCI controller listed. Should I put that ID in? As '0x3a228086'? Sorry, I forgot that. You have to boot with IDE mode set in BIOS to check the device-id, so you will have to use your Leopard install or Windows. In my case it's [AHCI controller ID]-1, so your can be 3a21, but you better check. Yes, you should put the ID as in "0x3a218086". Link to comment Share on other sites More sharing options...
imacken Posted January 21, 2010 Author Share Posted January 21, 2010 Sorry, I forgot that. You have to boot with IDE mode set in BIOS to check the device-id, so you will have to use your Leopard install or Windows. In my case it's [AHCI controller ID]-1, so your can be 3a21, but you better check. Yes, you should put the ID as in "0x3a218086". OK, I'm making heavy weather of this! When I run the command from a Leopard Terminal, I just get 'lspci: Cannot find any working access method'. Any ideas? Link to comment Share on other sites More sharing options...
oldnapalm Posted January 21, 2010 Share Posted January 21, 2010 OK, I'm making heavy weather of this! When I run the command from a Leopard Terminal, I just get 'lspci: Cannot find any working access method'.Any ideas? Are you using the same lspci you used in Snow Leopard? Try with this Leopard version http://www.x86dev.org/forum/index.php?topic=307.0 Link to comment Share on other sites More sharing options...
imacken Posted January 22, 2010 Author Share Posted January 22, 2010 Are you using the same lspci you used in Snow Leopard? Try with this Leopard version http://www.x86dev.org/forum/index.php?topic=307.0 Thanks again. Still treading water on this. Screen dump below. There are 2 IDE interfaces with different IDs! Leo_grab.tiff Link to comment Share on other sites More sharing options...
oldnapalm Posted January 22, 2010 Share Posted January 22, 2010 Thanks again. Still treading water on this.Screen dump below. There are 2 IDE interfaces with different IDs! Try with the first one (0x3a208086). Link to comment Share on other sites More sharing options...
imacken Posted January 22, 2010 Author Share Posted January 22, 2010 Try with the first one (0x3a208086). OK, you are a genius! Thanks a lot. It's now working fine. Funny thing is though, I put the 3a20 address in, but when I do the 'lspci -nn' command both the 3a20 and the 3a26 controllers show up! Link to comment Share on other sites More sharing options...
oldnapalm Posted January 22, 2010 Share Posted January 22, 2010 OK, you are a genius!Thanks a lot. It's now working fine. Funny thing is though, I put the 3a20 address in, but when I do the 'lspci -nn' command both the 3a20 and the 3a26 controllers show up! You are welcome. That's because your HD is connected to the first controller. Maybe if you add both IDs the second controller will work too ("0x3a208086 0x3a268086", but I never tested). Link to comment Share on other sites More sharing options...
imacken Posted January 22, 2010 Author Share Posted January 22, 2010 You are welcome.That's because your HD is connected to the first controller. Maybe if you add both IDs the second controller will work too ("0x3a208086 0x3a268086", but I never tested). Yes, but the funny thing is, I'm pretty sure that my 2 optical drives are on the 'other' ID (3a26) and they are also working fine. Link to comment Share on other sites More sharing options...
oldnapalm Posted January 22, 2010 Share Posted January 22, 2010 Yes, but the funny thing is, I'm pretty sure that my 2 optical drives are on the 'other' ID (3a26) and they are also working fine. Strange thing. Then you don't need to add both IDs, I guess Link to comment Share on other sites More sharing options...
imacken Posted January 22, 2010 Author Share Posted January 22, 2010 Thnaks again for all your help! Link to comment Share on other sites More sharing options...
Recommended Posts