Jump to content
proteinshake

HD4000 full acceleration for 10.8 / 10.7.5

126 posts in this topic

Recommended Posts

No, I don't need a dedicated gfx-card. The HD4000 integrated into Ivy Bridge 3770 will do for me, as well as for many others. I thought I'd share the little I know about how to get it to run actually. Depending on your hardware this may or may not work - it works perfectly fine for me. Okay, let's get started by dumping some lines of DSDT:

 

 

		Device (MEI)
		{
			Name (_ADR, 0x00160000)
			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x02)
					{
						"device-id",
						Buffer (0x04)
						{
							0x3a, 0x1e, 0x00, 0x00
						}
					}, Local0)
				DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
				Return (Local0)
			}
		}

 

I've got a H67 Chipset here, so I'm using device MEI to change my device-id from 3A1C to 3A1E.

Otherwise AppleIntelSNBGraphicsFB.kext will block AppleIntelFramebufferCapri.kext.

 

 

		Device (IGPU)
		{
			Name (_ADR, 0x00020000)
			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x0C)
					{
						"AAPL,ig-platform-id",
						Buffer (0x04)
						{
							0x09, 0x00, 0x66, 0x01
						},
						"device-id",
						Buffer (0x04)
						{
							0x66, 0x01, 0x00, 0x00
						},
						"vendor-id",
						Buffer (0x04)
						{
							0x86, 0x80, 0x00, 0x00
						},
						"subsystem-vendor-id",
						Buffer (0x04)
						{
							0x6b, 0x10, 0x00, 0x00
						},
						"subsystem-id",
						Buffer (0x04)
						{
							0xea, 0x00, 0x00, 0x00
						},
						"revision-id",
						Buffer (0x04)
						{
							0x09, 0x00, 0x00, 0x00
						}
					}, Local0)
				DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
				Return (Local0)
			}
		}

 

AAPL,ig-platform-id was the key to get the HD4000 kext's to load. No go without it. Lastly you may want to modify AppleGraphicsPowerManagement.kext. I'm using the macmini5,1 definition, so this is my edit:

 

 

 

 



<key>Mac-8ED6AF5B48C039E1</key>
<dict>
  <key>IGPU</key>
  <dict>
  <key>Heuristic</key>
  <dict>
	 <key>EnableOverride</key>
	 <integer>0</integer>
	 <key>ID</key>
	 <integer>2</integer>
  </dict>
	 <key>control-id</key>
	 <integer>16</integer>
	<key>max-power-state</key>
	<integer>10</integer>
	<key>min-power-state</key>
	<integer>0</integer>
  </dict>
</dict>


 

Good luck! :wink2:

 

Cinebench R11.5 is around 23fps with 12A256 btw.

Share this post


Link to post
Share on other sites
Advertisement

This sound promising. I am planning to buy the gigabyte GA-Z77-DS3H with i5-3570K do you think it will work at what are the strings I would have to add?

Not a total noob (god a acer AOA150 running and fully working with 10.6.6) but now i would like to upgrade my desktop PC.......and run Lion and soon Mountain Lion.

Share this post


Link to post
Share on other sites

Hi,iv got core i73610QM 2.3 Ghz ... i didn't need to change nothing on DSDT.aml to load AppleIntelFramebufferCapri.kext ... Also it loads the AppleIntelHD4000Graphics.kext AGPM not loading.... no qe/ci at the moment..... Lion 10.7.5 / Mountain Lion 10.8 GM (12A269) Asus A55VD Core i7 3610QM IntelHD4000 Nvidia GeForce GT610M 2 GB 6 GB RAM

Share this post


Link to post
Share on other sites

Hey!

 

I've got i5-3570K, GA-Z77X-UD5H, injected HD 4000 successfully as described above, but still no qe/ci .. I guess it's cause the AppleGraphicsPowerManagement.kext makes trouble at startup (or rather doesn't get loaded):

 

Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]: The following symbols are unresolved for this kext:
Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]:  __ZN15AGPMEventSource9metaClassE
Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]:  __ZN4AGPM17newAGPMHeuristic4Ev
Jul  9 20:57:47 Mac-Pro kernel[0]: Cant load kext com.apple.driver.AGPM - link failed.
Jul  9 20:57:47 Mac-Pro kernel[0]: Failed to load executable for kext com.apple.driver.AGPM.
Jul  9 20:57:47 Mac-Pro kernel[0]: Kext com.apple.driver.AGPM failed to load (0xdc008016).
Jul  9 20:57:47 Mac-Pro kernel[0]: Failed to load kext com.apple.driver.AGPM (error 0xdc008016).

 

.. any idea? It loads AppleIntelFramebufferCapri.kext btw

 

edit: some info about AAPL,ig-platform-id I found: #####

Share this post


Link to post
Share on other sites

I have a Z77X-UD5H too, but with a 3770k - can you point me in the right direction to apply the instructions above? I couldnt really see where in my DSDT i was supposed to make the edits to add the IGPU device (its not there at present)

 

I understand that it doesn't result in qe/ci being enabled but is a step forward at least. its the only thing left for me to get working on this otherwise great setup.

 

Cheers

Share this post


Link to post
Share on other sites

if the IGPU device doesn't appear in your DSDT, it's just named differently (like eg GFX0), I think you should rename it (and any appearance of course) to IGPU, since it seems to be the name, Apple uses for internal graphics

Share this post


Link to post
Share on other sites

Really... it was all about one device-properties string on org,chameleon.Boot.plist iv used ( ig-platform-id: 01660003, Stolen RAM for FB: 64MB, Pipes: 2, Ports: 2, FBMem: 2 ) from the topic of Wollvieh .... i can post mi entire string and then you just need to try all those combinations only changing the last number .... first i tried 01660009,but gave me a black screen... second try, buummmmm... QE/CI .... iv just changed the 9 to a 3 .....

Share this post


Link to post
Share on other sites

Can

Really... it was all about one device-properties string on org,chameleon.Boot.plist i use (

ig-platform-id: 01660003, Stolen RAM for FB: 64MB, Pipes: 2, Ports: 2, FBMem: 2)

 

Can you post your dsdt.aml ?

Share this post


Link to post
Share on other sites

Yes, i can post my DSDT, but i didn't changed nothing on the dsdt.... it was all about this simple string generated with gfxutil.app ( thank´s to Oldnapalm ) and to artur_pt for his help also .... proteinshake for his tip.... respect to all of you......

 

Asus A55VD Extra Folder with the string on org.chamelon.Boot.plist http://www.sendspace.com/file/0thtu0

Share this post


Link to post
Share on other sites

Hey!

 

I've got i5-3570K, GA-Z77X-UD5H, injected HD 4000 successfully as described above, but still no qe/ci .. I guess it's cause the AppleGraphicsPowerManagement.kext makes trouble at startup (or rather doesn't get loaded):

 

Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]: The following symbols are unresolved for this kext:
Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]:  __ZN15AGPMEventSource9metaClassE
Jul  9 20:57:47 Mac-Pro kernel[0]: kxld[com.apple.driver.AGPM]:  __ZN4AGPM17newAGPMHeuristic4Ev
Jul  9 20:57:47 Mac-Pro kernel[0]: Cant load kext com.apple.driver.AGPM - link failed.
Jul  9 20:57:47 Mac-Pro kernel[0]: Failed to load executable for kext com.apple.driver.AGPM.
Jul  9 20:57:47 Mac-Pro kernel[0]: Kext com.apple.driver.AGPM failed to load (0xdc008016).
Jul  9 20:57:47 Mac-Pro kernel[0]: Failed to load kext com.apple.driver.AGPM (error 0xdc008016).

 

.. any idea? It loads AppleIntelFramebufferCapri.kext btw

 

edit: some info about AAPL,ig-platform-id I found: http://www.tonymacx8...p?f=169&t=65592

 

Hi, I have the same board as you, can you post your dsdt ?

Share this post


Link to post
Share on other sites

This is all about just a simple efi-string...i dont no where are the supposed GURUS ..... but like always, peopple came here to pick up information on how to get it to work,and then they will post on those {censored} forums saying that its they work.....

Share this post


Link to post
Share on other sites
Yes, i can post my DSDT, but i didn't changed nothing on the dsdt.... it was all about this simple string generated with gfxutil.app ( thank´s to Oldnapalm ) and to artur_pt for his help also .... proteinshake for his tip.... respect to all of you...... Asus A55VD Extra Folder with the string on org.chamelon.Boot.plist http://www.sendspace.com/file/0thtu0

its not dsdt nor string, its InstallGenieo...

Share this post


Link to post
Share on other sites

I can confirm that this works. Tried it on my MSI Z77A-G43 with i7 3770K and ig-platform-id: 01660009. I did this using EFI string injection. Will do some more test on what is actually needed and what not.

 

Update:

OK, there's actually nothing more needed than this simple EFI string ... no DSDT or whatsoever. Thank you so much for figuring this out!

Share this post


Link to post
Share on other sites

@dta: would you share your EFI string? I'm still stuck (KPs, funny stripes, ...)

 

edit: got it! works for me now with this one:

ig-platform-id: 01620005, Stolen RAM for FB: 32MB, Pipes: 2, Ports: 3, FBMem: 2

 

-> EFI string for device-properties in org.chameleon.Boot.plist:

8800000001000000010000007c0000000200000002010c00d041030a000000000101060000027fff0400100000006d006f00640065006c0000001a000000496e74656c20484420477261706869637320343030302c0000004100410050004c002c00690067002d0070006c006100740066006f0072006d002d006900640000000800000005006201

 

:trumpet:

Share this post


Link to post
Share on other sites

@dta: would you share your EFI string? I'm still stuck (KPs, funny stripes, ...)

 

edit: got it! works for me now with this one:

ig-platform-id: 01620005, Stolen RAM for FB: 32MB, Pipes: 2, Ports: 3, FBMem: 2

 

-> EFI string for device-properties in org.chameleon.Boot.plist:

8800000001000000010000007c0000000200000002010c00d041030a000000000101060000027fff0400100000006d006f00640065006c0000001a000000496e74656c20484420477261706869637320343030302c0000004100410050004c002c00690067002d0070006c006100740066006f0072006d002d006900640000000800000005006201

 

:trumpet:

 

Your platform ID does also work on my board. I think using your ig-platform-id: 01620005 is a better idea because 0162 is actually the desktop chipset which has a variable clock rate from 650-1150 while the mobile chipsets (0166) have a clock rate from 350-1300.

As proteinshake pointed out it might be neccessary to edit AppleGraphicsPowerManagement.kext.

Share this post


Link to post
Share on other sites

yes, also mobile ig-platform-ids didn't work for me at all .. (and I edited the AGPM kext, don't know if it'd work without that)

Share this post


Link to post
Share on other sites

I have a GA-Z77X UD5H and a GTX 560 TI, with the EFI string I got to the desktop UI, I could check that the AirPlay to Apple TV showed up but didn't had time for much more because it panics. Is it possible to have both HD4000 and GTX 560ti enabled ?

Share this post


Link to post
Share on other sites

Hmm, I can't get AGPM to load. Tried different models in SMBIOS, but nothing worked. Also I've noticed that there is now no more TurboBoost, highest clock is standard clock ... but I think this might be normal due to max TDP restrictions? Not normal should be that I'm now only getting 2 pstates using the generators in Chameleon. Before enabling the HD4000 I've been getting a minimum of 6 pstates.

 

Update:

I have fixed the TurboBoost issue (had to enable "Adjust CPU Frequency in OS" in BIOS), weird because with HD4000 disabled I didn't had to do that. Pstates are still not working correctly, Chameleon simply doesn't generate them. I suppose it would work if I would create my own SSDT.

 

Update2:

Everything Fixed! See post #41

Share this post


Link to post
Share on other sites

Taruga

Is it possible to have both HD4000 and GTX 560ti enabled ?

 

 

When I try HD4000 and GTX570, I get the following error message in bdmesg:

 

nVidia GeForce GTX 570 -4095MB NV1ff [10de:1086] :: PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)

ERROR: dcbtable_version is 0x7

ERROR: nVidia ROM Patching Failed

 

Usually KPs. It does boot successfully after many tries (10 - 20) and on restart, same problem. Appears to be a Chameleon problem.

 

Works perfectly with HD6870/HD4000.

Share this post


Link to post
Share on other sites

Taruga

Is it possible to have both HD4000 and GTX 560ti enabled ?

 

 

When I try HD4000 and GTX570, I get the following error message in bdmesg:

 

nVidia GeForce GTX 570 -4095MB NV1ff [10de:1086] :: PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)

ERROR: dcbtable_version is 0x7

ERROR: nVidia ROM Patching Failed

 

Usually KPs. It does boot successfully after many tries (10 - 20) and on restart, same problem. Appears to be a Chameleon problem.

 

Works perfectly with HD6870/HD4000.

 

Are you using EFI string and graphicsenabler together?

Share this post


Link to post
Share on other sites
Your platform ID does also work on my board. I think using your ig-platform-id: 01620005 is a better idea because 0162 is actually the desktop chipset which has a variable clock rate from 650-1150 while the mobile chipsets (0166) have a clock rate from 350-1300. As proteinshake pointed out it might be neccessary to edit AppleGraphicsPowerManagement.kext.
can u post efi string you used thx

Share this post


Link to post
Share on other sites

Any ideas how to stop AppleIntelSNBGraphicsFB.kext

from blocking

AppleIntelFramebufferCapri.kext without DSDT ?

I have a Z68X board with the new UEFI bios (so I don't have/use a DSDT) and the Capri kext is getting blocked no matter what EFI string I use. Could it be possible to change the device-id of the MEI device using another EFI string ? Also, does Chameleon support multiple EFI strings, and if it does, how to put them in the plist ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By hornpipe2
      I have a Mac Mini 2006 (upgraded) with Intel GMA950 graphics, running MLPostFactor 10.8.5.  It is connected to an ASUS VS197 LCD panel using DVI-D.  This is natively a 1366x768 panel that is recognized and works fine.
       
      However, the other choices for resolution are 4:3 800x600 and 1024x768, and then the oddballs 832x624 and 1360x768.  None of these are useful as a low-resolution widescreen for gaming or watching DVD content.  Specifically I want to get access to 848x480 or 854x480, and also 1024x576.  SwitchResX makes these choices available, but it doesn't work with a "full screen" game, presumably because the game directly queries OSX Display to get a list of valid resolutions and SwitchResX is bypassing that system instead.
       
      So the solution is obvious: buy a new computer pull the monitor's EDID data, hack it to enable new resolutions, and then tell OSX to use this custom EDID instead of the one retrieved from the monitor.
       
      Following the steps of the EDID injection guide, here is where I am:
       
      * Retrieve EDID, DisplayVendorID etc from ioreg.
      00 FF FF FF FF FF FF 00 04 69 F2 19 24 94 00 00 31 16 01 03 80 29 17 78 EA F5 45 A4 55 50 9E 27 0F 50 54 BD EE 00 81 C0 01 01 01 01 01 01 01 01 01 01 01 01 01 01 66 21 56 AA 51 00 1E 30 46 8F 33 00 9A E6 10 00 00 1E 00 00 00 FD 00 32 4B 18 53 11 00 0A 20 20 20 20 20 20 00 00 00 FC 00 41 53 55 53 20 56 53 31 39 37 0A 20 20 00 00 00 FF 00 43 43 4C 4D 54 46 30 33 37 39 32 34 0A 00 F1 * Use an EDID editor to enable new 848x477 and 1024x576 resolutions.  (Verify with an online EDID tool, and compare to the previous version)
      00 FF FF FF FF FF FF 00 04 69 F2 19 24 94 00 00 31 16 01 03 80 29 17 78 EA F5 45 A4 55 50 9E 27 0F 50 54 BD EE 00 81 C0 4B C0 4B CA 4B CF 61 C0 61 CA 61 CF 01 01 66 21 56 AA 51 00 1E 30 46 8F 33 00 9A E6 10 00 00 1E 00 00 00 FD 00 32 4B 18 53 11 00 0A 20 20 20 20 20 20 00 00 00 FC 00 41 53 55 53 20 56 53 31 39 37 0A 20 20 00 00 00 FF 00 43 43 4C 4D 54 46 30 33 37 39 32 34 0A 00 47 * Create a new subfolder and plist within /System/Library/Overrides/Display/ containing the new EDID string and monitor name.
      * Reboot.
       
      Now the problems begin.  Even though the plist file is being read (which I know because the Monitor Name has changed in Displays), the custom EDID is not being used.  When I dig into IORegExplorer I am able to come up with AAPL00,EDID string and it is the unmodified one read from the monitor.  I even tried a plug-and-unplug while OSX is running, and also tried to reset the SMC and NVRAM, but no dice.
       
      Do I need to start digging into DSDT hacking?  Is the Intel driver pulling down EDID during boot and I need to override it somewhere else?  What am I missing here?
    • By lenny11
      I have that machine with an HP Advanced Docking Station. Everything else works great. I have 3 drives set up with OS X Sierra, Windows, and Linux. I can use three external monitors with Windows 10 and Ubuntu 16, works flawlessly. I also have a desktop Nvidia Hackintosh that can. The monitors are DELL U2410f DisplayPort(two monitors must be DP or Active Adapters for 3 screens to work). The machine is a rev 9 HD4000 with a 1600X900 panel.
       
      However OS X struggles to detect the third monitor. It will activate the third monitor and put it right to sleep.
      Docking station has
      DVI.  DVI
      DP.    DP
      (using DP)
       
      Notebook Has a DP out
       
      VGA never used, No HDMI
       
      I can use any combination of two screens, internal or external.
       
      Here is my frame buffer for starters, 
      Here is the original AppleCapriFrameBuffer: 09 00 66 01 01 03 03 03 00 00 00 04 . - 09/ 3 ports 00 00 00 01 00 00 00 60 10 07 00 00 - 10 07 00 00 00 00 00 00 00 00 00 00 - 00 00 00 00 50 29 04 00 00 00 00 00 - 01 00 00 00 02 00 00 00 30 00 00 00 - LVDS 02 05 00 00 00 04 00 00 07 01 00 00 - DVI 03 04 00 00 00 04 00 00 07 01 00 00 -DP I edited it to this, but did not really get a change: 09 00 66 01 01 03 04 03 00 00 00 04 - 4th port 00 00 00 01 00 00 00 60 10 07 00 00 10 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 29 04 00 00 00 00 00 01 00 00 00 02 00 00 00 30 00 00 00 02 05 00 00 00 04 00 00 07 01 00 00 03 04 00 00 00 04 00 00 07 01 00 00 03 04 00 00 00 04 00 00 07 01 00 00 - Another dp? Is there anything else to try? I saw some stuff for desktop, but I'm not sure if it applies to notebooks.
      Thanks
    • By Newbie Mac
      Ciao a tutti,
      sono felicemente riuscito a installare Lion sul mio Optiplex 330.
      Funziona tutto tranne la scheda audio interna ma non importa perché vorrei installare una USB esterna: una Yamaha AG03.
      Dalle istruzioni questa dovrebbe essere installata su Lion senza driver e riconosciuta subito (http://www.yamahaproaudio.com/global/en/products/mixers/ag/manual/mac/index_en.jsp).
      Su un altro hackintosh sempre con Lion viene riconoscita perfettamente.
      Il sistema la vede, nel System Report, correttamente collegata all'USB ma da Audio Midi Setup mi dice "NO DEVICES FOUND".
      Temo che mi manchi qualche parte software per far riconoscere la scheda esterna.
      Ho installato i VoodooHDA ma mi hanno mandato in crash il sistema quindi li ho rimossi.
      Avete consigli?
      Grazie mille
       
      Retroman Newbie
       
    • By DaniiSwan
      Hello,
       
      I've been attempting for the past few days to install OS X Mountain Lion on my Lenovo Thinkpad Edge E530 with little success. So much so that I've finally decided I'm probably out of ideas and created this forum post requesting help.
       
      My Laptop Specs are:
       
      Intel Core i3-2328m (Sandy Bridge CPU at 2.2GHZ with support for SSE2 , SSE3 and SSSE3)
      8GB RAM
      500GB Hitachi Z7K500 HDD
      Lenovo 627226G Motherboard (Intel HM77 Chipset)
      Intel HD Graphics 3000
       
      More Detailed Specs ---> https://drive.google.com/open?id=0B-GXUa1I8xyDZU1SdklDSlhER2c
       
      So far , I've attempted to install iAtkos ML2 and ML3U via USB and so far both have worked up until the first sighting of the apple logo then the laptop restarted. In both cases , I was using a separate USB with chameleon bootloader on but in the instance where I tried to use the onboard bootloader on ML3U , I hit enter and the screen simply remained black.
       
      Any help would be much appreciated
       
      Thank you for your time.
    • By VanekMedia
      Hey all,
       I built my first Hackintosh back in 2012 and its been runner amazing. Thank you again for the awesome guides and forums that made it all possible. I have however hit the end of this builds software limits. I am still running 10.8.2 mountain lion on the machine. I would like to update to Sierra and want to make sure I am clear on the procedures. Now that it seems like everything is could based and no longer get physical versions of OS.
      currently i am backing up the system using and external drive and "carbon copy cloner" as shown here: http://www.macbreaker.com/2012/06/backup-your-hackintosh-with-carbon-copy.html
       
      My question is should i follow the set via the App store updates, Wipe the system and start over or is there a better way to achieve running Sierra on my machine?
       
      Here are my build specs:
      Processor name: Intel Core i7
      Processor Speed: 3.50 GHZ
      # of cores: 4
      memory: 32gb
      Boot rom version: insanelymac.com
      Graphics Card: Nivda GeForce GTX 670
      System Version: OSX 10.8.2 (12c60)
      i have also attached screen shots of the spec to further help:
       
      Thank you for taking the time to help me out with my build. look forward to getting this bad boy updated.
       
       
      Mahalo,
       
      -VM




×