Cách xác định phần cứng

CPU

Ta dễ thấy đối với những guide hướng dẫn hackintosh hiện nay hầu hết đều dùng Code Name . Để xác định được code name của CPU và iGPU ta làm như sau:

B1: Bạn chuột phải vào biểu tượng windows ở góc dưới cùng bên trái và chọn system.

B2: Copy mục processor.

B3: Ta tiến hành search mục processor trên trình duyệt.

B4: Các bạn tiến hành mở kết quả tìm kiếm có domain là ark.intel.com

B5: Bạn sẽ chú ý vào phần tên mã hoặc code name. Đây chính là code name CPU của bạn.

Như ở đây ta có code nameComet Lake

IGPU

Để có thể patch được iGPU thì ta phải xác định được iGPU name. Làm như sau:

B1: Ta sẽ tiến hành search processor trên trình duyệt và mở trang sau như hướng dẫn ở CPU.

B2: Các bạn chú ý vào mục Đồ họa Bộ xử lý --> Đồ họa bộ xử lý

Đây chính là iGPU name của bạn.

Ở đây igpu nameHD4000

Chipset modelMainboard

Trước hết ta sẽ cần tìm hiểu chipset là gì? Chipset máy tính là một mạch tích hợp giúp xử lý giao tiếp giữa CPU, RAM, bộ lưu trữ và các thiết bị ngoại vi khác. Chipset xác định số lượng thành phần tốc độ cao hoặc thiết bị USB mà bo mạch chủ của bạn có thể hỗ trợ. Chipset thường bao gồm một đến bốn chip và các bộ điều khiển tính năng cho các thiết bị ngoại vi thường được sử dụng, như bàn phím, chuột hoặc màn hình.

Vậy còn mainboard là gì? Mainboard hay main máy tính hay bo mạch chủ là một bảng mạch đóng vai trò nền tảng trên máy tính, laptop có tác dụng kết nối các linh kiện bên trong thành thể thống nhất. Mainboard PC sẽ nằm ở thùng máy, hoặc tích hợp đằng sau màn hình đối với máy tính AIO.

Để xác định được mã của chúng ta sẽ làm như sau

Device manager

B1: mở device manager

B2: chọn tới tab IDE ATA/ATAPI controllers

B3: Chọn properties ta sẽ có thể thấy thế hệ chipset

Hoặc truy cập System devices và xem chipset series ở đây

Aida64

B1: tải Aida64

Pass: heavietnam

B2: Truy cập Motherboard --> Motherboard --> Motherboard Physical Info --> Motherboard Chipset --> Vaule

Audio Codec

B1: Các bạn tải aida64 tại đây.

Hoặc tại đây

Pass: heavietnam

B2: Các bạn sẽ vào tab Multimedia --> PCI/PnP Audio ở đây ta sẽ có thể thấy audio codec.

Network Controller models

B1: Các bạn tải aida64 tại đây.

Hoặc tại đây

Pass: heavietnam

B2: Các bạn sẽ chú ý đến mục sau Network --> PCI/PnP Network.

Drive Model

B1: Chuột phải vào logo Windows ở góc cuối bên trái và chọn device manager.

B2: Bạn chọn vào disk ở đây ta sẽ có được tên ổ cứng.

dGPU

B1: Bạn nhấn tổ hợp phím Windows + R và gõ dxdiag sau đó enter.

B2: Hệ thống sẽ mở DirectX Diagnostic Tool và bạn hãy chuyển đến tab render chú ý đến dòng name.

Keyboard, TrackpadTouchscreen Connection Type

Aida64

B1: Các bạn tải aida64 tại đây

Hoặc tại đây

Pass: heavietnam

B2: Các bạn truy cập vào đường dẫn Devices --> Physical Devices --> PnP Devices ở đây các bạn sẽ tiến hành tìm kiếm name Touchpad.

Device manager

B1: Nhấn chuột phải vào logo windows --> Device manager --> Device by connection

Bạn có thể xác định các device thông qua nhưng phần dưới đây

  • Human Interface Devices

  • Keyboards

  • Mice and other Pointer Devices

Thông qua những giá trị đó bạn có thể xác định được nó thuộc dạng PS2, SMBUS, USB hay i2c

SMBus

Nó sẽ hiển thị các dạng như Synaptics SMBus Driver hoặcELAN SMBus Driver

  • Synaptics sẽ có dạng như sau

    • Synaptics PS2 device

    • Synaptics Pointing Device

    • Synaptics SMBus Driver

Như ở đây là một trường hợp Touchpad có 2 phương thức là PS2 và SMBUS. Đương nhiên bạn có thể sử dụng một trong 2 phương thức. Nhưng đối với SMBus thường sẽ cung cấp độ chính xác và hỗ trợ tốt hơn

USB

Ở đây ta có thể thấy touchpad devices nằm ở dưới usb controller

I2C

Ở đây ta có thể thấy Touchpad devices nằm ở dưới I2c controller

Xác định location path

Trước tiên ta cần tìm hiểu location path là gì? Nó là đường dẫn đến devices trong hệ thống và thường được hệ thống đọc dưới 2 dạng là ACPI pathDevice path. ACPI path thường được sử dụng trong việc patch DSDT còn Device path thường được dùng trong config.plist để inject properties của các Device.

B1: Các bạn nháy chuột phải vào biểu tượng Windows ở góc dưới bên trái và chọn device manager.

B2: Tiến hành chuột phải vào device cần lấy location path và chọn properties.

B3: Chọn tab Details --> location paths.

B4: Ta sẽ tiến hành chuyển value vừa lấy được ở trên về dạng path để có thể sử dụng.

//value mặc định
PCIROOT(0)#PCI(1C01)#PCI(0000)
ACPI(_SB_)#ACPI(PCI0)#ACPI(RP02)#ACPI(WLAN)

//Device path mặc định
PCIROOT(0)#PCI(1C01)#PCI(0000)

//ACPI path mặc định 
ACPI(_SB_)#ACPI(PCI0)#ACPI(RP02)#ACPI(WLAN)

//Convert Device path mặc định
PCIROOT(0)#PCI(1C01)#PCI(0000)
# Tiến hành chuyển dấu "#" thành dấu "/"
PCIROOT(0)/PCI(1C01)/PCI(0000)
# Ta tiến hành chia các giá trị nhỏ trong "()" thành các cặp 2 số. Nếu cặp số không bắt đầu bằng số "0" thì thêm số "0" vào trước
PCIROOT(00)/PCI(01C 01)/PCI(00 00)
# Viết thế chữ "x" vào giữa các cặp 2 chữ số
PCIROOT(0x0)/PCI(0x1C 0x1)/PCI(0x0 0x0)
# chuyển các dấu cách trong ngoặc thành dấu ","
PCIROOT(0x0)/PCI(0x1C,0x1)/PCI(0x0,0x0)

// Convert ACPI path nguyên mẫu
# Ta tiến hành giữ lại các ký tự trong ngoặc những ký tự khác thì lược bỏ 
_SB_ PCI0 RP02 WLAN
# Tiếp đó tiến hành thay dấu cách bằng dấu "."
_SB_.PCI0.RP02.WLAN

Xác định vendor iddevice id của usb controller

Khi tiến hành map usb các bạn cần xác định device id và vendor id để sử dụng đúng kext. Việc này rất dễ thực hiện ở mac nhưng khi không có mac thì các bạn làm theo sau:

B1: Chuột phải vào biểu tượng windows chọn device manager

B2: Chuột phải vào tên usb controller và chọn Properties

Tên usb controller thường bắt đầu bằng Intel (R)

B3: Tới tab Details và chọn Hardware ID và nhìn vào dòng đầu tiên

Ở đây ta có vendor id là 8086 device id là 1E31

Source tham khảo: Finding your hardware | OpenCore Install Guide (dortania.github.io)

Last updated