Jump to content

HDMI issue [laptop screen turns black + freeze + HDMI shows nothing]


14 posts in this topic

Recommended Posts

Hello. 
I've been trying to Hackintosh my laptop & so far it's great, except for one issue, HDMI. My HDMI won't work whatsoever. It's crucial to me as I always need it when using my monitor. I've tried several things but sadly nothing worked.

A few days ago, a friend of mine sent me his Clover EFI **ONLY To test HDMI PORT**. Amazingly, HDMI worked! Now I know it's not an issue with my iGPU. The problem is that I do not want to use Clover. I've tried comparing his EFI to my EFI but there doesn't look like there is anything that fixes it. 

Here is a screenshot of IOREG framebuffer@1 from both his EFI and my EFI
Screen_Shot_2021-05-11_at_5.07.36_PM.png           Screen_Shot_2021-05-11_at_3.34.11_PM.png 
                                                                                                Clover                                                                                                                                                                                                       Opencore


There doesn't seem to be anything significantly different. Unless I don't understand. I've uploaded his EFI + my EFI. If any files are needed, I can upload them here as soon as I can.

 

PS: Extra INFO
Computer Specs:
**HP 15-r130nx**
Intel Core i5-4210U
12 GB Ram (DDR3 - 1600 Mhz)
1 TB Sandisk SSD + 500 GB Sandisk SSD
Intel HD Graphics HD 4400 + Nvidia Geforce 820M (disabled)
Realtek Wireless (incompatible) 
Realtek 8100 10/100 Ethernet (working)

**OC kexts [ALL latest versions]:**
AppleALC
BrighnessKeys
ECEnabler
Lilu
RealtekRTL8100
SMCBatteryManager
SMCProcessor
SMCSuperIO
USBInjectAll
VoodooPS2Controller
WhateverGreen

**my Friend's Clover kexts:**
AppleALC
ECEnabler
FakePCIID
FakePCIID_Intel_HD_Graphics
FakeSMC
FakeSMC_CPUSensors
FakeSMC_GPUSensors
FakeSMC_LPCSensors
FakeSMC_SMMSensors
Lilu
RealtekRTL8100
USBInjectAll
VoodooPS2Controller

**EFI Downloads:**
My Opencore EFI folder
Friends Clover EFI [Working HDMI]
 

 

Thanks In Advance.

I did not remove the S/N, because I will change them once I'm done/before setting up iMessage

It's quite simple: although your friend's config is a little confusing and contains many inconsistencies, it ends up applying the correct Azul framebuffer patch for Haswell HD4x00 HDMI output:

Clover_patches.jpg

 

Your OC config is also a little confusing and has a few inconsistencies but does not apply the correct patch that's necessary for HDMI output:

OC_iGPU_properties.jpg

 

What you need is to inject the following properties to your iGPU @2:

AAPL,ig-platform-id         0600260A                    DATA                              -> sets Azul FB to mobile layout #12
device-id                   12040000                    DATA                                 -> sets iGPU id to desktop HD4600
framebuffer-patch-enable    1                           NUMBER (or 01000000 DATA)           -> enables patching of the Azul FB
framebuffer-cursormem       00009000                    DATA                            -> sets Azul FB Cursor Mem Size to 9MB
framebuffer-con1-enable     1                           NUMBER (or 01000000 DATA)    -> enables patching of con1 (HDMI output)
framebuffer-con1-alldata    010512000008000087000000    DATA          -> sets con1 Pipe to 0x12 and con1 Type to HDMI 00080000

or:

AAPL,ig-platform-id         0600260A    DATA
device-id                   12040000    DATA
framebuffer-patch-enable    1           NUMBER
framebuffer-cursormem       00009000    DATA
framebuffer-con1-enable     1           NUMBER
framebuffer-con1-pipe       12000000    DATA
framebuffer-con1-type       00080000    DATA

 

On Haswell laptops (and many others), HDMI output/port is almost universally/always attached to then 2nd connector/port (i.e. con1), 1st connector/port (i.e. con0) being the built-in LCD (LVDS/eDP) and 3rd connector/port (i.e. con2) being usually/often associated with DP/DVI output/port, whether directly off the laptop or off a docking station of some kind.

 

With Haswell HD4x00 graphics, 2 x patches of the HDMI port/connector are necessary:

  1. set Pipe to 0x12 to avoid system freeze/hanging or other black screen on connecting/disconnecting the HDMI cable
  2. set Type to HDMI type 0x00000800 to support HDMI audio

 

Azul framebuffer #12 0x0a260006 for mobiles is defined as follows:

ID: 0A260006, STOLEN: 32 MB, FBMEM: 19 MB, VRAM: 1536 MB, Flags: 0x0000000F
TOTAL STOLEN: 52 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 116 MB, MAX OVERALL: 117 MB (123219968 bytes)
Camellia: CamelliaDisabled (0), Freq: 2777 Hz, FreqMax: 2777 Hz
Mobile: 1, PipeCount: 3, PortCount: 3, FBMemoryCount: 3
[0] busId: 0x00, pipe: 8, type: 0x00000002, flags: 0x00000030 - ConnectorLVDS
[1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x00000087 - ConnectorDP
[2] busId: 0x04, pipe: 9, type: 0x00000400, flags: 0x00000087 - ConnectorDP
00000800 02000000 30000000
01050900 00040000 87000000
02040900 00040000 87000000

You will find more details on Intel framebuffer patching in the WEG user manual.

 

Alongside the above iGPU properties injection, all you'll need are Lilu + WhatEverGreen kexts and MBA6,2 or MBP11,1 SMBIOS. I don't know what this ECEnabler kext of yours is but I suspect you probably don't need it (you inject SSDT-EC table which should be sufficient to me).

 

Last notable item to note: your laptop is fitted with HD4400 graphics so, if it has a VGA port, you should probably find it works OOB too.

  • Like 1
  • Thanks 1
4 minutes ago, Baio77 said:

Test this EFI  , if you start mail ioreg

EFI.zip 4.12 MB · 0 downloads

Okay, I will test it and reply to you.

4 minutes ago, Allan said:

okay.
regarding kexts, I know they are. thats why I wanted to get my own OC to work.

 

5 minutes ago, Hervé said:

It's quite simple: although your friend's config is a little confusing and contains many inconsistencies, it ends up applying the correct Azul framebuffer patch for Haswell HD4x00 HDMI output:

Clover_patches.jpg

 

Your OC config is also a little confusing and has a few inconsistencies but does not apply the correct patch that's necessary for HDMI output:

OC_iGPU_properties.jpg

 

What you need is to inject the following properties to your iGPU @2:


AAPL,ig-platform-id         0600260A                    DATA                              -> sets Azul FB to mobile layout #12
device-id                   12040000                    DATA                                 -> sets iGPU id to desktop HD4600
framebuffer-patch-enable    1                           NUMBER (or 01000000 DATA)           -> enables patching of the Azul FB
framebuffer-cursormem       00009000                    DATA                            -> sets Azul FB Cursor Mem Size to 9MB
framebuffer-con1-enable     1                           NUMBER (or 01000000 DATA)    -> enables patching of con1 (HDMI output)
framebuffer-con1-alldata    010512000008000087000000    DATA          -> sets con1 Pipe to 0x12 and con1 Type to HDMI 00080000

HDMI output is almost universally/always attached to connector #1 (i.e. con1). With Haswell HD4x00 graphics, 2 x patches of the connector are necessary:

  1. set Pipe parameter to 0x12 to avoid system freeze/hanging on connecting the HDMI cable
  2. set Type parameter to HDMI type 0x00000800 to support HDMI audio

You will find more details on Intel framebuffer patching in the WEG user manual.

ohhhhhh.
I will apply the following properties and reply to you now.

  • Thanks 1
15 minutes ago, Hervé said:

It's quite simple: although your friend's config is a little confusing and contains many inconsistencies, it ends up applying the correct Azul framebuffer patch for Haswell HD4x00 HDMI output:

Clover_patches.jpg

 

Your OC config is also a little confusing and has a few inconsistencies but does not apply the correct patch that's necessary for HDMI output:

OC_iGPU_properties.jpg

 

What you need is to inject the following properties to your iGPU @2:


AAPL,ig-platform-id         0600260A                    DATA                              -> sets Azul FB to mobile layout #12
device-id                   12040000                    DATA                                 -> sets iGPU id to desktop HD4600
framebuffer-patch-enable    1                           NUMBER (or 01000000 DATA)           -> enables patching of the Azul FB
framebuffer-cursormem       00009000                    DATA                            -> sets Azul FB Cursor Mem Size to 9MB
framebuffer-con1-enable     1                           NUMBER (or 01000000 DATA)    -> enables patching of con1 (HDMI output)
framebuffer-con1-alldata    010512000008000087000000    DATA          -> sets con1 Pipe to 0x12 and con1 Type to HDMI 00080000

HDMI output is almost universally/always attached to connector #1 (i.e. con1). With Haswell HD4x00 graphics, 2 x patches of the connector are necessary:

  1. set Pipe parameter to 0x12 to avoid system freeze/hanging on connecting the HDMI cable
  2. set Type parameter to HDMI type 0x00000800 to support HDMI audio

You will find more details on Intel framebuffer patching in the WEG user manual.

OMG its finally working.

after trying to get it to work for like 3 months. I'm so happy right now. Thank You so much.

BTW: I can disable con2, right? because I only have one HDMI port and nothing else.

11 hours ago, Baio77 said:

Test this EFI  , if you start mail ioreg

EFI.zip 4.12 MB · 1 download

thank you Baio77 for helping. I got the problem finally fixed thanks to @Hervé

9 hours ago, Hervé said:

Correct, no need to patch con2. Keep it vanilla (and not disabled).

okay. what do you mean by vanilla and not disabled?
I did not do anything for the con2 in DeviceProperties.

 

 

Hassan

 

  • Thanks 1

Vanilla means original, unmodified, fully native.

 

If you did not apply anything to con2, then it is vanilla. It's also therefore enabled because, as shown above, Azul (=Haswell graphics) framebuffer 0x0A260006 caters for 3 x display output ports:

con0 (1st port) = LVDS/eDP for built-in screen
con1 (2nd port) = DP
con2 (3rd port) = DP

 

To disable con2, you'd basically have to suppress that connector which would also mean changing the framebuffer pipe count, port count and memory count to 2. No need to do any of that unless there were good specific reasons such as long delays in activating some display outputs.

  • Like 1
Posted (edited)
On 5/12/2021 at 11:22 AM, Hervé said:

Vanilla means original, unmodified, fully native.

 

If you did not apply anything to con2, then it is vanilla. It's also therefore enabled because, as shown above, Azul (=Haswell graphics) framebuffer 0x0A260006 caters for 3 x display output ports:



con0 (1st port) = LVDS/eDP for built-in screen
con1 (2nd port) = DP
con2 (3rd port) = DP

 

To disable con2, you'd basically have to suppress that connector which would also mean changing the framebuffer pipe count, port count and memory count to 2. No need to do any of that unless there were good specific reasons such as long delays in activating some display outputs.

Hi,

I have a problem I have this lag for the first about 15 to 20 seconds at startup, before logging in.

 

Also, I have a problem where my MAC address keeps changing at every restart. ROM is the same IIRC. 

How can I fix both of these?

 

Thanks!

Edited by HassanElDessouki
Posted (edited)

PS: I use the Realtek 8100 kext. I'm thinking it could be something wrong with that? I don't know how to find where the problem is coming from.

So after doing some Search, I'm guessing its something with the WiFi card? Even though my WIFI card is not supported in macOS?

BTW: My sleep doesn't work, it starts going to sleep, sleeps for about 1 to 2 seconds then wakes up. Solution?


Thanks once again,

Hassan

Edited by HassanElDessouki

This if all off-topic. You may create another thread for your other issues for the benefits of everyone.

  • 2 months later...
On 5/14/2021 at 12:03 AM, HassanElDessouki said:

Okay

Im creating one.

Ive created one in the new users lounge. Please check it.

Thanks 

Hello, my HDMI doesn't work. I want your EFI. My hd4600 laptop

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...