Jump to content

Dell Bios, AHCI/RAID, SSD


86 posts in this topic

Recommended Posts

I saw the changes but the device I'd was a typo? I corrected it according to what you posted earlier in the thread and everything works perfectly! Sleep works a well as shut down. Previously it always rebooted even when choosing shut down.

 

Thanks again! I appreciate your help.

 

i had posted a 10.5.8 dsdt with id 2828 for IDE mode. then later i found ESB2 works RAID.

 

check the Device (PCI0) for _UID,0x01 .. change to 0x00 (its the old 10.5.8 dsdt ive made 2 yrs ago)

Link to comment
Share on other sites

I have cloned the internal ML and the Chameleon partitions to an external HDD so as not to disturb my primary setup. I installed Chameleon (boot) files and activated the right partition on the external. Then I deleted the extra kexts (not needed with the new dsdt) and copied the dsdt from Toonces. When I booted, it spent a long time on the PCI Configuration begin message and then kernel panicked on the AppleIntelCPUPowerManagement kext. I don't entirely remember but I may have replaced this kext in my S/L/E in ML from Lion (which may have been customized to begin with).

 

When restarting, I noticed my Bios was reset to enable Floppy Disk and switch the Sata Mode to IDE. So I switched them back then booted back into my internal ML install.

 

Next I tried the dsdt from LatinMcG and had the exact same result. My Bios was reset again.

 

Not sure what to do next. My other problem is that my ML install has choppy graphics. The screen saver play jerky slideshow and most gfx are choppy as well. I never had this problem until 10.7 with the same graphics card (8600 GTS). Any ideas where to look?

Link to comment
Share on other sites

yellowguy, ML does not love the older GeForce cards, so it looks as if you are running on framebuffer only. I couldn't even install ML for ages because ML could not probe my card (8800GT) and gave up with the black screen of death. Try injecting your card's vendor and device ID into the NDANV50Hal.kext, NVDAResman.kext and the GeForce.kext and see if that helps. Format should be 0xDDDDVVVV&0x0000ffff where D is the four figure device ID and V the vendor ID.

 

You can get the right one for your card here.

Link to comment
Share on other sites

I have cloned the internal ML and the Chameleon partitions to an external HDD so as not to disturb my primary setup. I installed Chameleon (boot) files and activated the right partition on the external. Then I deleted the extra kexts (not needed with the new dsdt) and copied the dsdt from Toonces. When I booted, it spent a long time on the PCI Configuration begin message and then kernel panicked on the AppleIntelCPUPowerManagement kext. I don't entirely remember but I may have replaced this kext in my S/L/E in ML from Lion (which may have been customized to begin with).

 

When restarting, I noticed my Bios was reset to enable Floppy Disk and switch the Sata Mode to IDE. So I switched them back then booted back into my internal ML install.

 

Next I tried the dsdt from LatinMcG and had the exact same result. My Bios was reset again.

 

Not sure what to do next. My other problem is that my ML install has choppy graphics. The screen saver play jerky slideshow and most gfx are choppy as well. I never had this problem until 10.7 with the same graphics card (8600 GTS). Any ideas where to look?

 

have to patch AppleRTC.kext, replace AppleAcpi, use Chameleon GeneratePStates , GenerateCStates

Link to comment
Share on other sites

Latin, Generate P States and C States is already checked. But how do I patch AppleRTC and AppleAcpi?

 

Splonk, I read through the thread on blank screen and don't see how to add the device id to these kexts. NVInjector used to work a while ago. Can I still use that?

 

And I am not seeing anyone reporting any issues with 8600 GTS on Mountain Lion (on google).

Link to comment
Share on other sites

Latin, Generate P States and C States is already checked. But how do I patch AppleRTC and AppleAcpi?

 

Splonk, I read through the thread on blank screen and don't see how to add the device id to these kexts. NVInjector used to work a while ago. Can I still use that?

 

And I am not seeing anyone reporting any issues with 8600 GTS on Mountain Lion (on google).

might needs the mvhal50 driver. i think its mising or u have wrong smbios.plist profile on install ?

Link to comment
Share on other sites

I will try adding the ID to the three kexts you listed above. But the problem only happens intermittently. Which makes me think it might not be the graphics card. Some people are reporting the same issue on regular macs after ML upgrade. So I am thinking Apple might fix it via software update. Basically when my hack wakes up from sleep or restarts, the screen saver runs smooth. When the screen saver has run before and it goes back to screen saver again, it runs choppy. For now I have just disabled ss altogether.

 

It could also be because I never used sleep on this machine before ML. I also noticed that it buffers all the sounds while sleeping. I have it set to announce time at every hour. Up until Lion it was fine. Because sleep never worked and I would hear time every hour. But with ML, I have the sleep working (I think... because the front power button light doesn't blink while sleeping. People say it is supposed to. And the fans keep humming). So when it sleeps, I don't hear the new mail notifications or the time announcements or the iMessage notification sounds. Then when I wake it, I get all those sounds right away. Not sure if that is the right behavior.

Link to comment
Share on other sites

I had sleep working with SL. The light blinks, the drives power down and the fans switch off. If the fans are still running, then the DSDT needs more work. Just for kicks, I tried a new installation and tried NVEnabler and it did, indeed, work. You only need to patch two of the files I mentioned. You can dump the GeForcexxx kexts as they don't seem to be needed. Tomorrow I might try playing around with NVEnabler and not patching the kexts to see if I can get that to work. That would be more vanilla and less of a hassle to maintain through updates.

 

I also found that I could get the gui up with an 8600GT EFI string in my boot.plist, but curiously not with an 8800GT EFI string. That would seem to confirm that your card is less affected by ML than mine.

Link to comment
Share on other sites

i tested 10.8 2 mo ago in my inspiron 1520 nvidia... i erased it. (loosing intrest in mac. due to time and constant hardware changes)

Nooooooooooooooooo...........And mac's not the one changing your hardware :)
Link to comment
Share on other sites

  • 2 weeks later...

Finally had some more time to look into this. I tested power consumption and my hack is using 230W 24x7 whether in "sleep" or not. So I am trying to make sleep work. And booting from an external cloned hard drive, with the DSDT posted by LatinMcG, I am getting a KP from AppleIntelCPUPowerManagement.kext. The message is "CPU2 has no HPET assigned to it." On Googling I found ForceHPET=Yes flag. When I tried that, I got the same KP except for CPU1. So I tried ForceHPET=No. And I went back to CPU2 KP.

 

I am not sure how to patch AppleRTC and AppleAcpi. Any other ideas? Thanks.

Link to comment
Share on other sites

to patch appleRTC, run this in terminal

 

sudo perl -pi -e 's|\x75\x30\x89\xd8|\xeb\x30\x89\xd8|' /System/Library/Extensions/AppleRTC.kext/Contents/MacOS/AppleRTC

 

Was working on a friends Dell XPS 410 last week, it also resets the bios settings on every reboot, including floppy and F1 to continue after keyboard error. Seems to happen on any and every reboot and not related to appleRTC, just had him change the bios battery, so will see if that helps. For yours, be sure speedstep is enabled. the KP your getting means your DSDT is not allowing loading without nullcpupowermanagment and your power usage indicates speedstep is not working. Speedstep won't work with nullcpupowermangement. Use DSDTSE to extract your SSDT tables, which can then be added to your /Extra folder to be loaded by chameleon and/or added into DSDT if needed. But try adding to /Extra first. They need to be labled SSDT.aml, SSDT-1.aml etc. prob only will have 2 or 3 of them all together. Use generate P&C states, and post copy of bdmesg so can see that all this stuff is loading correctly

Link to comment
Share on other sites

I am pretty sure Speedstep is enabled in BIOS. To be sure, the BIOS reset only happens when I am using the new DSDT.aml on the external drive. With my old DSDT on the internal SSD, I do not get the BIOS reset on every boot.

 

When I get a minute tomorrow, I will backup the AppleRTC on the external HDD and try patching it with the above command.

 

Then I can try the SSDT extract and copy.

 

I'll let you know. Thanks.

Link to comment
Share on other sites

Not sure I understand the "new" vs "old" DSDT, is the external drive not an exact clone of the internal drive? And thought you got SSD to use for ML? Second part doesn't really matter as your entitled to change your mind all you want :) Also any sleep enabler still present?

Link to comment
Share on other sites

No sleep enabler present now. Yes I switched to using the SSD for the new ML install. Then I wiped the internal HDD that had the Lion installation. Then I cloned the SSD (including the Chameleon partition) to an external HD. Then I reinstalled Chameleon to the External HD to make it bootable. Now I want to leave the internal setup alone and try a new DSDT on the external while still using the old (Lion) DSDT on the internal. When/If I get sleep working, I will redo the same things on the Internal SSD. The old DSDT was generated with an older BIOS (1.0.15) on Snow Leopard and never had sleep working. The new DSDT has been generated on ML with the PC BIOS upgraded to 1.0.18 and then the DSDT was patched by LatinMcG in this thread above.

 

I know very little about patching DSDT. I don't know of a good text diff'ing tool on OSX. So I decompile DSDT.aml and then use Beyond Compare on Windows to compare the resulting dsl files. Even the comparisons don't make much sense to me. And I am a computer programmer to begin with. :-) That is why making sleep work seems like a tall order to me. Heh, maybe I'll just assemble a new rig with working sleep.

Link to comment
Share on other sites

Well, I'll throw another possibility at you. Chameleon does it's first load before you get to the selection menu and ever get a chance to choose which install you want to boot. So it's already read the extra folder of which ever drive you booted from in bios and applied many of the settings from that boot.plist. It should then read the same info off the drive you choose to boot from and use them instead, but this doesn't always go exactly as planned. If had issues when using 2 drives that have chameleon installed and each have a DSDT. There is no indication in bdmesg or elsewhere that anything went wrong and will indicate correct DSDT loaded, when in fact none of the DSDT fixes get applied. So really you only need Chameleon installed on 1 drive and only need DSDT on that drive and can then choose to boot any other OSX installation and it will still be applied. I know your workig out some bugs, but there is no reason to have 2 different DSDT's, your not switching bios'es between boots and there's no ML DSDT vs SL DSDT, it's a table extracted from bios and is not dependent on OS version, there may be fixes used in ML that were not needed in SL or are recent improvements people have come up with, but they will all be backward compatible. If you want to try out different ones, put it in a different location on the HD your booting besides /Extra or / like maybe /Extra/testdsdt/DSDT.aml and just specify that path for DSDT manually in Chameleon at boot, then if any problems, when you reboot, it will go back to using the one in /Extra. Keep a matching SMbios in both though.

 

Using Kozlek's branch of FakeSMC with monitoring plug-in, along with it's HWmontor app, you can see the CPU frequency and current multiplier both in real time, you should be able to see the CPU clock up under load and back down under idle. You may only see the "high" clock and the "low" clock because any steps in-between are maintained for such a brief time, it doesn't get a chance to show them unless you view the history graph.

Link to comment
Share on other sites

Thanks Latin and eep. I patched AppleRTC with the perl script and that fixed the BIOS resetting issue on boot from external hdd. Funny that I never did that on the internal SSD install.

 

But I still got the KP with CPUn does not have an HPET assigned. So I tried the DSDT and SSDT from the mediafire link above. It did not compile originally but hitting the "Fix Errors" button fixed those errors. Unfortunately I saw a DSDT.aml (and SSDT.aml) not found messages on the next boot followed by the same KP later.

 

Next I deleted the mediafire DSDT and SSDT and copied the same DSDT.aml I have on the internal SSD. Even with that I received the same KP. At this point, my external HDD has the same contents as the internal except for:

- AppleRTC.kext in S/L/E which has been patched

- Chameleon's E/E folder is missing IOAHCIBlockStorageInjector.kext, LegacyAppleAHCIPortIntelICHx.kext, PlatformUUID.kext

I deleted these because Latin gave me a DSDT which has SATA/RAID fix applied.

 

eep, I agree with what you said above because I do see occasional funky-ness with Chameleon. However, having one DSDT is not going to work for me because if my internal SSD refuses to boot, then I'll have no way of going back and fixing the DSDT. I am not entirely sure how and when it falls back on the default DSDT. That is why I am trying to make the external bootable. That way I can experiment to make sleep work...

Link to comment
Share on other sites

What many people do is install chameleon on a thumb drive but an external HD would work just as well, and use that as the only bootloader, giving you the safety net your talking about and easy way to change of modify if needed and still only having the one chameleon drive. no requirement that it be installed to your internal drive too.

Link to comment
Share on other sites

I just cloned my internal Chameleon to the external hdd and booted external ML clone from it. The only difference being AppleRTC patch applied to the external ML install. Same KP for CPU HPET.

 

At the beginning I noticed messages regarding missing C-States and P-States and CPU 1 (through 4) identifiers being invalid (four messages).

 

I tried booting the external hdd ML install from the internal Chameleon and it worked!

 

Not sure what is going on anymore. eep, I have cloned Chameleon to a USB thumb drive but booting from it, I get a quick reboot without any messages. Otherwise I would clone my Chameleon to several different drives and always have a backup. At this point I only have one working Chameleon installation: internal. And if I change DSDT or any other thing to get sleep working, I may end up with no way to boot my hack.

Link to comment
Share on other sites

Yes of course. Sorry I forgot to do that. Thanks iFire.

 

Latin, compiling the mediafire DSDT.dsl with DSDTSE also gives me errors:

 

Users/xxx/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl   377:	 Method (\_WAK, 1, NotSerialized)
Warning  1081 -												   Reserved method must return a value ^  (_WAK)
/Users/xxx/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl   410:			 Store (Local0, Local0)
Error    4051 -													  Method local variable is not initialized ^  (Local0)
/Users/xxx/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl   415:			 Store (Local0, Local0)
Error    4051 -													  Method local variable is not initialized ^  (Local0)
/Users/xxx/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl  1269:								 Or (0x03, PARM)
Warning  1106 -																   Result is not used, operator has no effect ^

Link to comment
Share on other sites

 Share

×
×
  • Create New...