Jump to content
wusa

Intel HD 4600 QE/CI Yosemite

485 posts in this topic

Recommended Posts

Advertisement

Hello guys, first of all I want to say a big THANKS to all of you devs and hackers who are making our lives so much better every day ! Too many names come to mind Netkas, RehabMan, Toleda... And anyone actively searching for solutions to get mac running on pc ... You guys are INSANELY GREAT  :)

 

I have a new build running almost perfectly:

  • i7 4790k on GA-z97x-UD3H with latest bios F8
  • Using integrated HD 4600
  • Connected to HDMI to Asus VX239W
  • SMBios is iMac 15,1
Framebuffer looks like Azul native and QE/CI appear to be working fine, no flickering, chess game ok etc.. all good, just a very annoying of 10 sec of FUZZY analog signal before login screen...  :no:

 

It has not changed from the very beginning of my install, same with Clover, Chameleon, DSDT-free or even patched DSDT.

 

Now I'm not using any injectors just a more or less clean DSDT, and am injecting directly this:

Device (GFX0)
                {
                    Name (_ADR, 0x00020000)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)
                    {
                        If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }
                        Return (Package()
                        {
                            "AAPL,ig-platform-id", Buffer() { 0x03, 0x00, 0x22, 0x0D },
                            "hda-gfx", Buffer() { "onboard-1" },
                            "device-id", Buffer() { 0x12, 0x04, 0x00, 0x00 },
                        })
                    }
                }
 

On the boot log, I can see something interesting, it's trying to match the display or something... Please take a look:

 

31/05/15 12:01:34,205 WindowServer[135]: Found 21 modes for display 0x00000000 [21, 0]
31/05/15 12:01:34,207 WindowServer[135]: Found 1 modes for display 0x00000000 [1, 0]
31/05/15 12:01:34,209 WindowServer[135]: Found 1 modes for display 0x00000000 [1, 0]
31/05/15 12:01:34,209 WindowServer[135]: mux_initialize: Couldn't find any matches
31/05/15 12:01:34,212 WindowServer[135]: Found 21 modes for display 0x00000000 [21, 0]
31/05/15 12:01:34,219 WindowServer[135]: Found 1 modes for display 0x00000000 [1, 0]
31/05/15 12:01:34,220 WindowServer[135]: Found 1 modes for display 0x00000000 [1, 0]
31/05/15 12:01:34,283 WindowServer[135]: WSMachineUsesNewStyleMirroring: true
31/05/15 12:01:34,316 WindowServer[135]: Display 0x1a48a060: GL mask 0x1; bounds (0, 0)[1920 x 1080], 21 modes available
Main, Active, on-line, enabled, boot, Vendor 469, Model 23e1, S/N 5821, Unit 0, Rotation 0
UUID 0xed66da45394f2facad90d3e148bb16b9
31/05/15 12:01:34,316 WindowServer[135]: Display 0x003f003f: GL mask 0x8; bounds (0, 0)[4096 x 2160], 2 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 3, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,316 WindowServer[135]: Display 0x003f003e: GL mask 0x4; bounds (0, 0)[0 x 0], 1 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 2, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,316 WindowServer[135]: Display 0x003f003d: GL mask 0x2; bounds (0, 0)[0 x 0], 1 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 1, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,322 WindowServer[135]: Set a breakpoint at CGSLogError to catch errors as they are logged.
31/05/15 12:01:34,322 WindowServer[135]: WSSetWindowTransform: Singular matrix
31/05/15 12:01:34,322 WindowServer[135]: WSSetWindowTransform: Singular matrix
31/05/15 12:01:34,324 WindowServer[135]: Display 0x1a48a060: GL mask 0x1; bounds (0, 0)[1920 x 1080], 21 modes available
Main, Active, on-line, enabled, boot, Vendor 469, Model 23e1, S/N 5821, Unit 0, Rotation 0
UUID 0xed66da45394f2facad90d3e148bb16b9
31/05/15 12:01:34,324 WindowServer[135]: Display 0x003f003f: GL mask 0x8; bounds (2944, 0)[1 x 1], 2 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 3, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,324 WindowServer[135]: Display 0x003f003e: GL mask 0x4; bounds (2945, 0)[1 x 1], 1 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 2, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,324 WindowServer[135]: Display 0x003f003d: GL mask 0x2; bounds (2946, 0)[1 x 1], 1 modes available
off-line, enabled, Vendor ffffffff, Model ffffffff, S/N ffffffff, Unit 1, Rotation 0
UUID 0xffffffffffffffffffffffffffffffff
31/05/15 12:01:34,324 WindowServer[135]: CGXPerformInitialDisplayConfiguration
31/05/15 12:01:34,324 WindowServer[135]:   Display 0x1a48a060: Unit 0; Vendor 0x469 Model 0x23e1 S/N 22561 Dimensions 20.04 x 11.26; online enabled, Bounds (0,0)[1920 x 1080], Rotation 0, Resolution 1
31/05/15 12:01:34,324 WindowServer[135]:   Display 0x003f003f: Unit 3; Vendor 0xffffffff Model 0xffffffff S/N -1 Dimensions 0.00 x 0.00; offline enabled, Bounds (2944,0)[1 x 1], Rotation 0, Resolution 1
31/05/15 12:01:34,324 WindowServer[135]:   Display 0x003f003e: Unit 2; Vendor 0xffffffff Model 0xffffffff S/N -1 Dimensions 0.00 x 0.00; offline enabled, Bounds (2945,0)[1 x 1], Rotation 0, Resolution 1
31/05/15 12:01:34,324 WindowServer[135]:   Display 0x003f003d: Unit 1; Vendor 0xffffffff Model 0xffffffff S/N -1 Dimensions 0.00 x 0.00; offline enabled, Bounds (2946,0)[1 x 1], Rotation 0, Resolution 1

Could suggest a fix for this ?

 

Attached is my patched DSDT.dsl, original DSDT.aml, and IO Registry output from IOJones... If you need anything else, don't hesitate !!!

Files.zip

post-261614-0-50915400-1433099655_thumb.jpg

Share this post


Link to post
Share on other sites

Framebuffer has 3 DP ports. Motherboard HDMI connector is using a framebuffer DP connector. Consider an edit to the framebuffer. See graphics_Intel_framebuffers, try azul-a patch.

Toleda, azul-b patch worked like a charm... azul-a didn't make the trick, so I installed origin framebuffer kext and retried again with azul-b, that did the trick. Also I'm using your RealtekALC patch for my onboard ALC1150, after patching with azul-b, audio HDMI automagically appeared and working well.

 

When I look into iojones, now I have HDMI DP HDMI. I'm connected to port-number 0x5.

 

So 2 problems solved, no more 10 sec fuzzy screen and HDMI audio fully working ! Thanks man...

One question, my graphic card appears as "Intel Iris Pro 1536 MB", even before the patch, that's not a problem right (allocated memory etc), the VRAM seems more then the normal 1024 MB for an HD 4600 no ?

Share this post


Link to post
Share on other sites

TOne question, my graphic card appears as "Intel Iris Pro 1536 MB", even before the patch, that's not a problem right (allocated memory etc), the VRAM seems more then the normal 1024 MB for an HD 4600 no ?

A labeling problem caused by the ig-platform-id injection, should be Intel HD4600 Graphics 1536 MB. 1024 MB is normal for HD3000/HD4000 with 8 GB or more of memory.

Share this post


Link to post
Share on other sites

Ok perfect, so if I understand you correctly, because I have more then 8 GB of RAM (I have 16), the system allocates 1536 MB of VRAM instead of 1024. For the ig-platform-id, I inject it in DSDT.. Here's my code, I stayed with GFX0, if I renaming it to IGPU in any way possible, but I get a kernel panic every time : / ... I have power management, thanks to your post, and it seems to work well, even for GFX0 so I guess it's good for now.. 

                Device (GFX0)
                {
                    Name (_ADR, 0x00020000)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        If (LEqual (Arg2, Zero))
                        {
                            Return (Buffer (One)
                            {
                                 0x03
                            })
                        }

                        Return (Package (0x04)
                        {
                            "AAPL,ig-platform-id", 
                            Buffer (0x04)
                            {
                                 0x03, 0x00, 0x22, 0x0D
                            }, 

                            "hda-gfx", 
                            Buffer (0x0A)
                            {
                                "onboard-1"
                            }
                        })
                    }
                }

Share this post


Link to post
Share on other sites

 

 I have power management, thanks to your post, and it seems to work well, even for GFX0 so I guess it's good for now.. 

IOReg shows no GPU power management.  For native GPU PM, use IGPU or edit AppleGraphicsPowerManagement.kext.  For IGPU dsdt edits, see Post #/HD4600/9 Series in Yosemite AppleHDA HDMI Audio

 

IOReg also shows no Haswell CPU PM.

Share this post


Link to post
Share on other sites

IOReg shows no GPU power management.  For native GPU PM, use IGPU or edit AppleGraphicsPowerManagement.kext.  For IGPU dsdt edits, see Post #/HD4600/9 Series in Yosemite AppleHDA HDMI Audio

 

IOReg also shows no Haswell CPU PM.

 

 

Hey man, I installed pm after making the first post.. here's my present ioreg with pm on both... I'll try again to rename GFX0 to IGPU.. Thanks !

iMac 5K.iojones.zip

Share this post


Link to post
Share on other sites

I am new to clover and have been mildly successful i think.

 

Z97X UD5H, i7 4790K **Stock speed** 32GB 1600 DDR3 No DSDT or SSDT ALC1150 edits work great!!

 

When I try to inject the values to get QE/CI enabled it fixes the second stage boot garble and snow but I end up with 5MB graphics memory and no acceleration. 

 

<key>Graphics</key>

<dict>
<key>DualLink</key>
<integer>1</integer>
<key>Inject</key>
<dict>
<key>ATI</key>
<false/>
<key>Intel</key>
<true/>
<key>NVidia</key>
<false/>
</dict>
<key>InjectEDID</key>
<true/>
<key>NVCAP</key>
<string>0000000000000000000000000000000000000000</string>
<key>NvidiaSingle</key>
<false/>
<key>VRAM</key>
<integer>0</integer>
<key>VideoPorts</key>
<integer>0</integer>
<key>display-cfg</key>
<string>0000000000000000</string>
<key>ig-platform-id</key>
<string>0x0300220D</string>
</dict>
 
Not sure how to do this?
My FakeID is 0x0412 (Desktop HD4600)
 
No idea what to do and easily confused by all the info out there. Any pointers in the right direction would be appreciated.

Share this post


Link to post
Share on other sites

Try these if somebody has time  :rofl: Got these using this http://pikeralpha.wordpress.com/2014/08/30/appleintelframebufferazul-sh-v2-5-released/ on Yosemite beta 2

 

[ 1 ] : 0x0c060000 - Haswell SDV Mobile GT1 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 2 ] : 0x0c160000 - Haswell SDV Mobile GT2 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 3 ] : 0x0c260000 - Haswell SDV Mobile GT3 port 0 LVDS, port 5 eDP, port 6 HDMI, 

[ 4 ] : 0x04060000 - Haswell Mobile GT1 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 5 ] : 0x04160000 - Haswell Mobile GT2 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 6 ] : 0x04260000 - Haswell Mobile GT3 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 7 ] : 0x0d260000 - Haswell CRW Mobile GT3 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 8 ] : 0x0a160000 - Haswell ULT Mobile GT2 port 0 LVDS, port 5 eDP, port 6 HDMI,

[ 9 ] : 0x0a260000 - Haswell ULT Mobile GT3 port 0 LVDS, port 5 eDP, port 6 HDMI,

[10] : 0x0a260005 - Haswell ULT Mobile GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[11] : 0x0a260006 - Haswell ULT Mobile GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[12] : 0x0a2e0008 - Haswell ULT E GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[13] : 0x0a16000c - Haswell ULT Mobile GT2 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[14] : 0x0d260007 - Haswell CRW Mobile GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort, HDMI

[15] : 0x0d220003 - Haswell CRW GT3 port 5 DisplayPort, port 6 DisplayPort, port 7 DisplayPort

[16] : 0x0a2e000a - Haswell ULT E GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[17] : 0x0a26000a - Haswell ULT Mobile GT3 port 0 LVDS, port 5 DisplayPort, port 6 DisplayPort,

[18] : 0x0a2e000d - Haswell ULT E GT3 port 5 DisplayPort, port 6 DisplayPort, port VGA, 

[19] : 0x0a26000d - Haswell ULT Mobile GT3 port 5 DisplayPort, port 6 DisplayPort, port VGA,

[20] : 0x04120004 - Haswell GT2 port VGA, VGA, VGA

[21] : 0x0412000b - Haswell GT2 port VGA, VGA, VGA

[22] : 0x0d260009 - Haswell CRW Mobile GT3 port 0 LVDS, VGA, VGA, 

 

Hi guys, perhaps you can help with my issue on my MSI Z97i-AC board with i7-4790K processor (HD Graphics 4600 card in BIOS set to 64MB memory, otherwise boot crashes). Latest BIOS for this board used v4.10.

 

My motherboard has HDMI, DVI and DisplayPorts, but for my Dell U2713HM monitor (2560x1440px) to display full native resolution, only DisplayPort can be used as MSI restricted (?) HDMI and DVI to maximum 1920x1200px.

 

The monitor was originally connected via Dual-Link DVI-D cable (by Dell) on an older Nvidia card (GT 9500, I think) and used full native 2560x1440 @ 60Hz resolution without sweat.

 

My new MSI hackintosh can only use the monitor via DP so I purchased a DisplayPort v1.2 cable, hooked it up on Yosemite 10.10.5 using latest Clover, and I can eventually access the desktop OK. The issues, however are:

  • During boot, the switch from apple logo to moving bar has some splitting effect the screen (shredding they call it, I think)
  • Sometimes, when I reach desktop, I briefly get some noise, like DHCP is being activated or sync'ed? But I do get Desktop, natively at 2560x1440 @ 60Hz
  • x1 time out of x3 or x4 times, when rebooting computer from desktop 2560x1440px @ 60Hz to the BIOS boot screen, the monitor very quickly (0.5 sec) shows a banner "No signal, going to sleep" but does not turn ON again (to show BIOS boot screen). It stays with some black screen as if there wasn't a proper sync signal sent by the motherboard's boot process. Monitor seems to freeze; I have to turn monitor OFF then back ON to see something (either OS loading, or desktop)...

Currently using ig-platform-id with 0x0d220003 value in Clover, perhaps changing to another ID will help me with the above issue, especially the "reboot" monitor sync?

 

Note: I don't have complicated settings on Clover, just setting platform ID and Inject Intel = YES. I tried setting "Inject EDID" to YES, but this made OS X see 2 same monitors and it made more of a mess, really. The EDID is not a problem to be detected by default.

 

Thoughts are welcome...

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

  • Recently Browsing   0 members

    No registered users viewing this page.

×