Ở 1 số card đồ hoạ AMD khi cắm vào chỉ nhận 6MB VRAM thì các bạn làm như sau (ở đây mình mặc định rằng Card đồ hoạ AMD của các bạn nằm trong danh sách hỗ trợ).

I: Xác định phần cần Patch 

B1: Ta cần phải xác định ID PCI. 

B2: Xác định Patch ACPI dGPU 

B3: Các bạn tải SSDT-GPU-SPOOF

II: Tiến hành

Cách 1: Bằng DSDT/SSDT

Xác định ID PCI:

B1: Truy cập vào trang sau để tìm Device ID PCI Devices (ucw.cz) các bạn lướt xuống mục Device để tìm ID đúng với tên GPU của các bạn (1 số GPU sẽ không có trong danh sách này các bạn dùng app gpuz để check mã của GPU vd : R7 240 sẽ có mã là oland thì bạn sẽ fake thành dòng cũng có mã là Oland).

B2: Ấn vào mục id tương ứng với tên dGPU (VD mình cần Fake dòng R9 390 thì dòng gần với nó nhất là dòng R9 390X).

Ta có Device ID của dòng này sẽ là 67b0.

B3: Tách device id thành như sau 67 b0 00 00.

B4: Hoán đổi vị trí của 67 và b0 ta sẽ được b0 67 00 00. 

B5: Thế 0x vào trước mỗi cặp ta sẽ được 0xb0, 0x67, 0x00, 0x00. 

B6: Đưa vào ssdt nó sẽ là: 

                    “device-id”,

                    Buffer (0x04)

                    {

                        0xB0, 0x67, 0x00, 0x00

                    },

Xác định Patch ACPI dGPU :

B1: Vào Windows mở Device Manager ⇒ ​​Display Adapters ⇒ Details ⇒ Location Paths sẽ được như hình 

nó sẽ có dạng là 

ACPI(_SB_)#ACPI(PC02)#ACPI(BR2A)#ACPI(PEGP)#PCI(0000)#PCI(0000)

B2: Mở Device Manager ⇒ ​​Display Adapters ⇒ Details ⇒ BIOS Device Name.

B3: Tiến hành chuyển đổi như sau: 

ACPI(_SB_)#ACPI(PC02)#ACPI(BR2A)#ACPI(PEGP)#PCI(0000)#PCI(0000) 

⇒ \_SB_.PC02.BR2A.PEGP

(thay thế pci0 ⇒ pc02, peg0 ⇒ br2a)

B4: Thay thế vào SSDT nó sẽ có dạng: 

Cuối cùng ta sẽ thay tên Model vào (không bắt buộc)

Ví dụ như mình ở đây thì sẽ thay tên là AMD Radeon R9 390.

B5: Sau khi làm xong các bạn chuyển về file .aml và bỏ ào EFI ==> OC ==> ACPI hoặc EFI ==> CLOVER ==> ACPI ==> PATCHED.

Cách 2: Add vào DeviceProperties

Yêu cầu:

  • Sử dụng whatevergreen version 1.5.2+

Xác định ID PCI:

B1: Truy cập vào trang sau để tìm Device ID PCI Devices (ucw.cz) các bạn lướt xuống mục device để tìm id đúng với tên GPU của các bạn (1 số GPU sẽ không có trong danh sách này các bạn dùng app gpuz để check mã của gpu vd : R7 240 sẽ có mã là oland thì bạn sẽ fake thành dòng R7 240 cũng có mã là Oland)

B2: Ấn vào mục ID tương ứng với tên dGPU (VD mình cần fake dòng R9 390 thì dòng gần với nó nhất là dòng R9 390X)

Ta có Device ID của dòng này sẽ là 67b0.

B3: Tách Device ID thành như sau:

// Thêm các chữ số 0 vào trước device-id sao cho device-id có 8 chữ số

67b0 ==> 000067b0

// Tách device-id thành các cặp 2 chứ số

000067b0 ==> 00 00 67 b0

// Đảo ngước thứ tự các cặp từ phải sang trái

00 00 67 b0 ==> b0 67 00 00

// Viết lại và sử dụng 

b0 67 00 00 ==> b0670000

Xác định Location Patch GPU

B1: Mở Hackintool lên và chọn Tab PCle.

B2: Các bạn cần chú ý đến phần Device Name và Device Patch.

B3: Các bạn tìm đến tên VGA trong tab Device Name và nhìn sang Tab Device Patch chuột phải chọn Copy Patch

Add vào Device Properties

B1: Các bạn mở config vào mục DeviceProperties nếu ở OpenCore và Device ==> Properties nếu ở Clover.

B2: Các bạn Add dòng Device Patch vừa lấy được vào chọn kiểu dữ liệu là Dictionary.

B3: Add Device-ID vào như sau:

device-id|data|< giá trị id>
//ví dụ 
device | data | b0670000

Cuối cùng Save lại và Reboot thôi.

Bảng tóm tắt thông tin Card AMD

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferLưu ý
HD 5770yes10.6.80x68B82x DVI, HDMI, DPVervetnone
HD 5770 Mac Editionyes10.6.80x68B82x mDP, DVIHoolocknone
HD 5850yes10.6.80x68992x DVI, HDMI, DPUakarinone
HD 5870yes10.6.80x68982x DVI, HDMI, DPUakarinone
HD 5870 Mac Editionyes10.6.80x68982x mDP, DVILangurnone
HD 5870 Eyefinity 6yes10.6.80x68986x mDP, DVIZonalischưa xác định
AMD5000Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferLưu ý
HD 6790No?0x673E??thiếu DevID
HD 6850No?0x6739??thiếu DevID
HD 6870Yes?0x67382x mDP, HDMI, 2x DVIDuckweedkhông có tác dụng 2nd DVI
HD 69×0No?rất nhiều lỗi
AMD6000Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferLưu ý
HD 7750Yes10.8.30x683F??lỗi đen màn từ 10.10.3
HD 7770 / R7 250XYes10.8.30x683D2x mDP, HDMI, DVIDashimakilỗi đen màn từ 10.10.3
HD 7850Yes10.8.30x6819??none
HD 7870 / R9 270XYes10.8.30x68102x mDP, HDMI, DVIFutomakinone
R9 270 / R7 370No10.8.30x6811??thiếu DevID
HD 7950 / R9 280Yes10.8.30x679A2x mDP, HDMI, DVIHamachinone
HD 7970 / R9 280XYes10.8.30x67982x mDP, HDMI, DVIHamachinone
AMD7000Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferlưu ý
HD 7790 / R7 260Yes10.10?0x665Cnonenonerất nhiều lỗi
R7 260X / R7 360No10.10?0x6658nonenone
R9 290 / R9 390No10.10?0x67B1nonenone
R9 290X / R9 390XYes10.10?0x67B0nonenone
AMD8000Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferKnown Issues
R9 285 / R9 380Yes10.100x6939DP, HDMI, 2x DVILagottoNeeds RadeonDeInit (since 10.11)
R9 380XYes10.100x6938DP, HDMI, 2x DVILagotto
Fury / Fury XNo10.120x7300nonenoneNeeds RadeonDeInit
AMD9000Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferKnown Issues
RX 460 / RX 560Yes10.120x67EFDP, HDMI, DVIAcrecần RadeonDeInit
RX 470 / RX 570Yes10.12.60x67DF2x DP, HDMI, 2x DVIOrinococần RadeonDeInit
RX 480 / RX 580Yes10.12.60x67DF2x DP, HDMI, 2x DVIOrinococần RadeonDeInit
AMD9500Controller

Graphics CardOOBmin. OSXDevIDReference Port LayoutFramebufferKnown Issues
RX Vega56Yes10.12.60x687F3x DP, HDMIKamarang / Iriri?cần RadeonDeInit, sớm có drivers
RX Vega64Yes10.12.60x687F3x DP, HDMIKamarang / Iriri?cần RadeonDeInit, sớm có drivers
AMD10000Controller

Chú thích:

  • OOB: no có nghĩa là VGA cần phải được fake device-id.
  • Min OS: bản macOS thấp nhất được support.

Source tham khảo: Renaming GPUs (SSDT-GPU-SPOOF) Getting Started With ACPI (dortania.github.io) | Releases · acidanthera/WhateverGreen (github.com) | Radeon Compatibility Guide – ATI/AMD Graphics Cards | tonymacx86.com

Lưu ý: Đối với card RX 550 bản lexa thì các bạn có thể thử device-id là FF67

Lưu ý cho Big Sur: đối với 1 số máy sẽ gặp bug DeviceProperties injection failing để kiểm tra các bạn sẽ dùng IOReg vào đường dẫn của VGA rời tìm mục ACPI-Patch.

Nếu không có thì các đang gặp lỗi này khi này các bạn sẽ không thể fake được device-id để fix các bạn sẽ dùng SSDT-BRG0

Các bạn sẽ thay các mục như ảnh:

Thay bằng đường dẫn như của phầnXác định path ACPI dGPU.

3 thoughts on “XXIII. Patch Card đồ họa AMD

  1. Pingback: Convert bootloader - Heavietnam November 2021

  2. Pingback: Convert bootloader - Heavietnam December 2021

  3. Pingback: Hotplug thunderbolt 3 - Heavietnam February 2022

Leave a Reply