Contribute
Register

HP ZBOOK G5 17

Great news, found both Mux control methods and now we can switch them at will. Still running some sleep/wake tests but the results seem incredible.

For anyone with these machines and an unsupported DGPU (Nvidia) we can now use external displays!!
(As I don't have an Nvidia card anymore I'll need a volunteer to test turning off the DGPU after the mux switch to save power)

Screen Shot 2021-10-08 at 7.13.06 PM.png


For anyone like me with a supported DGPU, we can now switch the LCD to use the MXM card, so we get full acceleration, DRM, etc... and Intel QuickSync on the side to boot!
(Still debugging wake from sleep though...)

Screen Shot 2021-10-09 at 3.35.14 PM.png


If HP mux control addresses are consistent across different laptops, this could open up the possibility of enabling external displays in other unsupported GPU muxed laptops.
 
Ok we now have a 100% working Hybrid with WX-4170 on all display outputs (including LCD) and IGPU with connector-less framebuffer. Sleep/wake issues have been solved and the system works all the way up to Monterey with improved Benchmarks, DRM, load sharing for Video encoding/decoding, etc...

I also believe I found the acpi bug in my Bios that is crashing my system when I try to power off my DGPU. I will test next.
If this works, then we switch external Mux to IGPU and turn off DGPU and we have a long battery mode laptop.

My plan is to have 2 config files at boot. Power Mode and Battery Mode

In the future I'll try to make a driver to make these switches on demand and not at boot time.
 
Here's the SSDT I've been working on, It needs a couple of things to work.

You need to be in Hybrid mode or the Mux chip doesn't initialize.
You need to edit your config and add the new SSDT and 2 acpi renames.
Screen Shot 2021-10-09 at 8.40.19 PM.png


Then If you're using a WX card like me, it needs to be flashed with the ROM I posted in Page3 of this thread, and change your device properties to these:

Screen Shot 2021-10-09 at 8.40.41 PM.png


Basically a connector-less framebuffer IGPU, and the correct connectors and LCD backlight data for the WX card.

Finally, you can edit the Mux test SSDT to adjust the Muxes as needed.

-XGPU defines LCD source
-IGPX defines External source
-XOFF turns off DGPU

Screen Shot 2021-10-09 at 8.43.48 PM.png



As I've posted before, in my WX-4170 laptop, method OFF crashes the system, and I believe a Bios bug may be present, but I hope this is not the case with Nvidia cards.
The Mux control and DGPU power off has been verified to work on a G3 Zbook (at least the external connectors) and I also have a Zbook G7 Fury version that I also need to test and need volunteers.

-EDIT

I seem to have found a big glitch. This method works in my system because the WX card initializes the outputs, but if I use the bootflag -wegnoegpu to simulate a non working DGPU, the outputs remain unseen by osx.
I'll have to keep debugging this IGPU only out config.
 

Attachments

  • SSDT-Mux-Test.aml 2.zip
    1.2 KB · Views: 68
  • SSDT-Mux-G7.aml.zip
    999 bytes · Views: 73
Last edited:
Here's the SSDT I've been working on, It needs a couple of things to work.

You need to be in Hybrid mode or the Mux chip doesn't initialize.
You need to edit your config and add the new SSDT and 2 acpi renames.
View attachment 530532

Then If you're using a WX card like me, it needs to be flashed with the ROM I posted in Page3 of this thread, and change your device properties to these:

View attachment 530533

Basically a connector-less framebuffer IGPU, and the correct connectors and LCD backlight data for the WX card.

Finally, you can edit the Mux test SSDT to adjust the Muxes as needed.

-XGPU defines LCD source
-IGPX defines External source
-XOFF turns off DGPU

View attachment 530534


As I've posted before, in my WX-4170 laptop, method OFF crashes the system, and I believe a Bios bug may be present, but I hope this is not the case with Nvidia cards.
The Mux control and DGPU power off has been verified to work on a G3 Zbook (at least the external connectors) and I also have a Zbook G7 Fury version that I also need to test and need volunteers.
This makes people feel excited, and finally it is possible to connect an external monitor normally without removing the mxm graphics card. But I don’t understand this very well. I use the ones made by others for me. I am willing to be a volunteer, but I will not modify or add. Can you modify it directly on my EFI boot? Let me test. The corresponding function.
 
Great news, found both Mux control methods and now we can switch them at will. Still running some sleep/wake tests but the results seem incredible.

For anyone with these machines and an unsupported DGPU (Nvidia) we can now use external displays!!
(As I don't have an Nvidia card anymore I'll need a volunteer to test turning off the DGPU after the mux switch to save power)

View attachment 530522

For anyone like me with a supported DGPU, we can now switch the LCD to use the MXM card, so we get full acceleration, DRM, etc... and Intel QuickSync on the side to boot!
(Still debugging wake from sleep though...)

View attachment 530523

If HP mux control addresses are consistent across different laptops, this could open up the possibility of enabling external displays in other unsupported GPU muxed laptops.
When I restarted from windows to enter macos just now, because my windows is an external monitor that is used directly, and the monitor is in the closed state, when I restarted, I chose my mac os directly, even without using your ssdt , Entered the system. This is simply an accident. I don't know if the notebook judges that there is only one monitor and then sends the signal to the external monitor, but this is an improvement. Explain that your judgment is correct.
 

Attachments

  • dp.png
    dp.png
    323.1 KB · Views: 72
  • config.plist
    44.8 KB · Views: 58
Last edited:
When I restarted from windows to enter macos just now, because my windows is an external monitor that is used directly, and the monitor is in the closed state, when I restarted, I chose my mac os directly, even without using your ssdt , Entered the system. This is simply an accident. I don't know if the notebook judges that there is only one monitor and then sends the signal to the external monitor, but this is an improvement. Explain that your judgment is correct.
Yes this is a known "feature" that I posted somewhere in this thread. If the lid is closed when the system starts and an external display is attached, the IGPU will be routed to this display. but the catch is that even if you open the lid, the LCD will not be recognized and you can only have 1 external display.
 
I just thought of a way to modify config.plist, but it didn't seem to be successful. The external monitor is still not possible. You can take a look at the config.plist I configured. Do you have time to take a look at my EfI guide and modify it for me? I don't understand. Before this, my EFI was modified by someone to help me. If possible, lead to your latest OC7.1 or 6.9 by the way, thank you very much.
 

Attachments

  • EFI.zip
    63.9 MB · Views: 85
@jonto any chance you can make an acpi dump with the MXM card off?
You would need to save the DSDT and all SSDT's, with Clover or with MaciASL.
I need a clean dump of a G5 17" without any MXM card installed for comparison.

Thank you!
 
Back
Top