Contribute
Register

[Success] Mojave 14.2 on GA-Z370P D3+i5-8600K+IntelHD630

Status
Not open for further replies.
Sure, what is the issue?
I was too fast in response. I will use an i3 8100 CoffeeLake, so found what specifications to add in the config.plist. Thank you anyway. Just bought the MoBo and the SSD, after 2 weeks I will get the CPU, so I will be here with new questions if I get troubles.
 
@cmn699
I'm hoping you have a clue as to what is causing my build to auto reboot by itself. I've been following your Intel 300 Series Chipset Motherboards guide to tweak my build. The only item to date Ive tried to improve upon is the Integrated Intel HD 630 graphics. During initial Mojave install, I kept the default option in the BIOS peripherals "Initial Display Output" as PCIe 1 Slot. Upon successful install, the Mojave System Report showed the Graphics/Displays as "Intel UHD Graphics 630", with a Device ID of 0x1234 and Vendor ID as 0x5678. This option works on either HDMI port, but would only work on the port where the cable was inserted during boot, meaning, if I switched the cable to the other port after boot, the video output did not work, unless I rebooted whereby the new port would be recognized. To mimic your setup, I changed the Devices IntelGFX setting to 0x0 (blank), changed the BIOS setting to IGFX, then rebooted. When the system came up, I would only have video if the HDMI cable was plugged into the 60 Hz (HDR) port. The video seems greatly improved with this setting. The problem which is baffling to me, if the system is left unattended for 15 minutes or so, the screen will go blank (no video source), then an auto reboot occurs w/o any user input. Ive looked at my System Preferences and turned off all Energy Saving options, screensavers, etc. Do you know why the reboot might be happening? Since then, Ive reverted back to the original 0x1234 settings. I've attached screen shots showing the Plist settings and System Reports. Hope you have a clue as to what is happening b/c I feel I'm not taking advantage of the full HD 630 graphics.

Thanks for any assistance!
You mentioned 2 problems here:
  1. Screen goes dark after 15 minutes and system reboots with any user input.
  2. Unable to hot-swap video ports.
Your motherboard has 2 HDMI ports and a DP port, but there's a catch:
  • One of the HDMI ports seems to be controlled by a third-party display controller that requires a special driver. See red boxes in screenshot.
  • The other two ports (1xHDMI and 1xDP) are controlled by the Intel UHD630. See yellow box.
GA H370N WIFI.png
  • I haven't seen this configuration before.
  • Does "DCPI Manager" show the device and vendor IDs for the MCDP2800 by MegaChips?
  • Anyway, let's assume that this HDMI port is unusable in Mojave. (We will need to remember not to plug into that port.)
  • So that leaves one working HDMI port and one DP port based on the Intel iGPU.
  • Have you tried the Framebuffer Patching guide posted here? I would set BusID to 0x04 for the active HDMI port, and BusID 0x06 for the DP port. Recommended Platform ID would be 0x3E9B0007.
Once the framebuffer has been patched, we can see if Problems 1 and 2 recur.
 
Last edited:
You mentioned 2 problems here:
  1. Screen goes dark after 15 minutes and system reboots with any user input.
  2. Unable to hot-swap video ports.
Your motherboard has 2 HDMI ports and a DP port, but there's a catch:
  • One of the HDMI ports seems to be controlled by a third-party display controller that requires a special driver. See red boxes in screenshot.
  • The other two ports (1xHDMI and 1xDP) are controlled by the Intel UHD630. See yellow box.
View attachment 378431
  • I haven't seen this configuration before.
  • Does "DCPI Manager" show the device and vendor IDs for the MCDP2800 by MegaChips?
  • Anyway, let's assume that this HDMI port is unable in Mojave. (We will need to remember not to plug into that port.)
  • So that leaves one working HDMI port and one DP port based on the Intel iGPU.
  • Have you tried the Framebuffer Patching guide posted here? I would set BusID to 0x04 for the active HDMI port, and BusID 0x06 for the DP port. Recommended Platform ID would be 0x3E9B0007.
Once the framebuffer has been patched, we can see if Problems 1 and 2 recur.

Thanks CaseySJ,

My main concern is understanding if I'm not taking full advantage of the built graphics on my mobo (not planning to buy a video card). If so, then I need to know what settings are needed to achieve this, as well as not experiencing the unattended system reboot as a result. I have not tried the Framebuffer patch, nor used DCPI Manager. I will attempt to follow your guide this weekend to see what happens. I only need one HDMI port; don't have a DP cable/monitor. Currently using an HDTV for my monitor. Hopefully I can figure something out. Your attentiveness to detail is greatly appreciated. I will follow-up with results, or more questions.

Have a good weekend!
 
<deleted because not relevant>

Happy weekend,

I looked at your Framebuffer Patching Guide and I admit I've never been down in the weeds like this before. Seems daunting, but at the same time exciting to learn what goes on under the covers. This is my first attempt at this type of a mod. I want to ensure if I make a mistake, that I'll be able to recover and have a working Mojave GUI. In your Preflight checklist, #3 "When the proper (accelerated) display driver is connected, your motherboard's HDMI port will stop working". Since I'm unable to hot-swap video ports, will my system be rendered useless due to no video display capability? Also, I had asked earlier in this thread about the ability to recover from any previous EFI Config.plist change that might result in a non-bootable Mojave desktop. I assume my backup option is the USB Mojave Install stick, with a copy of the last known working EFI folder/plist?

I have attached the DPCI and IOReg screens. Looks like no device and vendor ID for the MCDP2800 by MegaChips, and that "IONDRVFramebuffer" is present. Just need some assurance that if I proceed and fail, I can still trouble shoot, or to my delight, maybe I'll be successful. I also need to change my Peripherals BIOS setting Initial Display Output from "PCIe 1 Slot" to "IGFX" when testing the frame buffer update. Comments/advice?

Steady as she goes, thanks!
 

Attachments

  • 1-DPCI-Mgr.png
    1-DPCI-Mgr.png
    104.1 KB · Views: 187
  • 2-IOReg.png
    2-IOReg.png
    100.2 KB · Views: 185
om one of the two HDMI ports.
Happy weekend,

I looked at your Framebuffer Patching Guide and I admit I've never been down in the weeds like this before. Seems daunting, but at the same time exciting to learn what goes on under the covers. This is my first attempt at this type of a mod. I want to ensure if I make a mistake, that I'll be able to recover and have a working Mojave GUI. In your Preflight checklist, #3 "When the proper (accelerated) display driver is connected, your motherboard's HDMI port will stop working". Since I'm unable to hot-swap video ports, will my system be rendered useless due to no video display capability?
Because you're currently limited to just HDMI (no DisplayPort monitor), your screen will go blank if incorrect BusID is applied. But no need to worry! You can boot from the USB install disk, and when Clover menu appears, choose the standard "Boot macOS from Mojave" option to boot from the internal Mojave disk. The config.plist that is on the USB install disk will be applied, and your HDMI output will be restored (without graphics acceleration).

Also, I had asked earlier in this thread about the ability to recover from any previous EFI Config.plist change that might result in a non-bootable Mojave desktop. I assume my backup option is the USB Mojave Install stick, with a copy of the last known working EFI folder/plist?
Yes, always keep a back of the config.plist from the EFI partition of the Mojave internal SSD. And you can always boot from the USB install disk as explained above and then put the original config.plist back into place. The nice thing is that we're not touching anything on the Mojave partition itself! We're only making changes to the FAT32 EFI partition.

I have attached the DPCI and IOReg screens. Looks like no device and vendor ID for the MCDP2800 by MegaChips, and that "IONDRVFramebuffer" is present. Just need some assurance that if I proceed and fail, I can still trouble shoot, or to my delight, maybe I'll be successful. I also need to change my Peripherals BIOS setting Initial Display Output from "PCIe 1 Slot" to "IGFX" when testing the frame buffer update. Comments/advice?

Steady as she goes, thanks!
You'll be able to recover with the USB install disk. In fact, you may want to do a test-boot with the USB install disk first to make sure the system will boot up with that option. Also, it's always a good idea to have a full system backup. But the changes we're making to config.plist are relatively simple ones.

Because the AppleIntelFramebuffer is not attached, it will not be possible to use the guide! So instead we will have to try a pre-made framebuffer patch as follows:
  • Boot into Mojave and mount EFI partition of Mojave disk.
  • Backup the current CLOVER/config.plist file.
  • Edit the CLOVER/config.plist file with TextEdit (in Plain Text mode, per attached photo).
  • Look at the Code Block 1 below. Find that region in your config.plist and copy the Framebuffer patch code from Code Block 2 into the spot indicated. If there's already a <key>properties</key> section there, delete it first and copy/paste the new one.
  • Save the file.
  • Open the file in Clover Configurator to make sure there are no errors. If there are any format errors, Clover Configurator will tell you right away.
  • If no errors, quit Clover Configurator and reboot.
  • Cross your fingers!
  • This may or may not work. It's from a different Gigabyte H370 motherboard. If it does not work, DON'T PANIC!! :)
  • Just reboot with the USB flash disk. And then we can try one or two variations.
Screen Shot 2019-01-12 at 2.32.43 PM.png

Code Block 1:
Code:
<key>Devices</key>
<dict>
    <key>Audio</key>
    <dict>
        <key>Inject</key>
        <integer>7</integer>
        <key>ResetHDA</key>
        <true/>
    </dict>
    --- we will paste the Properties section right here between Audio and USB ---
    <key>USB</key>
    <dict>
        <key>FixOwnership</key>
        <true/>
        <key>Inject</key>
        <true/>
    </dict>
</dict>

Code Block 2:
Code:
<key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                kj4AAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>
 
om one of the two HDMI ports.

Because you're currently limited to just HDMI (no DisplayPort monitor), your screen will go blank if incorrect BusID is applied. But no need to worry! You can boot from the USB install disk, and when Clover menu appears, choose the standard "Boot macOS from Mojave" option to boot from the internal Mojave disk. The config.plist that is on the USB install disk will be applied, and your HDMI output will be restored (without graphics acceleration).


Yes, always keep a back of the config.plist from the EFI partition of the Mojave internal SSD. And you can always boot from the USB install disk as explained above and then put the original config.plist back into place. The nice thing is that we're not touching anything on the Mojave partition itself! We're only making changes to the FAT32 EFI partition.


You'll be able to recover with the USB install disk. In fact, you may want to do a test-boot with the USB install disk first to make sure the system will boot up with that option. Also, it's always a good idea to have a full system backup. But the changes we're making to config.plist are relatively simple ones.

Because the AppleIntelFramebuffer is not attached, it will not be possible to use the guide! So instead we will have to try a pre-made framebuffer patch as follows:
  • Boot into Mojave and mount EFI partition of Mojave disk.
  • Backup the current CLOVER/config.plist file.
  • Edit the CLOVER/config.plist file with TextEdit (in Plain Text mode, per attached photo).
  • Look at the Code Block 1 below. Find that region in your config.plist and copy the Framebuffer patch code from Code Block 2 into the spot indicated. If there's already a <key>properties</key> section there, delete it first and copy/paste the new one.
  • Save the file.
  • Open the file in Clover Configurator to make sure there are no errors. If there are any format errors, Clover Configurator will tell you right away.
  • If no errors, quit Clover Configurator and reboot.
  • Cross your fingers!
  • This may or may not work. It's from a different Gigabyte H370 motherboard. If it does not work, DON'T PANIC!! :)
  • Just reboot with the USB flash disk. And then we can try one or two variations.
View attachment 378753

Code Block 1:
Code:
<key>Devices</key>
<dict>
    <key>Audio</key>
    <dict>
        <key>Inject</key>
        <integer>7</integer>
        <key>ResetHDA</key>
        <true/>
    </dict>
    --- we will paste the Properties section right here between Audio and USB ---
    <key>USB</key>
    <dict>
        <key>FixOwnership</key>
        <true/>
        <key>Inject</key>
        <true/>
    </dict>
</dict>

Code Block 2:
Code:
<key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                kj4AAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                EgAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>

Casey SJ,
Thank you so much for helping users on this forum. You make it fun!

We're getting close. Per your suggestion, I applied the Code Block 2 (framebuffer batch). Question: should I have removed the key Fakeid section? You indicated removing any properties between Audio and USB. I noticed an entry pertaining to IntelGFX; anyway I removed all entries, right or wrong?

I rebooted, changed my BIOS Peripherals to IGFX, then selected the Mojave boot option. At near boot end, I lost video connection. System was still operational, so I hot swapped into the other HDMI port which may not be supported due to MCDP2800 by MegaChips. Anyway, I opened up System Reports and it appears the Intel UHD Graphics 630 is present. I believe we need to tweak the code to recognize the initial HDMI port as the correct video port? While leaving the machine turned on and unattended for an hour or less, the display would eventually disconnect, but re-awaken by mouse or keyboard. If left unattended for a longer period, the system would reboot. So something is still a-kilter. I have captured various screens for review. Is there anything else that would help the process? Also, could you enlighten me on the missing AppleIntelFramebuffer as you indicated early on? You were keen to pick up on that. Finally, thanks for solidifying my understanding of the backup and recovery process. I will await to hear back from you. Have a good week!
 

Attachments

  • 1-Plist key FakeId.png
    1-Plist key FakeId.png
    51 KB · Views: 174
  • 2-Plist Fix.png
    2-Plist Fix.png
    51.8 KB · Views: 158
  • 3-Sys Rpt Graphics-Displays.png
    3-Sys Rpt Graphics-Displays.png
    123.1 KB · Views: 129
  • 4-Displays.png
    4-Displays.png
    35.4 KB · Views: 135
  • 5-DPCI Status.png
    5-DPCI Status.png
    67.4 KB · Views: 144
  • 6-DPCI PCI List.png
    6-DPCI PCI List.png
    108.6 KB · Views: 139
  • 7-IOReg1.png
    7-IOReg1.png
    128.1 KB · Views: 177
  • 8-IOReg2.png
    8-IOReg2.png
    104.9 KB · Views: 168
@MadDan Awesome, now we're getting somewhere! I now believe that both of your HDMI ports should be okay. The MCDP2800 provides HDMI 2.0 support, which means full 4K60. The other HDMI port is 1.4, limited to 4K30. The Framebuffer configuration we tried above is:

Row 1: BusID 0x05, Type DP
Row 2: BusID 0x06, Type DVI-D
Row 3: BusID 0x04, Type HDMI


Because you now have at least one video connector working with AppleIntelFramebuffer (accelerated graphics), you're in luck! Please run Intel FB-Patcher, select Framebuffer from the top menu bar, and choose MacOS 10.14. as shown:
Framebuffer.png

Then click Connectors tab and select 0x3E9B0007 from the Platform ID pop-up:
Screen Shot 2019-01-13 at 1.12.01 PM.png
  • One of the rows should be highlighted in red. Which row is that? Is it the 3rd row?
  • Do you have another HDMI cable? And does your monitor accept a second parallel HDMI connection? If so, try plugging the second HDMI cable at the same time and see if a different row lights up. Most likely no other row will light up. In this case we should try the 2 new configurations one by one.
  • We're trying to see if we can activate both of the HDMI ports. So after booting the system with each of the below configurations (one at a time of course), please see which HDMI port works. As before, you may boot from the USB install disk if all video ports go blank.
Case 1:
Row 1: BusID 0x05, Type DP
Row 2: BusID 0x06, Type HDMI
Row 3: BusID 0x04, Type HDMI

Code:
        <key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                mz4AAA==
                </data>
                <key>enable-hdmi20</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                CQAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                CgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                CAAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>

Case 2:
Row 1: BusID 0x05, Type HDMI
Row 2: BusID 0x06, Type DP
Row 3: BusID 0x04, Type HDMI

Code:
        <key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                mz4AAA==
                </data>
                <key>enable-hdmi20</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                CQAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                CgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                CAAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>

Other configurations are also possible, but these are worth trying first. Regarding the reboot issue, someone reported stable results with Platform ID 0x3E000000, but let's first enable the HDMI ports and then address the sleep/reboot issue in case fixing one fixes the other.
 
Last edited:
@CaseySJ
Hmmm, not getting any favorable results? First off, my HDTV does provide another HDMI input, but when I plug the second cable in, when the system would reboot, the screen would go blank, then come back on, then go blank, etc. I thought that was a result of the changes being made with Case 1 and/or Case 2, but when I removed the second cable and tested each case again separately, my screen would stay "connected". So, maybe I'm not able to have two HDMI cables attached at one time ? Anyway, I tested both Case 1 and 2 Framebuffer codes. My thought was that we had already established an HDMI connection on row 3, and that the other coding changes were to establish the second HDMI on 1 or 2. BUT, as the attached FB Patcher shows, the first attempt yesterday yielded a connection on row 2, not 3 as you suspected. When I tested the other cases today, nothing seemed to change when I launched FB Patcher after boot. The lone connection is still on row 2, but still shows as type DP, instead of HDMI? Can you confirm that Case #1 and #2 are indeed different? When I look at them, they both show the same data values in the Con0 sections. I would have expected some difference in Con0 to test a DP connection in Case #1, versus an HDMI connection in Case #2. Ive attached a sample of the plist tree after booting for testing results for Case #1. Am I missing something? My current plist contains Case #2 code. Also, you didn't mention if I should have retained the FakeID key properties which I removed yesterday for the initial test. I'm (hopefully) learning as we proceed.

Thanks in advance for any clues.
 

Attachments

  • Case1.png
    Case1.png
    48.6 KB · Views: 120
  • FBPatcher.png
    FBPatcher.png
    59.2 KB · Views: 167
@CaseySJ
Hmmm, not getting any favorable results? First off, my HDTV does provide another HDMI input, but when I plug the second cable in, when the system would reboot, the screen would go blank, then come back on, then go blank, etc. I thought that was a result of the changes being made with Case 1 and/or Case 2, but when I removed the second cable and tested each case again separately, my screen would stay "connected". So, maybe I'm not able to have two HDMI cables attached at one time ?
Yes that does seem to be the case. No problem. We can use one HDMI connection from the computer at a time. We can just switch HDMI ports on the computer, but leave the other end connected to the same HDMI port on the HDTV. Then we can see if both HDMI ports are active, and if, so which Rows light up in red.

Anyway, I tested both Case 1 and 2 Framebuffer codes. My thought was that we had already established an HDMI connection on row 3, and that the other coding changes were to establish the second HDMI on 1 or 2. BUT, as the attached FB Patcher shows, the first attempt yesterday yielded a connection on row 2, not 3 as you suspected.
Yes you're quite right. One of the HDMI ports is certainly on Index 2 (Row 2).

When I tested the other cases today, nothing seemed to change when I launched FB Patcher after boot. The lone connection is still on row 2, but still shows as type DP, instead of HDMI? Can you confirm that Case #1 and #2 are indeed different? When I look at them, they both show the same data values in the Con0 sections. I would have expected some difference in Con0 to test a DP connection in Case #1, versus an HDMI connection in Case #2.
The field framebuffer-con0-type is set to AAQAAA== in Case 1, but AAgAAA== in Case 2 (difference in 3rd character).

Ive attached a sample of the plist tree after booting for testing results for Case #1. Am I missing something? My current plist contains Case #2 code. Also, you didn't mention if I should have retained the FakeID key properties which I removed yesterday for the initial test. I'm (hopefully) learning as we proceed.
Thanks for reminding me -- it's okay to remove the FakeID section, but it's better to leave it there and just set values to 0x0 (which are the defaults).

Based on this finding, we have two options:

Option 1:
Row 1: BusID 0x05, Type DP
Row 2: BusID 0x06, Type HDMI
Row 3: BusID 0x04, Type HDMI
Code:
       <key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                mz4AAA==
                </data>
                <key>enable-hdmi20</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                CQAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                CgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                CAAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>

Option 2:
Row 1: BusID 0x04, Type HDMI
Row 2: BusID 0x06, Type HDMI
Row 3: BusID 0x05, Type DP
Code:
        <key>Properties</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>
                BwCbPg==
                </data>
                <key>device-id</key>
                <data>
                mz4AAA==
                </data>
                <key>enable-hdmi20</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-busid</key>
                <data>
                BAAAAA==
                </data>
                <key>framebuffer-con0-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con0-index</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con0-pipe</key>
                <data>
                CQAAAA==
                </data>
                <key>framebuffer-con0-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con1-busid</key>
                <data>
                BgAAAA==
                </data>
                <key>framebuffer-con1-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con1-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con1-index</key>
                <data>
                AgAAAA==
                </data>
                <key>framebuffer-con1-pipe</key>
                <data>
                CgAAAA==
                </data>
                <key>framebuffer-con1-type</key>
                <data>
                AAgAAA==
                </data>
                <key>framebuffer-con2-busid</key>
                <data>
                BQAAAA==
                </data>
                <key>framebuffer-con2-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con2-flags</key>
                <data>
                xwMAAA==
                </data>
                <key>framebuffer-con2-index</key>
                <data>
                AwAAAA==
                </data>
                <key>framebuffer-con2-pipe</key>
                <data>
                CAAAAA==
                </data>
                <key>framebuffer-con2-type</key>
                <data>
                AAQAAA==
                </data>
                <key>framebuffer-con3-busid</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-enable</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-con3-flags</key>
                <data>
                IAAAAA==
                </data>
                <key>framebuffer-con3-index</key>
                <data>
                /////w==
                </data>
                <key>framebuffer-con3-pipe</key>
                <data>
                AAAAAA==
                </data>
                <key>framebuffer-con3-type</key>
                <data>
                AQAAAA==
                </data>
                <key>framebuffer-patch-enable</key>
                <data>
                AQAAAA==
                </data>
            </dict>
        </dict>
 
@CaseySJ

Well this is getting frustrating. I tested both options and the results were the same for both. Here was my process:
1) update Config.plist with "Option" code
2) Shutdown
3) Connect HDMI to (still) missing HDMI port
4) Boot. At password entry screen, display go's dark; hot swap to the other (working) HDMI port
5) Login, then check results

I have double checked the Option code each time before restarting. I even captured the booted plist to verify the appropriate Option was utilized. I performed each Option test twice.

I fully see what we are trying to do, but the FB Patcher shows the same result as one connection, row 2. Ive attached some redundant screens to show the correct UHD 630 Framebuffer. Are we at a standstill? I know you indicated early on that the current (working) HDMI port might now be able to handle both HDMI 1.2 and 2.0 support. I know the other HDMI works b/c prior to obtaining acceleration, I could swap cables, but it would require a reboot to detect the new input. Where do we go from here? I kinda hijacked this now un-related thread.

Thanks in advance.
 

Attachments

  • 1 -FBPatcher.png
    1 -FBPatcher.png
    64.2 KB · Views: 114
  • 2-DPCI 1.png
    2-DPCI 1.png
    65.8 KB · Views: 105
  • 3-DPCI 2.png
    3-DPCI 2.png
    99.3 KB · Views: 104
  • 4-IOReg.png
    4-IOReg.png
    149.7 KB · Views: 112
  • 5-Option 1.png
    5-Option 1.png
    50.8 KB · Views: 84
  • 6-Option 2.png
    6-Option 2.png
    42 KB · Views: 92
Status
Not open for further replies.
Back
Top