Jump to content
  • Announcements

    • Allan

      Forum Rules   04/13/2018

      Hello folks! As some things are being fixed, we'll keep you updated. Per hour the Forum Rules don't have a dedicated "Tab", so here is the place that we have our Rules back. New Users Lounge > [READ] - InsanelyMac Forum Rules - The InsanelyMac Staff Team. 
Micky1979

Intel HD4000 and Haswell Inject AAPL,ig-platform-id

89 posts in this topic

Recommended Posts

Chameleon and Enoch

Intel gma Injector


4d59bafadec10ea4c625aca80b6e2fd4.png
Chameleon now has a bootloader-implementation from Enoch, through which you can activate the various video cards such as Intel Ivy Bridge and Haswell. All without dsdt edits or EFI strings.
This is especially useful for Laptops PC, but also for Desktop systems without a dedicated video card.
Keys available for org.chameleon.boot.plist, read below:

During last week I redesign part of the Intel Injector (gam.c/gma.h)
due to the new hardware (Haswell).
Enoch Injector port to main Chameleon Trunk code: 2262

FIRST OF ALL
I rename the key flag (thx Micky1979 and bcc9):

- For Ivy Bridge the old keyflag HD4K-ig is now deprecated the new name is IntelCapriFB (match with Apple kext name for that hardware)
ex: IntelCapriFB=a_value from 0 to 11


 0 = 00006601
 1 = 01006601
 2 = 02006601
 3 = 03006601
 4 = 04006601
 5 = 05006201
 6 = 06006201
 7 = 07006201
 8 = 08006601
 9 = 09006601
10 = 0a006601
11 = 0b006601



- For the Haswell the recently introduced key flag HD5K-ig is also deprecated and the new name is IntelAzulFB (Same things... match with Apple kext)
ex: IntelAzulFB=a_value from 0 to 16


 0 = 00000604
 1 = 0000060c
 2 = 00001604
 3 = 0000160a
 4 = 0000160c
 5 = 00002604
 6 = 0000260a
 7 = 0000260c
 8 = 0000260d
 9 = 02001604
10 = 0300220d
11 = 0500260a
12 = 0600260a
13 = 0700260d
14 = 0800260a
15 = 08002e0a
16 = 04001204



- For the Broadwell the key name is IntelBdwFB (Same things... match with Apple kext)
ex: IntelBdwFB=a_value from 0 to 18


 0 = 00000616
 1 = 00000e16
 2 = 00001616
 3 = 00001e16
 4 = 00002616
 5 = 00002b16
 6 = 00002216
 7 = 01000e16
 8 = 01001e16
 9 = 02000616
10 = 02001616
11 = 02002616
12 = 02002216
13 = 02002b16
14 = 03001216
15 = 04002b16
16 = 04002616
17 = 05002616
18 = 06002616



I also introduced the ability to inject a custom AAPL,ig-platform-id for those kind of gfx (Ivy, Haswell and Broadwell) the keyflag is InjectIntel-ig
ex: InjectIntel-ig=09006601 (a flipped 01660009)

The priority is:
1° InjectIntel-ig
2° IntelXxxxFB
3° the default setting (based on BIOS memory for Ivy, and default ig for Haswell and Broadwell)

Example of data into org.chameleon.Boot.plist

    <key>InjectIntel-ig</key>
    <string>09006601</string>
    <key>IntelCapriFB</key>
    <string>9</string>
    <key>IntelAzulFB</key>
    <string>9</string>
    <key>IntelBdwFB</key>
    <string>9</string>


[url=http://www.insanelymac.com/forum/topic/288241-intel-hd4000-haswell-and-broadwell-inject-aaplig-platform-id/
http://www.insanelym...ameleon-23-svn/
ErmaC

Click here to view the article

Share this post


Link to post
Share on other sites

Good Job!  :thumbsup_anim:

 

InjectIntel-ig using hardware detection (GE=Yes) + HEX digit:

 

6b7h.png

 

or IntelCapriFB using hardware detection with the value associated

 

w01g.png

InjectIntel-ig use Hex digits, IntelCapriFB (for Intel HD4000) and IntelAzulFB (for the new Intel HD4600/P/5000 series (a lot)) using the value associated with their respective ig-platform-id.

 

 

.....You can try without anything, just GraphicsEnabler=Yes, using memory detection from your bios.

 

 

No more dsdt edits!

 

more about:

ErmaC: http://www.insanelymac.com/forum/topic/288241-intel-hd4000-and-haswell-inject-aaplig-platform-id/

bcc9:    http://www.insanelymac.com/forum/topic/290783-intel-hd-graphics-4600-haswell-working-displayport/

 

Thanks ErmaC and thanks bcc9!

 

Micky

 

 

(soon be available in the new version of Pandora.app incoming)

Edited by Micky1979
This post was written by me, taking the place of Ermac that at the time was far from Forum, using its instruction

Share this post


Link to post
Share on other sites

Thank you VERRY MUTCH !!!!!!!!!!! :lol:  :D  :thumbsup_anim:  ErmaC /  Micky / bcc9 / and the all TEAM  Chameleon  :D  ;)

Amazing  Work !!!!!! B)

 

I just by My new Hardware GA Z87M-D3H /  i74770k  /16 gig RAM Vengeances pro serie 1600mhz / Power supply

Antec HGC-750M  80+ bronze 750W Haswell certfied and with the Case  Fractal Design ARC-MINI (Matx)   :whistle:

Share this post


Link to post
Share on other sites
Guys, it seems that ErmaC has also introducing the injection for the Intel HD3000.

Need volunteers to test:

 

who has an Intel HD3000 can try changing the smbios. plist from MBP8,1 to (for example) MBP8, 2 or 8,3, but also others. Someone with HD3000 dsdt injection, must remove it to do the test.

 

Please try only if you are able to recover your system in case of failure.

Any feedback is important

 

Micky

Share this post


Link to post
Share on other sites

Any way to find the platform ID from Windows while we wait for Mavericks or 10.8.5 release?

Looking at the new Chameleon source:

uint8_t haswell_ig_vals[16][4] = { /* - TESTING DATA --*/
{ 0x00,0x00,0x06,0x04 },// 0 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - mobile GT1
␉{ 0x00,0x00,0x06,0x0c },␉// 1 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - SDV mobile GT1␊
{ 0x00,0x00,0x16,0x04 },// 2 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - mobile GT2
{ 0x00,0x00,0x16,0x0a },// 3 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT mobile GT2
{ 0x00,0x00,0x16,0x0c },// 4 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - SDV mobile GT2
{ 0x00,0x00,0x26,0x04 },// 5 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - mobile GT3
{ 0x00,0x00,0x26,0x0a },// 6 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT mobile GT3
{ 0x00,0x00,0x26,0x0c },// 7 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - SDV mobile GT3
{ 0x00,0x00,0x26,0x0d },    // 8 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - CRW mobile GT3
{ 0x02,0x00,0x16,0x04 },// 9 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 1, Ports: 1, FBMem: 1 - mobile GT2
{ 0x03,0x00,0x22,0x0d },    // 10 "AAPL,ig-platform-id" //FB: 0MB, Pipes: 0, Ports: 0, FBMem: 0 - CRW Desktop GT3
{ 0x05,0x00,0x26,0x0a },// 11 "AAPL,ig-platform-id" //FB: 32MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT mobile GT3
{ 0x06,0x00,0x26,0x0a },// 12 "AAPL,ig-platform-id" //FB: 32MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT mobile GT3
{ 0x07,0x00,0x26,0x0d },    // 13 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 4, FBMem: 3 - CRW mobile GT3
{ 0x08,0x00,0x26,0x0a },// 14 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT mobile GT3
{ 0x08,0x00,0x2e,0x0a },// 15 "AAPL,ig-platform-id" //FB: 64MB, Pipes: 3, Ports: 3, FBMem: 3 - ULT reserved GT3
};
/*
platform-Id
00 00 06 04//Intel Haswell Mobile (GT1)
00 00 16 04//Intel Haswell Mobile (GT2)
00 00 26 04//Intel Haswell Mobile (GT3)
00 00 16 0A//Intel Haswell ULT Mobile (GT2)
00 00 26 0A//Intel Haswell ULT Mobile (GT3)
00 00 26 0D//Intel Haswell CRW Mobile (GT3) - ???
00 00 26 0C//Intel Haswell SDV Mobile (GT3) - Software Development Vehicle
00 00 16 0C//Intel Haswell SDV Mobile HD 4600 (GT2) - Software Development Vehicle
00 00 06 0C//Intel Haswell SDV Mobile (GT1) - Software Development Vehicle
00 00 26 0A//Intel Haswell ULT Mobile (GT3)

maybe you can deduce it from the memory set in your bios. :)

 

Micky

Share this post


Link to post
Share on other sites

 I've tried the previous version with all bioses possible. I noticed some changings with -v booting option. No one works except MPB 8,1 but in some cases AGPM platform unknown Platform error doesn't appear.  :)  :) The System stucks on These machine is not compatible and will never works with itunes, error which don't remember the name and something on bluetooth transfer etc. That's why i'm here, i think i am very near to solve Qe problem on my Intel Hd2000 (which this post is not for  :)  i knowbut your excelent bootloader yes).

 

Have you ever tried using a fake id?
Like to write the HD3000 device id in your dsdt (using GE=No), and see what happens ?
----
Chameleon is the main project, and Enoch is a branch maintained by ErmaC.
I just look like everyone else ... just did some tests for ErmaC with a little feedbacks. :)
 
Micky

Share this post


Link to post
Share on other sites

Good Job!  :thumbsup_anim:

 

InjectIntel-ig using hardware detection (GE=Yes) + HEX digit:

 

6b7h.png

 

or IntelCapriFB using hardware detection with the value associated

 

w01g.png

InjectIntel-ig use Hex digits, IntelCapriFB (for Intel HD4000) and IntelAzulFB (for the new Intel HD4600/P/5000 series (a lot)) using the value associated with their respective ig-platform-id.

 

 

.....You can try without anything, just GraphicsEnabler=Yes, using memory detection from your bios.

 

 

No more dsdt edits!

 

more about:

ErmaC: http://www.insanelymac.com/forum/topic/288241-intel-hd4000-and-haswell-inject-aaplig-platform-id/

bcc9:    http://www.insanelymac.com/forum/topic/290783-intel-hd-graphics-4600-haswell-working-displayport/

 

Thanks ErmaC and thanks bcc9!

 

Micky

 

 

(soon be available in the new version of Pandora.app incoming)

I suppose to install the provided chameleon and write down IvyBridge or Haswell injection flag? that's all??

Thanks

Share this post


Link to post
Share on other sites

Hello fellas and thanks a bunch. There is some magic here  :thumbsup_anim:

 

 

With previous implementation, a blank value -> set a default one : boot OK (slow but OK)

Now with a blank value -> boot definitely hang.

 

So, i set a value and i have just tested "7" ; it seems to work here.

 

BIOS : 64 Mo ; Sys Prof reports 1024 Mo

 

 

post-497804-0-54693300-1378287981_thumb.jpg

Share this post


Link to post
Share on other sites

FYI, I used 'lspci -nn' and got the following output for my HD4000 (Dell Latitude E6430):

VGA compatible controller [0300]: Intel Corporation Ivy Bridge Graphics Controller [8086:0166] (rev 09)

I was assuming this would translate to device 01660009 and therefore I would be able to use IntelCapriFB=9.  Didn't work.  I tried all of the other values and surprisingly, "4" worked for me.  So either the rev number has nothing to do with the platformID (in which case I wonder how you determine what the platformID is short of trying all 12 options) or something isn't working with entering the number. 

 

Regardless, it's great that IntelCapriFB does get my video card working!  Thanks for the feature! 

Share this post


Link to post
Share on other sites

FYI, I used 'lspci -nn' and got the following output for my HD4000 (Dell Latitude E6430):

VGA compatible controller [0300]: Intel Corporation Ivy Bridge Graphics Controller [8086:0166] (rev 09)

I was assuming this would translate to device 01660009 and therefore I would be able to use IntelCapriFB=9.  Didn't work.  I tried all of the other values and surprisingly, "4" worked for me.  So either the rev number has nothing to do with the platformID (in which case I wonder how you determine what the platformID is short of trying all 12 options) or something isn't working with entering the number. 

 

Regardless, it's great that IntelCapriFB does get my video card working!  Thanks for the feature! 

Intel Corporation Ivy Bridge Graphics Controller [8086:0166] (rev 09)

 

(rev 09is a "revision number 9°", nothing to do with ig-platform :).

 

How to find the right?

 
write .. ones value ==> reboot ==> see if work.
If you receive a black screen, ==> start with -x flag at boot time (so without QE/CI), ==> change the value ==> reboot again ..
 
:)

Share this post


Link to post
Share on other sites

 

Intel Corporation Ivy Bridge Graphics Controller [8086:0166] (rev 09)

 

(rev 09is a "revision number 9°", nothing to do with ig-platform :).

 

How to find the right?

 
write .. ones value ==> reboot ==> see if work.
If you receive a black screen, ==> start with -x flag at boot time (so without QE/CI), ==> change the value ==> reboot again ..
 
:)

 

 

Wow, okay, so trial and error it is.  Very tedious.  Fortunately, you can do it without the -x boot by leaving it out of the boot plist and entering it at the boot prompt like IntelCapriFB=4   That will make trial and error twice as fast! 

 

The IntelCapriFB option (and the other two) are indented under the VBIOS option in the Chameleon help.  That appears to imply that the VBIOS option is needed for IntelCapriFB to work?  What about GraphicsEnabler?  I put the VBIOS=Yes and GraphicsEnabler=Yes into the boot plist so I wouldn't have to type them every time when testing. 

 

Also, FYI, my DSDT had a patch in it for GFX that was preventing this option from working.  Before using Chameleon's IntelCapriFB option, I was getting the text hanging before the login screen because the DSDT was specifying a platformID that was incorrect.  After removing the DSDT patch (and otherwise modified AppleIntelFramebuffer.kext), then booting gave me the black screen.  That's when I was able to begin testing different PlatformID numbers with Chameleon. 

Share this post


Link to post
Share on other sites

.......Now the only problem is DVDapp that's not recognized (error -70017)

First, before you run the script in attachment, you have, because of having gotten an error by trying to use an external DVD, copy the untouched DVDplayerframework from your install device to your install on HD and repair permissons. After that reboot with flag -f and try to backup the framework with first script of attachment in terminal and than do the patch. After that repair permissions and reboot once more with flag -f. If everything has gone well, you should have DVDplayer working. The perlscript is for ML. I do not really know, if it is working in 10.9.

 

Have fun.

External DVD Device.zip

Share this post


Link to post
Share on other sites

Wow, okay, so trial and error it is.  Very tedious.  Fortunately, you can do it without the -x boot by leaving it out of the boot plist and entering it at the boot prompt like IntelCapriFB=4   That will make trial and error twice as fast! 

This was taken for granted, but to do this you have to remember the key (case sensitive) and the value, knowing that the InjectIntel-ig key (with HEX values) if present in o.c.b.p... takes precedence over everything, and if you type IntelCapriFB or IntelAzulFB at boot time will be ignored anyway :)

 

 

The IntelCapriFB option (and the other two) are indented under the VBIOS option in the Chameleon help.  That appears to imply that the VBIOS option is needed for IntelCapriFB to work?  What about GraphicsEnabler?  I put the VBIOS=Yes and GraphicsEnabler=Yes into the boot plist so I wouldn't have to type them every time when testing. 

I do not think if you read the GPU bios will help, especially for all new laptops, which have included it in the motherbord Bios.
GraphicsEnabler is obviously necessary (always) to use these keys.
 
If you want there are also these useful keys:
 

SkipIntelGfx=Yes

SkipNvidiaGfx=Yes.

SkipAtiGfx=Yes.

 

to skip the auto detection of others video card present in your System, when you are using GraphicsEnabler=Yes

 

Micky 

Share this post


Link to post
Share on other sites

Thanks a lot. I will try tomorrow. The dependency of DVD playback is not on absence/presence  of QE?

If QE/CI is working and you have an external DVD, I think so, because of SMBios MBP 13", then it is the frameware. I had this issue on mine too, but I cann't remember the error code anymore. If this does not work, just replace with backuped framework.

 

Have fun.

Share this post


Link to post
Share on other sites

Hi...

 

great Micky1979....

 

just tailored to my new Haswell,the cheaper one..non ''S'4340 I think..

and a AsRock H87M...

c.frio

Share this post


Link to post
Share on other sites

thats it done  :thumbsup_anim:  :D  :P  this is my pic !

for my new Hackintosh just build today GA Z87D3H / i7 4770k /16 gig RAM 1600 mhz /psu Antec 750w

everything is perfect LOL  f6 bios original  :)

 

Graphics card is on the Locker    :hysterical:  :D

thank you so much ErmaC / Micky / bcc9 /  and the ALL CHAMELEON TEAM  for the great work   B)  :whistle:

 My boot plist  here 

 

<?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>IntelAzulFB</key>
<string>8</string>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>darkwake=0</string>
<key>Legacy Logo</key>
<string>no</string>
<key>Timeout</key>
<string>3</string>
<key>UseKernelCache</key>
<string>Yes</string>
</dict>
</plist>
 

 

 

1_copi10.jpg

218.png

312.png

414.png

 

611.png

 

511.png

710.jpg

 

 

 

geek10.jpg

 

811.jpg

Share this post


Link to post
Share on other sites

thats it done :thumbsup_anim::D:P this is my pic !

for my new Hackintosh just build today GA Z87D3H / i7 4770k /16 gig RAM 1600 mhz /psu Antec 750w

everything is perfect LOL f6 bios original :)

 

Graphics card is on the Locker :hysterical::D

thank you so much ErmaC / Micky / bcc9 / and the ALL CHAMELEON TEAM for the great work B):whistle:

My boot plist here

Christ, for you hardware you geek bench and other test it's low. I have the same and I get 18.000. Check you configurations!

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.

×