Welcome to AMD OS X

Why not register now to gain full access.

User avatar
by: Nimraynn
#36830
Hi,

I expect I've missed something glaringly obvious here, but I can't work it out :D

I've installed Enoch to my EFI partition and when I tried to boot from it originally, it didn't seem to boot into the OS properly. I'd either get an error or I'd get a blank screen... Now, the USB boot image seems to use Enoch and was able to boot fine, although I was having some weird graphics issues. I could only get it to boot properly with nv_disable=1 to start with. I'd installed the nVidia web drivers to try and get my GTX 560 working, but if I now stopped specifying nv_disable=1, I couldn't boot graphically. It would just hang and my monitor would go to sleep. I tried even specifying nv_disable=0 and I noticed in the boot sequence it stated it wasn't going to load the NVDA as it was being disabled by nv_disable=1. :shock:

Anyway, I'd been reading about a few people saying they needed to make some tweak to their bootloader so I thought, well, I haven't got to the point of installing a bootloader yet, so maybe if I do that now, I might be able to fix the graphics sooner... Had trouble installing Clover, which after reading another thread, seems to be due to older CPU's not supported SSE4 (I have a Phenom II X6 1090T Black)... so I tried to installed Enoch. That works with the USB, so why not with the installed version? :D

Installed it, rebooted and it wouldn't load properly. Tried a few flags, couldn't get it to load at all, even with nv_disable=1... so I booted back from the USB stick and I compared the EFI partitions on the USB and HDD. I could see a fair few differences. There were some extra flags specified on the USB that weren't on the HDD, there were a few extra files on the USB as well like the SMBIOS.plist and kernel.plist files.

So I took a backup of the files to the desktop & copied over the files from the USB. Rebooted and this seems somewhat better. I can essentially emulate booting from the USB now, it works if I specify the nv_disable=0 or 1 flags. Woo, we're getting somewhere.

Now after some Googling and tinkering, I've eventually found that GraphicsEnabler=Yes sorts my graphics out... sort of. When I specify this command, I get the start of the text scrolling up the screen and in this output, I can now actually see some genuine graphics card info. Result! There is then the point where the kernel starts to load, the font changes on the screen and you start to see the verbose output. This doesn't happen anymore, the screen goes completely blank... and it'll stay blank for a good 5-10 minutes before eventually, PING! Up comes the login screen in a proper resolution. I don't get any verbose output at all, no loading screen, nothing. It literally looks dead for a period. The only give away difference is that my monitor has a row of 6 LED lights along the bottom of it. When I have a graphics driver issue, these all go out and the screen goes to sleep... but when it's loading like this, the lights stay on. The monitor never goes to sleep, it just dims to a power save mode because the screen is completely blank.

So for a start, is there some parameter that might be missing or useful to help speed it up a bit? Is that a graphics driver thing, or something else? It boots a lot quicker with nv_disable=1 but obviously I don't get decent resolution.

After we forget that problem, I now know that GraphicsEnabler=Yes allows me to boot with working graphics driver, great. Do I want to type that every time I boot up? Of course not... so I'm trying to setup the bootloader to use that flag as my default set of flags... what I've gathered from a quick Google search and my own poking around is that there is a string of flags in the org.chameleon.Boot.plist file in the EFI partition's /Extra directory. This was set to:
Code: Select all
<string>-f -v npci=0x3000</string>
I've worked out that I need USBBusFix=Yes and GraphicsEnabler=Yes, so I change that line to:
Code: Select all
<string>-f -v npci=0x3000 USBBusFix=Yes GraphicsEnabler=Yes</string>
I reboot the machine, but I can see that it hasn't picked up at least the GraphicsEnabler as the part of the output I was seeing where it shows info about my graphics card, it's not there unless I manually specify it still. I'm not sure if it's picked up the USBBusFix=Yes... My USB keyboard & mouse is working, so I assume it has, but I've been typing it manually for ages and not sure if I've done something else to mean I don't need it :lol: Although oddly my USB flash drive is a bit temperamental whether it'll actually mount after a reboot or not...

Am I doing something wrong? Any ideas why this isn't picking up the boot flags from the file?

The complete org.chameleon.Boot.plist file looks like this:
Code: Select all
<?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>CsrActiveConfig</key>
   <string>103</string>
   <key>Kernel Flags</key>
   <string>-f -v npci=0x3000 USBBusFix=Yes GraphicsEnabler=Yes</string>
</dict>
</plist>
Thanks! and sorry for the long post, I like to describe every step I take in case I've done something stoopid :D
Post Merged
You guys are gonna love me. I've done exactly the same as I did in my previous post :lol: :lol: I've spent ages trying to work this out... posted the thread, then instantly worked it out myself :lol: :lol:

I was editing /Extra/org.chameleon.Boot.plist in the EFI partition... but I've since realised there is an /Extra/org.chameleon.Boot.plist in the OS partition as well. I've just edited that one to add the GraphicsEnabler=Yes config & rebooted... my BIOS threw an unexpected wobbly at this point, but after I've solved that problem, I've tried booting again and with no manually specified flags, I can see that it has picked up the GraphicsEnabler flag this time.

So just me being stoopid and editing the wrong file :D

Any pointers as to why it takes so long to boot with the GraphicsEnabler flag would be greatly appreciated though
Post Merged
Just having a look in the Console.app, I don't know if this means anything to anyone?
Screen Shot 2018-01-24 at 21.54.34.png
Nothing seems to have happened between 21:43:00 and the BOOT_TIME indicator at 21:50:20. All this time, I'm just sitting with a blank screen.
You do not have the required permissions to view the files attached to this post.

 Advertising

User avatar
by: Shaneee
#36832
The boot file should be like this for those options,
Code: Select all
<?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>CsrActiveConfig</key>
   <string>103</string>
   <key>GraphicsEnabler</key>
   <string>Yes</string>
   <key>USBBusFix</key>
   <string>Yes</string>
   <key>Kernel Flags</key>
   <string>-v npci=0x3000</string>
</dict>
</plist>
The reason it was slow was the -f kernel flag. That ignores the caches and loads all the files on each boot. Try with that configuration :thumbup:
User avatar
by: Nimraynn
#36835
Top man, thanks for the quick reply :thumbup:

Good to know those options can be specified separately like that. I did manage to get it working in the Kernel Flags key once I worked out I was editing the wrong version of the file, but that looks a cleaner way of doing it so I've switched to that.

Removing the -f flag seems to have reduced the boot time from about 10 minutes down to 2 minutes or so. I think that's partly down to having installed it on a dodgy old conventional hard drive. I wouldn't be surprised if it pops on me soon, but I'm doing this for the experience and the knowledge. When I'm happy, I'll get a second SSD in there (Win10 on my current SSD, not big enough for two OS)

Cheers for the tips :thumbup:
Post Merged
I think -f (and possibly my stoopid again) has introduced more issues.

So once I booted into it for the first time, the first thing I did was grab a Realtek RTL8111 kext for my network card. Naturally, this would make things a lot easier as I don't have to keep swapping USB sticks around to download new files.

If I'm honest, I can't remember if I did anything much more than just throwing it in /System/Library/Extensions, but it seemed to work fine after a reboot... so happy days, I have network. I actually can't remember which download I used, but I think it was this one: https://www.osx86.net/files/file/119-re ... 8111-kext/

Fast forward to removing the -f from the bootloader. Now when I load up into OS X, the ethernet interface is down stating that the cable is unplugged. The cable is most definitely not unplugged & the router is most definitely up. Reboot, nothing. Reboot and manually add the -f flag back, my ethernet interface is now up and working.

Ok, so I thought maybe I didn't do something with the kext cache and it needs rebuilding... So I opened Kext Wizard & ran the maintenance tool to rebuild the kext caches. Reboot the machine, no -f flag... machine doesn't boot at all now. Black screen. Nothing. Monitor is still on, but there is no text, no graphics, no nothing. Left it abut 15 minutes, nothing. Rebooted and threw the -f flag back into the mix, same thing again. Doesn't load at all. Left it for a good 30-40 minutes, nothing at all. Not a peep.

Come back to it this evening and tested with and without the -f flag again, still nothing. Tried it with just the -x flag to get it into safe mode. Took a while, but it loads! Graphics are choppy as hell but oddly in full 1920x1080 resolution... so not sure what the graphics are doing, but either way, it's booted.

Checked the network and it's connected, no problems. Checked Kext Wizard and it shows as a loaded kext. Ran another cache in Kext Wizard just to be sure and it says it completed, rebooted with no flags, nothing.

I'm going to keep poking around, but any ideas why the network is acting strangely without the -f, and any ideas why I can't boot at all after a kext cache task?
User avatar
by: Shaneee
#36883
Kext Wizard is depreciated. Download Kext Utility and use that instead. That'll repair any permissions and rebuild the caches. First though remove the RTL8111 kext you added and use the latest one from the dev here,
Code: Select all
http://www.insanelymac.com/forum/files/file/88-realtekrtl8111-binary/
User avatar
by: Nimraynn
#36886
Thanks. I've just done a property comparison of the kext I've got and the one you've linked me to and they're the same. I must've got the wrong link above :)

Oddly, the machine booted with what I think was just -f... but it took about 45 minutes. I started it, then got called out for work so stopped playing with it. I'd removed the Realtek kext before that reboot to see if it made a difference not being there. Judging by the speed, I don't think it did.

Reinstalled the kext and network is working for at least this session, so I've downloaded Kext Utility and running that now. I'll see what the results are :)

Thanks
User avatar
by: Shaneee
#36888
Sure thing keep me updated. Quote my post if you need help so I get a notification.
Kaunain liked this
User avatar
by: Nimraynn
#37091
Shaneee wrote:
Thu Jan 25, 2018 8:26 pm
Sure thing keep me updated. Quote my post if you need help so I get a notification.
Well, Kext Utility didn't seem to help. I'm not sure if I did what I needed to, I just ran the Kext Utility app, it did some stuff and I rebooted.

I left it over the weekend and tonight I've been messing around and if I'm honest, I'm not sure what the hell I've done... so I might've missed some bits here... but this is my current state...

I can't boot it from Enoch on the local disk, but I do appear to be able to load it from the USB. I do, however, have the use the flags:
Code: Select all
-f USBBusFix=Yes nv_disable=1
Pretty much any combination of flags won't boot from the HDD, including those above. I simply get a blank black screen.

I did for a while need to boot with UseKernelCache=No as well, but I managed to fix that one by running: kextcache -prelinked-kernel.

With that working set of USB boot flags, I noticed that during the bootup, it says something about "Found El Capitan pattern, patched!", "Kernel has successfully patched!" or something along those lines... It will then hang at:
Code: Select all
IOAPIC: Version 0x21 Vectors 64:87
If I then hit the enter button on my keyboard, boot continues and it boots up successfully.

Now I reboot the machine and I get stuck on a reboot.
Code: Select all
continuing
Unmount of /home failed (45)
Unmount of /net failed (45)
hfs: unmounted initiated on macOS on device unknown device
done
MACH Reboot
Ethernet [RealtekRTL8111]: Link down on en0
Restart still waiting on AppleUSBOHCIPort
If I hit enter, I then get:
Code: Select all
000170.718291 [email protected]: AppleUSBHostPort::forcePowerGated: kPowerStateSuspended completed with 0x00000000 after 55999ms
Nothing then happens until I hit the reset button on the PC.

If I now reboot and try to boot from the HDD again, I use the same boot flags as before:
Code: Select all
-f USBBusFix=Yes nv_disable=1
Now, I don't see the same messages about patching the kernel. I do see this though:
Code: Select all
Kernel patcher: end!

[ KEXTS PATCHER START ]
Unable to find the _PrelinkInfoDictionary, kexts patcher skipped. Kexts patcher: end!
I don't know if that actually means anything... It then does a few more bits, then takes me to my favourite blank black screen.

Now, when I did have it booting off the HDD previously, I found that using the boot flag GraphicsEnabler=Yes sorted my graphics out... nv_disable=1 was great for the USB while I didn't have a working graphics driver, but after installing the NVidia Web drivers, installing Enoch and using GraphicsEnabler=Yes, I was getting full resolution on both my screens...

If I try to boot from the HDD using these boot flags, I get graphics card info in the initial boot messages, then just get black screened:
Code: Select all
-f USBBusFix=Yes GraphicsEnabler=Yes
If I try to boot from the HDD using these boot flags, I don't get graphics card info in the initial boot messages, but still get black screened:
Code: Select all
-f USBBusFix=Yes nv_disable=1
Now after all this, I've left it for 11 minutes as I know at one point it did take about 10 minutes to boot. It didn't appear to be doing anything, I hit enter a few times and it's just booted up. Typical! I've not been able to get it to do this! This was with the GraphicsEnabler set of options... and I'm booted with both screens running at 1920x1080 no problems.

So... now that I've some how managed to get it to boot... any ideas what i've done to get it to this weird state or how I might be able to fix / troubleshoot it?

I'd like to also work out the long boot time. 11 minutes is a very long time. I can try again without the -f flag, but when I was last at this stage, removing the -f flag broke my network driver... and I'm worried it'll take me hours to get it to boot again :P

Any help much appreciated! Sorry for the long posts :)
Post Merged
Ok, I just rebooted it off the HDD bootloader again, but this time I removed the -f flag, so I'm just running:
Code: Select all
USBBusFix=Yes GraphicsEnabler=Yes
Also tried just GraphicsEnabler=Yes... pretty much any boot string without -f, I get the following:
Code: Select all
- Decompressing Kernel using lzvm
[KERNEL PATCHER START ]

Will patch for 15.2.0 kernel version compatible. 

KernelBooter_kexts state: enabled!
KernelPm state: disabled!
KernelLapicError state: disabled!
KernelLapicVersion state: disabled!
KernelHaswell state: disabled!
KernelcpuFamily state: disabled!
KernelSSE3 state: disabled!
- Searching for booter extensions pattern:
Found El Capitan SIP pattern: patched!
Found El Capitan EXT pattern: patched!
2 substitution(s) made.
Kernel patcher: end!

[ KEXTS PATCHER START ]
Kexts patcher: end!

Kernel overflows available space
This is a non recoverable error! System HALTED!!!
I'm just booting back up with the -f flag. I've got past this stage, boot started at 22:08. It's 22:12 now and I've got a blank screen. I hope it springs into life in about 6 minutes time :P
User avatar
by: Shaneee
#37092
Try booting with -x -f -v GraphicsEnabler=Yes npci=0x2000

You may have removed a kext by accident or something else has changed. Hard to say what though.
User avatar
by: Nimraynn
#37179
Thanks for your assistance :) I think I'm there now...

So where I've messed about trying to get this to work for a while, I'm not sure what exactly I did to break it so much... with more of an idea what I'm doing now, I decided to start from the beginning again. I could get it to boot with just -f GraphicsEnabler=Yes USBBusFix=Yes, but it would take 11 minutes every time to boot. I couldn't boot without -f at all, and I think I broke it more trying to fix it...

Made a fresh install this evening, and I noted down every single step that I took so that I could try to document and pin-point exactly where it went wrong.

I was finding that I was still getting the IOAPIC hang on boot, even with the USB installer, but hitting any keyboard button would make it progress. I managed to fix this by disabling C1E Support in the BIOS. I installed the RTL8111 kext and got my network working, no problems. I found that using GraphicsEnabler=Yes works and recognises my GTX 560 without even needing NVidia's own drivers. Installed VT1708S kext for my audio and that is all working nicely too.

I think that is pretty much there, I can't see (yet) anything that doesn't work properly. Boot time has been reduced to about 1 minute 30 seconds now which is probably just the condition of the hard drive. When I've got some spare cash, I'll get an extra SSD to run alongside my Windows 10 SSD and we should be flying.

Thanks again for your help in getting this running :)
Screen Shot 2018-01-31 at 23.03.35.png
You do not have the required permissions to view the files attached to this post.
Shaneee liked this
User avatar
by: Shaneee
#37180
Not a problem. If you've got a spare HDD you can Clone the full drive as a backup just in case.

Ok cool, and do I have to add the kext folder that[…]

but my VEGA 56 also encountered the same error . […]

Crash at installation screen

Hey guys! So I've been having problem installing A[…]

Hmm weird. I'm using the lastest 17h but my OpenCL[…]