Jump to content

HD4000 full acceleration for 10.8 / 10.7.5


proteinshake
 Share

126 posts in this topic

Recommended Posts

Is someone with working HD4000 able to wake up from sleep? My system wakes up but monitor stays black, darkwake=0 does not help ... the monitor does not get a signal from HD4000.

 

While testing I also noticed some stability issues when overclocking ... anything higher than normal clock (even if I crank up VCore like crazy) will result in a crash as soon as I entered my password and desktop is loading. I think it is a graphics problem because I am getting this repeated times before crash:

 

 

WindowServer[77]: CGXGetConnectionProperty: Invalid connection 42499

 

But might be my mainboard not being able to handle overclocks well. Without overclock everything runs fine, weird thing is that I can overclock my GPU without that crash happening, but not my CPU.

 

Hi, my sleep its working 100%.. no wake up issues.... one more time, i will say.. its all about the Efi-String and correct SMBios.Plist....

 

Here you go, for all of you with problems to activate HD 4000....HD 4000.zip

 

thx for your help and explanation

i have far more questions to ask if you don't mind

1. The very pc i am working on doesn't have HD4000.

If I want to get the right efi string, should I type those commands in terminal in Hacks which has HD4000 ?

2. Would u mind re-upload your plist file to another site? I can't manage to download it :(

3. If I do have a discrete video card, shouldn't HD4000 be invalid ?

 

 

Congrats!

it seems to be the first time that I've seen both integrated and discrete cards both work!

 

Hi,that`s cuz its a desktop, not a notebook....

Link to comment
Share on other sites

Hi, my sleep its working 100%.. no wake up issues.... one more time, i will say.. its all about the Efi-String and correct SMBios.Plist....

 

Here you go, for all of you with problems to activate HD 4000....HD 4000.zip

 

Thanks for your files and good to know your sleep is working. Maybe it's because you have a mobile chipset and myself and McDan are running desktop chipsets. I'm wondering if your device and revision id match exactly with your ig-platform-id, because on my system they don't.

 

I'm not sure about this but in your AGPM injector you have max-power-state 17 ... aren't there 19 states from 350-1300? Maybe you could try if you are getting higher OpenGL bench results.

Link to comment
Share on other sites

Look, I am far from being a guru at this editing of my org.chameleon.Boot.plist! :wallbash: So If somebody could be nice enough to take a look at my org.chameleon.Boot.plist to help me edit this so its more correct I would be very very happy. I know I am probably going about this totally wrong so any help is very much appreciated.

 

 

 

My setup:

Mountain Lion 10.8

 

Asus P8Z77-V LK

 

Intel Core i5

 

-3570k HD Graphics 4000

 

8GB G.Skill DDR3-1333 PC3-10666

 

z<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>EthernetBuiltIn</key>

<string>Yes</string>

<key>GraphicsEnabler</key>

<string>Yes</string>

<key>Graphics Mode</key>

<string>1680x1050x32</string>

<key>Kernel</key>

<string>mach_kernel</string>

<key>Kernel Flags</key>

<string>npci=0x3000 darkwake=0</string>

<key>Legacy Logo</key>

<string>Yes</string>

<key>Timeout</key>

<string>2</string>

<key>UseKernelCache</key>

<string>Yes</string>

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>

<dict>

<key>AAPL,ig-platform-id</key>

<string>0x01620007</string>

<key>model</key>

<string>Intel HD Graphics 4000</string>

<key>GenerateCStates</key>

<string>Yes</string>

<key>GeneratePStates</key>

<string>Yes</string>

</dict>

</dict>

</plist>

 

"

 

Hi, my sleep its working 100%.. no wake up issues.... one more time, i will say.. its all about the Efi-String and correct SMBios.Plist....

 

 

Here you go, for all of you with problems to activate HD 4000....

HD 4000.zip"

 

ok, what do I do with these files exactly? I know the LegacyAGPM.kext will install in System/Library/Extensions but as for the other three .txt files do they just go in Extra? Sorry to be a little clueless about these things but I don't have a lot of experience with this.....

 

 

I have everything working right now, sound, ethernet, native resolution but no accelerated graphics on the HD 4000

Link to comment
Share on other sites

Yes, I think my sleep issue is due to the fact I'm using device Id 01620005 in the efi string but my chip device Id is 01620009. I've tried using that but no joy, as expected to be honest as the only desktop chips (0162xxxx as opposed to 0166xxxx) that are listed in the HD4000kext are 01620005, 01620006 and 01620007 - although from those only 01620005 seems to work/be active.

 

 

 

 

Link to comment
Share on other sites

Hi, my sleep its working 100%.. no wake up issues.... one more time, i will say.. its all about the Efi-String and correct SMBios.Plist.... Here you go, for all of you with problems to activate HD 4000....HD 4000.zip Hi,that`s cuz its a desktop, not a notebook....

since they both work

can u switch between them ?

Link to comment
Share on other sites

No,only IntelHD will work for now... nobody has both gpu´s working.... i have my nvidia recognized also, but dont work at all...

 

"..nobody has both gpu´s working "... What ?!

 

Did you see my post #32 ? I have both GTX 560ti and HD4000 working with separate monitors

Link to comment
Share on other sites

Is someone also experiencing that deinterlacing in DVD player is not working correctly? No matter what settings, it's doing nothing. Switched back to my Geforce 8600GTS to check if it's a bug in ML but it's working there.

Also Safari crashed on me twice with an error message from WindowServer in logs.

 

I am currently on my 8600GTS again and no crashes so far.

Link to comment
Share on other sites

I was having some issues with the information here, but I found this blog that explained things much better and even has a a modified chameleon installer package which worked great for me. So anyone thats having

any problems just click the link below and you wont have to weed through all the unnecessary posts try to to make sense of it all. This is a great tutorial on how to get the HD 4000 up and running.

 

 

http://blog.stuffedcow.net/2012/07/intel-hd4000-qeci-acceleration/

Link to comment
Share on other sites

I cant say about DVD player, as I dont yet even have a DVD drive in my hack - But I havent had a single crash, never mind a KP or anything, since I got this HD4000 enabled!

 

All in all, I am very very pleased!

Link to comment
Share on other sites

Just maybe a stupid question: I only have a VGA Monitor does the VGA on the HD4000 work? Or do i need DVI or HDMI?

 

I never tried VGA and since its not used on any new Macintosh computers my guess would be no, it wont work with VGA. I could be wrong? How can you have a HD Graphics 4000 processor with no DVI?

 

I never tried VGA and since its not used on any new Macintosh computers my guess would be no, it wont work with VGA. I could be wrong? How can you have a HD Graphics 4000 processor with no DVI?

 

 

What should work though is when you use the VGA to DVI adapter!! I think then its ok?

Link to comment
Share on other sites

I never tried VGA and since its not used on any new Macintosh computers my guess would be no, it wont work with VGA. I could be wrong? How can you have a HD Graphics 4000 processor with no DVI?

What should work though is when you use the VGA to DVI adapter!! I think then its ok?

My board has DVI-D, VGA and HDMI, however my Screen is VGA only. DVI to VGA will not work (or only an aktiv one) but how about this HDMI Adapter:

 

http://www.ebay.de/itm/261061378574?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1438.l2649

 

or would this work with the HD4000 as well?:

 

http://www.tonymacx86.com/viewtopic.php?f=15&t=36335&start=40

or something like this

http://www.osx86.net/view/2230-hd_3000_vga_out_x121e_appleintelsnbgra_...html

 

Thanks

 

franky

Link to comment
Share on other sites

I was having some issues with the information here, but I found this blog that explained things much better and even has a a modified chameleon installer package which worked great for me. So anyone thats having

any problems just click the link below and you wont have to weed through all the unnecessary posts try to to make sense of it all. This is a great tutorial on how to get the HD 4000 up and running.

 

 

http://blog.stuffedc...i-acceleration/

Also, the graphics memory size for the configuration

must

 

 

match the setting in BIOS. If they don’t match, the driver may crash (kernel panic at

gen7_memory.cpp:721

), or the display may be corrupted. For example, using configuration

0x01660000

(96 MB, 3 pipes, 4 ports), set the Graphics Memory Size to 96 MB to match. It appears that OS X doesn’t obey the DVMT Total Memory Size setting (always 512 MB with 8 GB system RAM), so I just left it as MAX to match.

this 1 just {censored} i have mine set to 128m and i use *005 aka

01620005 32 2 3

only thing u must have is (mac os must "see") 8Gb+ ram to set 128, bet if u have 16gb u can set 512 or 1024

 

for agpm to load u must edit AppleGraphicsPowerManagement.kext by adding

 

<key>Vendor8086Device0162</key>

<dict>

<key>GFX0</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>

GFX0 subject to change depending wut u use in dsdt (or bios use if u dont have dsdt)

pardon my english its not my native

Link to comment
Share on other sites

this 1 just {censored} i have mine set to 128m and i use *005 aka [/size][/font][/color][/left]

only thing u must have is (mac os must "see") 8Gb+ ram to set 128, bet if u have 16gb u can set 512 or 1024

 

Be aware that Intel's GPUs use dynamic allocation of video RAM (DVMT, handled by the driver), so there are two memory size settings in BIOS. One controls the pre-allocated memory, the other sets the limit for dynamic allocation. The driver cares about the first, and seems to ignore the second.

 

I tested all of the platform-ids, and had odd problems when setting the pre-allocated memory below *or* above what the driver expects. I've had kernel panics, and I've also had it work ok with only a corrupted mouse pointer. I didn't exhaustively try all of the mismatched combinations, but none of the mismatched configurations I tried worked for me. It's clear the driver doesn't actually verify/enforce this value, so your configuration may simply be lucky.

 

The upper limit appears to be ignored by Mac OS, so the OS always reports 512MB for me (8 GB RAM). Since graphics memory is dynamically-allocated, I don't see much of a point in pre-allocating more (even if it works), since the total size will always be 512 MB anyway.

Link to comment
Share on other sites

Be aware that Intel's GPUs use dynamic allocation of video RAM (DVMT, handled by the driver), so there are two memory size settings in BIOS. One controls the pre-allocated memory, the other sets the limit for dynamic allocation. The driver cares about the first, and seems to ignore the second.

 

I tested all of the platform-ids, and had odd problems when setting the pre-allocated memory below *or* above what the driver expects. I've had kernel panics, and I've also had it work ok with only a corrupted mouse pointer. I didn't exhaustively try all of the mismatched combinations, but none of the mismatched configurations I tried worked for me. It's clear the driver doesn't actually verify/enforce this value, so your configuration may simply be lucky.

 

The upper limit appears to be ignored by Mac OS, so the OS always reports 512MB for me (8 GB RAM). Since graphics memory is dynamically-allocated, I don't see much of a point in pre-allocating more (even if it works), since the total size will always be 512 MB anyway.

differens 5Fps in unigine between 64 and 128 @ medium settings, i ran test few times in both 64 and 128 with restart between em just to be sure.
Link to comment
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:

 

Where do I must fill in the 'ig-platform-id'? Can't find my device ID either. Anybody knows how to find it on Mac?

Link to comment
Share on other sites

Where do I must fill in the 'ig-platform-id'? Can't find my device ID either. Anybody knows how to find it on Mac?

 

The PCI vendor and device IDs are listed in ioreg. (e.g., ioreg -l -p IODeviceTree). For me, it's vendor_id=86800000, device_id=62010000 (vendor 8086, device 0162).

 

"AAPL,ig-platform-id" is a device property set for the integrated GPU device. Setting a device property can be done by creating a "device-properties" string placed in org.chameleon.Boot.plist as in the post you quoted (the string is a plist with the property assignment encoded inside), or it can be done by the GraphicsEnabler code (one possibility is using the patch I posted here: http://blog.stuffedcow.net/2012/07/intel-hd4000-qeci-acceleration/). The two methods are equivalent.

Link to comment
Share on other sites

I found some additional device properties from MacBookAir5,2 and MacBookPro9,2 on this site http://tdev.me/2010/...ardware-dumps/.

Not sure if something is useful.

 

MacBookAir5,2:

 

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<string>0x01660009</string>
<key>boot-gamma-restored</key>
<data>
AAAAAAAAAAA=
</data>
<key>graphic-options</key>
<string>0x0000000c</string>
<key>saved-config</key>
<data>
VQAAAAAAAAAAAAAAAAAAAAEAAgAJAGYBAAAAAgDSAPoAQAAAACYCEAeoBAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDAwEA
BhDwnAIBYAAAAAAAAAABApBaTAWgBYQDoAAAABoAAAAwACAAAwAGAKAFhAMA
GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAA=
</data>
</dict>

 

MacBookPro9,2:

 

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
AwBmAQ==
</data>
<key>AAPL00,DataJustify</key>
<data>
AQAAAA==
</data>
<key>AAPL00,Dither</key>
<data>
AAAAAA==
</data>
<key>AAPL00,DualLink</key>
<data>
AAAAAA==
</data>
<key>AAPL00,InverterFrequency</key>
<data>
AAAAAA==
</data>
<key>AAPL00,LinkFormat</key>
<data>
AAAAAA==
</data>
<key>AAPL00,LinkType</key>
<data>
AQAAAA==
</data>
<key>AAPL00,PixelFormat</key>
<data>
AAAAAA==
</data>
<key>AAPL00,T1</key>
<data>
AAAAAA==
</data>
<key>AAPL00,T2</key>
<data>
AQAAAA==
</data>
<key>AAPL00,T3</key>
<data>
yAAAAA==
</data>
<key>AAPL00,T4</key>
<data>
yAAAAA==
</data>
<key>AAPL00,T5</key>
<data>
AQAAAA==
</data>
<key>AAPL00,T6</key>
<data>
AAAAAA==
</data>
<key>AAPL00,T7</key>
<data>
kAEAAA==
</data>
<key>boot-gamma-restored</key>
<data>
AAAAAAAAAAA=
</data>
<key>graphic-options</key>
<data>
BAAAAA==
</data>
<key>saved-config</key>
<data>
VQAAAAAAAAAAAAAAAAAAAAEAAgADAGYBAAAAAADIAMgAAAAAAF4BEAcPAQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgUA
BhDFnAIBAAQAAAAAAAAAACBDUgQABSADjwAAAC4AAAAwACAAAwAGAAAFIAMA
FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAA=
</data>
</dict>

Link to comment
Share on other sites

I fixed the sleep issue with the monitor staying black and not powering back on after wake!

It was USB related. I compared DSDTs from Apple's new MacBookAir5,2 and MacBookPro9,2 as well as the IOREGs.

You have to use a known USB fix and edit your DSDT and put the following DSM methods inside your USB devices (mine where EHC1, EHC2, XHC):

 

 

Method (_DSM, 4, NotSerialized)
{
Store (Package (0x09)
	{
		"AAPL,current-available",
		0x0834,
		"AAPL,current-extra",
		0x0898,
		"AAPL,current-extra-in-sleep",
		0x0640,
		"AAPL,max-port-current-in-sleep",
		0x0834,
		Buffer (One)
		{
			 0x00
		}
	}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}

 

Please let me know if this fixes your wake issues.

Link to comment
Share on other sites

Hi,

 

i can inject the platform id via DSDT but when it boots i get a blank screen, as in the screen looks to be off, rather than any colour. this happens in nsafe mode too. i tried GE in chimera but it has the same effect.

 

all the while the computer still seems to be alive, just no display.

 

i suspect that the injector/hd4000 element is fine, there must be something else. the display is connected via LVDS as its an internal display. i was hoping to find answers as i'm sure this issue must affect laptop users?

 

i'm not sure where else to poke around....

Link to comment
Share on other sites

 Share

×
×
  • Create New...