Disable Unsupported Nvme

Trước tiên chúng ta hãy cùng nhau tìm hiểu rằng tại sao cần phải disable unsupported nvme. Do nếu bạn đang có một ổ cứng nvme không support thì bạn không thể nào boot được

Ngay cả khi bạn không cài trên ổ cứng đó và cài trên một ổ cứng khác

Nhưng chỉ cần ổ cứng đó trong máy thì bạn đã không thể nào boot được rồi

Disable trong bios

B1: Boot vào bios

Để xem hot key vào bios của các bạn có thể xem tại đây

B2: Các bạn tìm đến option Storge Controller

B3: Chuyển từ AHCI mode sang RST mode

Nếu các bạn không thể chỉnh option này trong bios hoặc option này không có thì có thể thao khảo 2 cách dưới đây:

  • Mod bios theo hướng dẫn tại đây

  • Hoặc các bạn có thể tham khảo các cách ở dưới

Lưu ý cách này chỉ để test vì khi sử dụng các này toàn bộ ổ cứng trong máy sẽ bị disable

Disable bằng boot-arg

B2: Mở config.plist bằng propertree

B3: Add arg nvme=-1 vào Root --> NVMRAM --> 7C436110-AB2A-4BBB-A880-FE41995C9F82 --> boot-arg

Hoặc add vào Root --> Boot --> Arguments

Tuy nhiên cách này chỉ để test

Vì khi tắt bằng cách này tất cả SSD nvme trên máy sẽ bị Disable

Chỉ SSD NVME bị disable thôi còn SSD SATA thì vẫn hoạt động bình thường

Disable bằng SSDT-NVME-DISABLE

Xác định ACPI Path

B1: Chuột phải vào logo windows chọn Device Manager

B2: Các bạn chuột phải vào Storage Controllers --> Standard NVM Express Controller chọn Properties

B3: Vào tab Details --> BIOS device name --> Value

Nếu như máy các bạn không có BIOS device name thì có thể tìm đến location path--> Value rồi từ đó convert thành ACPI path theo hướng dẫn tại đây

B4: Lưu lại hoặc nhớ ACPI Path vừa thu được

Như ở đây mình có là _SB.PCI0.GPP1.DEV0

Tiến hành sửa SSDT

B1: Tải SSDT-NVME-DISABLE.aml tại đây

Link backup tại đây

B2: Tải Maciasl

Hoặc Xiasl

B3: Các bạn tiến hành thay thế mục scope và các External

B4: Các bạn ấn Complie

B5: Convert thành .aml theo hướng dẫn tại đây

B6: Thêm SSDT vừa build vào EFI --> OC --> ACPI và snapshot

Hoặc thêm vào EFI --> Clover --> ACPI --> Patched

B7: Save lại và reboot

Lưu ý rằng: Nếu các bạn đã làm theo nhưng vẫn không được thì các bạn tiến hành check như sau:

  • Dump DSDT theo hướng dẫn tại đây

  • Mở DSDT bằng Maciasl hoặc Xiasl

  • Tiến hành search (_DSM

  • Nếu như tìm thấy thì DSDT các bạn có method _DSM

    • Như vậy nên SSDT không thể ghi đề được

    • Ta cần phải rename _DSM to XDSM

  • Tiến hành add patch rename sau vàoConfig.plist

Disable bằng Device-Properties

Xác định Device-Path

B1: Chuột phải vào logo windows chọn Device Manager

B2: Các bạn chuột phải vào Storage Controllers --> Standard NVM Express Controller chọn Properties

B3: vào tab Details --> Location path --> Value

Xem chi tiết các covert theo hướng dẫn tại đây

Như ở đây của mình là PciRoot(0x0)/Pci(0x1D,0x0)/Pci(0x0,0x0)

Tiến hành sửa Config.plist

B1: Mở file config.plist bằng propertree

B2: Add Pci root đã xác định ở trên theo đường dẫn Root --> Device Properties

PciRoot(0x0)/Pci(0x1D,0x0)/Pci(0x0,0x0)Dictionary2 key/value pair

class-code

Data

FFFFFFFF

vendor-id

Data

12340000

B3: Save lại và reboot

Lưu ý: Sau khi reboot ở các cách chúng tôi khuyến khích bạn rest NVRAM

Lưu ý

Đối với những máy có 2 SSD NVME thì các bạn sẽ có 2 Standard NVM Express Controller

Chúng ta sẽ có cách phân biệt như sau:

  • vào tab Details --> Children --> Value

    • Hoaặc Details --> Bus relations --> Value

  • Lúc này nó sẽ hiện tên ổ cứng của bạn

    • Xem bảng bên dưới

Children Bus relations

Source tham khảo: https://elitemacx86.com/threads/how-to-disable-unsupported-nvme-drives-on-macos-clover-opencore.1202/ | https://www.reddit.com/r/hackintosh/comments/m3f9zn/how_do_i_disable_an_nvme_pcie_slot_dell_7501/

Last updated