khronokernel / Opencore-Vanilla-Desktop-Guide

Host for files for the OpenCore Vanilla Desktop Guide
https://khronokernel-2.gitbook.io/opencore-vanilla-desktop-guide/
287 stars 70 forks source link

More bugs... #1

Open vit9696 opened 5 years ago

vit9696 commented 5 years ago

I have just run through Ivy section, and that's what I found:

  1. Renaming ACPI devices is dangerous, and you just stepped on the rake. Using Count = 1 will only replace the first occurrence of the value, effectively breaking most of ACPI tables. This will make Windows unbootable at the very least, and may cause severe issues on macOS as well. Basically this advice is not only wrong, but it violates the recommendations from OpenCore configuration manual:

    In the majority of the cases ACPI patches are not useful and harmful:
    • Avoid renaming devices with ACPI patches. This may fail or perform improper renaming of unrelated devices
    (e.g. EC and EC0), be unnecessary, or even fail to rename devices in select tables. For ACPI consistency it is much
    safer to rename devices at I/O Registry level, as done by WhateverGreen.

    The "correct" approach is not to rename anything as it is cosmetics with the only exception of IMEI, IGPU, HDEF, and HDAU, which are handled by WhateverGreen and AppleALC. This will produce much less problems with all operating systems.

  2. can interfere with Firmware so avoid when possible this comment for DisableIOMapping is wrong. On the contrary it does not interfere with the firmware. Should better say use this when you need VT-d support in other operating systems.

  3. not needed for AHCI or NVMe SSDs. It depends. AHCI usually need it, so best to check Trim Status in About Mac → Details → SATA/SAS (check English locale for macOS to be sure with the names).

  4. Needed for seeing your availble drives. Better to reword it show OpenCore UI when booting. Setting to NO will boot the default option. This option is a hack until "Opt" button support is implemented.

  5. ScanPolicy This allow you I suppose it should be 0 allows you. Honestly, it will be better to properly document Security section. Perhaps in a separate chapter, as it is not the best idea for a "quick" setup.

  6. dart=0 does not function with System Integrity Protection enabled, so it is kind of useless. -xcpm is no longer relevant on 10.12 or newer.

  7. Forcibly rewrites NVRAM variables, not needed for us as sudo nvram is prefered but useful for those edge cases Clarify that: Note that Add will not overwrite values already present in NVRAM.

  8. when newer versions are available from OpenCore that's garbage. It just updates, and no version comparison happens.

  9. Forces .efi drivers, change to NO for faster. Should be Automatically connects added UEFI drivers. This is slightly faster, but not all drivers connect themselves. E.g. certain file system drivers may not load.

  10. ConsoleControl set to YES is needed on most APTIO firmwares, otherwise you may see text output during booting instead of nice Apple logo.

  11. SanitiseClearScreen is really needed on select AMD GPUs on Z370.

  12. RequestBootVarRouting is recommended to be enabled on all systems for correct update installation, Startup Disk control panel functioning, etc.

dhinakg commented 4 years ago

@vit9696 Just pushed some grammar changes. If there are no technical issues with this I'll merge into master. Just to confirm, you need Skylake or up + 300-series chipset (14nm) or newer, right? It is the same for laptops too, right? (just for my curiosity)

vit9696 commented 4 years ago

Yes, that's the requirement, but even that is not a guarantee. Better make it clear, as we already got a false alarm (https://github.com/acidanthera/bugtracker/issues/790). Looks good otherwise.

vit9696 commented 4 years ago

With 0.5.7 you will need to update several properties in BooterQuirks to still have Windows and Linux booting as well as improve macOS security on some platforms.

  1. Firmwares that previously required ShrinkMemoryMap (mainly HEDT and APTIO IV) will have to replace that with RebuildAppleMemoryMap.
  2. Firmwares with memory attributes table (MAT) support (mainly Z370 and newer, but sometimes found in Z170/Z270 too) will want RebuildAppleMemoryMap and SyncRuntimePermissions enabled and EnableWriteUnprotector disabled. Disabling EnableWriteUnprotector may not work for some, however.
khronokernel commented 4 years ago

Oh thank you for the info, much appreciated

rottenpants466 commented 4 years ago

In my case my MB: Gigabyte Z370 AORUS Gaming K3 (with latest firmware) wont boot with EnableWriteUnprotector disabled and RebuildAppleMemoryMap & SyncRuntimePermissions enabled

My question is: Do i only enable EnableWriteUnprotector and leave RebuildAppleMemoryMap and SyncRuntimePermissions disabled or do i enable all 3 quirks?

Thank you all

Juan-VC-gh commented 4 years ago

Can @vit9696 briefly explain how is CPU PM handled with the AppleCpuPmCfgLock and AppleXcpmCfgLock kernel quirks enabled? My laptop has CFG-Lock and seems I will never be able to get it unlocked so I wonder if cpu pm is worse than with write access to msr 0xe2 and I am curious how is it managed with the register locked.

tachigami commented 4 years ago

Gigabyte Z370 HD3P, 8700K, OC5.7, 10.15.3

EnableWriteUnprotector=yes
RebuildAppleMemoryMap=yes/no
SyncRuntimePermissions=yes/no

boots just fine but having

EnableWriteUnprotecto=no
RebuildAppleMemoryMap=yes
SyncRuntimePermissions=yes 

the system hangs right after startup disk changed in the system settings

dhinakg commented 4 years ago

This repo is no longer used.