Jump to content

display goes off when AppleIntelFramebufferCapri is loaded


rr7
 Share

90 posts in this topic

Recommended Posts

That's what I'm talking about! I don't even have one, but like seeing some development come together! Looks good, I'm sure it will be useful to some one for something, someday :) Oh, and what I've been referring to as port 1, 2, 3 etc is partially for lack of a better term, they don't necessarily match what will be seen in ioreg where 04 is listed as port 7, 03 as port 6, looks like internal LCD shows as port 0 in ioreg wether it's 01 or 05.

Link to comment
Share on other sites

thanks for all the helpand time you put in, its been awesome! :)

 

as for the ports, yes, it seems they are referred to in IOREG as 0,5,6,7 respectivly. i cant work out the significane of the 05 03 or 01 00 difference for LVDS

 

my display gets detected on any config where 04 06 (port 7) is enabled. and i can hack a different id with that port and it also then gets detected.

the driver actually doesnt seem to care much about what the connector-type is set to,i can change it to any of them and it makes no difference, as long as the port number is right,it picks it up (as display port)

 

and i think thats the answer to pretty much everyones problem, if you're displays are blank, then you need to match/try the port numbers.

 

annoyingly, my computer will throw a black screen when a platform-id is picked up, wether or not detects a display. the backlight also goes off. i now dont think port type/display detection is my problem, bit of a shame really!

 

perhaps the fact that i get that HD4000 kext failed to load due to IOGraphicsFamily kext not found error,cannot alloc Gen7Accel type thing is a clue.

 

for anyone interested, my internal display is eDP (embedded displayport), maybe thats a problem,but then surely eDP is whats ised on the newest retina macbook pro.

 

so i'm probably going to have to give up on this, i'm clean out of ideas:(

Link to comment
Share on other sites

The first IOreg you ever uploaded where it looks like you were using id-5, was the only one where it had the Gen7 accelerator loaded. Also in the Capri binary, right after the connector section is a reference to the SB frame buffer, not sure if it needs to be loaded too, or what? in the 04 06, one of the two should be a sense ID or hotplugID, try changing to 04 05 or 04 02 for starters and see if any change?

Link to comment
Share on other sites

With id3-efi string I get resolution changer internal display (probook 4540s). Osx seems to recognize my monitor refresh rate (40hz and 60hz) but there's no ci qe.

 

Can you guys explain me more about injecting via dsdt. I use DSDT Fixer to fix errors, then patch with DSDT Editor, but it seems I cannot get the same result, atleast with id3-efi string.

 

Using smbios mbp 9,2 and legacyagpm.kext.

 

//EDIT: With "Graphics Mode"=1366x768x64@60Hz It said 0MB RAM. With no graphics mode specified it said 512MB but still no CI QE. With no graphic mode specified it still said 0MB. But if I push computer to sleep, but I still have not patched sleep so I had to hard restart my computer. After restart, it show 512MB RAM but no CI QE.Graphics still have glitches. .

DSDT-DTGP-fixed.dsl.zip

dsdt-id3.dsl.zip

Link to comment
Share on other sites

The DSDT patch can be applied using DSDT editor. Use it to open DSDT, then open patch and apply, compile, save. The orig patch txt is available at Olarila.com in link I posted earlier in thread. It also includes a couple other files you may want, and can get DSDT editor app there too if needed. Since the patch is just a text you can easily change which ID it will patch into your DSDT before you apply it. You'll know what I mean as soon as you look at it. Changes in vram and stuff after sleep, could be cmos reset since no sleep fixes were applied yet, patched AppleRTC.kext for starters.

  • Like 1
Link to comment
Share on other sites

The DSDT patch can be applied using DSDT editor. Use it to open DSDT, then open patch and apply, compile, save. The orig patch txt is available at Olarila.com in link I posted earlier in thread. It also includes a couple other files you may want, and can get DSDT editor app there too if needed. Since the patch is just a text you can easily change which ID it will patch into your DSDT before you apply it. You'll know what I mean as soon as you look at it. Changes in vram and stuff after sleep, could be cmos reset since no sleep fixes were applied yet, patched AppleRTC.kext for starters.

 

Thanks for information about AppleRTC. Right now I can use with efi string id 3 with resolution changer, but no ci qe. Anyone has solution for this?

Link to comment
Share on other sites

Thanks for information about AppleRTC. Right now I can use with efi string id 3 with resolution changer, but no ci qe. Anyone has solution for this?

legacyAGPM.kext installed already?
Link to comment
Share on other sites

right, i happened to go past an apple store today, and that got me thinking.

 

the retina macbook pro has some 2880x2160 display right? and that is beyond the capabilities of LVDS, so therefore its reasonable to assume that the rMBP has an internal eDP display connector, just like my AIO.

 

and quick look at the displays info screen (which i forgot to take a picture of) shows it an LCD and its connection type is indeed display port.

 

so far so good.

 

i then went and did an IOREG dump while i was playing with it, and emailed it to myself from the apple store ;)

 

i've attached the ioreg dump here for anyone who's interested. i short, it has 2 graphics cards. HD4000 is running AAPL,ig-platform-id 01660002, which is a single LVDS connector on port 1 according to the capri kext.

 

in this id, my display isnt detected, as my screen seems to be connected to port 4 (port 0x7) or even port D according to the hardware docs.

 

so i played with DSDT to get settings matched up as much i could. and edited the kext port number as above to get my display detected (changed 01 00 00 00 to 04 06 00 00) which gets it detected. i changed the smbios to the macbookpro10,1 type.

 

at this point i compared IOreg results.

 

things to note:

*display still blank :(

*AGPM doesnt get loaded anymore, i tried legacyAGPM.kext, but it doesnt load either, i'm probably doing that wrong, but i dont know much about that bit yet.

*X86PlatformPlugin isnt loaded, looking at the rMBP ioreg, there are cpu and graphics settings all over that section, on mine, nothing. maybe that and the IOGraphics dependancy failure are connected? SOMETHING isnt loading right on my pc that works on pretty much everyone else's......has to be something like that. perhaps if i can cure all this first, the gfx will just load?

rMBP10,1-ioreg.txt.zip

rr7-id2.ioreg.zip

Link to comment
Share on other sites

Sure, it was previously mentioned.

 

It says hd4000 kext disks to load. Cannot find kext IOGraphicsFamily.kext, something about dependency.

Then cannot alloc class gen7accel.

 

It also complains in the same way about applehda kext.

 

In safe mode it doesn't complain, as it doesn't try and load those kexts. Blut Capri still blanks out.

 

Surely x86platform plugin should load?

Link to comment
Share on other sites

Do you mean AppleACPIPlatform? It is one of the dependencies for IOGraphicsFamily. I don't know of any "x86Platform" files other than disassemblers like as part of a SDK :(

Link to comment
Share on other sites

OMG I get my HD 4000 working on probook 4540s. All I did is reset bios to default and disable discrete graphic card.

 

I am using efi string id 10660003 and dsdt patch, but not sure what made it work. I also installed legacyagpm.kext. Thank you guys for giving me useful information. Now I am so happy. Ready to get other things working.

  • Like 1
Link to comment
Share on other sites

Do you mean AppleACPIPlatform? It is one of the dependencies for IOGraphicsFamily. I don't know of any "x86Platform" files other than disassemblers like as part of a SDK :(

 

Take a look at the rMBP ioreg I attached, the X86PlatformPlugin sits below acpiaplatform.

 

It explains it better than I can :)

Link to comment
Share on other sites

usually one of the dependent kext either is not loaded, or is a version # that is incompatible, appleHDA is dependent on IOGraphicsFamily, so is why it not loading. run kextstat in terminal and each kext listed will have a # before it which is ID #, followed by a 2nd # which I believe is how many other things are dependent on it. after name of kext is version #, then the ID #'s of it's dependencies

Link to comment
Share on other sites

I can confirm that id 01660004 is a good starting point for Laptop-users who get blank Internal-Displays with other IDs. Without any patches or additional kexts, I got graphics-acceleration with that id :)

 

In Systeminfo, it says 512mb Ram though..going to post a screenshot later.

Link to comment
Share on other sites

  • 2 weeks later...

odd that newer PC would not have option yet default to IDE compatibility mode. Did you try with AHCIPortInjector?

 

apparantely H61 chipsets dont support it, funny that the main AIO i've been working on seems to have it enabled okay. i've asked for an unlock bios option from the R&D guys, maybe they'll come through.

 

meanwhile, no, i havent tried AHCIPortInjector, is there any info on it? usage, which devices need adding to plist etc?

Link to comment
Share on other sites

Although I couldn't make the ahci port injector load (it went panic) I was able to hack the dev ID into ioatafamily.kext and got it to boot that way.

 

It'll do for testing.

 

Interestingly, I couldn't make the g11 AIO work either, blank screen on all platform Id types. And this time, no display got detected.

 

Might wait a while until I can get another processor for it as switching between the two chassis is becoming a pain.

 

Maybe even the CPU is a problem. I seem to be the only person on the planet using a 3475S!

Link to comment
Share on other sites

 Share

×
×
  • Create New...