Jump to content
Sign in to follow this  
Followers 0
Bounc1ngbanker

Write up : Installing OS-X 10.12 Sierra on Dell T5610 Dual Xeon (UEFI)

10 posts in this topic

Recommended Posts

I recently managed to install OS-X 10.12 Sierra on a Dell T5610. I was unable to find any information on the web from anyone who did it, so I thought I would write it up as a useful guide. I have tried to write it in simple language. I know that I could have personally used this sort of simple information when I started this install.I'm an IT professional and this is my first mackintosh install and it's been an interesting experience - although not helped by the real lack of coherent and organised information on the web. Lots of rumours, guesses, smoke and mirrors.

Please bear in mind that this guide was the order in which I did it. There might be a better way - because it was a learning process.
So you could probably shorten this. But it will hopefully give hope to anyone trying to do it that it's possible.

Things I tried first.
---------------------

1. I tried to install Sierra directly using a bootable USB and clover. Regardless of what I tried, I never managed to get past a white 'no entry' sign with an error 'still waiting for root device'. I gather this is because the machine lost connection to it's USB 2.0 ports half way through the procedure.

Software I used

  • Clover bootloader
  • Clover configurator
  • Plus some additional kext files (see below) that I downloaded from the Web.

I did not use a certain bad, cartoonish post-install piece of software with a name similar to murderbeast.  That's because I found that you wind up with all sorts of files all over the place that you don't want, and it's hard to work out what it's doing. 

 

What is a kext?

Kext stands for 'kernel extension' and is similar to a Windows driver/Dll in the way it works. Kexts are found in a standard location on the mac os hard drive. Extensions usually go in /Library/extensionsand if they are there then that has the advantage that the mac hoots quicker because they are in the cache, but has the disadvantage that you can't easily get rid of them if it breaks. Some kexts need to be in that location tm work properly. l Kexts can also be injected into the os at boot time by clover and you make this happen by putting them in /efi/clover/kexts (which is in the efi partition of your mac or USB boot drive). This is convenient because you can easily enable and disable kexts from within clover and so it's not so big a tragedy if you accidentally mess up.

 

Certain kexts such as  FakeSMC.kext are mandatory to get the install working.  Other users will require others according to requirements. 

For the Dell T5610 the kexts you will need to start with are:

  • FakeSMC.kext
  • USBInjectAll.kext
  • VoodooTxtSync.kext (for your relevant CPU - 6 core/8 core etc)
  • AppleIntelE1000e.kext

 

BIOS on the machine

Before I started, I installed the latest Dell BIOS (in my case it was version A14) from the Dell website:

http://www.dell.com/support/home/us/en/04/product-support/product/precision-t5610-workstation/drivers

 

I downloaded the BIOS onto a USB2 stick and then rebooted the machine. Then on reboot, hold down F12 and enter the 'one time only' boot menu. Select 'Flash BIOS' and then in the 'choose file' section at the top click on the (,,,) icon and select the BIOS that's on your USB stick. It's an executable (.exe) file that you downloaded earlier.  If all goes well, it should be recognised and you should be able to flash your BIOS. 

Warning. Do not power off your machine whilst flashing the BIOS. It will render the machine unusable and you will have real problems recovering it. So ensure that your power cords are connected and you are not likely to have a power cut!  I will not be responsible if you break your machine because you did something wrong.  :) 

 

 

Steps that I followed

I installed Yosemite 10.10.5 first. I did that because I gather Yosemite treats USB ports differently than Sierra does with far less reliance on correct ACPI information.
Then, I upgraded the settings in clover using clover configurator and upgraded to Sierra 10.12 from within MacOS (i.e. - not using a USB at all).

You will need a USB mouse and keyboard plugged into a USB2 port. A PS/2 Mouse/keyboard will not work.

You will need an empty drive on your existing PC. I would suggest installing MacOS on an empty additional drive rather than going through the hassle of trying to dual-boot windows and OS-X from a single drive.

You should use a 16gb USB 2.0 stick in a USB 2.0 port. There is a difference between USB3 and USB 2 sticks in terms of pinout.
On the T5610 I know that the 2 rear (highest) ports next to the keyboard port are USB2 ports I suggest you plug
the keyboard and mouse into those. The front panel (far right) port is a USB2 port. I suggest you put the USB stick in that.


Stage 1 - Install Yosemite
-----------------------------

Create bootable USB

1. Create a bootable UEFI USB of Yosemite on a real mac.
2. Install a clover boot loader to the USB.
3. Mount the EFI partition that was created in step (2) using clover configurator.
4. Ensure that the EFI / CLOVER / Kexts / Other area contains the kexts for: FakeSMC.kext USBInjectAll.kext VoodooTxtSync.kext (for your relevant CPU - 6 core/8 core etc) AppleIntelE1000e.kext


Set up BIOS
1. Hold down F12 when machine is starting and then select 'BIOS setup'
2. Ensure that:
USB3 is disabled
Serial port is disabled
Intel virtualisation technology and Intel virtualisation technology for IO is disabled.
Set boot to UEFI and select USB stick to be highest in the list.
Under POST settings ensure that 'boot speed' is not 'minimal' or 'auto' - it's the 'comprehensive' one you need.

Boot into clover bootloader
Save the BIOS and try and boot from the USB stick. If all goes well, the clover boot loader screen should appear.
Go to 'options' in clover and ensure that:
1. Under 'CPU tuning' you have 'Generate P states' and 'Generate C states'
2. Under 'boot flags' you have nv_disable=1 dart=0 PCIRootUID=1 npci=ox3000 cpus=1 -v

What do the flags do?
-v (verbose) - turns logging on.

cpus=1 (enables only one core. Useful for installing when we aren't sure if we will have issues). You can also use cpus=2, cpus=4 or whatever if you feel like you need to limit the number of cores in some way.

nv_disable=1 disables nvida drivers. The machine boots up in a barebones video mode a bit like default VGA mode on a PC. Once you have the correct drivers you can get rid of that.

PCIRootUID=1 and npci=0x3000 These are a bit of mystery but they appear to be related to PCI bus initialisation. These values work for the Dell T5610 at least.



Attempt to run the installer
1. Go back to main menu and find and boot from the icon that corresponds to your USB stick.
2. If all goes well, you will get lots of lines of debug information and eventually the installer will start.

Problems I encountered during my install

All these messages are generated in the log you can see when you boot using the -v (verbose) option.

1. Installer hangs at appleFsCompressionTypeZlib
Solution: Ensure USB 3 is disabled in BIOS.

2. Installer hangs at PCI configuration Begin
Solution: Ensure npci=ox3000 and PCIRootUID=1 flags are set in clover.

3. Installer hangs randomly during boot
Solution: Ensure that cpus=1 is set for the install.

4. Installer gives white 'no entry' sign and 'still waiting for root device' is visible in the log window during the install. The screen also gets corrupted but you can just read the text.

Solution: Ensure you are using USB 2.0 key, in a USB 2.0 port. If this still doesn't work then you could try modifying the clover install on the USB using clover configurator to add the patches 'Change EUSBo EH01' and 'Change USBE to EH02' (under the ACPI area in clover configurator).

5. Screen goes black on login screen after the 'apple' progress bar.
a ) Ensure that the BIOS is not using 'minimal' or 'auto' initialisation on POST but is fully initialising all the hardware.
b ) Ensure your graphics drivers are correct if not using a native card like a GTX 6xx series card.

Post Install - getting ready to move to sierra
---------------------------------------------------

Make new Mac HD bootable and install clover boot loader.

Once Yosemite was installed, I installed clover on the drive that I had just installed the OS to. It wasn't difficult and it creates the EFI partition and installs clover for you.

I also downloaded 'clover configurator'.

Then.in 'clover configurator' use the Mount EFI option to mount the EFI partition of your bootable USB key.

Then copy the entire contents of the EFI folder from the efi partition on the bootable usb onto your machine in some convenient place in your documents folder.

When copy the entire contents of the partition you should see a folder called EFI and inside that I see folders for 'BOOT' and 'CLOVER'.

Next, after the copy, use clover configurator to 'unmount' the USB EFI partition (you shouldn't need it anymore) and then eject and take out the USB stick. Instead 'mount' the EFI partition from the newly installed MAC OS hard drive you just installed.

Copy the entire contents of the EFI folder (that you just copied from USB onto your documents folder) into the EFI partition on the hard disk. The objective is for the EFI partition in the hard disk to look 'just the same' as the one on the USB stick. So. When you are done, the 'EFI' partition on the hard drive will contain a folder called 'EFI' which has some sub-folders in it.

Download and install carbon copy cloner onto your mac. Use it to back up the 'new Mac hard disk' you just created to another drive.

Use clover configurator to mount the EFI partition of the Mac hard drive just installed.

Ensure that under /ACPI in clover configurator, the following patches were added:
Change EUSB to EH01
Change USBE to EH02
(This is necessary so that the USB 2.0 ports will work in Sierra otherwise you will be unable to log in with no mouse and no keyboard)

Ensure that under 'boot' you also have check marks next to:
FixPIC
FIxUSB
AddDTGP
USB
Generate P States
Generate C States

Now go to 'Boot' and under there you can set the defaults for the clover boot to avoid typing the annoying flags in there every time you boot.

For now, use:
npci=0x3000 verbose(-v) nv_disable=1 cpus=1 and add a custom flag of PCIRootUID=1

Exit clover and it will automatically save the clover.plist file with the amendments in it.

Test booting from the internal Hard drive.

1. Remove the USB key.
2. Restart the machine. Enter the BIOS. Ensure that the drive you just installed Yosemite to, is visible under UEFI boot options, and is top of the list.
3. Exit and try and boot into internal hard drive running yosemite. If all goes well, that should work and you should be able to boot into Mac OS-X without the USB key.

Stage 3 - Upgrading to Sierra
----------------------------------

Download the install Sierra.app onto the 'applications' area of your yosemite install .
Ensure the drive is backed up and that the above configuration is done.
Remove the USB key - you won't be needing it.
Run the installer.

If all goes well, the installer will run correctly. The machine may well reboot/restart a few times during the process. I had a few times when it seemed to have crashed and all seemed lost but it worked in the end. So don't be too quick to reset it. Each time the machine restarts, just ensure that it reboots from the internal hard drive.

Once Sierra is installed you can work on the post steps to make it better.


Post Installation Steps
--------------------------

This is a work in progress. So please forgive if this is not totally comprehensive.

Graphics and getting rid of nv_disable=1

1. When using nv_disable=1 you are not really using the graphics card properly. It's just being used in 'basic' mode so you can install MacOS and actually see something on the screen.

What I did was the easiest option - I went to Ebay and I bought a 100% compatible graphics card and stuck it in the machine in place of the one that was in there.

The Nvidia Quadro NVS310 card I had in there I couldn't get to work properly. It wasn't a very expensive card.
So I bought an Asus GTX650 on eBay for 25 pounds.
I have read that the Nvidia GTX 5xx and 6xx series are 'out of the box compatible' with the Mac OS.

I put a new graphics card in there and then once I was happy that it worked, I used clover configurator to remove that entry from the startup. You can temporarily remove it manually to see if it works of course.

Note: The Machine is using a VGA monitor as part of a three monitor set and it works...
It is possible to use three monitors at once (including a VGA monitor) with this cheap card.

The Asus GTX650 works perfectly. In this machine with MacOS. It has three ports. One DVI-D , One HDMI and one VGA.
I have three monitors connected to it. An LG 34uc88 QHD connected to DHMI, and two nondescript LCD panels connected to the other inputs, one using VGA and one using DVI-D. The mac recognises all of them and all three work just fine. I didn't expect that, because others in forums have maintained that a VGA monitor would not work


2. Get rid of cpus=1 so you can use all cores.
My machine had 2 8 core xeon cpus. It wasn't ideal to be running on one core only. However, it would randomly crash when trying to boot without that flag.
To fix it, I had to install the correct version of VoodooTSCSync.kext in CLOVER/Kexts/Other.

I tried using a tool I found on this site to create a 'custom' VoodooTSCSync.kext (the tool was called VoodooTSCSyncConfigurator). It didn't work for me. I did, however find a .kext file that did work for me. If you google "common kexts and other downloads for Hackintosh Mark With Tech" you will find the place where I found the VoodooTSCSync.kext file that worked for me. Once installed, I was able to boot without cpus=1

3. Ensure that network works.
I ensured that the clover patches (under ACPI in clover configurator) for 'Change EUSB to EH01' and 'Change USBE to EH02' were checked. This was because I used a tool called IORegistryExplorer.app to examine the machine, and I noticed that my USB ports appeared to be called things like 'EUSB' and so forth. Once that was done, network, USB and sound started working much better.

I also ensured that the appleIntele1000e.kext file was installed.

4. Ensure that sound works.
The HDMI sound works out of the box if you use a compatible graphics card. In order to get the sound working, I used the VoodooHDA.kext to get some sort of sound out of the rear headphone jack. That works, but I also understand that it's a bit of a hack and it's not the best solution.

I feel that the machine would benefit from a complete custom DSDT file - but I haven't been able to do that yet. I'll have to read more about ACPI first.

5. Ensure that sleep works.
Sleep has been a problem. And it's still a problem for me. I gather that you need graphics, USB and everything to be pretty perfect before the sleep will function OK.
The best results that I have had (so far) are so use clover flags darkwake=1 and also ensure that the kext NullCPUPowerManagement.kext is NOT included anywhere. The computer seems to do just fine without that.

What happens right now, is that the computer sleeps just fine, and even wakes up with a mouse movement, the monitors come on, but there is no USB mouse/keyboard anymore so it has to be restarted. This is therefore a work in progress.

6. Ensure that USB3 works
I have not so far managed to get USB3 working. When it is enabled in the BIOS, it hangs just after AppleFSCompressionTypeZlib load succeeded.
If I get further, I'll amend this guide.

7. Ensure that apple magic mouse and keyboard work correctly.
To do this, I have ordered a bought an adapter from amazon which converts the Mac wifi-bluetooth card to a PCI card. Then you can buy a mac wifi-bluetooth card on eBay for about 25 pounds, plug it in, and have native bluetooth/wifi support with no issues, use an apple magic mouse and so on.


Stage 4 - Dual booting with windows ten
-----------------------------------------------

You may wish to dual-boot windows with your install. If you have an UEFI install of windows 10, then there's no problem. You can do that using clover and it will see it just fine.
However, if you are running windows 10 and have it running in 'legacy' mode for whatever reason, then you will need to convert the windows install to UEFI before you can dual-boot it using clover (assuming you are using UEFI boot for your Mac install).

Converting windows ten to UEFI.
It's possible to do this 'in place' without re-installing windows.

Steps.
1. Log onto windows 10 (using legacy boot in the BIOS) and make a recovery USB using the tool in windows.
2. Boot from that USB.
3. When the win10 recovery screen comes up, select 'troublehoot' / 'advanced' / 'command prompt'
4. try cd c: then dir.. if you don't see your windows system disk try cd d: then dir and so on... until you find it.
5. Navigate to windows/system32.
6. run mbr2gpt /convert
7. wait for it to finish. (It's quite quick) and then you can restart, go back into the BIOS, re-enable UEFI boot, and select your 'mac' drive with the clover bootloader at the 'top' of the list. Then, when you boot the machine, clover will load, and you will see your PC and Mac installs ready to be booted from.

Hiding unnecessary partitions in clover.
Once you've done that, you will probably have a bunch of partitions in clover that you don't want to see. You can hide those strange windows partitions in clover by using 'clover configurator' and selecting the 'GUI' tab and then unselecting 'legacy'.

Choosing default boot and timeout in clover
Whilst you have 'clover configurator' open, navigate to the 'boot' tab and you can select the default boot volume and the timeout before it auto-boots to that volume.


Net result
-----------
A serviceable dual Xeon 32 thread workstation that can dual boot MacOS and windows.

With the above configuration, it's been 100% stable and problem-free. However, as mentioned, I have to live with the issue of not having USB3 and sleep working at the moment.


Hope this is helpful. If anyone has any ideas about my 'sleep' problem or how to write a custom DSDT would be appreciated.
Many thanks

Share this post


Link to post
Share on other sites
Advertisement

Update on USB3, bluetooth, sleep and wake

----------------------------------------

 

I have managed to get USB3 ports recognised at least, and it doesn't crash when it starts up.  Sleep/wake is improving slowly.   DSDT becoming clearer. Will post more information when I'm sure of my facts. 

 

Also installed an apple bluetooth/wifi b/g/ac card  BCM94360CD with an appropriate PCI-express adapter that I sourced from amazon.  The bluetooth and wifi on it worked right out of the box on the Mac.   The bluetooth icon appeared in the control panel.  The wifi symbol appeared in the top bar and it connected fine. 

 

Windows, however, required the drivers from the apple Bootcamp download site in order to recognise the bluetooth controller and hence pair to the apple magic mouse.  

 

Stop unexpected crash/exit from OS-X mouse preferences

I did come across an interesting problem however when I started to use the magic mouse via bluetooth.  This was, that the preferences for 'mouse' started to exit suddenly.  I narrowed this down to the system being unable to play the little help video that appears.  I'm not sure why that is, at this stage.  However, you can work around it by renaming the offending video from the terminal.

 

sudo mv /System/Library/Assets/com_apple_MobileAsset_prefpanes_TrackpadMouseVideos/8d8c589221217f59c640073a8a348ef41934be08.asset/AssetData/MagicMouse.mov /System/Library/Assets/com_apple_MobileAsset_prefpanes_TrackpadMouseVideos/8d8c589221217f59c640073a8a348ef41934be08.asset/AssetData/MagicMouse-fix.mov

Share this post


Link to post
Share on other sites

OK. Current situation with this machine.  USB3 appears to work. At least, a USB3 G-drive connected to a USB3 port appears underneath port XHC, uses GenericUSBXHCI (using IORegistryexplorer) and transferred a 730MB file in 18 seconds. By my reckoning that's 324MB/s which I believe is still possible under USB2 but since that's the fastest device I have perhaps I had better be content with that. 

 

I can not get the machine to work properly from 'wake' whatever I do.   It usually hangs OR doesn't recognise the mouse/keyboard.  Various combinations of darkwake=0,1,2 and missing have been tried. 

 I have a niggling feeling that I have a problem with the USB configuration on the machine because although it reads memory sticks OK, it will not work with my webcam - that does work on a real mac.   

 

I will ask in another thread for ideas.

 

The final configuration at this time is: 

Kexts installed:   AppleIntelE1000e.kext  (onboard internet)

GenericUSBXHCI.kext   (needed to make it boot with USB3 turned on in the BIOS, otherwise it does not boot) 

USBInjectall.kext     (currently injecting all ports - am trying to customise that but running into problems with it) 

 

VoodooTSCSync.kext -  Required to make the machine run with all CPUs active.

FakeSMC.kext - mandatory.

 

FakeSMCACPISensors.kext

FakeSMCCPUSensors.kext

FakeSMC_GPUSensors.kext

FakeSMC_I_PCSensors.kext   }all four needed to make hwmonitor.app work and monitor temperature and so forth. 

 

Edited the DSDT.  I tried to attach a copy but the site wouldn't allow it.  

 

The simple edits in the DSDT perform the following:  

a) Add 'Darwin' to the list of OS that is recognised as an alternative to windows 7.

B) renames port EUSB and UESBE to EH01 and EH02

c) renames port PEX0 (which is the USB3 controller) to XHC

d) renames port NPE4 (which was the graphics card) to GFX

e) renames EH01 and EH02 internal hubs from HUBN to HUB1 and HUB2 

 

Clover boot flags: 

dart =0 ; PICRootUID=1 ; npci=0x3000

 

Clover/ACPI  - Generate P States - yes and Generate C States - yes  (I need to check whether I actually do need these)

 

I have attempted to customise the ports injected by USBInjectall.kext - first by using and editing SSDT-UIAC-ALL.aml and then, when that didn't work, I edited the plist file within the kext package.  However this isn't working for me, when I even remove one unused port the USB3 ports just stop working and I can't work out why that is.    More info to follow if I ever get this working properly.

 

 

  

Share this post


Link to post
Share on other sites

Making very slow progress.   I currently have fully working USB2 ports, the USB3 ports kind of work sometimes if they have something in them on reboot, and sleep still isn't working properly.  Everything else seems ok.  

 

Am investigating how I can modify the video card default VESA modes so that when booting up the apple doesn't look squashed for the first half of the boot sequence.  Watch this space. 

Share this post


Link to post
Share on other sites

Have you tried High Sierra - and if so, any luck? I've had endless problems with my T5610 (dual E2670 v1), have never been able to get it to boot to the GUI with all cores enabled. Some configs would allow me to boot with up to 4 cores & no HT, but as soon as I turn all cores on it'll hang during boot - usually "Unsynchronised TSC for cpu.."

Share this post


Link to post
Share on other sites

No I haven't tried High Sierra. I figured it was such a pain I would leave well alone.  I never did manage to get sleep or USB3 working properly either. I tried a custom DSDT and although the USB port started working (sort of) it crashed after a while and wiped out the install so I had to restore from backup. That's when I lost patience with the idea of making it perfect....    I don't have the problem with the cores.  I did at first, but as I mention I was able to locate a version of VoodooTscSync.kext that worked for me at least, with my CPU configuration. 

Share this post


Link to post
Share on other sites

Hello

I get a t5610 and trying to install osx mojave but freeze on rtc (around),

Never test on xeon 2643v2 and don't found any help.

Here You all look have running os on this kind of machine: can u help me to past this?

thx

 

Share this post


Link to post
Share on other sites

Hi, I have a T3610. Spent almost 80 hours on it but never pass ".. waiting for root device".  Thanks to straight and most direct guide from Bounc1ngbanker. I got it to work with Mojave. All cores works. Audio and USB still not working though. 

Share this post


Link to post
Share on other sites
On 2/2/2018 at 11:49 AM, Bounc1ngbanker said:

Making very slow progress.   I currently have fully working USB2 ports, the USB3 ports kind of work sometimes if they have something in them on reboot, and sleep still isn't working properly.  Everything else seems ok.  

 

Am investigating how I can modify the video card default VESA modes so that when booting up the apple doesn't look squashed for the first half of the boot sequence.  Watch this space. 

any update on your T5610 Hackintosh ? sleep issue and usb. I am thinking to get one of those for dual boot. 

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
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

×