JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
デバイスドライバの記述     Oracle Solaris 10 1/13 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I Oracle Solaris プラットフォーム用デバイスドライバの設計

1.  Oracle Solaris デバイスドライバの概要

2.  Oracle Solaris カーネルとデバイスツリー

3.  マルチスレッド

4.  プロパティー

5.  イベントの管理とタスクのキュー

6.  ドライバの自動構成

7.  デバイスアクセス: プログラム式入出力

8.  割り込みハンドラ

9.  ダイレクトメモリーアクセス (DMA)

10.  デバイスメモリーおよびカーネルメモリーのマッピング

11.  デバイスコンテキスト管理

12.  電源管理

13.  Oracle Solaris ドライバの強化

14.  階層化ドライバインタフェース (LDI)

パート II 特定の種類のデバイスドライバの設計

15.  文字デバイスのドライバ

16.  ブロックデバイスのドライバ

17.  SCSI ターゲットドライバ

18.  SCSI ホストバスアダプタドライバ

19.  ネットワークデバイスのドライバ

20.  USB ドライバ

21.  SR-IOV ドライバ

パート III デバイスドライバの構築

22.  ドライバのコンパイル、ロード、パッケージ化、およびテスト

23.  デバイスドライバのデバッグ、テスト、およびチューニング

24.  推奨されるコーティング方法

パート IV 付録

A.  ハードウェアの概要

B.  Solaris DDI/DKI サービスのサマリー

モジュール関数

デバイス情報ツリーノード (dev_info_t) 関数

デバイス (dev_t) 関数

プロパティー関数

デバイスソフトウェア状態関数

メモリー割り当ておよび解放関数

カーネルスレッド制御および同期関数

タスクキュー管理関数

割り込み関数

プログラム式入出力関数

ダイレクトメモリーアクセス (DMA) 関数

ユーザー空間アクセス関数

ユーザープロセスイベント関数

ユーザープロセス情報関数

ユーザーアプリケーションカーネルおよびデバイスアクセス関数

時間関連関数

電源管理関数

障害管理関数

カーネル統計関数

カーネルロギングおよび印刷関数

バッファリングされた入出力関数

仮想メモリー関数

デバイス ID 関数

SCSI 関数

リソースマップ管理関数

システムのグローバル状態

ユーティリティー関数

C.  64 ビットデバイスドライバの準備

D.  コンソールフレームバッファードライバ

E.  pci.conf ファイル

索引

ダイレクトメモリーアクセス (DMA) 関数

DMA 関数には次のものがあります。

ddi_dma_alloc_handle()

DMA ハンドルを割り当てる

ddi_dma_free_handle()

DMA ハンドルを解放する

ddi_dma_mem_alloc()

DMA 転送のためのメモリーを割り当てる

ddi_dma_mem_free()

以前に割り当てられた DMA メモリーを解放する

ddi_dma_addr_bind_handle()

アドレスを DMA ハンドルにバインドする

ddi_dma_buf_bind_handle()

システムバッファーを DMA ハンドルにバインドする

ddi_dma_unbind_handle()

DMA ハンドル内のアドレスをバインド解除する

ddi_dma_nextcookie()

以降の DMA cookie を取得する

ddi_dma_getwin()

新しい DMA ウィンドウをアクティブにする

ddi_dma_numwin()

DMA ウィンドウの数を取得する

ddi_dma_sync()

メモリーの CPU と入出力のビューの同期をとる

ddi_check_dma_handle()

DMA ハンドルをチェックする

ddi_dma_set_sbus64()

SBus 上の 64 ビット転送を許可する

ddi_slaveonly()

デバイスが、スレーブのみがアクセスできる場所にインストールされているかどうかを報告する

ddi_iomin()

DMA の最小の整列および転送サイズを検索する

ddi_dma_burstsizes()

DMA マッピングに対して許可されているバーストサイズを検索する

ddi_dma_devalign()

DMA のマッピング整列および最小の転送サイズを検索する

ddi_dmae_alloc()

DMA チャネルを取得する

ddi_dmae_release()

DMA チャネルを解放する

ddi_dmae_getattr()

DMA エンジンの属性を取得する

ddi_dmae_prog()

DMA チャネルをプログラムする

ddi_dmae_stop()

DMA エンジンの操作を終了する

ddi_dmae_disable()

DMA チャネルを無効にする

ddi_dmae_enable()

DMA チャネルを有効にする

ddi_dmae_getcnt()

残りの DMA エンジン数を取得する

ddi_dmae_1stparty()

DMA チャネルのカスケードモードを構成する

ddi_dma_coff()

DMA cookie を DMA ハンドル内のオフセットに変換する

表 B-5 非推奨のダイレクトメモリーアクセス (DMA) 関数

非推奨の関数
代わりの FEATURE
ddi_dma_addr_setup()
ddi_dma_alloc_handle()ddi_dma_addr_bind_handle()
ddi_dma_buf_setup()
ddi_dma_alloc_handle()ddi_dma_buf_bind_handle()
ddi_dma_curwin()
ddi_dma_getwin()
ddi_dma_free()
ddi_dma_free_handle()
ddi_dma_htoc()
ddi_dma_addr_bind_handle()ddi_dma_buf_bind_handle()
ddi_dma_movwin()
ddi_dma_getwin()
ddi_dma_nextseg()
ddi_dma_nextcookie()
ddi_dma_segtocookie()
ddi_dma_nextcookie()
ddi_dma_setup()
ddi_dma_alloc_handle()ddi_dma_addr_bind_handle()ddi_dma_buf_bind_handle()
ddi_dmae_getlim()
ddi_dmae_getattr()
ddi_iopb_alloc()
ddi_dma_mem_alloc()
ddi_iopb_free()
ddi_dma_mem_free()
ddi_mem_alloc()
ddi_dma_mem_alloc()
ddi_mem_free()
ddi_dma_mem_free()
hat_getkpfnum()
ddi_dma_addr_bind_handle()ddi_dma_buf_bind_handle()ddi_dma_nextcookie()