Oracle® Solaris 11.2 デバイスドライバの記述

印刷ビューの終了

更新: 2014 年 9 月
 
 

GLDv3 のインタフェースのサマリー

次の表は、GLDv3 ネットワークデバイスドライバのフレームワークを構成するエントリポイント、その他の DDI 関数、およびデータ構造体の一覧です。

表 19-1  GLDv3 のインタフェース
インタフェース名
説明
必須のエントリポイント
ドライバからネットワーク統計情報を取得します。GLDv3 Network Statisticsを参照してください。
ドライバインスタンスを起動します。GLDv3 フレームワークは、何らかの操作が試みられる前に起動エントリポイントを呼び出します。
ドライバインスタンスを停止します。MAC 層は、デバイスが切り離される前に停止エントリポイントを呼び出します。
デバイスドライバインスタンスのプロミスキュアス (promiscuous) モードを変更します。
マルチキャストアドレスを追加または削除します。
プライマリユニキャストアドレスを設定します。デバイスは mac_rx() を使用して、宛先 MAC アドレスが新しいユニキャストアドレスと一致するパケットの送信を開始する必要があります。mac_rx の詳細は、Receive Data Path()を参照してください。
1 つ以上のパケットを送信します。Transmit Data Pathを参照してください。
送信および受信リングの情報を取得します。詳細は、mr_rget() Entry Pointを参照してください。
送信および受信リングの情報を取得します。詳細は、mr_gget() Entry Pointを参照してください。
受信グループにリングを追加します。これが必要になるのは、動的リンググループがサポートされている場合だけです。MAC_CAPAB_RINGS Capabilityを参照してください。
受信グループからリングを削除します。これが必要になるのは、動的リンググループがサポートされている場合だけです。MAC_CAPAB_RINGS Capabilityを参照してください。
mri_tx(9E)
TX リングのパケットを送信します。詳細は、mr_rget() Entry Pointを参照してください。
mri_poll()
RX リングに対してパケットのポーリングを行います。詳細は、mr_rget() Entry Pointを参照してください。
mri_stat()
リングの統計。詳細は、mr_rget() Entry Pointを参照してください。
RX リングの割り込みを有効にします。詳細は、mr_rget() Entry Pointを参照してください。
RX リングの割り込みを無効にします。詳細は、mr_rget() Entry Pointを参照してください。
ドライバの RX リンググループ用ハードウェアに MAC アドレスをプログラミングします。詳細は、mr_gget() Entry Pointを参照してください。
以前にプログラミングされた MAC アドレスを、ドライバの RX リンググループ用ハードウェアから削除します。詳細は、mr_gget() Entry Pointを参照してください。
オプションのエントリポイント
省略可能な ioctl ドライバインタフェース。この機能はデバッグ目的の使用のみが想定されています。
機能を取得します。GLDv3 Capabilitiesを参照してください。
プロパティー値を設定します。GLDv3 Properties を参照してください。
プロパティー値を取得します。GLDv3 Properties を参照してください。
プロパティーについての情報を取得します。GLDv3 Properties を参照してください。
mri_start()
リングを開始します。詳細は、mr_rget() Entry Pointを参照してください
mri_stop()
リングを停止します。詳細は、mr_rget() Entry Pointを参照してください。
リンググループを開始します。詳細は、mr_gget() Entry Pointを参照してください。
リンググループを停止します。詳細は、mr_gget() Entry Pointを参照してください。
mgi_addvlan()
ハードウェアの VLAN フィルタリングを有効にします。詳細は、mr_gget() Entry Pointを参照してください。
mgi_remvlan()
以前にプログラミングされた VLAN フィルタを削除します。詳細は、mr_gget() Entry Pointを参照してください。
mgi_setmtu()
RX グループの MTU を設定します。詳細は、mr_gget() Entry Pointを参照してください。
mgi_get_sriov_info()
SR-IOV 情報を取得します。詳細は、Ring Groups and SR-IOVを参照してください。
データ構造体
登録情報。GLDv3 MAC Registration Data Structuresを参照してください。
ドライバコールバック。GLDv3 MAC Registration Data Structuresを参照してください。
LSO メタデータ。Large Segment (or Send) Offloadを参照してください。
TCP/IPv4 用の LSO メタデータ。Large Segment (or Send) Offloadを参照してください。
詳細は、MAC Rings Capabilityを参照してください。
詳細は、mr_gget() Entry Pointを参照してください。
詳細は、mr_rget() Entry Pointを参照してください。
mac_intr_t
mac_sriov_info
MAC 登録関数
新しい mac_register 構造体を割り当てます。GLDv3 MAC Registrationを参照してください。
mac_register 構造体を解放します。
MAC 層に登録します。
MAC 層から登録解除します。
ドライバの dev_ops(9S) 構造体を初期化します。
ドライバの dev_ops 構造体を解放します。
データ転送関数
受信したパケットを上位層に渡します。Receive Data Pathを参照してください。
mac_rx_ring(9F)
受信したパケットを上位層に渡します。Receive Data Pathを参照してください。
TX リソースが利用可能です。GLDv3 State Change Notificationsを参照してください。
mac_tx_ring_update(9F)
TX リソースが利用可能です。詳細は、GLDv3 State Change Notificationsを参照してください。
リンク状態が変化しました。
ハードウェアチェックサム情報を取得します。Hardware Checksum OffloadおよびTransmit Data Pathを参照してください。
ハードウェアチェックサム情報を添付します。Hardware Checksum OffloadおよびReceive Data Pathを参照してください。
LSO 情報を取得します。Large Segment (or Send) Offloadを参照してください。
プロパティー関数
プロパティーのアクセス権を設定します。GLDv3 Properties を参照してください。
プロパティー値を設定します。
プロパティー値の範囲を設定します。