Contribute
Register

[GUIDE/Workaround] Using Intel HD530 with Dual Monitors

@wildwillow Yes, still crashes; though these monitors do not allow 'saving' the input source. It resets as soon as the connection is lost and there is no access to the monitor control menu when there is no input.
as i can understand for this behaviour that the source is reset and all the override configurations will be lost when the machine is reboot?

Code:
    <dict>
                <key>Comment</key>
                <string>OSX10.12.1-SKL-1912000-Port_0x6-DP2HDM</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                AgQKAAAEAACHAQAA
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AgQKAAAIAACHAQAA
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>OSX10.11.1-SKL-1912000-Port_0x5-DP2HDM</string>
                <key>Disabled</key>
                <true/>
                <key>Find</key>
                <data>
                AQUJAAAEAACHAQAA
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AQUJAAAIAACHAQAA
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.11-SKL-1912000-4_displays</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                AQMDAw==
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AQMEAw==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>OSX10.11.1-SKL-1912000-Port_0x7-DP2HDMI</string>
                <key>Disabled</key>
                <true/>
                <key>Find</key>
                <data>
                AwYKAAAEAACHAQAA
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AwYKAAAIAACHAQAA
                </data>
            </dict>

Another question.
Are there any app that will able to help us to configure these ports and their connector types like the amd-framebuffer-utility?
 

Attachments

  • amd-framebuffer-utility-master.zip
    5 MB · Views: 140
Last edited:
@wildwillow thank you for your advice, but the screens are configured as separate displays :/

@wildwillow Yes, still crashes; though these monitors do not allow 'saving' the input source. It resets as soon as the connection is lost and there is no access to the monitor control menu when there is no input.
As I mentioned in Post#1 some monitors react different when connected to power even though switched off. If the screens are recognised by the BIOS/Initialisation even when powered off it will cause problems at the desktop. You're right about the older monitors that are not so clever, being that they are either on or off.
 
I got it working for 10 minutes now. NOt sure what will be on next boot.

Before I had the monitors with DVI-DVI and HDMI-HDMI connected which didnt worked.
I exchanged the HDMI-HDMI cable with a DVI-HDMI cable. So on both monitors I used the DVI Input and on the mainboard once DVI and HDMI.
Booting with HDMI and hotplugging the DVI output has done the job. The other way around it doesn't worked.
 
Hello @wildwillow and thanks for this guide.

> Booting with HDMI and hotplugging the DVI output has done the job. The other way around it doesn't worked.

My experience is similar a bit like the previous guy @skatemaza last post above ^^. However for me I found its the other way around. That I must boot with the HDMI port disconnected, using the DVI as the connected 'boot display'. Then plug in the HDMI port after logging in. And that was the only way around it would work for me.

This is at time of writing a recent Sierra 10.12.3, on a Gigabyte Z170 Gaming 3. You can safely assume similar behaviour for several other similar cheaper / low end boards, when the physical display outputs are missing DisplayPort (or TB3). This one it was with {VGA,DVI,HDMI} 3 ports on the motherboard. @wildwillow users like you with {DP + HDMI} will no doubt have a slight different experience and perhaps better success.

I run my HDMI output through an HDMI splitter to the TV. So it turns out that disconnecting power from that splitter box before boot time will allow booting and then powering it after login will trigger the hotplug which runs successfully.

However as things currently stand, the situation is a very strained and bugged one. It is not very much practical / usable for the following reasons. These things kindda ruin it:

====

Issue #1 - Graphics Driver Hanging

If plugging ports the 'wrong way around' (whichever way around that may actually be), for me was with the DVI being hotplug device. Well that will mostly just cause the system to crash / hang / panic or reboot. Or, instead of no output to the screen(s), it is displaying a solid black color, with the only the mouse cursor then showing up, which is very slowly cycling / alternating between the regular arrow pointer cursor, the busy spinning wheel, and none. This kind of busy / hanging behaviour will also happen after unplugging a 'correctly' hot-plugged display. So in my case, cutting the power to my HDMI splitter (when the HDMI output was the display that was hot-plugged after login).

I run my HDMI output through an HDMI splitter to the TV. So it turns out that disconnecting power from that splitter box before boot time will allow booting and then powering it after login will trigger the hotplug which runs successfully.

However if I forget to diconnect the HDMI before [re-]booting the machine into OS X. I.e. whenever both displays are plugged in during boot time. Then macOS always tried to grab the HDMI as a higher priority over the 'legacy' DVI port, and this causes problem. The HDMI is grabbed as the 'boot' display, and as we know, the DVI gets somehow switched off or disabled during the verbose logging text. Unfortunately then in my case then macOS will throw a hissy fit at the user login screen. Doing the hanging cursor / spinning wheel thing.

====
Issue #2 - Incorrect display priorities

Despite MacOS having previously been told the DVI is the primary dock display, and having booted and logged in on the DVI monitor alone, and then with the dock in it. Then upon (the only possible successful way of) hotplug connection of the HDMI output as 2nd device (extended screen).... MacOS still somehow regards this new Hot-plugged HDMI screen as a higher priority screen. The DVI screen blanks out, comes back, blanks out twice. Then all of the currently open windows then are moved automatically across to the other 2nd display (HDMI). This is despite the MacOS remembering from a previous session that the DVI is the primary (dock) screen and the HDMI is the extended one.

Furthemore the Preferences pane indeed shows the 'new' 2nd HDMI display in the main preferences pane panel (indicating its now regarded as the primary display). And the DVI monitor has been moved to be on a floating breakout window. Presumably that means OS X thinks of it as the secondary display now. Even though that was the one which we booted from. Maybe its because I changed the screen order and OS X got confused about that? Nope. Swapping the screen order and rebooting again (then hot-plugging the HDMI as 2nd), yields the same results.

So inherently there is something else in OS X that is considering the HDMI as more important then the DVI. Regardless of what I try to do about it.

===
The assumption (from my side), about the issue #2 may not occur for people with newer DP+HDMI. If MacOS is treating the DisplayPort as higher priority then HDMI. And because that is not being hot-plugged. Then its still regarded as the primary display in OS X after hot-plugging.
===

My motherboard is a Gigabyte GA-Z170X-Gaming 3. That has VGA, DSUB, and HDMI. So (and with the 4 port patch) according to the utility IORegistryExplorer, the ports are shown to be:

AppleIntelFramebuffer@0 = port 0x0 (is this one for the VGA? or its empty / not-used ? ).
AppleIntelFramebuffer@1 = port 0x5 (confirmed as the HDMI port).
AppleIntelFramebuffer@2 = port 0x6 (confirmed as the DVI port).
===
AppleIntelFramebuffer@0
port 0x00
connector-type 0x 02 00 00

AppleIntelFramebuffer@1
port 0x05
connector-type 0x 08 00 00
Display0 —> is connected to the HDMI tv

AppleIntelFramebuffer@2
port 0x06
connector-type 0x 02 00 00
Display0 -> is connected to the DVI monitor

AppleIntelFramebuffer@3
port 0x00
connector-type 0x 01 00 00

Displayport = 40,000
HDMI = 80,000
DVI = 20,000
===
HTML:
        <key>KextsToPatch</key>
        <array>
            <dict>
                <key>Comment</key>
                <string>10.11.4-SKL-AIFB1-port0x5-DP2HDMI</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                AQUJAAAEAACHAQAA
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AQUJAAAIAACHAQAA
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.11.4-SKL-AIFB2-port0x6-DP2DVI</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                AgQKAAAEAACHAQAA
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AgQKAAACAACHAQAA
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.11-SKL-1912000-4_displays</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                AQMDAw==
                </data>
                <key>Name</key>
                <string>AppleIntelSKLGraphicsFramebuffer</string>
                <key>Replace</key>
                <data>
                AQMEAw==
                </data>
            </dict>
            . . .
 
@dreamcat thanks for posting your results.
users like you with {DP + HDMI} will no doubt have a slight different experience and perhaps better success.
This seems to be true. The DP is a native connector in the framebuffer but it depends on the port layout on the board it is not always the primary connector. A user mentioned that the DP was the port he had to hotplug. That being said it does make a big difference with the monitor being used.
according to the utility IORegistryExplorer, the ports are shown to be
From your IOReg written results it appears that the 4th display patch has enabled the extra connector but Port0x0 shouldn't be an active connector <02 00 00 00> it should be <01 00 00 00>

Could you attach your IOReg and config.plist. Remove any variables from your config.plist with regards to S/N - MLB - ROM if you've configured your system to work with iMessage.
 
Last edited:
@dreamcatCould you attach your IOReg and config.plist. Remove any variables from your config.plist with regards to S/N - MLB - ROM if you've configured your system to work with iMessage.

Requested files attached. I wondered if it was anything to do with these patches we are talking about, so I removed them. Port 0x0 still says 2 million.

@0 2,000,000 (0x0)
@1 80,000 (0x5 HDMI)
@2 20,000 (0x6 DVI)
@3 1,000,000 (0x0)

Removed the DVI patch for port 0x6 (still kept port 0x5 patch for hdmi)

@0 2,000,000 (0x0)
@1 80,000 (0x5 HDMI)
@2 40,000 (0x6 DVI)
@3 1,000,000 (0x0)

Removed the HDMI patch too for port 0x5

@0 2,000,000 (0x0)
@1 40,000 (0x5 HDMI)
@2 40,000 (0x5 DVI)
@3 10,000,000 (0x0)

Removed the 4-port patch

@0 2,000,000 (0x0)
@1 40,000 (0x5 HDMI)
@2 40,000 (0x5 DVI)
 

Attachments

  • dreamcat4-iMac.ioreg
    6.9 MB · Views: 210
  • config.plist
    11.1 KB · Views: 264
@dreamcat
With your port layout the results always show a duplicated port, whether it is port0x0 with 4th port patch or port0x5 without.
Giving the framebuffer an extra connector only gives you a duplicate, this may be because it is an analog connector (VGA, as you posted above) macOS may not see this.

Removed the DVI patch for port 0x6 (still kept port 0x5 patch for hdmi)

@0 2,000,000 (0x0)
@1 80,000 (0x5 HDMI)
@2 40,000 (0x6 DVI)
@3 1,000,000 (0x0)
How did this work out for you?
 
Uh sorry I didn't bother to check the 2nd monitor hot-plugging in that situation (when DVI is identified as 40,000 DP). But it certainly booted up into MacOS fine with DVI as the single monitor only. Didn't notice any (*obvious*) issue or anything strange during that brief login session.
 
Back
Top