Jump to content

AppleIntelHDGraphicsFB fixed (SL 10.6.8)


verteks
 Share

276 posts in this topic

Recommended Posts

Nothing is wrong. Here's what you need to do:

First, copy OS X 10.8.2's version of AppleIntelHDGraphicsFB.kext over to your desktop. Right click that, and click Show Package Contents. In there, locate Contents -> MacOS -> AppleIntelHDGraphicsFB. Delete that file and empty the trash. Copy over in that directory the unzipped file you downloaded. Rename it so it exactly reads "AppleIntelHDGraphicsFB" (without the quotes). This will modify the kext to enable it to run the patched code. Finally, use Kext Wizard or Kext Utility to install the new, modified version of the kext to /System/Library/Extensions. I hope this helps!

... rea .

Thanks for your reply, I will test it and com back to you, I thout that was the hwole package.

Link to comment
Share on other sites

Someone has resolved sleep and brightness control issues?

I enabled the slider but without changes of brightness in screen...

 

Regards

 

I have been working on this but no luck yet, will post an update soon

Link to comment
Share on other sites

Thanks for your reply, I will test it and com back to you, I thout that was the hwole package.

Hi again!

The first try, installed the kext as you instructed above. Upon restart in verbose mode it freezes at the end no grey/black/spinning wheel at all. I delete all the HDGrafics file except the natit.kext and the FB.kext. Rebuild the cach and restart, now I am getting to the desktop with native resolution but no CI witch I had before with the MLDP Hdgrafics kext. Reinstalling the HDGrafics plugins, three files, makes no different neither using the resolution module or smbios 6.1, 6.2, 8.1, making any change to get QE/CI. It seems that the Framebuffer file cannot play weal with the IntelHDGraphics.kext. Right now I am using this topic http://www.insanelym...el-hd-graphics/ to achieve native resolution an CI.

Any other suggestion?

 

At last, I got it working, I am up and running with full QE/CI. Thanks to you Verteks for your alternative Frame buffer.kext. I am using just these kexts:

AppleIntelHDGraphics.kext (MLDP2 version)

AppleIntelHDGraphicsFB.kext (Alternative one)

AppleIntelHDGraphicsGLDriver.bundle

AppleIntelHDGraphicsVADriver.bundle

Natit.kext

 

Thanks again.

Link to comment
Share on other sites

Some kernel info using the FB:

 

 

3/13/13 2:33:07.000 PM kernel[0]: Kext com.apple.driver.AppleIntelHDGraphicsFB - library kext com.apple.iokit.IOGraphicsFamily not found.

3/13/13 2:33:07.000 PM kernel[0]: Can't load kext com.apple.driver.AppleIntelHDGraphicsFB - failed to resolve library dependencies.

3/13/13 2:33:07.000 PM kernel[0]: Kext com.apple.driver.AppleIntelHDGraphicsFB failed to load (0xdc00800e).

3/13/13 2:33:07.000 PM kernel[0]: Failed to load kext com.apple.driver.AppleIntelHDGraphicsFB (error 0xdc00800e).

3/13/13 2:33:07.000 PM kernel[0]: Couldn't alloc class "AppleIntelHDGraphicsFB"

 

Ok, after many tests (SingleLink, DualLink, Natit, No Natit, etc.) I wasn't able to get to the desktop. I was always stuck with a grey screen. All the time I had the apple logo and the spinning wheel visible for a while then disappearing leaving me with a grey screen.

 

Any clues?

Cheers

Link to comment
Share on other sites

I have been working on this but no luck yet, will post an update soon

 

I am happy to report progress with the brightness/backlight issue :moil: After a sleepless night, I have found the following specification for the Ironlake integrated graphics http://www.codon.org.uk/~mjg59/tmp/ironlake/IHD_OS_Vol_3_Part2_BJS.pdf which specifies the backlight register offset to be 48254h. The graphics BAR0 is given as 0xB0000004 on my machine, and using RW-everything , i have just done an experiment and i'm really happy to confirm the values at 00000000B0048254 changing when brightness is manipulated on my laptop via keyboard (HP g62) :thumbsup_anim: . It should be now easy to modify the existing generic brightness kexts to use this new offset instead of the more standard 61254h. A DSDT patch may be required. But I should catch some sleep and will try to post a final update tomorrow.

  • Like 4
Link to comment
Share on other sites

Great work! I'm running an iAtkos ML2 on ThinkPad x201i, with the annoying 8086:0046 Intel HD Graphic 5700MHD. With the kexts provided by @warraisraw, I'm now able to enable QE/CI and 1280*800 resolution. The final problem is backlight not working after wake up from sleep. Actually, the display does work and I'm able to read the very dim screen with a torch :/ The only problem is the backlight.

 

Thanks guys. Looking forward to the latest progress!

Link to comment
Share on other sites

Great work! I'm running an iAtkos ML2 on ThinkPad x201i, with the annoying 8086:0046 Intel HD Graphic 5700MHD. With the kexts provided by @warraisraw, I'm now able to enable QE/CI and 1280*800 resolution. The final problem is backlight not working after wake up from sleep. Actually, the display does work and I'm able to read the very dim screen with a torch :/ The only problem is the backlight.

 

Thanks guys. Looking forward to the latest progress!

Can you please tell me the EXACT procedure you used to so this from the moment you put in the iAtkos ML2 USB/DVD which customization options you enabled/disabled and after it installed what exact kexts and/or resolution.dylib files you put in your S/L/E folder and/or other modifications and tweaks you may have did.

 

I would be EXTREMELY grateful as I have the SAME graphics card but am unable to successfully enable QE/CI.

 

Thank you!!

Link to comment
Share on other sites

Can you please tell me the EXACT procedure you used to so this from the moment you put in the iAtkos ML2 USB/DVD which customization options you enabled/disabled and after it installed what exact kexts and/or resolution.dylib files you put in your S/L/E folder and/or other modifications and tweaks you may have did.

 

I would be EXTREMELY grateful as I have the SAME graphics card but am unable to successfully enable QE/CI.

 

Thank you!!

 

OK. This doesn't seem to be difficult. I've come up with a tutorial here: http://www.insanelym...thinkpad-x201i/. Hope this helps you.

  • Like 1
Link to comment
Share on other sites

 

 

OK. This doesn't seem to be difficult. I've come up with a tutorial here: http://www.insanelym...thinkpad-x201i/. Hope this helps you.

just one more question, I googled your laptop and it comes in different configurations. What kind of processor do you have (I understand it is first gen 2010 Intel but I need the model number) ? Thanks :)
Link to comment
Share on other sites

just one more question, I googled your laptop and it comes in different configurations. What kind of processor do you have (I understand it is first gen 2010 Intel but I need the model number) ? Thanks :)

Mine is a x201i 3249CTB. It comes with Intel Core i3 370m CPU with Intel Graphics 5700MHD, first generation.

  • Like 1
Link to comment
Share on other sites

I DID IT GUYS!

 

I really don't know what the problem was, but this time instead of using iAtkos I used an original .dmg appstore file for OSX ML with myHack instead of that stupid method from that other commercial Hackintosh forum I don't even want to mention (& it can go to hell for giving me such headaches). Afterwards I just followed EVERYTHING outlined here http://www.insanelym...-graphics-qeci/ and the attachments are proof that everything's working. Next I'll be installing all the other drivers that worked in my initial iAtkos installation and that'll be it!

 

Good job guys!

 

I'll be donating to this AWESOME forum when I get a hold of some better cash in the next week and I recommend you to do it if you can spare some pizza money! :)

post-1139997-0-66095600-1363298574_thumb.png

post-1139997-0-23184800-1363298583_thumb.png

post-1139997-0-66976600-1363298600_thumb.png

Link to comment
Share on other sites

Has anybody got this working on a Lenovo Thinkpad T410/T510 with onboard GFX only?

You can surely do it on ANY laptop (whose monitor is not connected via eDP - you can check this through Linux) running first gen Intel Core processor (i3 or i5) with an integrated Intel HD Graphics 5700 (0042:8086 and 0046:8086). Just try it.
Link to comment
Share on other sites

EDIT: I have edited these instructions to make them more user-friendly :)

 

OK so good news so far :smoke:

 

Prerequisites: First you will need to install hotKoffy's ACPI BACKLIGHT kext (attached).

(Note: Do not

install Generic Brightness, if you have it try and

delete

it.)

 

 

So, I made the following patch for a HP G62-b50sa laptop, and it should also work with your DSDT, if your graphics BAR0 register is at 0xB0000000 (if it's different, you will need to modify the OperationRegions. To find your BAR0 you will have to look at your integrated graphics PCI configuration space, which is the second device on bus 00 (device 00:02:00) using either Reggie SE or lspci -- but you will need 64bit lspci driver from these forums.

Or you can find this info even easier using RW-Everything on windows, go to PCI window, and select your Intel Graphics from the drop down, there it will be actually named as BAR1. So for example if your BAR0/BAR1 is 0xE4000000 then you need to change my operation regions so that 0xB00048254 becomes 0xE40048254, and 0xB00048250 becomes 0xE40048250 if you see what I mean now? )

 

1. The following needs to be placed just before the beginning of " Scope (_SB)" ( before the first occurence of this string in your DSDT)

 

OperationRegion (BRIT, SystemMemory, 0xB0048254, 0x04)
Field (BRIT, AnyAcc, Lock, Preserve)
{
 LEVL, 32
}
OperationRegion (BRI2, SystemMemory, 0xB0048250, 0x04)
Field (BRI2, AnyAcc, Lock, Preserve)
{
 LEV2, 32
}

 

2. Now, the following assumes your graphics module is called GFX0 and that the LCD is listed as the second sub-device of GFX0. To find your graphics module, you can try and look for the line "Name (_ADR, 0x00020000)". The LCD should be the second sub device, mine is called DD02. You can use IOREG to confirm the name of your graphics (eg. GFX0). You can use the following method to identify the LCD sub-device: simply, go to your GFX0 (or equivalent), and

then under that device, identify the sub-device that has those methods (_BCM, _BCQ, _BCL).

YOU NEED TO REMEMBER TO NAME THIS SUB- DEVICE by adding the following line:

Name (_HID, EisaId ("LCD1234"))

in my case it looks like this


Device (DD02)
{
Name (_HID, EisaId ("LCD1234"))
...

 

3. FINALLY, You will need to add a new device PNLF. Usually you will have to add this before the beginning of Scope _PR, or after all other devices. IF YOU ALREADY HAVE ANOTHER PNLF DEVICE, you will need to replace any other PNLF you may already have (delete it and then use my code instead).

 

 

Device (PNLF)
 {
	 Name (_HID, EisaId ("APP0002"))
	 Name (_CID, "backlight")
	 Name (_UID, 0x0A)
	 Name (_STA, 0x0B)
	 Method (_BCL, 0, NotSerialized)
	 {
		 Return (^^PCI0.GFX0.DD02._BCL ())
	 }
	 Method (_BCM, 1, NotSerialized)
	 {
		 Store (0x80000000, LEV2)
		 If (LGreaterEqual (Arg0, 0x64))
		 {
			 Store (0x103A, LEVL)
		 }
		 Else
		 {
			 If (LGreaterEqual (Arg0, 0x5A))
			 {
				 Store (0x0EBB, LEVL)
			 }
			 Else
			 {
				 If (LGreaterEqual (Arg0, 0x50))
				 {
					 Store (0x0B24, LEVL)
				 }
				 Else
				 {
					 If (LGreaterEqual (Arg0, 0x46))
					 {
						 Store (0x0873, LEVL)
					 }
					 Else
					 {
						 If (LGreaterEqual (Arg0, 0x3C))
						 {
							 Store (0x065B, LEVL)
						 }
						 Else
						 {
							 If (LGreaterEqual (Arg0, 0x32))
							 {
								 Store (0x04C8, LEVL)
							 }
							 Else
							 {
								 If (LGreaterEqual (Arg0, 0x28))
								 {
									 Store (0x0396, LEVL)
								 }
								 Else
								 {
									 If (LGreaterEqual (Arg0, 0x1E))
									 {
										 Store (0x02B0, LEVL)
									 }
									 Else
									 {
										 If (LGreaterEqual (Arg0, 0x14))
										 {
											 Store (0x0218, LEVL)
										 }
										 Else
										 {
											 If (LGreaterEqual (Arg0, 0x0A))
											 {
												 Store (0x0191, LEVL)
											 }
											 Else
											 {
												 If (LGreaterEqual (Arg0, Zero))
												 {
													 Store (0x0132, LEVL)
												 }
												 Else
												 {
													 Store (0x103A, LEVL)
												 }
											 }
										 }
									 }
								 }
							 }
						 }
					 }
				 }
			 }
		 }
	 }
	 Method (_BQC, 0, NotSerialized)
	 {
		 Return (^^PCI0.GFX0.DD02._BQC ())
	 }
	 Method (_DOS, 1, NotSerialized)
	 {
		 ^^PCI0.GFX0._DOS (Arg0)
	 }
 }
}

 

In the code snippet above, you may have to change whenever it says "PCI0.GFX0..." to your equivalent, eg. say "_SB.PCI0.VGA0" or something.

 

Provided, the KEXTs were installed, this will enable your brightness slider, and it should work without problems incrementing/decrementing brightness in 10 discrete brightness steps.

 

Remaining To-Do is enabling brightness keys, and waking up from sleep (I will try looking at this tomorrow) :moil:

 

Please test and let me know.

ACPIBacklight.kext.zip

  • Like 1
Link to comment
Share on other sites

Hi all,

I tried to get QE/CI working following this post:

http://www.insanelym...-graphics-qeci/

but there's no way I can get the FB running. I post 2 pics.

The first is the screen I get if I use the singlelink FB when the Apple logo and the spinning wheel disapper.

The second if I use the duallink FB.

 

Am I the only one who can't get this FB to work?

Any suggestion from anyone. I'm desperate!

post-774766-0-86449200-1363317089_thumb.jpg

post-774766-0-57622400-1363317108_thumb.jpg

Link to comment
Share on other sites

Hi all,

I tried to get QE/CI working following this post:

http://www.insanelym...-graphics-qeci/

but there's no way I can get the FB running. I post 2 pics.

The first is the screen I get if I use the singlelink FB when the Apple logo and the spinning wheel disapper.

The second if I use the duallink FB.

 

Am I the only one who can't get this FB to work?

Any suggestion from anyone. I'm desperate!

 

The first screenshot is telling me that the framebuffer did not load. I use to get that screen when only AppleIntelHDGraphics.kext was loading. The second, have you tried the alternative framebuffer in my zip file?

 

What I want to know is if the framebuffer detects your display. For example in mine, it does. If it does detect your display, something is weird.

Link to comment
Share on other sites

I DID IT GUYS!

 

I really don't know what the problem was, but this time instead of using iAtkos I used an original .dmg appstore file for OSX ML with myHack instead of that stupid method from that other commercial Hackintosh forum I don't even want to mention (& it can go to hell for giving me such headaches). Afterwards I just followed EVERYTHING outlined here http://www.insanelym...-graphics-qeci/ and the attachments are proof that everything's working. Next I'll be installing all the other drivers that worked in my initial iAtkos installation and that'll be it!

 

Good job guys!

 

I'll be donating to this AWESOME forum when I get a hold of some better cash in the next week and I recommend you to do it if you can spare some pizza money!

 

How exactly did you do that? I'm using a Dell Vostro 3400 with i3-380M, and I'm having the same problem while trying those kexts on iAtkos ML2.

Would like to know how you do the hack

Thanks :)

Link to comment
Share on other sites

mnorthen, brightness doesn't work =(

I try inject PNLF section in DSDT, device was added but doesn't work.

It's my dsdt and ioreg http://cl.ly/2c1R3N3Z1s0m .

 

OK so I forgot to mention one thing :worried_anim: . In your IGPU, you need to go to Device DD02. Before the line " Method (_ADR, 0, Serialized)", you will need to add the line " Name (_HID, EisaId ("LCD1234"))".

 

Can you confirm you installed the latest Generic Brightness kext?

 

I also noticed you already have two PNLF devices in your DSDT. You will probably need to remove the old one, its in a different place. Also try putting my OperationRegions before your line " OperationRegion (PNVS, SystemMemory, 0xDB79BDA4, 0x0100)".. let me know how it worked!

Link to comment
Share on other sites

 Share

×
×
  • Create New...