Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

KNNSpeed

macrumors newbie
Jul 24, 2014
14
0
Bumpity Bump! (Maybe I should make my own thread?)

I took a little break from hammering at the thunderbolt hotplug. (I did find a way to get Windows to boot into native PCIe hotplug mode--I know my desktop motherboard has an EFI option "Native ACPI OS PCIe Support," which, when checked, exhibits the same behavior as what I've made Windows do on my rMBP.)

I just want to let anyone interested know that I got the Intel iGPU to show up under Windows. At least, I think it's working--I just get a black screen like I do when apple_set_os is working properly. However, when I used apple_set_os I was unable to proceed past the login screen. With my DSDT edits I can navigate through Windows just fine, albeit blindly.

EDIT: Sorry, after more testing it turns out I was wrong. I think what I managed to do is switch the computer to use the iGPU, but the iGPU is still powered off, resulting in a black screen. Usually I can boot into safe mode with the iGPU enabled, but this time I couldn't and Windows was not reporting that the device had been detected. Sorry, my mistake!

(In other words, I clearly can't read:
ah- said:
apple_set_os deals with the Apple EFI disabling hardware during boot, which happens before the acpi stuff. If the kernel/bootloader doesn't tell the EFI that it is osx before exiting the EFI boot services, the EFI will disable all kinds of hardware by writing into some hardware configuration registers.
)
 
Last edited:

ah-

macrumors member
May 7, 2010
38
1
It should be possible to make modifications to Apple's EFI using UEFI tools. The only difference from modifying a normal UEFI would be the rather confusing naming, I believe.

Just out of interest, where did you get that list from?
 

nmzik

macrumors newbie
Aug 11, 2014
2
1
Is there any news regarding Intel Iris/Intel Iris Pro on Windows with Nvidia card?

Thanks
 

Demigod Mac

macrumors 6502a
Apr 25, 2008
836
280
I've got a Mac Pro 5,1 and Windows 8.1 on a dedicated SSD.

I've been reading this guide:
http://blog.thedeltaflyer.com/2013/01/dual-booting-windows-8-and-mountain-lion-natively-using-efi/

And it seems like the Windows EFI installer bombs out if it detects any drive using Apple's Hybrid MBR partition scheme. This mirrors my experience when I attempted an EFI install back when Windows 8 came out - it just froze whenever I selected EFI Boot.

Would this mean if I want to install EFI Windows 8, I would have to yank all the OS X formatted drives from my machine, format the SSD, install Windows and then put the Mac formatted drives back in?

Also... is it possible to upgrade an existing Windows install to EFI or does it have to be a clean install?

Lastly is it possible for VMWare Fusion 6 to work with an EFI Windows / Bootcamp?
 
Last edited:

KNNSpeed

macrumors newbie
Jul 24, 2014
14
0
For a few months after release Windows 8 had a bug in the ISO that effectively broke EFI booting. There is a fix out there if you don't have a newer ISO.

The Windows installer doesn't like it if you have more than 1 drive hooked up, period. It's infamous for that. It would be best to have only the target drive active (you just need to unplug the data cables from the other drives) during the install.

You CAN convert MBR Windows to EFI Windows. I did it once, but it's a frightening process unless you're familiar with a wide variety of 3rd party boot tools (especially if something goes wrong), BSOD error codes, and the Windows BCD store.

I don't know anything about VMWare, but I'm pretty sure Parallels can do it.
 

Demigod Mac

macrumors 6502a
Apr 25, 2008
836
280
I think I'm out of luck on that. I did the special $40 deal upgrade from 7 to 8 and the 8.1 installer doesn't like any of my product keys (both the upgrade key and the one the 8.1 OS is currently using). I suppose I could contact Microsoft for a solution, can't hurt to try.
 

KNNSpeed

macrumors newbie
Jul 24, 2014
14
0
It's possible to fix the Windows 8 bug in the iso--here:
http://answers.microsoft.com/en-us/windows/forum/windows_8-windows_install/anybody-gotten-the-dvd-to-boot-uefi/82677329-a861-4060-866b-3eacb60a8b38

Also, you can't use a Windows 8 key on 8.1 or vice versa, you'd need to use the 8 upgrade key on the 8 full install, which is doable:
http://lifehacker.com/5984278/how-to-do-a-clean-install-of-windows-8-with-an-upgrade-disc
 

testuser0

macrumors newbie
May 22, 2014
8
0
Hi.

I have a new Macbook Pro "13 (MacBookPro9,2) i7.

Has anyone success booting the Windows7 installation via EFI?
And if, would you share your knowing?
Tried much... no success....

Thanks in advance.

Edit: The one who finally get it working for me will recieve an Paypal-Gift :)
 
Last edited:

pslambe

macrumors newbie
Mar 9, 2008
8
0
Sydney
iMac 27in Core i7-2600 Booting in EFI mode

Hi there.
I have read this thread about half a dozen times from start to finish.

I want to report that I have finally managed to get my iMac (12,2) to boot Windows 8.1 64 bit through UEFI.

It has been a mammoth effort but it has been worth it. It seems quite stable and I am installing my various pieces of software.

Some Points:

1. At various places on the inter web people have posted that older Macs (my iMac is a 2012 model) will never be able to boot Windows via EFI. Well I can say that that is wrong. My iMac runs Apple's efi version 1.1 or whatever. I think the latest MacBook Airs might run a later version.

2. I gave up on Windows 7, which I initially preferred over Windows 8. It seems Win 7 will probably not efi boot on a mac. I still have a Windows 7 running bios/mbr boot.

3. I am running Windows 8 on an external Samsung SSD 250GB connected to a Rocket Stor 5212 Thunderbolt Dock. Windows 7 runs on an Buffalo Ministation Thunderbolt that I have fitted with an SSD.

4. I installed Windows using VMWare and installing to an external device.
After Windows was installed in VMWare I tried booting off the external drive but was constantly stumped by the video issues described elsewhere on this forum.

Initially I let VMWare install its own drivers, but of course they fail when you try an external boot. After another Windows re-install I tried installing the Bootcamp 5.1 drivers and that didn't seem to work either. Then I downloaded the AMD Catalyst drivers and tried installing them through VMWare but I just could not get Windows to take the drivers whilst in the Virtual machine.

5. I found on the Windows 8 forums that PC people have been having similar trouble and the solution they have adopted seems to be to install Intel HD Display drivers and then the AMD Catalyst Control Centre. The site I found is
<Leshcat’s Catalyst 14.4 WHQL UnifL v1.3> which install Intels HD drivers and then the AMD Catalyst Control Centre.
Initially none of these steps resulted in a successful efi boot, so then I tried the registry "hacks" in efi.shell" and got no further.

6. Somewhere along the way I have stumbled on to a solution because on one restart it just booted straight into Windows 8(Definitely EFI boot!!).

I am puzzled at this. At some stage I realised that EasyBCD was no good for EFI boot. I ended up in endless Safe Boots. A google search stumbled on to EasyUEFI, which, surprise, surprise is open source. This tool may very well have been to thing which resulted in my breakthrough. I am still mystified.

7. Of course one of the problems has been learning the Windows 8 GUI. What a mess. After XP, Vista and 7, it is really hard to find stuff. I installed iobits Start menu and that made things easier. Gradually I have worked through issues like num loc and auto login. Just finding where Windows 8 has put things is a challenge. I had to muck around with Windows 8 keyboards but eventually I found a US Apple Windows 8 keyboard which works OK.

8. The only remaining problem area is sound. Device Manager reports that it has loaded an Intel driver but the Apple Bootcamp driver does not work. I tried Cirrus Logic and Realtek drivers with no success.

9. I updated to EasyBCD 2.2, the paid version, which promised to be Windows 8 compatible, but it still seems to muck things up. EasyUEFI is a public domain app which is very very basic but might show some promise. Of course the BCD files are actually now in the efi partition and not where Windows bcd edit would normally find them ... another problem to solve. I have found that if Windows will not boot (after a software update for example) I can hold option at boot, click on the boot efi icon and the keep pressing F8 to instigate a safe boot (No 4). Once booted I have been able to get windows 8 to fix things.

10. Since I still have the Virtual Machine running in VM<Ware on Mac OS X, I can actually load Windows 8 into the VM and then try fixing things.

11. Now I just wish I could pass on what I have learnt.

I am putting a guide together for the stuff I am definitely sure about ... using VMWare to install Windows in UEFI mode.

Is there any way I can pass on my settings to the community. In Windows you can Export a text file from System Information which is tab delimited and can then be imported into Excel.
If any one wants this I can post a link to the file in my Dropbox.

Thanks to all those on this thread for their thoughts on this topic.


PS.

I want to add these further comments.

In Windows 8.1 every piece of software works as normal.
The display driver software works with CCC running the normal ATI Radeon driver in Device Manager.

There are two unresolved issues which I have not be able to solve.

1. Audio. Windows loads HDAudio drivers but nothing will induce the onboard speakers to work. The Catalyst drivers only seem to work with an external monitor with inbuilt speakers; not the iMac with inbuilt hardware. The Mic in and Headphone out ports do not work. I have tried the latest drivers from Realtek, Cirrus Logic and Intel to no avail.

2. Memory. In windows 7 Resource Monitor reports that my iMac has 16GB ram and uses it. In Windows 8.1 Resource monitor reports my iMac to have 16GB ram, BUT then reserves as "Hardware Reserved" (???) 12GB. This leaves only 4GB to run Windows and Apps. Nothing I have tried will release this "Hardware Reserved Memory" back into the system. All references I have googled talk about faulty memory modules, but I know my memory is fine because Mac OS X and Windows 7 see and use all 16GB ram. It is a UEFI thing in Windows 8. I can not track down what restrains Windows from using all available memory. The Video card has its own 2GB ram, so Windows has no need to reserve memory to run Video. I am not running an external monitor either.

The other annoying "bug" is that Windows regularly seems to "trash" its boot files. I have made a USB stick from within Windows 8 to but into WindowsRE and am not pretty capable of using DISKPART and bcd edit to repair the boot files.
Another annoyance is that Windows writes boot "preference" to the iMac NVRAM. This necessitates a PRAM clearance to reset the boot back to Mac OS X.
 
Last edited:

Demigod Mac

macrumors 6502a
Apr 25, 2008
836
280
Just for fun, I'm trying to get Windows 10 preview x64 EFI and the Yosemite beta to run on my Macbook Pro. I'm running into a roadblock when it comes to getting Windows to work in EFI though.

If I try to boot the Windows installer from a USB stick I see only EFI Boot as an option.
And it hard freezes the system as soon as I try to launch it.

If I try from a DVD+R I see both Windows and EFI Boot options. Choosing EFI Boot "works" and it proceeds to the Windows installer, but apparently it fell back to BIOS mode because it refuses to install on the drive (it complains about the drive being GPT format, a telltale sign that it's in BIOS mode even though I told it to use EFI Boot).

I setup the drive like so with diskpart:
1. clean disk
2. Converted to GPT format
3. Make a MSR partition, size 128
4. Make an EFI partition, size 200, FAT32
5. Make the rest the primary partition, NTFS

I suspect it might be because this is an older Mac and its EFI might not be up to snuff (MacBookPro5,1 - late 2008 model).

Also, does anyone know if VMWare Fusion 7 can work with an EFI Bootcamp?
 

JohnnyCasino

macrumors newbie
Oct 27, 2014
3
0
So after weeks of trying out everything in my sphere of possibilities to make this happen I came to a point where I don't know how to go any further. Slipstreamed all Bootcamp drivers into boot.wim and currently I'm in building a answer file, but I don't know if that's the most sensible thing to do.

Word in this thread was, that some EFI scripts are necessary to change some Video registers.
Can somebody please explain to me how and what to do there? I do realize, that the Windows 7 setup is actually loaded with EFI (Caps-Lock key tested), but I don't have any video, so that's one of the things I need.

So far I've read very much of this thread (not all though, it's very very long indeed) but the work so far is amazing!! Thanks for the many contributions to this subject!

(Also first post, yay!)
 

macenied

macrumors 6502a
Aug 20, 2014
637
29
It seems that a lot of people try and it simply does not work. There is no such a thing "it works, but ...". Either it works or not, and it doesn't. Not a big deal, you will not be able to use AHCI.

A big deal, when you will buy your next system. No technical reasons. I'm tired about Apples artifical incompatibilities, just to make OS X look better than it's competition.
 

JohnnyCasino

macrumors newbie
Oct 27, 2014
3
0
Okay I did it. Windows 7 running via EFI on my MBP13, 8,1 machine.

To whoever wants to do this madness by him- or herself:

Don't think it'll work easily. 42 pages in this thread and counting is proof that this is NOT an easy task to acomplish, but you sure knew that already.

The trick is to slipstream all the necessary drivers from the bootcamp download into a windows 7 install and build yourself an unattended installation (also known as answer file), and get rid of your hybrid mbr.
You can always check if you booted into EFI windows PE (windows installation envrionment) by pressing the capslock.

You can use the hidden EFI partition on your system to your delight, actually the apple bootloader only expects following files to be on some volume:
- efi/boot/bootx64.efi
- mach_kernel (can also be a folder)
You can always access the efi partition on OSX by going into terminal and typing:
diskutil mount disks01​
Using this I was able to download an EFI-shell and putting it secretly on the efi partition meaning the MBP would boot to OSX by default but pressing option/alt on turn-on loads the apple bootloader. From there you can go wherever you want, for example to rEFInd or the EFI-Shell (or even Windows)

If you use Parallels or some other Computer you don't mind playing with it's partition table you get a good visual of whether or not your windows 7 installation answerfile works or not.
Using the Windows SIM you can create an answerfile, the application needs to be downloaded at Microsoft's (including further information what you need for an unattended installation), in the Windows SIM application you will have to specify which volume to install Windows 7 to. You will have to partition this volume yourself before using the unattended install.

Make sure you don't have an hybrid MBR before the installation by using gdisk. After you partitioned your volume delete the hybrid MBR almost every partitioning tool somehow added (GParted for example does it as well as OSX's DiskUtility).
 

mosipd

macrumors newbie
Nov 12, 2014
1
0
I've been following this thread for quite a long time now and I only recently made my first attempt at booting Windows 8.1 via EFI. I currently have a rMBP 15" 10,1 with both the Intel HD4000 and Nvidia GT 650M. Reading through almost the entire thread I've come to the conclusion that I most likely have the wrong version of rMBP. I'm kind of curious if any developments have been made in getting the 10,1 models working with accelerated video as well as audio. I made a quick attempt at installing Windows 8.1 via EFI and I ran into the same issue as other users here (Quackers, etc.) with the same video problems. I haven't gone any further and haven't tested the audio (Realtek) but I assume that won't work either.

It would be much appreciated if anyone could let me know what, if any, improvements this awesome community have made towards the issues us 10,1 users face. I'm inclined to sell this laptop and move on to a newer, better supported EFI rMBP version if nothing has changed. Any input is much appreciated and I would love to hear from Quackers as to the status of his experiments.
 

dansfre

macrumors newbie
Nov 28, 2014
7
0
I was thinking about getting a MacBookPro11,3 - MGXC2LL/A on sale.

Is it possible to get Optimus switching to work stably with a Windows 8.1 x64 EFI installation? I'm afraid to buy it if Windows won't be able to see the integrated graphics and kill the battery in 2 hours while using the 750M.

Thanks for any help!
 

ah-

macrumors member
May 7, 2010
38
1
I was thinking about getting a MacBookPro11,3 - MGXC2LL/A on sale.

Is it possible to get Optimus switching to work stably with a Windows 8.1 x64 EFI installation? I'm afraid to buy it if Windows won't be able to see the integrated graphics and kill the battery in 2 hours while using the 750M.

Thanks for any help!

No, not unless things have massively changed. Optimus doesn't and may never work in Windows. Even changing GPUs with a reboot takes quite a lot of fiddling to get working.
 

dansfre

macrumors newbie
Nov 28, 2014
7
0
No, not unless things have massively changed. Optimus doesn't and may never work in Windows. Even changing GPUs with a reboot takes quite a lot of fiddling to get working.

Thanks for the reply.

So, basically one should stay away from a Macbook if wanting to boot Windows on it...?

The only comparable laptop I've seen to the Macbook with Windows is the new Razer. Lack of DP out on it is a problem though.
 

ah-

macrumors member
May 7, 2010
38
1
Exciting news, 0xbb and me figured out what exactly happens when gfxCardStatus switches the GPU so it sticks around after a reboot into Linux and Windows.

There's now a simple tool to do the same thing in Linux: https://github.com/0xbb/gpu-switch

It's pretty simple once you know how it works, so it would be rather trivial for somebody to build a Windows or raw EFI version of this tool, it's just setting an EFI variable.
 

gotsn0w

macrumors newbie
Dec 26, 2014
3
0
Lord have mercy this thread is still going! :p

Anyway, I just registered on the forum so I could post this and hopefully help someone who is stuck in my case. I figured this out earlier last year but never got around to posting it. I have no idea if I'm actually too late to post this because I didn't bother to scroll through the 30-or-so pages that weren't there last time I was on this thread ;)

I've figured out how to switch and enable/disable the graphics card on the MacBook5,1 (9400+9600) in the rEFIt EFI shell itself.

This applies to Windows 7 only, as I have not tested Windows 8 on mine (and frankly, screw Win8 XD)

This will allow you to use either the 9400M and disable the 9600M GT in Windows, thus saving power, OR, enable BOTH the GPUs and have whatever Windows software you want utilizing them both. NOTE: you still can't switch actual displays on the fly, but applications can take advantage o both graphics cards at once. Yes, I know some of you are probably concerned about overheating, but trust me, it's not an issue. This laptop is so well engineered that I've never seen the temps rise to a critical level. Obviously, make sure it have proper ventilation, etc...

This is all the documentation I have written down for myself, hope you guys find it useful.

Documentation:

PCI Device 02 00 00 <- Nvidia GeForce 9600M GT (also device E5)
PCI Device 03 00 00 <- Nvidia GeForce 9400M (also device E7)

#### How to switch between GPUs ####
User dmpstore gpu-power-prefs to check with GPU has power
dmpstore gpu-power-prefs -s fs0:\gpu-power-prefs #store the existing setting on the EFI partition

#edit the GPU power setting to power on the card that will be the display output
hexedit gpu-power-prefs
00 00 00 00 corresponds to discrete GPU
01 00 00 00 corresponds to integrated GPU


Reset NVRAM if you screw something up

REBOOT AFTER CHANGING and check dh e5 or dh e7. Don't set the gpu-power-prefs and try to boot directly into Windows, it won't work.

After rebooting, you need to set the VGA controller for Windows to use when displaying output:

NOTE: DO NOT ENABLE BOTH VGA CONTROLLERS AT THE SAME TIME. Windows won't boot. Windows prefers that only one VGA controller is in charge of video output.


To power on the 9600:
mm 0750 -IO 3

Conversely, to power it off:
mm 0750 -IO 0

To set its bus master and enable VGA for the 9600

mm 000C003E -PCI 8
Setting register 3E to 8 enables VGA on the PCI bridge for the 9600 is 00 0C 00 that bridge (0C)

mm 02000004 -PCI 7
Setting register 04 on bus 02 device 00 to 7 enables bus master and activates the 9600

Boot Windows with fs2:EFI\BOOT\BOOTX64.EFI (change fs2 to your drive number)

Enable VGA on the 9400:

mm 0010003E -PCI 8
Set register 3E on bus 00 device 10 (PCI bridge for integrated graphics) to 8 to enable VGA

mm 03000004 -PCI 7
Set register 04 on bus 03 (9400 bus) to 7 to enable bus master and activate the 9400.

Setting register 3E to 8 on either device 0C (discrete)
or device 10 (integrated) will enable VGA for that respective
GPU. Setting register 04 on either bus 02 or bus 03 will
enable the corresponding GPU. Power off the 9600 (mm 0750 -IO 0)
to save juice when using the 9400.


You can check the values for the buses/devices using:

pci -i 00 0C 00 -b (the PCI-X bridge)

pci -i 00 10 00 -b (the PCI integrated bridge)

dh e5 -b (the discrete 9600 device)

dh e7 -b (the integrated 9400)

pci -i 02 00 00 -b (for the discrete gpu)

pci -i 03 00 00 -b (for the integrated gpu)


Hope this helps, sorry again if I'm late and someone has already figured this out. Cheers!~
 

asten

macrumors newbie
Jan 21, 2014
4
0
Thank you

Hi there!

That was extremely helpful, thank you very much for posting this!!!

Best Regards,

Christian
 

jw382

macrumors newbie
Jan 16, 2015
1
0
Bump!

I've got some good news and some weird/kind of unfortunate news.

First, the weird news:
Apple will most likely not make a driver for Thunderbolt on Windows. A benevolent coder would have to instead.

Why do I say this? Because I had to go through and comment out hundreds of lines of code in order to get Thunderbolt to show up under an OS identifying itself as NOT OS X. In other words, it looks like Apple specifically went out of its way to make Thunderbolt not usable for us multibooters.

The good news (and there's quite a bit):
  • It *IS* possible to get Thunderbolt hotplug to work under Windows. I'm certain of it. I'm going to try my "imitate Intel's motherboard" idea and see if that works, otherwise we'll need someone to make a driver.
  • I got the battery indicator to show up!
    In fact, I got EVERYTHING that's normally meant to show up when using Windows to show up properly (with the exception of the Intel iGPU). I found that Apple uses an external SSDT to store all of the Thunderbolt information (SSDT #4, specifically), and by commenting out all of the "If (OSDW())" entries in it, of which there is a TON, I made it so that Thunderbolt shows up natively under Windows and persists through sleep, no OS spoofing needed!

Next step: Let's get hotplug working!

Edit: For the curious, what it seems to me so far is that the problem lies in device enumeration.
We know that ejecting the devices works just fine when Windows is booted with Thunderbolt things plugged in, and what doesn't work is the initial device setup. I can tell that the device is being detected when plugged in (with my hacked ACPI tables in use) because there's a device manager refresh that sometimes occurs.

What the problem looks to be is that the firmware isn't being told to configure the plugged-in device. It is obvious that the firmware CAN enumerate and configure devices; we see it on boot time and it's the only way Thunderbolt devices even remotely work under Windows in the first place. I think hotplug enumeration can be accomplished by making some kind of ACPI event that then takes advantage of the firmware's device configuration ability.

(OR maybe Windows can do all the configuring itself if it's merely told by the ACPI, "hey, buddy, something just got plugged in, go check it out!"--though I'm not 100% if this idea would work.)

Can you post your DSDT and/or SSDT so that we can have a look? Thanks a lot.
 

KNNSpeed

macrumors newbie
Jul 24, 2014
14
0
Can you post your DSDT and/or SSDT so that we can have a look? Thanks a lot.

Sure; here you go. (Sorry I didn't see this sooner!)

I'm cross-posting the below from another forum, since it includes all the relevant information in one place:
KNNSpeed said:
Hi all,

So I've recently been inspired to tackle the issue of Thunderbolt hotplug under Windows running on MacBook Pros (at least the MacBookPro11,3--the late 2013 rMBP with NVidia and Iris Pro), and I started posting about it here [This website]. I'd recommend browsing through it (relevant info is on pages 41-42) if you're interested.

However, I'm posting this here because I think any research into getting hotplug working under Windows on a Mac will help with research getting hotplug to work under OS X on a PC. See, I've found through my explorations that Thunderbolt is mainly handled by the EFI firmware of a computer, and ACPI calls handle the OS "Thunderbolt awareness." In other words, I'm under the impression that DSDT and SSDT edits are all that are needed to get hotplug working under either situation. Windows shouldn't need a driver, as evidenced by motherboards like my DZ77RE-75K, but that may make things easier if anyone who knows how is willing to code one.

In fact, it looks like all of Apple's Thunderbolt stuff is handled by an SSDT (and a few lines in the main DSDT), in addition to a driver in OS X, and by using a series of "If" statements I think it may be possible to get Thunderbolt hotplug to work under OS X (As in, using If (OS X), then (do Apple-like stuff to give Thunderbolt hotplug control to OS X)).

I'm certain Thunderbolt hotplug can be accomplished under Windows, at least, because Linux developers Andreas Noever and Matthew Garrett have gotten a Linux kernel module compiled that enables Thunderbolt hotplug under Linux on a Mac.

I personally have been able to get the Thunderbolt controller to show up under Windows constantly and persisting through sleep/resume through some simple DSDT and SSDT edits, but I have yet to get detection-on-plug-in working. That's actually my next project once I get all the existing eject code figured out. What's nice is that Windows (I'm targeting Windows 8.1) actually allows native DSDT/SSDT overwriting, though Microsoft calls it "overloading," so although the solution, if found, will be a bit involved, it would not be hard to implement.

If anyone is interested in helping out, please do!
I barely know what I'm doing, but I've been able to figure a lot out thanks to Tonymacx86 documentation on DSDTs and such, so any help would be extremely appreciated.

Something that would be enormously useful is documentation on what a lot of Apple's custom ACPI names mean. I found this, but it doesn't cover much relating to Thunderbolt.

Helpful reading on what's been done with Linux:

ACPI Spec 5.0a (explains ACPI machine code and has a reference of all the operations)


Relevant DSDTs and SSDTs (if you try to compile them you will get errors, see notes), as well as everything I could put about this subject in one document:
rMBP DSDT Research.zip [SEE BOTTOM OF THIS POST]

I've included a list of as many of the relevant ACPI names and methods as I could discover in the above .zip file, as well as a how-to load a custom ACPI table in Windows. Basically it has all the information that I think would be useful in figuring out how to get this to work.
 

Attachments

  • rMBP DSDT Research.zip
    58.5 KB · Views: 324

DaGr8Gatzby

macrumors member
Dec 24, 2011
98
4
I'm back ...

I thought I would leave all this EFI ******** behind. Alas I have come crawling back. I know a lot of you have referenced one of my posts with dead links but I was more help back then since I had 2009 MacBook Pro/2009 Mac Pro hardware.

I've come a long way in my career since then and had to sell these two pieces of hardware. I am now an owner of a 2013 Haswell rMBP. Very interesting stuff because this is the same setup as my old 2009 laptop (integrated/discrete GPU).

Let me interject here and state that I hated Windows 8 with a passion. I have managed to install Windows 10 Preview via EFI using my old method. In fact, I even used my old Dropbox link for my WinPE Key. To top it off, I am making this post inside windows 10:

GZRtYHB.png


The procedure I used was as follows:

1. Install OS X Yosemite and use disk utility to partition all disks. Here is my disk layout:

Code:
Yosemite - JHFS+
Data - JHFS+
Windows - EXFAT
Installs (More on this later) - EXFAT

2. Booted into Yosemite and checked for Hybrid MBR with gdisk.
3. Removed Hybrid MBR and converted to Protective MBR
4. Prepared USB keychain with my WinPE boot (FAT32 formatting and drop all files in .zip to USB stick) and dropped all contents of Windows 10 ISO to Installs exfat volume
5. Boot into WinPE environment
6. Ran the following commands to confirm info
Code:
> diskpart
> list disk (CHECK FOR GPT UNDER DISK0!!!)
> list volume (GRAB LETTER FOR WINDOWS AND INSTALLS VOLUME)
> exit
> D: (note this was my assigned volume for Installs)
> setup.exe (this kicks off windows 10 installer off the internal SSD. 3 minute install compared to 20)
7. LEt machine reboot into windows (this will happen because EFI points to this bootloader now)
8. Allow windows to setup
9. Boot back into OSX and download Boot camp drivers. I extracted to Installs Volume
10. Boot back into windows
11. Open elevated command prompt and ran the following:
Code:
> D:
> cd BootCamp5\BootCamp
> msiexec /i BootCamp64.msi
12. Reboot into OSX
13. Bless OS X bootloader
14. Complete.

I am having the problem where my display driver is showing as Microsoft Basic Adapter. Typically booting into OS X and setting Use Discrete GPU at all times is enough. However, in this case, this is not happening. My next steps are as follows:

1. Compile EFI grub
2. Bless EFI grub
3. Create entries to chainload OS X/Windows
4. Figure out registers
5. Place in startup.nsh
6. Prompt for discrete/integrated before boot

Should be an interesting month. I have a 6 hour flight on Friday. I will have plenty of free time to update this thread. Good luck all. This is VERY possible now with modern hardware. All of this took about 20 minutes total since apparently I am expert at this useless procedure.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.