Disable unsupport PCIe
Nếu bạn có các device PCIe unsupport thì nên disbale đi.
Đối với một số PCIe không support mà không bị disbale thì có thể sẽ dẫn đến một số lỗi không mong muốn
Xác định PCIe path
ACPI path
Xem chi tiết tại đây
Device path
Dùng Device manager
Xem chi tiết tại đây
Dùng hackintool
B1: Tải hackintool
B2: Truy cập vào tab PCIe
B3: Chú ý vào mục Device Name
và Class
để xác định thiết bị PCIe
cần disable
B4: Chuột phải vào dòng hiện thị thông tin của thiết bị PCIe cần disable và chọn Copy Device path
Như vậy là done bạn đã xác định đước device path của mình rồi
Dùng gfxutil
B1: Tải gfxutil
B2: Kéo nó vào terminal
rồi enter
B3: Tìm thiết bị PCIe cần disable trong các list device vừa hiện ra
B4: Copy device path đi là được
Tiến hành
Chú ý ở đây mình đưa ra nhiều phương pháp bạn có thể thử từng cái
Nhưng hãy nhớ chỉ được làm từng cái 1 không làm cùng lúc
Dùng Method _STA
Giải thích 1 chút về cách này
Method _STA là method thể hiện trang thái của devices
_STA
là viết tắt củaSTATUS
Nên nguyên lý hoạt động của nó chính là thay đổi trạng thái hoạt động của devices về disable thôi
Xem chi tiết tại đây
Dùng Device properties
Giải thích 1 chút về cách này
Đầu tiên bạn phải biết Device properties là phần dùng để inject thông tin của devices
Nên cách này sẽ inject một thông tin dummy vào devices dẫn đến việc nó bị disable
B1: Mở file config.plist
bằng propertree
B2: Tìm đến phần DeviceProperties --> Add
rồi ấn Control +
Nếu là Mac thì
Command +
B3: Thay thế theo bảng sau
B4: Chọn vào dòng vừa add rồi nhấn 2 lần Control +
Hoặc sẽ là 2 lần
Command +
nếu như ở Mac
B5: Chỉnh sửa các giá trị theo bảng sau
Như vậy là xong rồi bạn nhé
Dùng SSDT-DPCIe
Khi làm theo những cách trên thì bạn sẽ còn tìm thấy những devices pcie đó trong hackintool
Nhưng với cách này bạn sẽ không còn nhìn thấy nó trong hackintool nữa
1 số lưu ý
Phương pháp này chỉ dùng cho child Pcie devices mà thôi
Đồng thời child devices cần có
Subdevice address
làName (_ADR, Zero)
Tiếp theo device mẹ có các biến xác định thông tin của child device được định nghĩa bằng dòng
PCI_Config
hoặcSystemMemory
Giải thích thêm một chút đây là nơi bit
D4
dữ liệu củaoffset 0x55
Đây là offset thể hiện thộc tính hoạt động của thiết bị
Phần này chủ yếu cho biết vì mọi devices hiển thị trong hackintool đều dùng được cách này
Nguyên lý hoạt động
Vấn như những cách trước nó vẫn chỉ là inject 1 cái thuộc tính dummy vào device làm cho mac không nhận
Để tìm hiểu rõ nguyên lý hoạt động ta sẽ cần phải biết các child device thường ở trên những dòng máy mới sẽ có name là
PXSX
và device mẹ của chính sẽ có name làRP01, RP02, RP03,...
Như đã nói ở trên các child devices sẽ được inject thông tin trong device mẹ bởi các biến inject thông tin được định nghĩa có chứa dòng PCI_Config
hoặc SystemMemory
Và ở đây SSDT này sẽ tạo thêm 1 biến inject thông tin như vậy ở trong device mẹ
Đương nhiên thông tin đó là dummy điều này sẽ dẫn đến thông tin bị sai và cũng chính là nguyên nhân dẫn đến sự biến mất của child device đó trong hackintool.
Đồng thời nó sẽ kết hợp với method _STA
giúp disable device này.
Với nguyên lý hoạt động đó nếu 2 child devices bạn muốn disable đi đều nằm trong 1 devices mẹ thì khi dùng SSDT này bạn sẽ disable cùng lúc cả 2 child devices này
B1: Tải file SSDT-DPCIe về
B2: Thay thế ACPI-Path
mặc định thành ACPI-Path
đã xác định ở trên
Ví dụ ACPI path của mình xác định được là
_SB.PCI0.RP17
Thì mình sẽ thay
_SB.PCI0.RP01
thành_SB.PCI0.RP17
B3: Complie SSDT và save lại dưới dạng .aml
Nếu như bạn không biết làm bước này vui lòng tham khảo tại đây
B4: Bỏ file SSDT vừa complie vào EFI --> OC --> ACPI
và tiến hành oc snapshot
Nếu như bạn không biết OC_Snapshot thì tham khảo tại đây
Nếu như là Clover thì chỉ việc cho vào
EFI --> Clover --> ACPI --> Patched
mà không cần OC_Snapshot
B5: Reboot và tận hưởng thành quả thôi
Nếu như bạn thêm SSDT này vào mà bị inject ACPI sang windows thì bạn có thể dùng EFI NO ACPI
Thường là lỗi màn hình xanh
Tham khảo chi tiết tại đây
Source tham khảo của cách này là https://github.com/5T33Z0/OC-Little-Translated/tree/main/02_Disabling_Devices/Disabling_PCI_Devices/ACPI | https://github.com/daliansky/OC-little/tree/master/
Last updated