Skip to content

Commit

Permalink
Merge branch 'master' of github-osy86:osy86/HaC-Mini
Browse files Browse the repository at this point in the history
  • Loading branch information
osy committed Sep 2, 2019
2 parents 6f75547 + 7b9281c commit ed0d4a8
Show file tree
Hide file tree
Showing 6 changed files with 90 additions and 16 deletions.
7 changes: 6 additions & 1 deletion SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,12 @@
* [Getting Started](installation-guide/getting-started.md)
* [BIOS Settings](installation-guide/bios-settings.md)
* [Installation](installation-guide/installing-osx.md)
* [Replacing Wifi Card](installation-guide/wifi.md)

## Post-Installation

* [Replacing Wifi Card](post-installation/wifi.md)
* [Workarounds](post-installation/workarounds.md)
* [Support](post-installation/support.md)

## Technical Details <a id="details"></a>

Expand Down
71 changes: 57 additions & 14 deletions details/clover-settings-annotated.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,37 +97,65 @@ Do not blindly enable Clover options because some random poster recommended it.
</dict>
<dict>
<key>Comment</key>
<string>change XHC.GPEH to XHC1.GPEH</string>
<string>change PNP0C09 to PNPFFFF</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
X1NCX1BDSTBYSENfR1BFSA==
QdAMCQ==
</data>
<key>Replace</key>
<data>
X1NCX1BDSTBYSEMxR1BFSA==
QdD//w==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change PNP0C09 to PNPFFFF</string>
<string>change HS09._UPC to HS09.XUPC</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
QdAMCQ==
SFMwORQMX1VQQw==
</data>
<key>Replace</key>
<data>
QdD//w==
SFMwORQMWFVQQw==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change GFX0 to IGPU</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
R0ZYMA==
</data>
<key>Replace</key>
<data>
SUdQVQ==
</data>
</dict>
<dict>
<key>Comment</key>
<string>change H_EC to EC</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
SF9FQw==
</data>
<key>Replace</key>
<data>
RUNfXw==
</data>
</dict>
</array>
</dict>
```

`SAT0` patch fixes potential SATA compatibility issues \(untested\). `HDEF` is checked by `AppleHDAController` to identify a controller as "not GFX." The `NTFY` and `RWAK` patches are to [fix TB3 hotplugging](thunderbolt-3-fix.md#hotplug-event). The two patches to rename `TBDU.XHC` to `TBDU.XHC2` are required for [TB3 companion ports](thunderbolt-3-fix.md#usb-companion-device) because they require a unique device name and `XHC` is already taken by the PCH XHCI controller. The `XHC.GPEH` patch redirects the USB hotplug events from the original `SB.PCI0.XHC` device \(which we disable in a custom SSDT\) to our port-fixed `SB.PCI0.XHC1` device. Finally we disable the `PNP0C09` device which is recognized as the embedded-controller by OSX. It has to be disabled because the NUC has a "virtual" EC that ignores reads/writes to it and this confuses OSX \(for example, if it sees there's an EC, it will try to write sleep/wake info to it\).
`SAT0` patch fixes potential SATA compatibility issues \(untested\). `HDEF` is checked by `AppleHDAController` to identify a controller as "not GFX." The `NTFY` and `RWAK` patches are to [fix TB3 hotplugging](thunderbolt-3-fix.md#hotplug-event). The two patches to rename `TBDU.XHC` to `TBDU.XHC2` are required for [TB3 companion ports](thunderbolt-3-fix.md#usb-companion-device) because they require a unique device name and `XHC` is already taken by the PCH XHCI controller. The `XHC.GPEH` patch redirects the USB hotplug events from the original `SB.PCI0.XHC` device \(which we disable in a custom SSDT\) to the PCH XHCI `SB.PCI0.XHC` device. We disable the `PNP0C09` device which is recognized as the embedded-controller by OSX. It has to be disabled because the NUC has a "virtual" EC that ignores reads/writes to it and this confuses OSX \(for example, if it sees there's an EC, it will try to write sleep/wake info to it\). However, to enable USB power management, we still rename `H_EC` to `EC` even though we do not use the EC. The power management kext does not actually do anything hardware-wise, but it does set static limits for the USB controller to use. The `HS09._UPC` change allows us to redefine the `_UPC` method in the SDST in order for OSX to recogize the Wifi/BT card as internal \(otherwise the port does not show up\). Finally, the `GFX0` to `IGPU` patch allows the graphics power management drivers to load for the Intel iGPU.

```markup
<key>SSDT</key>
Expand All @@ -147,7 +175,7 @@ This is needed to [enable XCPM](https://pikeralpha.wordpress.com/2016/07/26/xcpm

```markup
<key>Arguments</key>
<string>alcid=11</string>
<string>alcid=11 -disablegfxfirmware</string>
<key>Boot</key>
<dict>
<key>NeverHibernate</key>
Expand All @@ -157,7 +185,7 @@ This is needed to [enable XCPM](https://pikeralpha.wordpress.com/2016/07/26/xcpm
<string>Yes</string>
```

The alcid argument is for AppleALC for our [HDA fix](hda-fix.md). Hiberation is not implemented so we make sure we do not accidently trip it. XMP detection is only useful for people who overclock their RAM.
The alcid argument is for AppleALC for our [HDA fix](hda-fix.md). `disablegfxfirmware` is required for Intel iGPU to boot since Apple's iGPU firmware is not supported. Hiberation is not implemented so we make sure we do not accidently trip it. XMP detection is only useful for people who overclock their RAM.

### Devices

Expand All @@ -180,16 +208,31 @@ The alcid argument is for AppleALC for our [HDA fix](hda-fix.md). Hiberation is
</dict>
<key>PciRoot(0)/Pci(31,0)</key>
<dict>
<key>device-id</key>
<data>
wZwAAA==
</data>
<key>name</key>
<string>pci8086,9cc1</string>
</dict>
</dict>
</dict>
```

The first `device-id` patch chages the Vega M to be recognized as a Baffin GPU so the graphics accelerator can be enabled. The `name` patch changes the device name for the SD card reader so it can be recognized by `AppleSDHC`. The second `device-id` patch makes AppleLPC get recognized on the LPC device \(the driver does some non-critical power management\).
The first `device-id` patch chages the Vega M to be recognized as a Baffin GPU so the graphics accelerator can be enabled. The first `name` patch changes the device name for the SD card reader so it can be recognized by `AppleSDHC`. The second `name` patch makes AppleLPC get recognized on the LPC device \(the driver does some non-critical power management\).

### Graphics

```markup
<key>Graphics</key>
<dict>
<key>Inject</key>
<dict>
<key>Intel</key>
<true/>
</dict>
<key>ig-platform-id</key>
<string>0x59120003</string>
</dict>
```

This enables the iGPU.

### KernelAndKextPatches

Expand Down
2 changes: 1 addition & 1 deletion mac-vs-hac.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ General buying advice for Mac mini is if you require high CPU performance and do

\*\*Mac mini can be configured for 10Gb Ethernet for $100 extra.

\*\*\*Requires [replacing the wireless card](installation-guide/wifi.md) for OSX to work.
\*\*\*Requires [replacing the wireless card](post-installation/wifi.md) for OSX to work.

\*\*\*\*Apple products rarely sell under MSRP while NUCs can often be found on sale for as much as 20% off.

10 changes: 10 additions & 0 deletions post-installation/support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Support

Support are provided in the following ways:

* [Github issue tracker](https://github.com/osy86/HaC-Mini/issues)
* [InsanelyMac](https://www.insanelymac.com/forum/topic/339291-guide-hac-mini-osx-mojave-on-intel-hades-canyon-nuc8i7hvknuc8i7hnk/)
* [/r/Hackintosh Discord](http://discord.io/hackintosh)

Do **not** ask for help in tonymacx86 \(better yet, stop going to tonymacx86!\). They do not permit discussion of anything except for their own "approved" installation methods--which are all pretty problematic. We tried to provide help there in the past but was banned for linking to a non-tonymac approved guide.

File renamed without changes.
16 changes: 16 additions & 0 deletions post-installation/workarounds.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Workarounds

Outstanding issues are tracked and worked on in the [Github issues](https://github.com/osy86/HaC-Mini/issues). Some of the most common unresolved issues are documented here along with possible workarounds.

### [Wakeup from USB does not power on display](https://github.com/osy86/HaC-Mini/issues/9)

You can press any key after the NUC wakes up \(and screen still dark\) to trigger a "second" wake. You can also use the power button on the NUC instead of keyboard/mouse press to wake up without display issues. Another solution is to add the boot-arg `darkwake=0` but note this disables dark wake/Power Nap features.

### [Panic/restart on wakeup if TB3/back USB-C is used](https://github.com/osy86/HaC-Mini/issues/3)

You need to make sure the TB controller isn't powered off \(the hardware will try to save power but OSX isn't friendly to it\). The easiest workaround is to not use the back USB-C/TB3 ports \(USB-C DP mode is okay\); you can even disable it in BIOS. If you need to use those ports, make sure that you never go to sleep without a device plugged in. You can remove/hotplug as many devices as you want while awake, but make sure that something is plugged in before sleep and nothing is disconnected before wake.

### [Front headphone jack does not output sound](https://github.com/osy86/HaC-Mini/issues/4)

The front HP jack is not working yet, use the back audio out with your headphones. The headphone mic will not work. Digital out does not work either.

0 comments on commit ed0d4a8

Please sign in to comment.