Romano2K Posted November 16, 2014 Share Posted November 16, 2014 Hello there! After more than 3 weeks and 75 messages in the French section of this forum, without success until now, I'm trying to state my problem in English here. I'm trying to install Yosemite and Clover on my old but venerable hackintosh, but I can't get graphics acceleration. I have a Gigabyte GA-G31M-S2L motherboard, an Intel Core 2 Duo E8400 CPU and an AMD Radeon HD 4850 GPU. I'm not using the integrated sound controller, but an external MOTU sound interface. Everything works great with Mavericks and Chameleon. I have a handmade DSDT (made by someone from the MyHack forum) so I only need FakeSMC.kext (from the HWSensor binaries), RealtekRTL8111.kext (by Mieze), and I just add the Radeon HD 4850 Device ID to the AMD4800Controller.kext myself. It's strange but it's already in the original ATIRadeonX2000.kext. I then use MyHack's MyFix to repair permissions and handle caches. And I boot with GraphicsEnabler=Yes. With Yosemite and Clover, adding the Device ID to AMD4800Controller.kext and enabling ATI inject in /EFI/EFI/CLOVER/config.plist isn't enough. The DVI output is working, but it's stuck to 1600 x 1200 pixels (my screen is 1920 x 1200), and there's no hardware acceleration. And there's something strange, kexts and framebuffer are loaded: Romains-iMac:~ Romain$ kextstat | grep AMD 65 1 0xffffff7f846fb000 0x11f000 0x11f000 com.apple.kext.AMDSupport (1.2.8) <64 63 12 11 7 5 4 3 1> 66 0 0xffffff7f86dc6000 0x181000 0x181000 com.apple.kext.AMD4800Controller (1.2.8) <65 63 12 11 5 4 3 1> Romains-iMac:~ Romain$ kextstat | grep ATI 67 0 0xffffff7f8374f000 0x233000 0x233000 com.apple.ATIRadeonX2000 (10.0.0) <63 12 7 6 5 4 3 1> Romains-iMac:~ Romain$ ioreg | grep ATY | | | | +-o ATY,Motmot@0 <class IONDRVDevice, id 0x100000238, registered, matched, active, busy 0 (28 ms), retain 8> | | | | +-o ATY,Motmot@1 <class IONDRVDevice, id 0x100000239, registered, matched, active, busy 0 (0 ms), retain 8>Any idea? :-) Link to comment Share on other sites More sharing options...
artur_pt Posted November 16, 2014 Share Posted November 16, 2014 hello try to use this injector + original kext LegacyATI4800Controller.kext.zip and must the kext-dev-mode=1 u use chameleon.. using clover u place the injector in /Clover/kexts/10.10 good hack Link to comment Share on other sites More sharing options...
Romano2K Posted November 16, 2014 Author Share Posted November 16, 2014 hello try to use this injector + original kext LegacyATI4800Controller.kext.zip I was using a file named LegacyATI4800Controller.kext when I was using Lion or Mountain Lion. But I'm pretty sure it's not working anymore with Mavericks, at least with Chameleon and the file in /Extra/Extensions. Are you sure it's still working with newer OS X versions? and must the kext-dev-mode=1 I haven't mentionned it, but I'm already booting with kext-dev-mode=1. Isn't it mandatory to be able to use FakeSMC.kext and RealteakRTL8111.kext? u use chameleon.. Sorry but I don't understand this part. using clover u place the injector in /Clover/kexts/10.10 With my current setup, I had no 10.10 folder in /EFI/EFI/Clover/kexts (ESP setup). I had to create it myself, but my computer wasn't able to boot with FakeSMC.kext and RealtekRTL8111.kext in /EFI/EFI/CLOVER/kexts/10.10. It works with these kexts in /System/Library/Extensions. Can I try with LegacyATI4800Controller.kext in /S/L/E? Anyway thank you! Link to comment Share on other sites More sharing options...
artur_pt Posted November 17, 2014 Share Posted November 17, 2014 hello i use clover and inject in cache all my kext from 10.10 folder .. this way i don't need to use the flag kext-dev-mode=1 sorry try this new one .. the kext in yose change name LegacyAMD4800Controller.kext.zip good hack Link to comment Share on other sites More sharing options...
Romano2K Posted November 17, 2014 Author Share Posted November 17, 2014 hello i use clover and inject in cache all my kext from 10.10 folder .. this way i don't need to use the flag kext-dev-mode=1 I understand what you do. But do you know if it's supposed to be working with Clover in ESP? When I tried for the first time, days ago, it wasn't working: FakeSMC.kext was in /EFI/EFI/CLOVER/kexts/10.10 but OS X was hanging right after login. sorry try this new one .. the kext in yose change name LegacyAMD4800Controller.kext.zip good hack I think the name of the file has no consequence, but thank you anyway. :-) Anyway let's try with your LegacyAMD4800Controller.kext in /S/L/E. Here's what I did in Terminal: Romains-iMac:Extensions Romain$ pwd /System/Library/Extensions Romains-iMac:Extensions Romain$ sudo mv /Users/Romain/Downloads/LegacyAMD4800Controller.kext . Romains-iMac:Extensions Romain$ sudo chown -R root:wheel LegacyAMD4800Controller.kext Romains-iMac:Extensions Romain$ sudo chmod -R 755 LegacyAMD4800Controller.kext Romains-iMac:Extensions Romain$ sudo kextcache -prelinked-kernel kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext RealtekRTL8111.kext kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext LegacyAMD4800Controller.kext kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC.kext Romains-iMac:Extensions Romain$Let's reboot and see what happens. :-) Link to comment Share on other sites More sharing options...
artur_pt Posted November 17, 2014 Share Posted November 17, 2014 hello is not only the name u compare the 2 .. anyway it should work from 10.10 folder Last login: Mon Nov 17 18:29:03 on console MacBook-Pro:~ artur_pt$ sudo kextcache -prelinked-kernel Password: MacBook-Pro:~ artur_pt$ good hack Link to comment Share on other sites More sharing options...
Romano2K Posted November 17, 2014 Author Share Posted November 17, 2014 It doesn't work with LegacyAMD4800Controller.kext in /S/L/E. Still no graphics acceleration. But AMD kexts are loaded, according to kextstat: Romains-iMac:~ Romain$ kextstat | grep AMD 44 1 0xffffff7f846fb000 0x11f000 0x11f000 com.apple.kext.AMDSupport (1.2.8) <43 42 12 11 7 5 4 3 1> 45 0 0xffffff7f86dc6000 0x181000 0x181000 com.apple.kext.AMD4800Controller (1.2.8) <44 42 12 11 5 4 3 1> Romains-iMac:~ Romain$ kextstat | grep ATI 82 0 0xffffff7f8374f000 0x233000 0x233000 com.apple.ATIRadeonX2000 (10.0.0) <42 12 7 6 5 4 3 1>What can be wrong?_________ Anyway, in fact, it works exactly the same with kexts in /EFI/EFI/CLOVER/kexts/10.10 and without kext-dev-mode=1. Just for information. :-) Link to comment Share on other sites More sharing options...
artur_pt Posted November 18, 2014 Share Posted November 18, 2014 hello very stange that situation .. sure u are doing something wrong.. http://www.insanelymac.com/forum/files/category/3-graphics-cards/ try to talk with fantomas1 .. good hack Link to comment Share on other sites More sharing options...
Romano2K Posted November 18, 2014 Author Share Posted November 18, 2014 hello very stange that situation .. sure u are doing something wrong.. http://www.insanelymac.com/forum/files/category/3-graphics-cards/ try to talk with fantomas1 .. good hack Hehe thanks, but I'm already in contact with him. He suggested several solutions in the topic I created in the French section, including injecting through Clover, but none worked. I double checked everything that I did, and even restarted from scratch twice. He's out of idea right now. That's why I created this thread in English. Anyway I just tried to reinstall Yosemite from scratch, this time using Chameleon as the bootloader. I get perfect graphics acceleration easily, just with GraphicsEnabler=Yes and your LegacyAMD4800Controller.kext file in /Extra/Extensions. So it seems to be a problem related to Clover, only I don't know what. Any new idea from this? Link to comment Share on other sites More sharing options...
artur_pt Posted November 18, 2014 Share Posted November 18, 2014 hello u can try to inject the dev id directly in info.plist in the kext... using clover ... but the injector should work also in clover remember .. clover inject the kexts in cache or apply any patch in cache .. sometimes must reboot several times to the kext be in cache i use 2 injectors in clover without any problem .. good hack Link to comment Share on other sites More sharing options...
Romano2K Posted November 18, 2014 Author Share Posted November 18, 2014 hello u can try to inject the dev id directly in info.plist in the kext... using clover ... but the injector should work also in clover remember .. clover inject the kexts in cache or apply any patch in cache .. sometimes must reboot several times to the kext be in cache i use 2 injectors in clover without any problem .. good hack I'm not sure that I waited several reboots before trying yet another solution. But do you remember that the 3 needed kexts were loaded? So the manual Device ID injection was working, isn't it? Link to comment Share on other sites More sharing options...
Romano2K Posted November 20, 2014 Author Share Posted November 20, 2014 Up! :-) Link to comment Share on other sites More sharing options...
Romano2K Posted December 2, 2014 Author Share Posted December 2, 2014 I have restarted from scratch with Yosemite + Clover (last version). I configured Clover step by step, in case it would have learned something to me, but I still get the same result. Here's what I did: Installed Yosemite Rebooted and completed the welcome wizard Installed Clover with standard settings (ESP, RC scripts) Copied my DSDT.aml file to /Volumes/EFI/EFI/CLOVER/ACPI/patched Copied FakeSMC.kext and RealtekRTL8111.kext to /Volumes/EFI/EFI/CLOVER/kexts/10.10 1. I then tried to reboot once, it went fine. I executed ioreg | grep ATY, which returned nothing, then kextstat | grep AMD then ATI, and got AMDSupport.kext and ATIRadeonX2000.kext loaded. 2. Then I enabled Inject ATI True and rebooted. This time ioreg showed that the ATY framebuffer was activated. 3. Lastly I enabled the ATI FakeID with a Radeon HD 4870 ID (0x94401002) and rebooted. As expected AMD4800Controller.kext was loaded. But I still have no QE/CI, graphics acceleration or native resolution. What can be wrong? Damn I'm stuck for weeks now! :-| Link to comment Share on other sites More sharing options...
aww Posted December 3, 2014 Share Posted December 3, 2014 in clover plist, boot section <key>Arguments</key> <string>kext-dev-mode=1</string> this is needed, event if the kext was patched from native kext and current version. i may be incorrect, graphic kexts must be in SLE. Grep bootlog will not give correct kext status. goto: About this mac -> System Report - > Software -> Extension (take a about a minutes to list) You will find your patched kext as unsigned. (whether is loaded or not) if you have 1024x768 and no qe/ci, normally means, no kext of fb were loaded. (likely unloaded by OS X) Why not roll back to chameleon loader. 1 Link to comment Share on other sites More sharing options...
Romano2K Posted December 5, 2014 Author Share Posted December 5, 2014 in clover plist, boot section <key>Arguments</key> <string>kext-dev-mode=1</string> this is needed, event if the kext was patched from native kext and current version. i may be incorrect, graphic kexts must be in SLE. I'm not using any graphics kext here, I'm only using parameters in Clover's config.plist. And it's enough to get AMDSupport.kext, AMD4800Controller.kext, ATIRadeonX2000.kext and the ATY MotMot framebuffer loaded. I've enabled kext-dev-mode but it doesn't help. Grep bootlog will not give correct kext status. goto: About this mac -> System Report - > Software -> Extension (take a about a minutes to list) You will find your patched kext as unsigned. (whether is loaded or not) I'm not using the bootlog, I'm using live commands like ioreg and kextstat. They've been returning exactly the same results as the System profiler's Extensions list until now, but I've double checked and here are the results: *AMD4800Controller is listed as loaded and "obtained from Apple" (my system is in french, I don't know if it's the same words in english) *AMDSupport is loaded too *ATIRadeonX2000 is loaded too I discovered an AMDFramebuffer extension, which isn't loaded, but I don't know it should be. if you have 1024x768 and no qe/ci, normally means, no kext of fb were loaded. (likely unloaded by OS X) ioreg | grep ATY returns two lines with ATY,Cardinal (I specified this framebuffer in Clover's config.plist). It means that it's loaded, isn't it? Why not roll back to chameleon loader. Because I'd like to use iMessage and it's impossible (at least with my knowledge) with Chameleon. And Clover has become some sort of challenge, I don't want to give up after so much time and tries. :-) Link to comment Share on other sites More sharing options...
aww Posted December 5, 2014 Share Posted December 5, 2014 If you do not have any Patched Graphics kexts installed, then this kext-dev-mode=1 is NOT needed. then you should put, FakeSMC, NullCpuPower, Lan, Audio, etc in Clover Kext 10.10 folder. Then ThisMAC->Software->Extensions will show every kext as APPLE, others are not loaded. NONE of those kexts installed in Clover's Folder, will be listed. First, Confirm that is the case. may try this, different version or bared FakeSMC (no plugins) Clover will inject SMBBios info, you may override it , with your chameleon's hardware info. Can you list your graphic info like this, Zotac GeForce GT 630: Chipset Model: Zotac GeForce GT 630 Type: GPU Bus: PCIe Slot: PCI Slot 0 PCIe Lane Width: x16 VRAM (Total): 2048 MB Vendor: NVIDIA (0x10de) Device ID: 0x0f00 Revision ID: 0x00a1 ROM Revision: 70.08.AD.00.1B Displays: SONY AVAMP: Resolution: 1920 x 1080 @ 60Hz (1080p) Pixel Depth: 32-Bit Color (ARGB8888) Mirror: Off Online: Yes Rotation: Supported Television: Yes SAMSUNG: Resolution: 1920 x 1080 @ 60Hz (1080p) Pixel Depth: 32-Bit Color (ARGB8888) Main Display: Yes Mirror: Off Online: Yes Rotation: Supported Television: Yes if all required graphics kexts are loaded (with exception of FB) you may try this following. (i tested similar method on INTEL hdgrahics FB, and succeeded) Find and download a number of patched Kexts known to work with your graphic card (10.9 to 10.8). Extract the FB from it add kext-dev-mode=1 boot flag install one at time, to test the FB will be loaded with you current KEXT. Link to comment Share on other sites More sharing options...
Romano2K Posted December 6, 2014 Author Share Posted December 6, 2014 If you do not have any Patched Graphics kexts installed, then this kext-dev-mode=1 is NOT needed. then you should put, FakeSMC, NullCpuPower, Lan, Audio, etc in Clover Kext 10.10 folder. Then ThisMAC->Software->Extensions will show every kext as APPLE, others are not loaded. NONE of those kexts installed in Clover's Folder, will be listed. First, Confirm that is the case. I'm not using any patched kext, I'm only using third party kexts in /CLOVER/kexts/10.10 and Clover parameters. So I can confirm that I haven't any unsigned kexts in the Extensions list. ____ may try this, different version or bared FakeSMC (no plugins) Clover will inject SMBBios info, you may override it , with your chameleon's hardware info. Can you list your graphic info like this, Zotac GeForce GT 630: Chipset Model: Zotac GeForce GT 630 Type: GPU Bus: PCIe Slot: PCI Slot 0 PCIe Lane Width: x16 VRAM (Total): 2048 MB Vendor: NVIDIA (0x10de) Device ID: 0x0f00 Revision ID: 0x00a1 ROM Revision: 70.08.AD.00.1B Displays: SONY AVAMP: Resolution: 1920 x 1080 @ 60Hz (1080p) Pixel Depth: 32-Bit Color (ARGB8888) Mirror: Off Online: Yes Rotation: Supported Television: Yes SAMSUNG: Resolution: 1920 x 1080 @ 60Hz (1080p) Pixel Depth: 32-Bit Color (ARGB8888) Main Display: Yes Mirror: Off Online: Yes Rotation: Supported Television: Yes Here is the result on my Mavericks + Chameleon hard drive: ATI Radeon HD 4850 Series : Jeu de composants : ATI Radeon HD 4850 Series Type : Processeur graphique (GPU) Bus : PCIe Longueur de la voie PCIe : x16 VRAM (totale) : 1024 Mo Fournisseur : ATI (0x1002) Identifiant du périphérique : 0x9442 Identifiant de révision : 0x0000 Moniteurs : S2433W : Résolution : 1920 x 1200 Profondeur de pixels : Couleurs 32 bits (ARGB8888) Numéro de série du moniteur : 22391089 Moniteur principal : Oui Miroir : Désactivé Connecté : Oui Rotation : Géré ____ if all required graphics kexts are loaded (with exception of FB) you may try this following. (i tested similar method on INTEL hdgrahics FB, and succeeded) Find and download a number of patched Kexts known to work with your graphic card (10.9 to 10.8). Extract the FB from it add kext-dev-mode=1 boot flag install one at time, to test the FB will be loaded with you current KEXT. How can I check if the FB is loaded or not? I don't know where to look here. Link to comment Share on other sites More sharing options...
Romano2K Posted December 6, 2014 Author Share Posted December 6, 2014 Ok I don't know why I haven't done this sooner: here's a comparaison of what ioreg and kextstat return in my working Mavericks + Chameleon installation and non-working Yosemite + Clover installation. Mavericks + Chameleon I've just enabled GraphicsEnabler and added my Device ID directly into AMD4800Controller.kext. Human:~ Romain$ kextstat | grep ATI 69 0 0xffffff7f81618000 0x22f000 0x22f000 com.apple.ATIRadeonX2000 (8.2.4) <64 11 7 6 5 4 3 1> Human:~ Romain$ kextstat | grep AMD 66 2 0xffffff7f81f06000 0x127000 0x127000 com.apple.kext.AMDSupport (1.2.4) <65 64 11 10 7 5 4 3 1> 67 0 0xffffff7f82064000 0x180000 0x180000 com.apple.kext.AMD4800Controller (1.2.4) <66 64 11 10 5 4 3 1> 70 0 0xffffff7f8202d000 0x24000 0x24000 com.apple.kext.AMDFramebuffer (1.2.4) <66 64 11 10 7 5 4 3 1> Human:~ Romain$ ioreg | grep ATY | | | | +-o ATY,MotMot@0 <class AtiFbStub, id 0x100000246, registered, matched, active, busy 0 (25 ms), retain 8> | | | | | +-o ATY_MotMot <class AMDFramebuffer, id 0x100000248, registered, matched, active, busy 0 (25 ms), retain 19> | | | | +-o ATY,MotMot@1 <class AtiFbStub, id 0x100000247, registered, matched, active, busy 0 (0 ms), retain 8> | | | | | +-o ATY_MotMot <class AMDFramebuffer, id 0x10000024e, registered, matched, active, busy 0 (0 ms), retain 15>____ Yosemite + Clover Inject ATI true, FakeID 0x94401002 (Radeon HD 4870's Device ID), FBName Cardinal (saw this in AMD4800Controller). This is as far as I can get. Romains-iMac:~ Romain$ kextstat | grep ATI 67 0 0xffffff7f8374f000 0x233000 0x233000 com.apple.ATIRadeonX2000 (10.0.0) <63 12 7 6 5 4 3 1> Romains-iMac:~ Romain$ kextstat | grep AMD 65 1 0xffffff7f846fb000 0x11f000 0x11f000 com.apple.kext.AMDSupport (1.2.8) <64 63 12 11 7 5 4 3 1> 66 0 0xffffff7f86dc6000 0x181000 0x181000 com.apple.kext.AMD4800Controller (1.2.8) <65 63 12 11 5 4 3 1> Romains-iMac:~ Romain$ ioreg | grep ATY | | | | +-o ATY,Cardinal@0 <class IONDRVDevice, id 0x100000238, registered, matched, active, busy 0 (28 ms), retain 8> | | | | +-o ATY,Cardinal@1 <class IONDRVDevice, id 0x100000239, registered, matched, active, busy 0 (0 ms), retain 8>So in fact the only thing missing is the proper framebuffer. The "only thing" to do is to understand why it's not loaded. Any new idea? :-) Link to comment Share on other sites More sharing options...
ameris_cyning Posted December 6, 2014 Share Posted December 6, 2014 Post this in Clover's general discussion page. This could be a bug. Link to comment Share on other sites More sharing options...
Romano2K Posted December 6, 2014 Author Share Posted December 6, 2014 Post this in Clover's general discussion page. This could be a bug.To be honest I've already started to seek help in the ProjectOSX's Clover section. I just cross-posted this comparaison, I'll wait for an answer. In the meantime if by any chance anyone as an idea of how to fix this, feel free! ;-) I'm willing to reinstall from scratch if it's needed, I've done it 5 times a day these days. Link to comment Share on other sites More sharing options...
Maniac10 Posted December 7, 2014 Share Posted December 7, 2014 Why do you specify the Cardinal FB (does it even exist?) and a 4870 ID? You're injecting wrong information, just let Clover decide what to do, it already knows which FB corresponds to your graphics card: { 0x9442, 0x00000000, CHIP_FAMILY_RV770, "ATI Radeon HD 4850 Series", kMotmot }, Link to comment Share on other sites More sharing options...
Romano2K Posted December 7, 2014 Author Share Posted December 7, 2014 Why do you specify the Cardinal FB and a 4870 ID? You're injecting wrong information, just let Clover decide what to do, it already knows which FB corresponds to your graphics card: { [/size]0x9442[/size],[/size] [/size]0x00000000[/size], CHIP_FAMILY_RV770,[/size] [/size]"ATI Radeon HD 4850 Series"[/size],[/size] [/size]kMotmot[/size] [/size]},[/size] I've already tried many things. The first thing I did with Clover was trying to replicate my Chameleon configuration, ie just enabling Inject ATI (which is the closest thing to enabling GraphicsEnabler from what I understand) and adding the Radeon HD 4850's Device ID to AMD4800Controller.kext, modifying Info.plist then using Clover parameters. If I don't specify the FB, ioreg gives exactly the same result but with MotMot instead of Cardinal. I've tried Cardinal because there are references to it in the AMD4800Controller.kext. Link to comment Share on other sites More sharing options...
Maniac10 Posted December 7, 2014 Share Posted December 7, 2014 Cardinal is like the chip's family name or something like that, not a framebuffer. The actual problem may come from the mix of solutions you've piled on your system. adding the Radeon HD 4850's Device ID to AMD4800Controller.kext, modifying Info.plist then using Clover parameters Just inject the model id with FakeID (0x94421002), enable the related DSDT fixes (AddDTGP_0001+FixDisplay_0100) and it should work. From the wiki: This substitution will work if InjectATI (Nvidia, Intel) is set. Or if FixDsdtMask set for the device. Link to comment Share on other sites More sharing options...
Romano2K Posted December 7, 2014 Author Share Posted December 7, 2014 Cardinal is like the chip's family name or something like that, not a framebuffer. The actual problem may come from the mix of solutions you've piled on your system. I have to admit I'm trying everything since it's been several weeks that I'm trying to fix this and I don't totally understand everything. Just inject the model id with FakeID (0x94421002), enable the related DSDT fixes (AddDTGP_0001+FixDisplay_0100) and it should work. From the wiki: I'm using a DSDT.aml file fixed a few years ago by some expert from the myHack forum, as DSDT editing is beyond my abilities. I think that a DSDT file overrides fixes chosen with Clover, am I right? Is there anything I have to do besides moving my DSDT.aml file so that I don't get a kernel panic? Like disabling AppleCPUPowerManagement somehow? I'm using an old GA-G31M-S2L motherboard with a Core 2 Duo E8400 CPU. Anyway thank you for your help, I'm regaining hope. :-) Link to comment Share on other sites More sharing options...
aww Posted December 7, 2014 Share Posted December 7, 2014 DVI output is working, but it's stuck to 1600 x 1200 pixels (my screen is 1920 x 1200), and there's no hardware acceleration. And there's something strange, kexts and framebuffer are loaded: If your Res is other than 1024x768, means FB was loaded, No QE CI means Plugin or kext is loaded. Does Graphic memory size show in 10.10 as 1024MB or something else. If you move kext and plugin bundles around, may have changed PERM AND OWNER by accident. Try UTILITIES - > DISK UTILITY -> REPAIR PERM REBOOT IF GRAPHIC MEMORY WAS INCORRECT, TRY graphic section in clover plist, add VRAM 1024 HCL 10.9 at least one user said, patch is required for your card google HCL 10,9 ATI 4850 this is the link for the patch "QE_CI Exotic patch" google hcl 10.10 ati 4830 also need patch. THIS IS THE LINK POSTED BY 4830 USER QE_CI Exotic patch Link to comment Share on other sites More sharing options...
Recommended Posts