Jump to content
Hervé

Enabling DVI/DP/HDMI and increasing VRAM with Intel Haswell/4th gen HD4200/4400/4600/etc. iGPU

Recommended Posts

Hi Hervé, If my understanding is correct, I can do a clover hotpatch to replace 0060 D90A 0000 D90A with 0080 D90A 0000 D90A on the framebufferazul?

Share this post


Link to post
Share on other sites

This should work but I do not consider it to be the best way to patch for VRAM increase. It's far better to target your specific layout. I thought this was clear. Your suggested "hotpatch" does not do that.

 

If, as per my example, you want to patch layout 0x0a260006, I recommend you apply the following Clover on-the-fly patch:

            ********......................................\/
Find:       0600260A0103030300000002000030010000600000000060
Replace by: 0600260A0103030300000002000030010000600000000080
            ********....................................../\

where:

******** indicate the layout to patch (4bytes in reverse order)
........ indicate the code to leave unchanged
\/ & /\  indicate the byte to modify (the identified VRAM allocation byte)

`

What's important is that you only modify the target code and not some eventual other identical code in the binary file at the same time (because the on-the-fly patch will patch all instances found -and, as it happens, there are several instances of your above code-. If you use the manner I explain above, you ensure the target code is unique, simply because each layout is uniquely defined in the kext. This is a general rule that applies to any binary patch.

 

As another general rule, always check the code of your current vanilla kext. Why? Because you should never assume that the binary code of a  given version remains identical in another. The binary patches applicable to IOGraphicsFamily (to fix 2nd stage boot glitches) or AppleRTC are perfect examples of this rule.

 

If you need/wish to target a different Azul layout, then adjust the patch accordingly with the correct target layout code. Do you understand?

 

Then, the kext to patch is AppleIntelFramebufferAzul, not framebufferazul.

  • Like 1

Share this post


Link to post
Share on other sites

This is noted Hervé, I am just finding where my layout id exist. Will report back if I have successfully implemented the patch.

Share this post


Link to post
Share on other sites

Herve thanks for the post and this discussion is above my pay grade, however, I am willing to learn and try. Can you please guide a little more what I should be looking on my Vanilla AZUL using application such as Hex Fiend? Thank you for your patience. Appreciate that very much. 

 

I have a E7440 (detail in signatures) and when I hook it up to docking station It does not boot. I was wondering if I can use DVI connection. E6430 running Sierra is working perfectly on docking.

 

In the IOREG of E7440 (HDMI patched via clover) I see following connectors:

 

@0 02 00 00 00 

@1 00 08 00 00

@2 00 04 00 00

 

I have also attached my vanilla AZUL. 

 

Thanks

AppleIntelFramebufferAzul.kext.zip

Share this post


Link to post
Share on other sites

As stated in post #4, do not expect DVI to work any more as 2nd screen, only as main/sole output. But you may experiment with the patch on your own platform of course.

Share this post


Link to post
Share on other sites

Hi Herve now this patch for port 7 HDMI works great for me Thanks a lot. on all up until High Sierra so am using Sierra AppleIntelFramebufferAzul.kext On High Sierra so would it be a different patch on High Sierra been trying to figure it out for quite some time with no luck.Thanks for any help. Dave

Share this post


Link to post
Share on other sites

Apple may have modified the code of the Azul FB in High Sierra. Just follow the method explained in post #1 and look up the layout-id that you're using. Then simply patch the appropriate line.

Share this post


Link to post
Share on other sites

no the vanilla table is there once so I did the patch even tried using 0306 0900 instead of 0306 1200 but no luck.could you have a look for me just incase I'm missing something.Thanks for any help....

vanilla.zip

Share this post


Link to post
Share on other sites

HDMI connector 0008 obviously has to be injected too. But if you run High Sierra with Trim enabled on APFS, I've read it causes issues with HDMI. I'm still running on HFS+ and have no issues.

https://osxlatitude.com/index.php?/topic/10089-no-hdmi-output-for-alienware-m17x-r4-in-high-sierra/&do=findComment&comment=73465

 

SMBIOS profile also plays an important part. On the E7440, you should be using MBP11,1.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×