📘
Advanced Guide
HomeInstall GuideBasic GuideGPU BuyerWIFI BuyeriOS
  • Install
  • Basic Guide
  • General
    • EFI Opencore No ACPI
    • OpenCore Debug
    • Convert Bootloader
    • Cách mod bios
    • Fake CPU ID
    • Fix RTC write issues
    • HotPlug Thunderbolt 3
    • Inject USB Manual
    • Sử kext S/L/E trên bigsur
    • Disable unsupport PCIe
  • Audio
    • Patch audio với VoodooHDA
    • Patch Apple HDA
  • ACPI advance
    • Chi tiết về ACPI
    • Tìm hiểu về ASL
    • Patch DSDT Phần 1
    • Patch DSDT Phần 2
    • Patch DSDT Phần 3
    • Patch DSDT phần 4
    • Use method _STA
    • Disable Unsupported Nvme
    • Map usb via SSDT
    • Fix Shut down
  • Laptop Specifics
    • Fix trackpad
    • Patch pin
    • Disable CFG-Clock
    • Fix Hotkeys
  • Connector
    • Fix Connector
    • Fix HDMI Audio
    • Patch GMA GPU
    • Patch Card đồ họa NVIDIA
    • Patch Card đồ họa AMD
    • Fixes for slow AMD GPU
    • Patch Connect Type/ Force RGB/ Inject EDID
Powered by GitBook
On this page
  • Xác định phần cần Patch
  • Cách 1: Bằng DSDT/SSDT
  • Xác định ID PCI
  • Xác định Patch ACPI dGPU
  • Cuối cùng ta sẽ thay tên Model vào
  • Cách 2: Add vào DeviceProperties
  • Xác định ID PCI
  • Xác định Location Patch GPU
  • Add vào Device Properties
  • Bảng tóm tắt thông tin Card AMD
  1. Connector

Patch Card đồ họa AMD

PreviousPatch Card đồ họa NVIDIANextFixes for slow AMD GPU

Last updated 10 months ago

Ở 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ợ).

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

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ỏ và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 Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Lưu ý

HD 5770

yes

10.6.8

0x68B8

2x DVI, HDMI, DP

Vervet

none

HD 5770 Mac Edition

yes

10.6.8

0x68B8

2x mDP, DVI

Hoolock

none

HD 5850

yes

10.6.8

0x6899

2x DVI, HDMI, DP

Uakari

none

HD 5870

yes

10.6.8

0x6898

2x DVI, HDMI, DP

Uakari

none

HD 5870 Mac Edition

yes

10.6.8

0x6898

2x mDP, DVI

Langur

none

HD 5870 Eyefinity 6

yes

10.6.8

0x6898

6x mDP, DVI

Zonalis

chưa xác định

AMD5000Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Lưu ý

HD 6790

No

?

0x673E

?

?

thiếu DevID

HD 6850

No

?

0x6739

?

?

thiếu DevID

HD 6870

Yes

?

0x6738

2x mDP, HDMI, 2x DVI

Duckweed

không có tác dụng 2nd DVI

HD 69×0

No

?

–

–

–

rất nhiều lỗi

AMD6000Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Lưu ý

HD 7750

Yes

10.8.3

0x683F

?

?

lỗi đen màn từ 10.10.3

HD 7770 / R7 250X

Yes

10.8.3

0x683D

2x mDP, HDMI, DVI

Dashimaki

lỗi đen màn từ 10.10.3

HD 7850

Yes

10.8.3

0x6819

?

?

none

HD 7870 / R9 270X

Yes

10.8.3

0x6810

2x mDP, HDMI, DVI

Futomaki

none

R9 270 / R7 370

No

10.8.3

0x6811

?

?

thiếu DevID

HD 7950 / R9 280

Yes

10.8.3

0x679A

2x mDP, HDMI, DVI

Hamachi

none

HD 7970 / R9 280X

Yes

10.8.3

0x6798

2x mDP, HDMI, DVI

Hamachi

none

AMD7000Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
lưu ý

HD 7790 / R7 260

Yes

10.10?

0x665C

none

none

rất nhiều lỗi

R7 260X / R7 360

No

10.10?

0x6658

none

none

“

R9 290 / R9 390

No

10.10?

0x67B1

none

none

“

R9 290X / R9 390X

Yes

10.10?

0x67B0

none

none

“

AMD8000Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Known Issues

R9 285 / R9 380

Yes

10.10

0x6939

DP, HDMI, 2x DVI

Lagotto

Needs RadeonDeInit (since 10.11)

R9 380X

Yes

10.10

0x6938

DP, HDMI, 2x DVI

Lagotto

“

Fury / Fury X

No

10.12

0x7300

none

none

Needs RadeonDeInit

AMD9000Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Known Issues

RX 460 / RX 560

Yes

10.12

0x67EF

DP, HDMI, DVI

Acre

cần RadeonDeInit

RX 470 / RX 570

Yes

10.12.6

0x67DF

2x DP, HDMI, 2x DVI

Orinoco

cần RadeonDeInit

RX 480 / RX 580

Yes

10.12.6

0x67DF

2x DP, HDMI, 2x DVI

Orinoco

cần RadeonDeInit

AMD9500Controller

Graphics Card
OOB
min. OSX
DevID
Reference Port Layout
Framebuffer
Known Issues

RX Vega56

Yes

10.12.6

0x687F

3x DP, HDMI

Kamarang / Iriri?

cần RadeonDeInit, sớm có drivers

RX Vega64

Yes

10.12.6

0x687F

3x DP, HDMI

Kamarang / Iriri?

cần RadeonDeInit, sớm có drivers

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.

Chú ý rằng đối với dòng RX 6600

Nếu bạn bị black screen ngay cả khi đã add arg agdpmod=pikera thì bạn sẽ tiến hành làm như sau để fix lỗi

  • Xoá những boot-arg -v debug=0x100 keepsyms=1

  • Setting những dòng sau trong Misc -> Debug

    • AppleDebug = False

    • ApplePanic = False

    • DisableWatchDog = True

    • Target = 0

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 ý 1

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

Đối với card HD 7730 các bạn có thể thử device-id là 3F68

Đối với 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ần Xác định path ACPI dGPU.

Lưu ý 2

Đối với một số card cpu xảy ra hiện tượng boot lúc thì vô lúc thì khởi động lại thì các bạn tiến hành disable option Intel Platform Trust Technology trong bios. Nếu không có thì các tiến hành mod bios nhé