PCI Option ROMとは?
BIOS/UEFIおよびembedded firmware学習者向けにPCI Option ROMを説明するクイックノート。
PCI Option ROMは、device discovery、configuration-space access、resource allocation、driver bindingで使われるPCI/PCIe firmwareの概念である。
なぜ重要か
- firmwareがPCI/PCIe deviceを検出・設定する仕組みを説明する。
- missing device、invalid BAR、resource allocation問題のdebugに役立つ。
- PCI configuration spaceとUEFI driver bindingを結び付ける。
実例
例:Vendor IDが0xFFFFとして読める場合、firmwareがbus上のdeviceを見えていない、またはbus/device/function addressが間違っている可能性がある。
クイックチェックリスト
覚えておくポイント
PCI Option ROMは、configuration-space dataとUEFI handle/protocol stateを結び付けてdebugすると分かりやすい。
自分ならこう読む
PCI Option ROM は、単独の用語として暗記するよりも、firmware の流れの中に置くと理解しやすいです。誰が作り、誰が読み、値が間違ったときにどの症状として出るのかを意識すると、学習用のメモがそのまま debug のチェックポイントになります。
実務で出てくる場面
たとえば OS から device が見えない場合、すぐに driver の問題と決めつけない方がよいです。ACPI/PCI/SMBIOS で firmware が出している ID、resource、table 情報と、OS log が見ている内容を比べます。PCI Option ROM はその platform description の一部として見ると整理しやすいです。
実際のデバッグで見るポイント
PCI Option ROM は enumeration の流れに置いて考えます。BDF、Vendor ID/Device ID、class code、BAR size、resource allocation、driver binding の順に見ると、device が見えない原因を切り分けやすくなります。
Vendor ID が 0xFFFF になる、BAR size が不自然、hardware を差し替えた後に device path が古いまま、という症状はよくある手がかりです。
関連ノート
公開参考資料
この記事は役に立ちましたか?
ファームウェア、BIOS/UEFI、組み込みシステムを学んでいる人に共有できます。
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.
PCI Configuration Spaceとは?
BIOS/UEFIおよびembedded firmware学習者向けにPCI Configuration Spaceを説明するクイックノート。
PCIeにおけるBARとは?
BIOS/UEFIおよびembedded firmware学習者向けにPCIeにおけるBARを説明するクイックノート。
PCIeにおけるBridge Windowとは?
BIOS/UEFIおよびembedded firmware学習者向けにPCIeにおけるBridge Windowを説明するクイックノート。
Biến note thành bài viết hoàn chỉnh
Notes là nơi ghi nhanh khái niệm.