PCI Root Bridge là gì?
Quicknote PCI Root Bridge là gì?
PCI Root Bridge là điểm firmware dùng để nối CPU/root complex với PCI/PCIe hierarchy. Từ góc nhìn UEFI, root bridge không chỉ là phần cứng; nó còn là đối tượng được mô tả bằng protocol và resource aperture để PCI Bus Driver bắt đầu enumeration.
Nói đơn giản: nếu không có root bridge đúng, firmware không biết phạm vi bus/MMIO/I/O nào được phép dùng cho PCI.
Publish Root Bridge
Platform/root bridge driver mô tả bus range và resource aperture.
Start enumeration
PCI Bus Driver scan device phía dưới root bridge.
Allocate resources
BAR và bridge window được cấp trong aperture cho phép.
Expose PCI I/O
Endpoint có EFI_PCI_IO_PROTOCOL để driver khác bind.
Root bridge mô tả những gì?
| Mục | Giá trị | Ghi chú |
|---|---|---|
| Bus range | Ví dụ 0 - 255 | Phạm vi bus firmware được scan. |
| MMIO aperture | Range MMIO 32/64-bit | Nơi allocate BAR/bridge window. |
| I/O aperture | Legacy I/O range | Ít quan trọng hơn với PCIe hiện đại. |
| DMA attribute | Coherency / translation | Có thể liên quan IOMMU/DMAR ở OS. |
Debug diary: root bridge aperture sai
Nếu root bridge aperture quá nhỏ, endpoint phía dưới vẫn có thể được detect, nhưng resource allocation fail hoặc BAR không được assign hợp lý.
Ví dụ:
NVMe BAR cần 16 KB
GPU BAR cần 256 MB
Root Bridge MMIO32 aperture chỉ còn 128 MB
Kết quả có thể là GPU không có đủ resource, OS báo Code 12, hoặc firmware không expose đúng device.
Checklist Root Bridge
Bài liên quan
- PCI Architecture Overview
- PCI Configuration Space là gì?
- BDF trong PCIe là gì?
- BAR trong PCIe là gì?
- PCI Resource Allocation là gì?
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.
Biến note thành bài viết hoàn chỉnh
Notes là nơi ghi nhanh khái niệm.