# Sửa lỗi bộ điều khiển nhúng (Embedded Controller) không tương tích (SSDT-EC/USBX)

# Công dụng của SSDT này

Mục đích của tệp SSDT-EC/USBX bao gồm một vài thứ sau:

  • Trên máy tính bàn, thiết bị EC (hay còn biết tới với tên gọi embedded controller - Bộ điều khiển nhúng) gốc thường không tương thích với trình điều khiển AppleACPIEC của Apple. Để "lách luật", chúng ta sẽ vô hiệu hóa thiết bị gốc này khi chạy macOS.
  • Trình điều khiển AppleBusPowerController (Bộ điều khiển điều phối nguồn điện tới các Bus của Apple) sẽ luôn đi tìm một thiết bị có tên chính xác là EC để hoạt động, vì vậy, chúng ta sẽ tạo ra một thiết bị giả (Fake device) để kext này có thể nạp vào thành công.
    • Trên đời Skylake trở lên, trình điều khiển AppleBusPowerController cũng yêu cầu một thiết bị mang tên USBX để cung cấp các thuộc tính về nguồn điện cho cổng USB, Do đó, chúng ta sẽ gộp luôn thiết bị này vào chung với bản vá EC.
  • Trên Laptop, thiết bị EC đảm nhận các nhiệm vụ quan trọng như cho phép sử dụng phím tắt trên bàn phím và quản lý pin, nên chuyện vô hiệu hóa nó hoàn toàn không phải là ý hay. Vấn đề là tên giao ước của EC gốc trên máy thường không tương thích, vì vậy chúng ta sẽ tạo thêm một thiết bị EC "giả" đơn giản để làm hài lòng ông kẹ Apple.

Tóm tắt ngắn gọn (TL;DR):

  • EC là Embedded Controller (Bộ điều khiển nhúng).
  • Máy bàn (Desktops) chỉ cần tắt EC thiệt đi và tạo một EC giả đúng chuẩn con mặt cười Finder thích.
  • Laptops chỉ cần tạo thêm một EC giả hiện diện song song với EC thiệt.
  • Những máy tính đời Skylake trở lên sẽ cần thêm USBX.

# Các cách để tạo SSDT

Để thực hiện vá EC, có 3 phương pháp mà bạn có thể chọn tùy theo độ "siêng" của mình: