ACPI Namespace là gì?
Quicknote giải thích ACPI namespace.
ACPI Namespace là cây object mà OS tạo ra sau khi load DSDT/SSDT. Đây là nơi các device, scope, method, field, name object cùng tồn tại. Khi OS gọi \_SB.PCI0.LPCB.EC0._Q42, nó không đọc một file text; nó đang tìm một object path trong namespace đã merge.
Ví dụ ACPI namespace
\
├─ _SB
│ ├─ PCI0
│ │ ├─ LPCB
│ │ │ └─ EC0
│ │ │ ├─ _HID
│ │ │ ├─ _STA
│ │ │ └─ _Q42
│ │ └─ RP01
│ └─ PWRB
└─ _PR Vì sao namespace quan trọng?
OS driver bind không chỉ dựa vào PCI ID. Với ACPI device, OS cần path, _HID/_CID, _STA, _CRS và đôi khi _DSM. Nếu một object nằm sai scope, OS có thể không bao giờ gọi method đó.
| Mục | Giá trị | Ghi chú |
|---|---|---|
| `_SB` | System Bus | Scope thường chứa PCI root, embedded device, power button. |
| `PCI0` | PCI root bridge | Liên hệ với PCI enumeration và `_CRS`. |
| `_HID/_CID` | Hardware/Compatible ID | Giúp OS chọn driver. |
| `_STA` | Device status | Present/enabled/visible/functioning. |
| `_CRS` | Current Resource Settings | MMIO, IRQ, GPIO, I2C, SPI resource. |
Debug diary: device không xuất hiện trong OS
Một pattern thường gặp:
Device có trong source ASL
↓
Nhưng OS không tạo device node
Hãy kiểm tra: table có được load không, object có nằm trong namespace sau khi merge không, _STA có trả bit present không, _HID/_CID có đúng driver OS không.
Namespace checklist
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 Method là gì?
Quicknote giải thích ACPI control method.
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.