Disable dGPU Laptop
Optimus Method
Các làm này thực sự rất đơn giản. Những gì chúng ta cần làm là call tới method .off
để disable dGPU
B1: tải SSDT-dGPU-Off.dsl
B2: Boot vào windows hoặc winpe truy cập device manager theo đường dẫn
Device Manager -> Display Adapters -> dGPU -> Properties -> Details > BIOS device name
chúng ta sẽ có thể thấy dược ACPI-path của DGPU. một số ACPI path phổ biến là
Nvidia dGPU:
\_SB.PCI0.PEG0.PEGP
AMD dGPU:
\_SB.PCI0.PEGP.DGFX
B3: chỉnh sửa SSDT các bạn sẽ cần đổi ACPI path của SSDT thành ACPI path vừa xác định ở trên. Cụ thể những phần cần chỉnh sửa là
External(_SB.PCI0.PEG0.PEGP._OFF, MethodObj)
If (CondRefOf(\_SB.PCI0.PEG0.PEGP._OFF)) { \_SB.PCI0.PEG0.PEGP._OFF() }

B4: biên dịch SSDT thành file aml theo hướng dẫn tại đây
B5: Bỏ SSDT vào EFI --> OC --> ACPI
hoặc EFI --> Clover --> ACPI --> patched
Snapshot nếu là opencore
Bumblebee Method
B1: Tải SSDT-NoHybGfx.dsl
B2: Boot vào windows hoặc winpe truy cập device manager
theo đường dẫn
Device Manager -> Display Adapters -> dGPU -> Properties -> Details > BIOS device name
chúng ta sẽ có thể thấy dược ACPI-path của DGPU. một số ACPI path phổ biến là
Nvidia dGPU:
\_SB.PCI0.PEG0.PEGP
AMD dGPU:
\_SB.PCI0.PEGP.DGFX
B3: Ta cần tiến hành đổi ACPI path
trong SSDT thành ACPI path
vừa xác định được. Cụ thể những phần cần đổi là
External (_SB_.PCI0.PEG0.PEGP._DSM, MethodObj) // dGPU ACPI Path
External (_SB_.PCI0.PEG0.PEGP._PS3, MethodObj) // dGPU ACPI Path
If ((CondRefOf (\_SB.PCI0.PEG0.PEGP._DSM) && CondRefOf (\_SB.PCI0.PEG0.PEGP._PS3)))
// Card Off Request
\_SB.PCI0.PEG0.PEGP._DSM (ToUUID ("a486d8f8-0bda-471b-a72b-6042a6b5bee0"), 0x0100, 0x1A, Buffer (0x04)
// Card Off
\_SB.PCI0.PEG0.PEGP._PS3 ()

B4: biên dịch SSDT thành file aml theo hướng dẫn tại đây
B5: Bỏ SSDT vào EFI --> OC --> ACPI
hoặc EFI --> Clover --> ACPI --> patched
Snapshot nếu là opencore
Source tham khảo: Disabling laptop dGPUs (SSDT-dGPU-Off/NoHybGfx) | Getting Started With ACPI (dortania.github.io)
Last updated