next up previous
次へ: I/Oポートの予約 上へ: PCIリソースの取得 戻る: PCIデバイスの検索

I/Oポートベースアドレスの取得

前項1.2で取得したPCIデバイス情報構造体へのポインタを使用して、I/Oポート ベースアドレスとI/Oポートサイズを取得する。

次のようにI/Oポートベースアドレスはpci_resource_start、ポートサイ ズはpci_lenを使用して取得する。(DIO_RESOURCE構造体はグローバル変 数として宣言しておくこと。)


\begin{boxedminipage}{12.5cm}
\begin{verbatim}DIO_RESOURCE dio_res;dio_res...
...size[0] = pci_resource_len(current_device, 0);\end{verbatim}
\end{boxedminipage}

上記のソースコードにおいて、第2引数に指定している0は、ベースアドレス の番号を示している。PCI-2726Cではベースアドレス0のみを使用しているので0 を指定している。

取得したリソース情報は前項1.1で定義したリソース情報の格納用構造体に入れ ている。


MANOME Yoichi 平成19年1月6日