Jump to content

OSX 10.7, 10.8 and 10.9 on the Dell XPS 1340 laptop


bcc9
 Share

321 posts in this topic

Recommended Posts

Hi again, bcc9. I forgot how I checked out agpm myself without any kill-a-watt and can't check.

Previously, we changed the LogControl setting in the AGPM plist to turn on logging of the g-state transitions. Also you guys measured the rate at which your batteries drained.

I used very long time windows 7, then I moved to arch linux for some time. Then I tried windows 8, understood that it is a {censored} and decided to return back to 10.8 and seems like it was best idea.

Ha, yes the person who has my 1340 runs osx on it full time these days. Only had 1 program which got us to reboot into windows in the last 6 months. (Could have just used virtualbox for that case too.)

I tried to work with Clover bootloader setup, but it doesn't see our mcp79 ahci controller.

clover boots on this sytem via a usb thumb drive. I can't believe it wouldn't work via a sata disk as well.

Edit: Ok, I assume it boots via ahci, but then doesn't show the ahci disks as boot options?

Clover adds so much more complexity than the boot-132 bootloaders, I don't see a benefit in it at this point. What am I missing?

So, I use chimera now, seems to be good.

I'm still using chameleon not tonymac's branch of chameleon. Have you found anything working better with chimera?

bcc9, you made wrong injector. It the "Machine" need to be added, not "Machines"

Huh? In /System/Library/Extensions/AppleGraphicsPowerManagement.kext/Contents/Info.plist:

 

<key>Machines</key>

in 9400m_gstate_inject.kext/Contents/Info.plist:

<key>Machines</key>

 

I also can't get installer gui screen while trying to install 10.8 (1340 with g210m, used alternate dsdt, other files in 1st post is also included in /Extra). GraphicsEnabler does not make a difference as expected. It seems like graphics stop working after boot loading process. and since I can't start installation procedure, I can't (or don't know how to) get a ioreg dump.

ioreg can be run from the shell in safe mode. Does that work?

If you move the nvidia kexts out of the way, does the system install fine (with lower resolution)?

Link to comment
Share on other sites

What am I missing? -> Absolutely nothing :)

 

I'm still using chameleon not tonymac's branch of chameleon. Have you found anything working better with chimera? -> No, I was suggested to try it and it works well. I really see no much difference.

 

Huh? In /System/Library/Extensions/AppleGraphicsPowerManagement.kext/Contents/Info.plist:

 

<key>Machines</key>

in 9400m_gstate_inject.kext/Contents/Info.plist:

<key>Machines</key>

I said info by ioreg, there is machine without 's'.

 

yes, you're right.

post-153735-0-92599500-1345059240_thumb.png

Link to comment
Share on other sites

I don't know why you're having such troubles. Sounds like the proper graphics injection strings are missing from your ioregistry (which should be injected via the dsdt). I recommend you check your ioregistry, making sure the injection strings are being injecting to the 9400M device.

 

I also don't know why you're patching iopcifamily, or using myhack, or mucking with your caches. (When you use plist.v3, chameleon boots without UseKernelCache=yes, and so your kexts in /Extra/Extensions should be loaded no problem). The Installer GUI came up for me without any of those extra steps.

Finally got a chance to take another look. I can confirm that the DSDT is being loaded.

with the flag | DSDT=hd(0,2)/Extra/DSDT.aml

I can see:

NVDANV50HAL loaded and registered

 

when I omit the DSDT line:

[AGPM Controller] unknown platform

 

Still freezes at

[iOBluetoothHCIController][start] -- completed

 

Last thing I see in the console is:

DSMOS has arrived
[iOBluetoothHCIController][start] -- completed
macx_swapon success
[Freezes here]

Additionally, when I get in to the OS with safe mode, I can see that audio, wifi and audio are working so I know the DSDT is loading...it gets the wifi to be detected. The freezing occurs for both the Vanilla installer or the OS boot

Link to comment
Share on other sites

Sent a pm to bcc9, but I'll duplicate here.

 

How do you, guys, use the external vga display? I can't understand how make it working normally.

 

1. it doesn't support hotplug it seems. there is needed to do a reboot or sleep then external vga detects. When I turn off external vga and eject the cable, it still think that vga monitor is there until reboot/restart.

2. I tried different nvcaps + injector from MacBook5,2 with 9400m card with different nvcaps, but no luck. Still same trouble.

3. when I get external monitor (1920x1080) and laptop's display both working, how can I use full screen external with 1920x1080 resolution? It seems it's not possible here. I can set 1080 resolution only when my laptop display increases the workspace. In mirror mode I can't do it. I loved the option in windows - when you close the laptop lid with external vga display connected, it automatically swithed resolution to 1920x1080p and since lid is closed, internal display is turned off. Once lid is opened, external display is switched to same resolution like laptop's display.

 

Did anybody try similar fixes?

Link to comment
Share on other sites

ok, found how we can get rid openhaltrestart.

 

I have recompiled chameleon with restart fix, exactly ps2 restart fix:

 

 

fadt_mod->Flags|= 0x400;

fadt_mod->Reset_SpaceID = 0x01; // System I/O

fadt_mod->Reset_BitWidth = 0x08; // 1 byte

fadt_mod->Reset_BitOffset = 0x00; // Offset 0

fadt_mod->Reset_AccessWidth = 0x01; // Byte access

fadt_mod->Reset_Address = 0x64; // Address of the register

fadt_mod->Reset_Value = 0xfe; // Value to write to reset the system

 

but I don't understand, why it doesn't work when I simply enable it in my config. There is the line about intel cpu in sources that disables this existed facp fix.

 

But anyway, got it working, and for people who doesn't want to recompile chameleon, here is the boot file from latest trunk with working reboot. You can remove openhalt.

boot.zip

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

[/code]Additionally, when I get in to the OS with safe mode, I can see that audio, wifi and audio are working so I know the DSDT is loading...it gets the wifi to be detected. The freezing occurs for both the Vanilla installer or the OS boot

So then it would seem to be a matter of figuring out which kext is causing the freeze by process of elimination, unless you are ready to debug with a remote debugging session.

 

Sent a pm to bcc9, but I'll duplicate here.

 

How do you, guys, use the external vga display? I can't understand how make it working normally.

 

1. it doesn't support hotplug it seems. there is needed to do a reboot or sleep then external vga detects. When I turn off external vga and eject the cable, it still think that vga monitor is there until reboot/restart.

2. I tried different nvcaps + injector from MacBook5,2 with 9400m card with different nvcaps, but no luck. Still same trouble.

3. when I get external monitor (1920x1080) and laptop's display both working, how can I use full screen external with 1920x1080 resolution? It seems it's not possible here. I can set 1080 resolution only when my laptop display increases the workspace. In mirror mode I can't do it. I loved the option in windows - when you close the laptop lid with external vga display connected, it automatically swithed resolution to 1920x1080p and since lid is closed, internal display is turned off. Once lid is opened, external display is switched to same resolution like laptop's display.

 

Did anybody try similar fixes?

I don't even have a VGA cable at my current address so I cannot test this again. Last I checked a few years ago, VGA was working, but I didn't test hot-plugging.

 

As for resolutions, yes, I think you have to extend your desktop instead of using mirroring mode in order to use both displays at full resolution.

Link to comment
Share on other sites

ok, found how we can get rid openhaltrestart.

 

I have recompiled chameleon with restart fix, exactly ps2 restart fix:

Thank you, I hadn't noticed that this fix made it into chameleon.

I've updated post #1 with a link to the current chameleon (r1992 or later have this fix).

I've also updated the org.chameleon.boot.plist in post #1 to include the necessary PS2RestartFix string.

 

Nice to finally be able to get rid of OpenHaltRestart.

Link to comment
Share on other sites

  • 2 weeks later...

Hey all!

 

Bcc9, thanks once again for keeping my laptop all sparkly and new. You have no idea how many people still comment, 3 years on, about how awesome it is that my Dell runs the latest OS X.

 

I was wondering whether anyone had fully figured out how to fix the "black screen upon GUI load issue" yet. I know that bcc9 had not been able to replicate it using his own setup, but I was wondering if anyone else had some better luck than myself. I followed Post #1 to the letter, and I tried various alternate approaches to solving the issue.

 

Rundown: OSX Mountain Lion Install Disc as modified to be run from an external hard drive, on which I have also I am using Chameleon r2059. /Extra includes a copy of all the parts of my working 10.7 build, although fresh versions of all of the kexts / plists as laid out in Post #1. Have booted verbose successfully, all the way up until the handoff to GUI, when the screen turns off. External Hard Drive activity is still going strong, no reboot taking place, I just know that something is screwing with my ability to view the GUI.

 

The current gamut of workarounds I have seen here, be they Safe Mode or disabling GraphicsEnabler, have lead to dead ends. I am using the latest Chameleon build, and I question if it can be attributed to the GUI issue. Nonetheless, booting up with Chameleon r1650 (from my 10.7 build) leads to a quick reboot loop. Also, could be the 9500 dual graphics I am slinging, but I'd rather not blame my tools.

 

I am not willing to try anything third-party like myHack for the time being, as I have spent too much time learning from this community, and the hundreds of posts over the past few years, to give up. While my 10.7 build has been working fine, I am committed to finding some sort of resolution to this issue, as I am certain that I am not alone in this. I ask of this community: are there any suggestions you can offer, or potentially diagnostic messages I can offer, to allow us to figure this out once and for all?

 

EDIT: FOR ANYONE HAVING TROUBLE WITH THE INSTALL GUI NOT LOADING. GET THE UPDATED VERSION OF YOUR DSDT FROM POST#1. DO NOT USE YOUR OLD DSDT from 10.7. A useful and relevant post about this was found here shortly after I wrote this message and shortly before realization rained down upon me.

 

{censored} yeah, InsanelyMac! Kudos, bcc9!

 

Edit 2: Alright. So. Was able to install Mountain Lion to a second partition. Currently only able to boot to said partition using -x, but keyboard and mouse do work, as does wifi and sleep/wake function with lid close.

 

In regular, -f and -s, I seem to be in the same situation as Gambit642. Verbose boot freezes after some sort of Bluetooth reference (at times VoodooBattery loading), and does not recover, though it does not panic either. Progress moving at a quick clip, hopefully will be able to sort all out soon. Currently stuck here. I do know that it absolutely has to be graphics related, since my -x boot results in stuttering graphics.

 

Link to comment
Share on other sites

So.

 

I spent the entirety of this morning setting myself on fire in every way I could possibly conceive.

 

It would seem that my current issues are entirely related to my 9500M Card, a photo of which seems well-destined to fit besides the dictionary definition of "Diminishing returns". This is a common problem for many others on InsanelyMac, who have discovered a potential solution in installing previous Nvidia drivers to mitigate their own problems, in addition to playing around with NVEnabler 64.kext and constructing .pkg files to run custom scripts. For reference, I point interested onlookers here, in addition to here.

 

From what I have been able to glean, these solutions do not work for 9500M owners, simply because only the 9200GS (the second card) is seen by the system and used. NVEnabler 64 seems to show a "probe fails" error simply because it's expecting your 9400M to rev up and save the day, while it is only able to see the 9200GS (this further explains the graphics stuttering.) All I ended up with were dead ends, a kernel panic from running without GraphicsEnabler=Yes, and an inability to boot to GUI even in safe mode upon the loading of NVEnabler 64. That one required me to delete NVE* via Terminal from the ML Install Disc.

 

For what it's worth, I'm currently running the kexts uploaded by these gents. This is in addition to GraphicsEnabler=Yes, which seems to be necessary for all to pass at the very least into Safe Mode via -x. The kexts don't seem to either help or hurt, and -x still allows me to have my GeForce 9400M G detected by ML.

 

EDIT: Alright. Let's crank this out. Apparently another user was able to succeed with the following:

People already solved the problem by a user who helped us, one must place the "NVDANV50Hal.kext" of DP4 verify who is registered and loaded, then use the "NVENABLER.kext" with EFI strings in org.chameleon.Boot.plist and GraphicsEnabled = yes and it works perfectly if you have a kernel panic, put your device id in your "NVDAResman.kext".

 

EDIT 2: So it's no longer stuck during verbose boot, which is good news. Unfortunately, it panics with NVDAResman.kext. The key kexts appear to be NVDANV50Hal.kext as well as NVDAResman.kext. Assuming you would be able to go to System Report and copy your Device ID and Vendor ID, modification of the Info.plist files in one or either of the kexts appears to offer some sort of progress.

 

EDIT 3: Alright, so I was told that while adding DeviceID is required, so is running NVEnabler. Except that NVEnabler didn't help matters at all. Sticking with GraphicsEnabler=Yes.

 

 

Again, if anyone is out there watching, I sure could use a hand. My setup is workable, but I can't even run Hi-Speed USB, so my attempts at a Time Machine backup (my safety rope in case anything goes wrong) would run at a max of 3.0 Mbps... for 24 Gb.

Link to comment
Share on other sites

So generally to debug this sort of thing (9500m not booting into GUI anymore) I would look to answer the questions:

1. what has changed from when things used to work?

2. when did things stop working (usually, what did I do to make things break)

 

To answer the first part I would compare the nvidia related ioregistry from the most recent working release to the first failing release. How do I run ioreg when the system doesn't come up fully you ask?

1. Move the NVDAResman & NVDANV50Hal kexts out of /S/L/E

2. Now boot multi-user (you should be able to get non-qe/ci graphics)

3. enable remote login via system preferences

4. Put NVDAResman & NVDANV50Hal back; touch /S/L/E

5. reboot

6. ssh onto machine

7. run ioreg -lw0

 

This is of course assuming that the system isn't really freezing, just failing to provide a working GUI. If the system is truly freezing, the above will at least confirm that the nvidia kexts are part of the problem. A remote gdb session is probably in order to try and debug any real hang.

 

For the second question, presumably OSX upgrading broke things, but:

If others are claiming rolling back to 10.8 DP4 drivers helps things, try installing 10.8 DP4 fully and see if that works. That would at least narrow things down. If 10.8DP4 doesn't work for you, then any dp4 rollback advice would seem to be non-applicable. If it does work, use the ioreg output from that most recently working release to compare with the above.

Link to comment
Share on other sites

IT WAS GEFORCE.KEXT

 

As soon as I deleted GeForce.kext, my system did not Kernel Panic upon GUI load, and most everything is working perfectly.

 

I mean, the graphics are still stuttering a bit (I assume due to QE/CI), and that might require me to get rid of NVResman. In any case, I am perfectly as happy as a clam.

 

EDIT: Removing NVResman only served to limit my resolution without actually fixing the stuttering. Kept it, decided to temporarily remove Flash Player from Safari, which ended up working out for the best for my browsing experience.

 

 

Everything else works perfectly. Wifi, Sound, Microphone, Battery, Lid Sleep/Wake, etc.

 

So my two tips for a successful 10.8 install: 1) Ensure latest DSDT. 2) Append your Device ID to both

NVDAResman & NVDANV50Hal. Do not worry, this is very simple and instructions for doing so are near universally-available. 3) Delete Geforce.kext. =)

Link to comment
Share on other sites

Oh yes, forgot about the Geforce kext for a moment there.

So, moving the nvidia kexts out of the way was meant as a troubleshooting step for you, not the end state. If you're having panic issues with the nvidia kexts, it sounds like you're using GraphicsEnabler=yes (instead of the post #1 config recommendation), and are running into the same issue as reported earlier (and resolved thru the new config in post #1):

 

http://www.insanelymac.com/forum/topic/272546-osx-107-and-108-on-the-dell-xps-1340-laptop/page__st__80#entry1806047

 

Now that you can boot multi-user, you could do the ioregistry/what-has-changed troubleshooting I recommended. In the mean time, sounds like you're limping along without qe/ci.

 

 

Also you shouldn't need to edit device-ids to get this system to work.

The 9400m part that we've been using all along matches the driver kext out of the box.

 

Link to comment
Share on other sites

  • 3 weeks later...

Hi guys, same problem here, mountain lion doesn't boot on my xps with 9500m... it boots in safe mode (-x) and if i remove GeForce.kext (in both case without QE/CI).

If i understood correctly, the great bcc9 has no way to solve this problem due to different hardware on his machine (xps with 9400m is fully working).

I'm not an expert of the "mac os world under the hood", but i think that with the expertise of bcc9 and our collaboration we succeed!

 

I've banally tried to use the old lion GeForce (&co) kext with no success...

 

I've tried to debug how suggested... remote ssh login enabled but when the boot fail the machine seems to be completely freezed (it is not gui problem only... but no kernel panic appears...) or simply with no networking started...

 

GraphicsEnabler is disabled... it can be a DSDT nvidia strings problem? Can we try removing strings from dsdt and using a NVEnabler kext?

Link to comment
Share on other sites

HI Guys, same graphics problem over here for ML 10.8.2. I have a 9400M G / G210M, Tried vairious methods such as dsdt's, NVEnabler, Graphics Enabler, no joy. Quite frustariting as I have everything else working including WWAN. Any more sugestions???

 

Thanks in advance.

Link to comment
Share on other sites

Since the 9400m is known to work just fine under 10.8.x, and the systems reporting problems have 9400m+9200m or 9400m+g210m, and these systems work OK under 10.8.x without the nvidia framebuffer kexts, I would suggest trying to keep the nvidia drivers from initializing the 9200m/g210m co-processors.

To do this, you could hack the pci id matching in the kexts, or I think the better fix is to map the device-id for the 9200m/g210m part to something fake (something other than nvidia). This mapping can be done via the dsdt.

 

Link to comment
Share on other sites

I believe this edit would do the trick:

#patch #3-coprocessor: Make graphics co-processor *not* match nvidia driver
/XVR0)/
/DSM/
/Return (0x00)/
.d
a
                   Store (Package (0x02)
                       {
                        "vendor-id",
                        Buffer (0x04)
                        {
                        0x11, 0x11, 0x00, 0x00
                         }
                        }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
.
w

This patch would be applied using ed, as with all the other dsdt edits I provided.

Link to comment
Share on other sites

I believe this edit would do the trick:

#patch #3-coprocessor: Make graphics co-processor *not* match nvidia driver
/XVR0)/
/DSM/
/Return (0x00)/
.d
a
Store (Package (0x02)
{
"vendor-id",
Buffer (0x04)
{
0x11, 0x11, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
.
w

This patch would be applied using ed, as with all the other dsdt edits I provided.

 

Won't Compile. How exactly should I use this???

 

(G210M 10de 0a74)

(9400M G 10de 0866)

Link to comment
Share on other sites

I have a problem compiling *.dsl

I have a lot of compile errors and warning compiling orig.dsl and fixed.dsl provided in the zip file (with DSDT Editor 0.8)

 

And of course i have the same problem with generated dsl (using scripts provided in the same package)

 

What's wrong?

 

PS: I've tried to deassemble DSDT.aml and recompile it but the results are the same...

Link to comment
Share on other sites

I have a problem compiling *.dsl

I have a lot of compile errors and warning compiling orig.dsl and fixed.dsl provided in the zip file (with DSDT Editor 0.8)

 

And of course i have the same problem with generated dsl (using scripts provided in the same package)

 

What's wrong?

 

PS: I've tried to deassemble DSDT.aml and recompile it but the results are the same...

 

In general or just with the co-processor edit??

Link to comment
Share on other sites

Oops, sorry the XVR0 device didn't have a _DSM method already so my patch wasn't quite right.

Here's a fixed version; I compiled it this time. Pre-built DSDT.aml's included.

 

Update: newer version in later post.

Link to comment
Share on other sites

Oops, sorry the XVR0 device didn't have a _DSM method already so my patch wasn't quite right.

Here's a fixed version; I compiled it this time. Pre-built DSDT.aml's included.

 

@bcc9

 

Still getting black screen, tried your compiled DSDT and recompiled a new DSDT, no joy.

NVDANV50Hal.kext still registers twice @ boot.

Any ideas???

Link to comment
Share on other sites

Seems like the vendor-id needs to be added to the XVR0.Z01I device as well. Here's a new version with that change. dsdt-coprocessor.v2.zip

I'm not sure I got the Z01I edit right, so if someone would test this under 10.7 and send in ioreg -lw0 output then we'd know whether it's working or not. I do not have the hardware to test this myself.

@bcc9, I also have to use Disabler.kext or dont get to the gui!! 10.6.x 10.7.x and 10.8.x. Is that normal or am I missing somthing????

@piarullir. I get 1 error when I compile. What are you using to compile??

The instructions in post #1 should work just fine with 10.7, so if you followed the instructions you shouldn't have needed some disabler kext.

Likewise with the 10.6 instructions.

Link to comment
Share on other sites

 Share

×
×
  • Create New...