Jump to content

Intel HD Graphics / i7 2600


diddl14
 Share

154 posts in this topic

Recommended Posts

Kyle_C,

Would it be possible to apply your patch to the new branch of chameleon called chimera? its one that is supported by tonymacx86 site. That bootloader is doing proper RAM and CPU identification for Sandy Bridge. But as far as i know does not contain any support for hd2000/3000 yet.

 

The Chimera bootloader does not work for me with a 2630QM Sandy Bridge i7 on an HM65 chipset. I don't think they have added the mobile processors and chipsets to Chimera, yet. I think I will go investigate how they added the other processors and chipsets. Maybe I can figure out how to create a patch for mine.

Link to comment
Share on other sites

@genzai, 1. yes it has all 7 pci ids. 2. as far as I know, the SNB kexts have all these pci ids as well, and 3. yes you need GraphicsEnabler.

 

@makolet, even in 32 bit? in any case, would be great to know why chimera is not supporting Sandy Bridge fully yet.

 

And for everyone, especially the desktop users, just want to mention that if you look inside the 10.6.7 update for 2011 iMac pretty much all of the graphics kexts have a bump in the version numbers. I'm using those now and it's working great.

Link to comment
Share on other sites

@genzai, 1. yes it has all 7 pci ids. 2. as far as I know, the SNB kexts have all these pci ids as well, and 3. yes you need GraphicsEnabler.

 

Well looks like it is still a no-go for me :(

Though i got farther than i could before, i dont think i got any further than most of the people who have been trying this in earnest.

 

Depending on what i did, and i tried all sorts of combinations and ideas, I would get a black screen, a psychadelic garbled screen, a hung blue screen, or at best a working display but without acceleration. Add to that i could only ever get one output to work at a time. either DVI or Displayport. HDMI and VGA seemed totally dead. I tried Single User mode and loading the kexts in different orders but it never got me to a working setup.

 

I wonder what the missing piece is here...

g\

Link to comment
Share on other sites

It turns out Chimera doesn't work for me, because of the problem described here:

http://www.tonymacx86.com/viewtopic.php?f=118&t=18994

 

But porting this over was no problem. Here is the new boot file (this change doesn't affect the other 2 files). I haven't really been able to test this, but before my system reboots on me I can see that the code added with this patch is being run.

 

update: my system works with Chimera but only with arch=i386. The compiled boot file attached to this post is tested, working.

 

thats the same bootloader file converted from the previous thread? 5700 forum

Link to comment
Share on other sites

It turns out Chimera doesn't work for me, because of the problem described here:

http://www.tonymacx86.com/viewtopic.php?f=118&t=18994

 

But porting this over was no problem. Here is the new boot file (this change doesn't affect the other 2 files). I haven't really been able to test this, but before my system reboots on me I can see that the code added with this patch is being run.

 

update: my system works with Chimera but only with arch=i386. The compiled boot file attached to this post is tested, working.

 

I modified Chimera and tweaked the mobile Sandy Bridge stuff a little bit, merged in your changes and rebuilt. I can boot up in 64 bit mode with Chimera (Sandy Bridge support) and Intel HD. This isn't because of my changes (because the bootloader can't figure out that these are mobile sandy bridge chips - so there is more to do still), but simply because -i386 -force64 will work to push the legacy kernel into 64 bit mode with the new chimera (with your patch).

 

Another thing, after looking at the code, the boot0 and boot1 stuff doesn't need to change - these are simply early stage bootloaders and don't have any intelligence in them. Only "boot" needs to be changed.

 

I will be sharing code and whatnot on the HM65 thread.

Link to comment
Share on other sites

can some one please post easy and step by step instructions for intel HD 3000 driver? its difficult and too technical for me to make any sense out of your posts above . i have installed and everything works except HD3000

Link to comment
Share on other sites

can some one please post easy and step by step instructions for intel HD 3000 driver? its difficult and too technical for me to make any sense out of your posts above . i have installed and everything works except HD3000

 

Not me! But I'll tell you what. Describe step by step what you've already done and I'll tell you if you made any mistakes so far. :(

Link to comment
Share on other sites

Not me! But I'll tell you what. Describe step by step what you've already done and I'll tell you if you made any mistakes so far. :P

Thanks for the reply. i just dont what i need to do. i just installed one plst file from this forum (using ibeast) and it gave me kernal panic and this is where i left and switched back to windows now. i am in process of buying new macbook pro but being a windows' user for last 15 years i am very concerned about OSX and whether i would be comfortable with it or not. thansk again

 

This is what i did:

 

1- installed iatkos s3 v2 without selecting any kernal (i guess i used vanilla one by default)

2- installed Mac OS X v10.6.7 Update Combo

3- used [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] in the end in order to reboot

4- all worked except HD3000

5- i then updated the system further and made sure everything is updated to date

6- HD3000 still didnt pickup

7- used [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] to install DSDT.aml.zip

8- KP

Link to comment
Share on other sites

1- installed iatkos s3 v2 without selecting any kernal (i guess i used vanilla one by default)

2- installed Mac OS X v10.6.7 Update Combo

3- used [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] in the end in order to reboot

4- all worked except HD3000

5- i then updated the system further and made sure everything is updated to date

6- HD3000 still didnt pickup

7- used [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] to install DSDT.aml.zip

8- KP

 

If you're going to use [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] you might as well use [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] also. This will let you install from a retail DVD. Since Sandy Bridge graphics is still experimental, starting from iatkos is introducing another variable to the mix and is probably a bad way to do it.

 

Use the 10.6.7 2011 Macbook Pro update, not the generic 10.6.7 update. Or use the 10.6.8 beta (although I haven't tried this yet).

 

Install AnVAL and replace the file called 'boot' in the root of your Snow Leopard volume with our modified version. I guess the most recent version would be the one makolet posted on the thread about HM65.

 

Refer to post #15 for more steps that you might find are necessary.

Link to comment
Share on other sites

I would go for the 10.6.8 beta instead, it should have everything.

In fact I upgraded and I found the kernel to be way more responsive.

On the netkas blog you'll find the link if needed.

To bad I don't have my i7 setup yet so can't test, got to wait another month.

Link to comment
Share on other sites

K, good to know. They are the same controller design but the 3000 has twice as many rendering cores. My guess is that it's just being initialized as if it has 12 cores instead of 6 and this is why it craps out when it's handed certain instructions.

 

Screw it, I'll just buy a Radeon 5570. It's got more horsepower anyways.

Link to comment
Share on other sites

I've test HD2000, the rasterizer (HD3000 engine) is loaded but the graphic engine panics as soon as you need to draw something real, test with 10.6.7 imac update perhaps 10.6.8 will have a driver.

 

hmm, I will be trying this over the next couple of days. I was going down the imac route as well but perhaps MBP2011 is better... May be need to match HD3000 GPU frequency as well. 10.6.8 is unlikely as there is no HD2000 in any mac as yet. will report back.

Link to comment
Share on other sites

There is unlikely to be one used in an official mac any time soon, Apple tends to stick with the higher end of Intel's offerings so the lowest common denominator is still probably going to be the HD3000.

 

The other thing I was worried about was sound over integrated HDMI. I know for a fact that I can get this to work with ATI cards (since I've used them in 2 of my 3 hackintosh builds so far) but it's still a blind shot with the Intel graphics.

Link to comment
Share on other sites

Anyone else trying to use hd3000 graphics via displayport? Under OSX lion, with my h67 chipset motherboard, I get usable graphics via DVI, with AppleIntelHDGraphics & AppleIntelSNBGraphicsFB loaded up, but the DVI port is just single-link (low resolution). Displayport can give me 2560x1600, but when I boot lion via displayport, the connector doesn't get mapped right (connector-type=0x400=dvidisplayport in the ioregistry yet nothing showing under connectors in the system profile->graphics) and I get no graphics (screen stays on b&w display at "macx_swapon SUCCESS" point; yet system is fully up multi-user). AppleIntelHDGraphics & AppleIntelSNBGraphicsFB are loaded in this case as well, just not initialized right.

 

If I boot vanilla 10.6 without AppleIntelHDGraphics & AppleIntelSNBGraphicsFB, I can use the displayport, of course without qe/ci and at lower resolution.

 

displayport @2560x1600 works fine under linux on this system.

Link to comment
Share on other sites

Well, I have a Sandy Bridge laptop, and I'm still on 10.6.7, but I can tell you that I see the same behavior (even with just the LCD) unless I use the Sandy Bridge graphics kexts with an older IOGraphicsFamily, the one from 10.6.6. And it seems no matter what combination of kexts I try I haven't been able to get the HDMI port to work. I can use the most recent AppleGraphics* kexts but not IOGraphicsFamily.

 

The solution probably lies in the ACPI table somewhere. 'AAPL,os-info' is the most important value in general, but I don't think anyone outside of Apple can say what the different fields in the bitmask are for. Looking at the ioreg output from a MacBookPro8,1, I see two AppleIntelFramebuffer devices with different values for the key called 'AAPL,DisplayPipe': the LCD is 0x00000000 and the displayport is 0x01000000. However, this is set the same way on my machine and "Detect Displays" doesn't work.

 

There is also a key called 'port-number' with values of 2 and 5, respectively. And 'av-signal-type' looks interesting, although maybe that just affects digital audio output.

 

I'm beginning to suspect that PC DSDTs are commonly written so that they "remap" these ports when you press a Fn key, boot with a different port connected, etc. But I think OS X just wants to be told about all the ports and handle this stuff itself. So FWIW, I'm focusing on trying to get "Detect Displays" in System Preferences to do something.

Link to comment
Share on other sites

Sounds like the intel graphics driver support is understood a lot less than the ati&nvidia.

I thought that some of the problems people were having mixing&matching intel graphics kexts under 10.6 would go away with a clean 10.7 distribution... Guess not.

One could look at the driver code to see exactly what it's doing with the efi injection strings such as AAPL,os-info...

I did just try injecting that one via my dsdt, and it made no difference (showed up in the ioregistry correctly however).

 

Yes, av-signal-type must be 0x8 for HDMI or 0x10 for displayport before AppleHDAController will hoptplug hdmi/displayport audio.

 

Would be nice to see the ioregistry from a mac with a 2560x1600 display being driven by the hd3000 graphics. Then we'd at least know what state the ioregistry entries are in at that point.

Link to comment
Share on other sites

I managed to get full 2560x1600 resolution working with my h67 motherboard, via displayport using the stock AppleIntelSNBGraphicsFB driver.

 

Once I checked the driver code, I saw that the issue was that AppleIntelSNBGraphicsFB checks the platform ID against a whitelist, and falls over to a generic case if there is not a match. The whitelist looks to just be list of sandy bridge product ids.

So I simply replaced SMboardproduct in my smbios.plist with the genuine macbookpro8,1 value: Mac-94245B3640C91C81

 

Viola, the driver now detects 4 possible connectors, instead of just 1, and detects the displayport with the correct connector type.

Link to comment
Share on other sites

I managed to get full 2560x1600 resolution working with my h67 motherboard, via displayport using the stock AppleIntelSNBGraphicsFB driver.

 

Once I checked the driver code, I saw that the issue was that AppleIntelSNBGraphicsFB checks the platform ID against a whitelist, and falls over to a generic case if there is not a match. The whitelist looks to just be list of sandy bridge product ids.

So I simply replaced SMboardproduct in my smbios.plist with the genuine macbookpro8,1 value: Mac-94245B3640C91C81

 

Viola, the driver now detects 4 possible connectors, instead of just 1, and detects the displayport with the correct connector type.

 

And do you get QE/CI?

Link to comment
Share on other sites

And do you get QE/CI?

Yes.

And opengl works.

One major gotcha is that the graphics driver has some sort of repeated event ring hang until the port is hotplugged. Before hotplugging, this manifests as the GUI behaving extra slowly. I actually didn't notice this at first as I had hotplugged the displayport first thing by coincidence.

 

Got my fingers crossed that the event ring problems will go away once I get hdmi/displayport audio configured right.

Link to comment
Share on other sites

Kyle_C,

Would it be possible to apply your patch to the new branch of chameleon called chimera? its one that is supported by tonymacx86 site. That bootloader is doing proper RAM and CPU identification for Sandy Bridge. But as far as i know does not contain any support for hd2000/3000 yet.

 

Thanks,

g\

 

IMHO a better solution is to add "device-properties" key into /Extra/com.apple.Boot.plist and to use any version of Chameleon, even recent Chimera 1.4.0 (have not been announced on main page yet, but downloadable since Friday).

 

For GFX on PciRoot(0x0)/Pci(0x2,0x0) the appropriate string is:

<key>device-properties</key>
<string>600000000100000001000000540000000100000002010c00d041030a000000000101060000027fff04001e00
00004100410050004c002c006f0073002d0069006e0066006f0000001800000030490111111108000001f01f01000000
10070000</string>

 

This string tells Chameleon/Chimera to inject 20h bytes long "AAPL,os-info" data: 30490111111108000001f01f0100000010070000.

 

I wonder, how did Kyle_C manage to find the exact data, since a dozen variants found inside Graphics kexts did not work for my Lenovo L520 (it might have a different port layout, I guess). Anyway, thanks both to Kyle_C and makolet for their work. At least I know the direction to dig further.

Link to comment
Share on other sites

Cool, thanks for that. Device strings have always been a mystery to me. As a long-time C programmer I had found it easier to just modify the source, but this is definitely a more flexible solution.

 

The value I used was taken from the ioreg dump of a MacBookPro8,1 machine.

 

@bcc9, awesome find! I can't wait to try it out. When you say that you looked at the driver source, I assume you mean that you disassembled the kext?

 

Let us know what you find out about that "gotcha" also. And I'll try to help out with testing.

Link to comment
Share on other sites

 Share

×
×
  • Create New...