Contribute
Register

Dell XPS 15 (9530) - Intel HD 4600 Graphics on QHD+ built-in display - Need some help

Status
Not open for further replies.
hey darkvoid,

Thanks a lot for the great work! I'm glad that there is a chance now for me to escape from winworld.

I've tried your method, but I'm stuck at the bios-hack. I have followed JRandomHacker's guide to the letter, and I see all the menus in BIOS, but for some reason the 'Intel' menu is completely empty. The only difference I ran into was that his enable tabe looked like '01 01 00 01 01 01 00 00 00 00 00 00', but mine on the other hand looked like '01 01 00 01 01 01 01 01 00 00 00 00' in which case I should have had two 'Main' menus I suppose.. Anyway I am a bit confused, could you lend me a hand here? I figure the DVMT switch should be in the Intel menu, right?
 
The Intel menu is indeed actually empty.
In bios A05, there are 11 menus to enable.

I need to check when I get home, I believe I activated all except the last security and exit menu.
The graphics settings are under chipset and then "system agent", but I will confirm that when I get home in a few hours.
 
It is, my bad, thanks a lot! :)

On my way again, I'll let you know how it goes..
 
2560x1440 should be supported, so you probably won't need all the patching, but will probably need a framebuffer patch to match the IGPU memory amount.

Read the information in this thread and apply it to your situation.

I have got some progress!

When connecting a lower resolution crt via html ->vga, I found there was display showing the password box, while my internal lcd got back. And the HD4400 was finely drived with QE/CI (just config.plist inject ig-platform-id 0x0a260006). Further trial shows that the internal LCD can also display when closing the lid for 3-5 seconds (longer the system will go sleep and cannot wake up again) and reopening it. At this time the resolution is low but displays fine. If I adjust the resolution to fit the lcd, the display becomes flickering. I think this may caused by my low pre-allocated display memory. So I adjusted the resolution to 2048x1152 and the display became normal. Now I can boot the system without external crt. Just a closing lid and reopening trick is necessary.

So I have 2 questions:
1. Why the internal display will goes black on booting and returns after close and reopen lid? How should I fix this problem?

2. The display has some small corruption, exactly at the left-up corner, i.e. the menu bar. The font is not so clear and when you click it to pull down the menu, there are some colorful strip underneath the menu items. Do I need to patch the framebuffer? Could you give me some guides how to do that?

Thanks a lot.
 
I have got some progress!

When connecting a lower resolution crt via html ->vga, I found there was display showing the password box, while my internal lcd got back. And the HD4400 was finely drived with QE/CI (just config.plist inject ig-platform-id 0x0a260006). Further trial shows that the internal LCD can also display when closing the lid for 3-5 seconds (longer the system will go sleep and cannot wake up again) and reopening it. At this time the resolution is low but displays fine. If I adjust the resolution to fit the lcd, the display becomes flickering. I think this may caused by my low pre-allocated display memory. So I adjusted the resolution to 2048x1152 and the display became normal. Now I can boot the system without external crt. Just a closing lid and reopening trick is necessary.

So I have 2 questions:
1. Why the internal display will goes black on booting and returns after close and reopen lid? How should I fix this problem?

You might try implementing backlight control...

Haswell Brightness Fix:

You will need to extract all DSDT/SSDT from Linux. Your GFX0 device is in one of the SSDTs not DSDT and to get a proper disassembly of your DSDT (and the SSDT that has GFX0) you will need all of them. They are available in /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic.

Place all SSDT/DSDT in a single directory and use a recent build of iasl to disassemble:
http://www.tonymacx86.com/attachmen...5-buggy-dsdt-asus-q501la-help-needed-iasl.zip
Code:
cd "to directory where you placed all SSDT/DSDT"
iasl -da *.aml

Then search the resulting *.dsl so you know where GFX0 is defined.

Laptop repo: https://github.com/RehabMan/Laptop-DSDT-Patch
Apply: "Rename GFX0 to IGPU" (to both DSDT and the SSDT that has your GFX0 device)
Apply: "Brightness Fix (Haswell)" to SSDT with GFX0
install: https://github.com/RehabMan/OS-X-ACPI-Backlight

Place patched DSDT.aml in /Extra/dsdt.aml. Place patched SSDT in /Extra/ssdt-1.aml (assuming you have already generated SSDT.aml for CPU)

Result: Working brightness slider in SysPrefs->Displays (mapping of keyboard keys is a separate issue), possible LID sleep, and IGPU power management.

2. The display has some small corruption, exactly at the left-up corner, i.e. the menu bar. The font is not so clear and when you click it to pull down the menu, there are some colorful strip underneath the menu items. Do I need to patch the framebuffer? Could you give me some guides how to do that?

Probably needs framebuffer patch. But try:
- slide=0
- setting color profile
- rollback graphics kexts (to 10.9.1 or 10.9.2)
 
You might try implementing backlight control...

Haswell Brightness Fix:


Result: Working brightness slider in SysPrefs->Displays (mapping of keyboard keys is a separate issue), possible LID sleep, and IGPU power management.

I have done that. I tried to use the patch before. But there is no operationalregion declaim in my dsdt. So I cannot do it correctly. Thank you for reminding me that I need to patch ssdt.

Now I can adjust brightness in sysperf. Nevertheless, it doesn't help solving the black screen problem.



Probably needs framebuffer patch. But try:
- slide=0
- setting color profile
- rollback graphics kexts (to 10.9.1 or 10.9.2)

I tried all what your said. They don't help. When rolling back graphic kexts 10.9.2. Situation getting worse. Before that my external display will go black for around 1 second from time to time. But now the frequency is much higher to a intolerable degree. I think a framebuffer patch is a must. Could you give me some hints?
 
I have done that. I tried to use the patch before. But there is no operationalregion declaim in my dsdt. So I cannot do it correctly. Thank you for reminding me that I need to patch ssdt.

Now I can adjust brightness in sysperf. Nevertheless, it doesn't help solving the black screen problem.

Post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html

What are you talking about as far as 'operationregion declaim'?

I tried all what your said. They don't help. When rolling back graphic kexts 10.9.2. Situation getting worse. Before that my external display will go black for around 1 second from time to time. But now the frequency is much higher to a intolerable degree. I think a framebuffer patch is a must. Could you give me some hints?

Read this thread. Do the research.
 
Post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html

What are you talking about as far as 'operationregion declaim'?

ioreg: View attachment Elf’s MacBook Pro.ioreg

One more thing. Are my usbs all built in? When I close the lid to let the system go to sleep, there will be beeps, 4 beeps in 1 group, totally 4 groups, i.e. 16 beeps. And my system cannot wakeup. I'm not sure what's the reason. Doubting usb built in problem.


Read this thread. Do the research.[/QUOTE]
OK. I will do that and report progress.
 
ioreg: View attachment 99928

One more thing. Are my usbs all built in? When I close the lid to let the system go to sleep, there will be beeps, 4 beeps in 1 group, totally 4 groups, i.e. 16 beeps. And my system cannot wakeup. I'm not sure what's the reason. Doubting usb built in problem.

What happens on wake up?

But... you might try GenericUSBXHCI.kext with -gux_defer_usb2.


You said:
Me said:
Read this thread. Do the research.
OK. I will do that and report progress.

It will probably take a while for you to get a handle on all the issues involved here...
 
Status
Not open for further replies.
Back
Top