ACPI Method là gì?
Quicknote giải thích ACPI control method.
ACPI Method là đoạn AML mà OS có thể evaluate để hỏi firmware về trạng thái, resource, power hoặc hành vi đặc biệt của device. Một method nhỏ như _STA có thể quyết định device có xuất hiện trong Device Manager hay không.
| Mục | Giá trị | Ghi chú |
|---|---|---|
| `_STA` | Device status | OS dùng để biết device present/enabled/functioning. |
| `_CRS` | Current resource settings | Trả resource như IRQ, MMIO, GPIO, I2C. |
| `_PS0/_PS3` | Power state method | Bật/tắt device khi chuyển power state. |
| `_PRW` | Power resource for wake | Mô tả wake capability. |
| `_DSM` | Device-specific method | Vendor extension, OS driver thường gọi để lấy capability. |
Ví dụ _STA
Method (_STA, 0, NotSerialized) {
If (LEqual (ENAB, One)) {
Return (0x0F)
}
Return (0x00)
}
Ở đây ENAB có thể đến từ OperationRegion, GPIO, EC hoặc một giá trị được firmware patch theo Setup option. Nếu ENAB = 0, device biến mất khỏi OS dù phần cứng vẫn hàn trên board.
Method không phải lúc nào cũng “safe”
Một ACPI method có thể đọc EC, truy cập GPIO OperationRegion hoặc phụ thuộc vào thứ tự power sequence. Vì vậy lỗi AML đôi khi biểu hiện như lỗi hardware: touchpad mất sau resume, USB-C không wake, fan policy sai.
Enumerate device
OS thấy `_HID` và gọi `_STA`.
Evaluate `_CRS`
Lấy IRQ/MMIO/GPIO/I2C resource.
Call `_PS0`
Bật rail/clock/reset qua AML.
Bind driver
Driver OS bắt đầu control device.
Khi method trả sai
Bài liên quan
Nguồn tham khảo public
Thấy nội dung này hữu ích?
Lưu lại hoặc chia sẻ cho người cũng đang học firmware, BIOS/UEFI và embedded systems.
Nội dung liên quan
Một số bài viết, ghi chú hoặc project có liên quan đến nội dung bạn vừa đọc.
ACPI Namespace là gì?
Quicknote giải thích ACPI namespace.
ACPI Hardware Overview
Knowledge map về cách firmware mô tả phần cứng cho OS bằng ACPI, SMBIOS, GPIO, EC, PCIe và power state.
ACPI Table Types cần biết
Quicknote giới thiệu các loại ACPI table thường gặp.
Biến note thành bài viết hoàn chỉnh
Notes là nơi ghi nhanh khái niệm.