Jump to content

Can’t Reduce iGPU Framebuffer Portcount to One Software Connection


Fortitude
 Share

2 posts in this topic

Recommended Posts

I’ve got an Alienware Area 51m-R2 with an Intel Core i9-10900K CPU where the integrated graphics are connected to only one DisplayPort output (the Thunderbolt 3 port), and I’m trying to modify an existing framebuffer table for this laptop.

 

The closest matching framebuffer is 0x3E9B0007 where index 1 (port 5) corresponds to my video output without any modifications. I’m able to reduce the port count from 3 to 2 successfully, but can’t reduce it to 1. If I do this, I’m unable to connect to an external display.

 

Defining the extra software connectors like this:

FF000000 01000000 20000000

FF000000 01000000 40000000

Doesn’t actually remove them from the registry, I have to use framebuffer-portcount In order to remove them.

 

I’ve tried injecting just the one working port into framebuffers 0x3E9B0006 and 0x3E9B0008 without success, and get similar results to modifying 0x3E9B0007. I'm curious if anyone has had luck with defining just one software connection on a similar CPU/iGPU to mine? Shown below are my device properties and how IOReg reacts to the framebuffer-portcount property. (I realize that this might be a lost cause, however, I'm just frustrated because this feels like it should work.)

 

image.thumb.png.6190b8702079a5ec67c2278fc72cdc7c.png

 

Screenshot2024-02-18at12_45_22PM.thumb.png.4b91ce8e6c9c3f5f932397967a008fbf.png

Edited by Fortitude
Link to comment
Share on other sites

@Fortitude  This is something that I have experimented with as well.  @headkaze is probably the most qualified to answer, but I'll take a guess (that may be inconsistent with my other posts since I'm still learning).  If you are disabling ports by setting their index to -1, they are still "enabled" framebuffer patches, so you still need to include those disabled ports in your port count (so I think you actually want port count to be 3 for your patches).  Since port count is 3 in the 3e9b0007 framebuffer, you shouldn't need to define it (and don't worry about the ports appearing in IORegistry).  Disabling the ports with index = -1 is sufficient without modifying port-count.

 

Also, are you sure that you need to define stolenmem?  I don't think you need to define this.

 

Other observations that might interest you:

  • If you are using AppleALC.kext, you don't need to define hda-gfx=onboard-1 (it is automatically defined)
  • You are using rps-control.  Try igfxfw=2 instead to see if that results in slightly improved graphics performance.

 

EDIT: At one time, we were not supposed to link to TonyMacx86 thread.  I think that "rule" is no longer being enforced (fortunately - who cares).  Take a look at the conversation starting here.  If my link is deleted (because it's reference to TonyMacx86), search for "Intel Framebuffer patching using WhateverGreen" in the TonyMacx86 forum and jump to Post #158 in that thread. 

Edited by deeveedee
Link to comment
Share on other sites

 Share

×
×
  • Create New...