Jump to content

i5-4200U integrated GPU woes under 10.10


neo_21670
 Share

16 posts in this topic

Recommended Posts

Hi everyone,

I just recently bought an U430p with - as far as I know - isn't that different from U430 Touch, a device some apparently had good experiences with. Currently I'm trying to install Yosemite on this device, which went fine (installed, Clover UEFI booting works as intended) up to the point where I tried to set up the GPU (integrated Intel HD4400, i presume, as I'm using the i5-4200U CPU).
Currently I'm experimenting with different HW IDs and Platform IDs, up to no luck. I'd be really thankful if you could guide me how to find out the proper IDs, if not even share some proper settings, if you already had luck with this.

Thanks for your time, I hope you could help me out with some advice here.

Link to comment
Share on other sites

Hi everyone,

 

I just recently bought an U430p with - as far as I know - isn't that different from U430 Touch, a device some apparently had good experiences with. Currently I'm trying to install Yosemite on this device, which went fine (installed, Clover UEFI booting works as intended) up to the point where I tried to set up the GPU (integrated Intel HD4400, i presume, as I'm using the i5-4200U CPU).

Currently I'm experimenting with different HW IDs and Platform IDs, up to no luck. I'd be really thankful if you could guide me how to find out the proper IDs, if not even share some proper settings, if you already had luck with this.

 

Thanks for your time, I hope you could help me out with some advice here.

Your laptop is probably similar to the U430 touch, but it has Nvidia optimus, right?

 

You can probably use some of the DSDT work I did on the touch. See: https://github.com/RehabMan/Laptop-DSDT-Patch

 

You will need to set the ig-platform-id to 0x0a260005 (or 0x0a260006), and you'll need to remove the nvidia kexts or try nv_disable=1 kernel flag.

  • Like 1
Link to comment
Share on other sites

Your laptop is probably similar to the U430 touch, but it has Nvidia optimus, right?

 

You can probably use some of the DSDT work I did on the touch. See: https://github.com/RehabMan/Laptop-DSDT-Patch

 

You will need to set the ig-platform-id to 0x0a260005 (or 0x0a260006), and you'll need to remove the nvidia kexts or try nv_disable=1 kernel flag.

 

Hi RehabMan,

 

 and thanks for commenting on my issue - I originally tried to contact you through PM, without luck, for your activity regarding this product family, I think you're an expert on the issue.

 

As far as I know, my machine has Optimus, though I set tried to disable the nVidia adapter in the BIOS, by telling it to use only the IGP. lspci under Linux doesn't even lists the card.

So far I've been experimenting with the 0x0a260006 ig-platform-id, but now i tried the one ending in '5' on your recommendation - no luck so far. I'm getting so far, that I'm thinking about writing some tool to iterate through all the combinations of platform id's, hw id injections, injectintel and injectedid options, though this seems a bit hardcore to me.

(By the way, https://github.com/RehabMan/Laptop-DSDT-Patch/blob/master/graphics/graphics_HD4K_low.txt this patch in your repo suggests a different platform id, though I'm unsure what "AAPL,ig-platform-id", Buffer() { 0x03, 0x00, 0x66, 0x01 } translates to in config.plist terms.

 

My initial DSDT patching process was based on kylecronan's tutorial (found at: https://github.com/kylecronan/U430-instructions-OS-X), I placed resulting aml files (DSDT, SSDT-4 and -6) to /Volumes/EFI/EFI/CLOVER/ACPI/patched/.

 

If it might help, using some hardware IDs result in 1 or 2 minor blackouts during booting (e.g. 0x0a268086 does), while others don't.

AppleIntelHDGraphics kexts outputed some errors until I placed GraphicsControl and IOAcceleratorFamily2 kexts by them, right now they only miss some _mp_kick_cpus symbol, though I don't know if that cause them not to load or they actually load successfully.

 

Should I be looking for some AppleIntelHD5000Graphics.kext or s/g like that under 10.10 Public Beta, or Apple merged all neccessary kexts into a single one? :S

Link to comment
Share on other sites

Hi RehabMan,

 

 and thanks for commenting on my issue - I originally tried to contact you through PM, without luck, for your activity regarding this product family, I think you're an expert on the issue.

 

As far as I know, my machine has Optimus, though I set tried to disable the nVidia adapter in the BIOS, by telling it to use only the IGP. lspci under Linux doesn't even lists the card.

So far I've been experimenting with the 0x0a260006 ig-platform-id, but now i tried the one ending in '5' on your recommendation - no luck so far. I'm getting so far, that I'm thinking about writing some tool to iterate through all the combinations of platform id's, hw id injections, injectintel and injectedid options, though this seems a bit hardcore to me.

(By the way, https://github.com/RehabMan/Laptop-DSDT-Patch/blob/master/graphics/graphics_HD4K_low.txt this patch in your repo suggests a different platform id, though I'm unsure what "AAPL,ig-platform-id", Buffer() { 0x03, 0x00, 0x66, 0x01 } translates to in config.plist terms.

Your laptop is Haswell, not Ivy. It does not make much sense to use an HD4000 ig-platform-id. But the Buffer() { 3, 0, 0x66, 1 } is simply a byte-reversed 0x01660003.

 

My initial DSDT patching process was based on kylecronan's tutorial (found at: https://github.com/kylecronan/U430-instructions-OS-X), I placed resulting aml files (DSDT, SSDT-4 and -6) to /Volumes/EFI/EFI/CLOVER/ACPI/patched/.

Your DSDT files may be laid out differently than the U430 touch. Deeper analysis will probably be necessary.

 

If it might help, using some hardware IDs result in 1 or 2 minor blackouts during booting (e.g. 0x0a268086 does), while others don't.

0xa268086 is not a valid ig-platform-id.

 

AppleIntelHDGraphics kexts outputed some errors until I placed GraphicsControl and IOAcceleratorFamily2 kexts by them, right now they only miss some _mp_kick_cpus symbol, though I don't know if that cause them not to load or they actually load successfully.

 

Should I be looking for some AppleIntelHD5000Graphics.kext or s/g like that under 10.10 Public Beta, or Apple merged all neccessary kexts into a single one? :S

AppleIntelHD5000Graphics.kext (and AppleIntelFramebufferAzul.kext) are used for Haswell graphics and the stock ones should work. You are likely making some other mistake regarding your config.plist if you're unable to boot... (eg. forgetting dart=0, or not injecting FakeSMC, etc.)

Link to comment
Share on other sites

Your laptop is Haswell, not Ivy. It does not make much sense to use an HD4000 ig-platform-id. But the Buffer() { 3, 0, 0x66, 1 } is simply a byte-reversed 0x01660003.

 

I see, I didn't recognize if that was an HD4x00 or HD4k only patch.

 

0xa268086 is not a valid ig-platform-id.

 

Sorry, you must had misread my line there, it was a hardware ID injection, and not a platform one.

 

Your DSDT files may be laid out differently than the U430 touch. Deeper analysis will probably be necessary.

 

...

 

AppleIntelHD5000Graphics.kext (and AppleIntelFramebufferAzul.kext) are used for Haswell graphics and the stock ones should work. You are likely making some other mistake regarding your config.plist if you're unable to boot... (eg. forgetting dart=0, or not injecting FakeSMC, etc.)

The question regarding the HD5000Graphics.kext was because of my install definitely had none of that in /S/L/E while I found it on my regular 10.9.3 Mid 2009 MBP's according path. (Hence the part where I mentioned my thought, they might've integrated all the HD5k and 4k kexts and bundles into a single "ultimate Intel IGP kext".)

 

Would you be open to such analysis? If required, I can upload my raw DSL files and Clover config.plist.

 

Please note that I'm aware that this might require some, if not a lot of time on your behalf, as it did so far from mine. In any case, I'm perfectly comfortable with paying for your efforts.

Link to comment
Share on other sites

Sorry, you must had misread my line there, it was a hardware ID injection, and not a platform one.

There is no need to inject a device-id. Your HD4400 is natively recognized.

 

The question regarding the HD5000Graphics.kext was because of my install definitely had none of that in /S/L/E while I found it on my regular 10.9.3 Mid 2009 MBP's according path. (Hence the part where I mentioned my thought, they might've integrated all the HD5k and 4k kexts and bundles into a single "ultimate Intel IGP kext".)

Suggests you didn't do a vanilla install of OS X. All bets are off if you're using a distro. Save yourself the trouble and install a correct, unmodified OS X.

 

I'm not into helping people untangle the mess caused by not doing a vanilla install... If you want to use a distro, you're on your own. All distros are garbage and complete silliness.

 

 

Would you be open to such analysis? If required, I can upload my raw DSL files and Clover config.plist.

Upload native DSDT and all OEM SSDTs extracted from Linux and I'll take a (quick) look.

Link to comment
Share on other sites

There is no need to inject a device-id. Your HD4400 is natively recognized.

I see, I'll clean that part out of my config.plist

 

Suggests you didn't do a vanilla install of OS X. All bets are off if you're using a distro. Save yourself the trouble and install a correct, unmodified OS X.

 

I'm not into helping people untangle the mess caused by not doing a vanilla install... If you want to use a distro, you're on your own. All distros are garbage and complete silliness.

I generated my install drive from Yosemite Public Beta installer, using some Clover installer containing a built in Yosemite boot disk creator part ("Clover_v2k_r2780 - yosemite beta patched.pkg") - don't know if that counts as a distro. (At least this is far from the times when ppl were using pre-made ISOS around 10.6, when I put building hackintoshes on hold.) Meanwhile I might just try building an installer from the ground up.

 

Also the lack of said kexts might be due to the fact I chose to remove graphic drivers during the customize part of the installer - the only fun fact is that I fail to find those files on the installer disk or in BaseSystem.pkg and other places which I considered obvious.

 

Again, I'll try my best to prepare an installer by hand.

 

Upload native DSDT and all OEM SSDTs extracted from Linux and I'll take a (quick) look.

Attached you'll find DSDT and SSDT[1-9] files. Thanks for your efforts.

Archive.zip

Link to comment
Share on other sites

I generated my install drive from Yosemite Public Beta installer, using some Clover installer containing a built in Yosemite boot disk creator part ("Clover_v2k_r2780 - yosemite beta patched.pkg") - don't know if that counts as a distro. (At least this is far from the times when ppl were using pre-made ISOS around 10.6, when I put building hackintoshes on hold.) Meanwhile I might just try building an installer from the ground up.

 

Also the lack of said kexts might be due to the fact I chose to remove graphic drivers during the customize part of the installer - the only fun fact is that I fail to find those files on the installer disk or in BaseSystem.pkg and other places which I considered obvious.

 

Again, I'll try my best to prepare an installer by hand.

Definitely not a vanilla install...

 

Attached you'll find DSDT and SSDT[1-9] files. Thanks for your efforts.

Need native files from /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic, preferably with directory structure and original filenames intact. Disassembled files not useful.

Link to comment
Share on other sites

Need native files from /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic, preferably with directory structure and original filenames intact. Disassembled files not useful.

 

Here's the zipped result of

sudo cp -pR /sys/firmware/acpi/tables tables

extracted with an Ubuntu 14.04 boot disk.

tables.zip

Link to comment
Share on other sites

Here's the zipped result of

sudo cp -pR /sys/firmware/acpi/tables tables
extracted with an Ubuntu 14.04 boot disk.

 

The patches at my repo seem directly applicable. I don't see any sign of nvidia here (perhaps you have it disabled in BIOS).

 

Probably the tables would change if you enabled nvidia.

Link to comment
Share on other sites

The patches at my repo seem directly applicable. I don't see any sign of nvidia here (perhaps you have it disabled in BIOS).

 

Probably the tables would change if you enabled nvidia.

 

I haven't experienced any errors during the application of the patches myself. My nVidia card is most likely disabled on BIOS level.

 

Do I understand correctly that so far I should try the whole thing again with creating a vanilla USB installer, then applying the mentioned ig-platform-id to the clover config.plist and hope for the best? (Also: VT-d disabled in BIOS, dart=0 nv_disable=1 kext-dev-mode=1 -gux_defer_usb2 -gux_no_idle InjectKexts=Yes in the kernel params?)

Link to comment
Share on other sites

I haven't experienced any errors during the application of the patches myself. My nVidia card is most likely disabled on BIOS level.

 

Do I understand correctly that so far I should try the whole thing again with creating a vanilla USB installer, then applying the mentioned ig-platform-id to the clover config.plist and hope for the best? (Also: VT-d disabled in BIOS, dart=0 nv_disable=1 kext-dev-mode=1 -gux_defer_usb2 -gux_no_idle InjectKexts=Yes in the kernel params?)

You can look at the config.plist in my repo for clues... or use it as a starting point.

Link to comment
Share on other sites

I just wanted to share that I built a bootable vanilla installer, and put a Clover r2780 (built by clovergrower) on it with some really basic extensions (FakeSMC, VoodooPS2) on it, then finally loaded your config.plist - right now I'm unsure if I modified anything, maybe some boot params; I remember it was using the 0x0a260006 ig-platform-id. (Anyways, as soon as I'm finished with setting up this beauty, I'll post the details and diffs between Rehabman's config.plist and the "vanilla" Clover installer's config.plist to see what makes it beat.)

 

So I fired up the whole new USB Installer drive (I tried to fire up my "already installed" install w/it, to no luck), and the OS X Installer just booted up as if it was always meant to run on this laptop. Everything seems to be accelerated, so I'm really curious now, if this'll be a super success.

 

All in all, thanks Rehabman for suggesting to try it from the scratch and also for providing this config.plist.

I'll post updates.

Link to comment
Share on other sites

I just wanted to share that I built a bootable vanilla installer, and put a Clover r2780 (built by clovergrower) on it with some really basic extensions (FakeSMC, VoodooPS2) on it, then finally loaded your config.plist - right now I'm unsure if I modified anything, maybe some boot params; I remember it was using the 0x0a260006 ig-platform-id. (Anyways, as soon as I'm finished with setting up this beauty, I'll post the details and diffs between Rehabman's config.plist and the "vanilla" Clover installer's config.plist to see what makes it beat.)

 

So I fired up the whole new USB Installer drive (I tried to fire up my "already installed" install w/it, to no luck), and the OS X Installer just booted up as if it was always meant to run on this laptop. Everything seems to be accelerated, so I'm really curious now, if this'll be a super success.

 

All in all, thanks Rehabman for suggesting to try it from the scratch and also for providing this config.plist.

I'll post updates.

OK. Have fun...

Link to comment
Share on other sites

Unfortunately I'm still stuck with the Bluetooth configuration - built-in Intel 7260 module, though seems to initialize, fails to connect to anything else, and my other Cambridge Silicon Radio BT4.0 module fails to connect to anything as well... (CSR module is v 75.58 btw, if anyone else is trying.)

 

Will look for some Broadcom based USB stick in nearby stores.

Link to comment
Share on other sites

Unfortunately I'm still stuck with the Bluetooth configuration - built-in Intel 7260 module, though seems to initialize, fails to connect to anything else, and my other Cambridge Silicon Radio BT4.0 module fails to connect to anything as well... (CSR module is v 75.58 btw, if anyone else is trying.)

 

Will look for some Broadcom based USB stick in nearby stores.

I don't use bluetooth (waste of time), so I can't help you there.

Link to comment
Share on other sites

 Share

×
×
  • Create New...