📕
Basic Guide
HomeIstall GuideAdvance GuideGPU BuyerWIFI BuyeriOS
  • Install
  • Universal
    • Boot không cần USB
    • SIP và Gatekeeper
    • Patch âm thanh với AppleALC
    • Fix power management
    • Fix iServices
    • Fix sleep
      • GPRW/UPRW/LANC
      • Fix keyboard wake
      • Fix darkwake
      • Hotpatch PTS Wake TTS
    • Update macOS và Bootloader
  • Cosmetics
    • Fixing Resolution and Verbose
    • Tạo GUI
    • Scan policy
  • GPU
    • Patch IGPU
    • Disable dGPU Laptop
    • Disable dGPU Desktop
    • Fix DRM support
  • Gerneral
    • Fix Backlight
    • Control Brightness cho External Display
    • Enable Trim For SSD
    • Fake iGPU/ CPU Name
    • Patch SATA Controller
    • Control Led RGB
    • Time Machine
    • Emulated NVRAM
    • Cách inject toàn bộ thông tin phần cứng
  • USB FIX
    • Map USB
  • NetWork
    • Fix Ethernet
    • Fix WiFi và Bluetooth
  • Multiboot
    • Resize và Create Partition EFI
    • Cách thêm Boot vào BIOS
    • Hướng dẫn Dual Boot
  • Cách fake UUID windows
  • Advanced Guide
Powered by GitBook
On this page
  • Gen 4 trở lên
  • Chuẩn bị
  • Tiến hành
  • Gen 3 đổ xuống
  • Cách 1: Enable XCPM
  • Cách 2: ssdtPRgen
  • AMD Power manager
  • Check Power manager
  • Gen 4 trở lên
  • Gen 3 đổ xuống
  • Lưu ý
  • X99
  • Gen 3 đổ xuống
  1. Universal

Fix power management

PreviousPatch âm thanh với AppleALCNextFix iServices

Last updated 9 months ago

Patch power manager là 1 patch khá quan trọng với laptop, pc có thể không patch. Nó giúp các mẫu laptop có thể tiết kiện điện năng, không quá nóng và đặc biệt là nó còn giúp fix sleep. Vậy patch power manager làm như thế nào?

Lý thuyết chi tiết

Bảng này được trích lại từ nguồn

XCPM và macOS

OS X Mountain Lion 10.8.5 ra đời đi kèm với việc đưa CPU Intel Haswell vào real mac.

Cùng thời điểm đó, Apple chuyển CPU Power Management từ AppleIntelCPUPowerManagement.kext qua Kernel cho CPU Haswell và sau đó là các CPU mới hơn. Công nghệ này gọi là XCPM (Xnu CPU Power Management).

Hiểu đơn giản là macOS tự quản lý power, và tính năng này chỉ hỗ trợ CPU Haswell trở lên.

CFG-Lock (MSR 0xE2 register)

Tôi đề cập CFG-Lock trong phần config và bios, sau đây là lý do tại sao phải tắt nó đi:

Trong các máy real mac, Apple không khoá MSR 0xE2 register (tức cho phép ghi vào register này). Còn trong các mainboard cho CPU Intel thì có thể mặc định bị khoá (không tìm thấy CFG-LOCK trong bios nghĩa là mặc định khoá), đa số laptop đều bị khoá. Khi macOS Kernel cố ghi vào register này nhưng nó bị khoá mất rồi thì sẽ gây Kernel Panic. Giải pháp khi không tắt được CFG-LOCK là patch AppleIntelCPUPowerManagement.kext lẫn Kernel để tránh ghi vào MSR 0xE2 register.

May mắn là CLOVER và OPENCORE đều hỗ trợ patch tự động vấn đề này.

Đối với OC thì đó là AppleXcpmCfgLock trong Config > Kernel > Quirks.

Do đó nếu máy bạn tắt được CFG-LOCK trong bios thì hãy bỏ quirk này đi!

Còn một cách nữa đó là mod bios để tắt CFG-LOCK

Chi tiết về các mod bios xem

Gen 4 trở lên

Chuẩn bị

B1: Tải và bỏ nó vào EFI ==> OC ==> ACPI

Hoặc EFI ==> Clover ==> ACPI ==> patched

B2: Tải kext

B3: Tải tool

Tiến hành

B1: Chạy tool CPUFriendFriend lên

B2: Ta có mục Low Frequency Mode tức là xung thấp nhất của cpu khi máy ở chế độ tĩnh

Không làm việc

Có 3 cách để tính LFM

  • Tra cứu thông tin cpu

    • B1: Các bạn sẽ mở hackintool vào mục system ==> system info ==> CPU để tìm mã cpu

    • B2: Search mã đó và vào trang intel ark

    • B4: Các bạn sẽ tiến hành chuyển nó về dạng MHz bằng công thức sau

      • TDP-down*1000=1.7*1000=1700

    • B5: Bạn sẽ chuyển đổi các chứ số hàng trăm thành hex tức chuyển 17 thành hex

    • B6: Ta sẽ tiến hành nhập 11 vào terminal

  • Manual

    • Ở đây ta có xung tối đa của CPU này là 1,8 GHz. Để tính LFM ta sẽ tiến hành chia 2 con số này ra

      • Hoặc bao nhiêu tùy thích nhưng mình khuyên nên chia 2

      • Và tính theo công thức sau:

        • MAX/2*1000 = 1,8/2*1000=900 MHz

    • Ta được 0x09 là giá trị hex của LFM.

      • Ở đây ta sẽ tiên hành bỏ 0x đi và nhập giá trị vào terminal

  • Tra cứu theo danh sách LFM sau

    • Laptop gen 5 trở lên chọn LFM là 08

    • Desktop gen 5 trở lên chọn LFM là 0A

    • Haswell/Broadwell HEDT/Server (tức X99) chọn LFM là 0D

    • Skylake+ HEDT/Server chọn LFM là 0C

Đến đây nếu các bạn là SMbios Broadwell trở xuống thì trực tiếp tới bước 6 nếu là SMbios Skylake trở lên thì tiếp tục bước 3

B3: Tính toán EPP.

Khả năng tăng tốc xung CPU

Energy Performance Preference

Các bạn chọn theo bảng sau:

  • 0x00-0x3F: Hiệu suất tối đa

  • 0x40-0x7F: Hiệu suất cân bằng

  • 0x80-0xBF: Công suất cân bằng

  • 0xC0-0xFF: Tiết kiêm điện năng tối đa

Giải thích 1 chút:

Với 00 nó sẽ ép cpu của bạn tăng tốc càng nhanh càn tốt

Còn với FF thì nó sẽ tăng tốc 1 cách từ từ

B4: Chọn Performance Bias tức là hiệu suất tổng thể của CPU.

Ở mục này các bạn cần dựa cào trải nghiệm để lựa chọn giá trị phù hợp nhất

B5: Enable features các bạn gõ y

B6: Các bạn sẽ dump được 1 folder Results.

Ở folder này các bạn sẽ chú ý các mục

  • SSDT-data.aml

  • CPUFriendDataProvider.kext

Ta có thể sử dụng chỉ SSDT-data.aml hoặc sử dụng CPUFriendDataProvider.kext + SSDT-PLUG.aml

Hoặc EFI ==> Clover ==> Kext

B8: Snaps nếu opencore và reboot

Nếu là Clover chỉ cần reboot

Gen 3 đổ xuống

Cách 1: Enable XCPM

Chỉ gen 3

B1: Chỉnh sử config Root ⇒ Kernel ⇒ Quirks enable những mục sau

  • AppleCpuPmCfgLock

  • AppleXcpmCfgLock

  • AppleXcpmExtraMsrs

Đối với gen 3 đang dùng các smbios có hỗ trợ xcpm

Tức smbios haswell

Thì bạn chỉ cần enable quirks và không cần add patch

B3: Các bạn sẽ copy mục 0 của file patched vào config của các bạn

Tới đây thì các bạn sẽ có thể patch như gen 4 trở lên

sudo [kéo SSDTPrgen vào] -x 1

Lưu ý

Đối với clover các bạn chỉ cần enable Kernel XCPM lên là được

Còn lại thì tương tự OC

Cách 2: ssdtPRgen

Cho cả gen 2 và gen 3

B1: Các bạn chỉnh CpuPm và Cpu0Ist ở trong ACPI -> Delete như sau

KEY
TYPE
VALUE

All

Boolean

YES

Comment

String

Drop CpuPm

Enabled

Boolean

YES

OemTableId

Data

437075506d000000

TableLength

Number

0

TableSignature

Data

53534454

KEY
TYPE
VALUE

All

Boolean

YES

Comment

String

Drop Cpu0Ist

Enabled

Boolean

YES

OemTableId

Data

4370753049737400

TableLength

Number

0

TableSignature

Data

53534454

B2: Save reboot

B4: Kéo file ssdtPRGen.sh vào terminal và nhấn enter

Sau khi chạy xong bạn sẽ nhận được file SSDT.aml

Tại đường dẫn /Users/your-name>/Library/ssdtPRGen/

B5: Copy nó vào EFI ==> OC ==> ACPI

Hoặc EFI ==> Clover ==> ACPI ==> Patched

B7: Rename nó thành SSDT-PM.aml

B8: Thêm SSDT-PM.aml vào EFI -> OC -> Kext

Hoặc EFI -> Clover -> Kext -> Others

Snapshot nếu là OpenCore

B8: Save và reboot

AMD Power manager

Căn bản MacOS không hỗ trợ XCPM cho AMD

Chi tiết

Kext SMCAMDProcessor có 2 kext là AMDRyzenCPUPowerManagement và SMCAMDProcessor

  • AMDRyzenCPUPowerManagement.kext

    • Để quản lý tất cả các tính năng liên quan đến năng lượng.

    • Kext này cũng cần thiết nếu bạn muốn sử dụng AMD Power Gadget.

  • SMCAMDProcessor.kext

    • Để xuất các dữ liệu đọc được tới VirtualSMC

      • Giúp các ứng dụng macOS như iStat hiển thị dữ liệu cảm biến.

    • Kext này phụ thuộc vào AMDRyzenCPUPowerManagement.kext để thu thập dữ liệu cảm biến

      • Do đó phải được load sau AMDRyzenCPUPowerManagement.kext.

B3: Thêm kext vào EFI -> OC -> Kext

Hoặc EFI -> Clover -> Kext -> Others

OC Snapshot nếu là OpenCore

B4: Đảm bảo rằng kext AMDRyzenCPUPowerManagement.kext được load trước SMCAMDProcessor.kext trong Config.plist

B5: Save lại và reboot

Check Power manager

Gen 4 trở lên

Hoặc với các máy gen 3 đã enable XCPM thì hoàn toàn có thể check theo cách này

B2: Mở ioreg lên và tìm kiếm AppleACPICPU

B3: Tiến hành tắt tìm kiếm để hiện đầy đủ thông tin

Ở đây nếu có X86PlatformPlugin trong tree tức là power manager của bạn đã hoạt đông

Nếu nó không có như ảnh dưới thì có nghĩa là chưa hoạt động

Gen 3 đổ xuống

Đối với các CPU gen 3 đổ xuống thì apple đã loại bỏ xcpm ra khỏi macos ở sierra

Gen 3 vẫn có thể enable lên được

Nên chúng ta sẽ cần dùng cách sau đây

Chú ý

B2: Mở lên và chú ý vào mục MAX

B3: Mở hackintool lên chú ý vào phần system ==> system info ==> CPU

B4: Check xung ở cả 2 phần xem có bằng nhau không nếu bằng thì bạn đã patch power manager thành công nếu không bằng thì bạn hãy patch lại nhé

Ngoài ra với gen 3 enable xcpm để chắc chắn bạn hãy check method int của SSDT-PM

Lưu ý

X99

XCPM căn bản không được hỗ trợ cho Haswell-E và Broadwell-E

Vì vậy chúng ta cần fake cpu id

  • Haswell-E

    • Kernel -> Emulate:

      • Cpuid1Data: C3060300 00000000 00000000 00000000

      • Cpuid1Mask: FFFFFFFF 00000000 00000000 00000000

  • Broadwell-E:

    • Kernel -> Emulate:

      • Cpuid1Data: D4060300 00000000 00000000 00000000

      • Cpuid1Mask: FFFFFFFF 00000000 00000000 00000000

Gen 3 đổ xuống

Ngoài phần max bạn cũng nên check những phần khác đối chiếu chúng với windows để chắc chắn rằng mọi đã hoạt động

B3: Nhìn vào mục Tần số TDP-down có thể cấu hình hoặc TDP-down Frequency

B1: Các bạn sẽ mở hackintool vào mục system ==> system info ==> CPU để tìm tần số xung tối đa của CPU

B2: Ta sẽ đổi LFM vừa tìm được ra hex nhưng không phải đổi con số 900 MHz mà ta sẽ đổi từ hành trăm tức là đổi số 9

B7: Thêm kext vào EFI ==> OC ==> kext

B2: Tải file patched về

Hoặc dừng với lệnh sau

B3: Tải

Tuy nhiên cộng đồng những người dùng AMD đã tạo ra kext

B1: Đảm bảo và ở bản mới nhất

B2: Tải kext và

Xem chi tiết về thứ tự load kext

B6: Tải và mở lên sử dụng

Như vâỵ là đã xong rồi hãy tận hưởng tôi

B1: Tải về

Đến thời điểm này đã không còn được cập nhật nữa

Các bạn có thể sử dụng phần mềm khác như

B1: Tải

Source tham khảo: | |

😄
CPUFriend
tại đây
SSDTPrgen
ssdtPRgen
SMCAMDProcessor
Lilu.kext
VirtualSMC.kext
AMDRyzenCPUPowerManagement.kext
SMCAMDProcessor.kext
AMD Power Gadget
ioreg
Intel Power Gadget
istatus menu
Intel Power Gadget
[GUIDE] X86PlatformPlugin (XCPM) für Ivy Bridge CPUs unter Catalina und Big Sur aktivieren – Anleitungen und Builds – Hackintosh-Forum – Deine Anlaufstelle für Hackintosh & mehr…
Optimizing Power Management | OpenCore Post-Install (dortania.github.io)
https://vnohackintosh.com/docs/post-install/fixing-power-management#amd-cpu-power-management
https://vnohackintosh.com/docs/post-install/fixing-power-management
​
​
SSDT-plug
cpu friend
CPUFriendFriend
tại đây
tại đây