INF DDInstall.FactDef 區段
本節應該用於 INF 中,供使用者可能安裝的任何手動安裝非 PnP 裝置使用。 本節會針對這類卡片指定原廠默認硬體組態設定,例如總線相對 I/O 埠和 IRQ) (。
[install-section-name.FactDef] |
[install-section-name.nt.FactDef] |
[install-section-name.ntx86.FactDef] |
[install-section-name.ntia64.FactDef] | (Windows XP and later versions of Windows)
[install-section-name.ntamd64.FactDef] | (Windows XP and later versions of Windows)
[install-section-name.ntarm.FactDef] | (Windows 8 and later versions of Windows)
[install-section-name.ntarm64.FactDef] (Windows 10 version 1709 and later versions of Windows)
ConfigPriority=Priority-Value
[DMAConfig=[DMAattrs:]DMANum]
[IOConfig=io-range]
[MemConfig=mem-range]
[IRQConfig=[IRQattrs:]IRQNum]
項目
ConfigPriority=Priority-Value
指定此原廠預設邏輯組態的下列其中一個優先順序值。
優先權值 | 意義 |
---|---|
FORCECONFIG | 指定強制設定,識別 PnP 管理員必須指派給裝置的資源。 |
期望 | 提供最高的裝置效能。 PnP 管理員可以使用此設定動態設定裝置。 |
NORMAL | 提供比 SUBOPTIMAL 更高的裝置效能,但效能低於 DESIRED。 這是典型的優先順序值。 PnP 管理員可以使用此設定動態設定裝置。 |
理想 | 提供最低的裝置效能。 不需要此設定,但將會正常運作。 PnP 管理員可以動態設定此設定。 |
RESTART | 需要重新啟動系統。 |
重新啟動 | 需要重新啟動系統。 |
POWEROFF | 需要電源迴圈。 |
HARDRECONFIG | 需要跳躍器變更。 |
HARDWIRED | 無法變更。 |
DISABLED | 指出裝置已停用。 |
DMAConfig=[DMAattrs:]DMANum
將總線相對 DMA 信道指定為十進位數。 如果裝置在只有 8 位 DMA 通道的總線上連線,且裝置使用標準系統 DMA,DMAattrs 是選擇性的。 否則,它可以是 32 位 DMA 的其中一個字母 D、16 位 DMA 的 W,而 N 則為 8 位 DMA,如果裝置使用總線主機 DMA,則為 M,如果裝置使用總線主機 DMA,且具有下列其中一個互斥 () 字母,表示使用的 DMA 信道類型:A、B 或 F。如果未指定 A、B 或 F,則會假設標準 DMA 通道。
IOConfig=io-range
以下列形式指定裝置的 I/O 連接埠範圍:
start-end[([decode-mask][:alias-offset][:attr])]
開始 指定 (總線相對) I/O 埠範圍的起始位址做為 64 位十六進位值。
結束 指定 I/O 連接埠範圍的結束位址,也可以指定為 64 位十六進位值。
decode-mask 定義別名類型,而且可以是下列任一項。
遮罩值 | 意義 | IOR_Alias值 |
---|---|---|
3ff | 10 位譯碼 | 0x04 |
fff | 12 位譯碼 | 0x10 |
ffff | 16 位譯碼 | 0x00 |
0 | 正譯碼 | 0xFF |
alias-offset
未使用。
attr
如果指定的範圍位於系統記憶體中,則指定字母 M 。 如果省略,指定的範圍會位於 I/O 連接埠空間中。
MemConfig=mem-range
以下欄形式指定裝置的記憶體範圍:
start-end[(attr)]
開始 將裝置記憶體範圍的起始 (總線相對) 位址指定為64位十六進位值。
結束 指定記憶體範圍的結束位址,也可以指定為64位十六進位值。
attr
將記憶體範圍的屬性指定為下列一或多個字母:
- R (唯讀)
- W (唯讀)
- RW (讀取/寫入)
- C (合併寫入允許的)
- H (可快取)
- F (預先擷取)
- D (卡片譯碼位址為 32 位,而不是 24 位)
如果同時指定 R 和 W,或未指定 R 和 W ,則會假設為讀取 / 寫入。
IRQConfig=[IRQattrs:]IRQNum
指定裝置用來做為十進位數的總線相對 IRQ。 如果裝置使用總線相對、邊緣觸發的 IRQ,則會省略 IRQattrs。 否則,請指定 L 來指出層級觸發的 IRQ,如果裝置可以共用此專案中所列的 IRQ 行, 則指定 LS 。
備註
指定的 DDInstall 區段必須參考 INF 檔案中每個製造商 模型 區段下的裝置特定專案。 在正式語法語句中顯示的install-section-name 不區分大小寫的延伸模組可以插入這類 DDInstall中。跨操作系統和/或跨平臺 INF 檔案中的 FactDef 區段名稱。 如需這些系統定義延伸模組的詳細資訊,請參閱 建立 INF 檔案。
本節必須包含安裝一部裝置的完整原廠默認資訊。 INF 應該依照最適合驅動程式初始化裝置的順序來指定一組專案。 如有必要,它可以有多個特定類型的專案。
例如,使用兩個 DMA 通道之裝置的 INF 在其 DDInstall 中會有兩個 DMAConfig= 行。FactDef 區段。
手動安裝的裝置 INF 檔案,其中可以變更原廠預設邏輯組態設定的 INF 檔案,也應該在其 DDInstall 區段中使用 LogConfig 指示詞。 一般而言,這類 INF 應該在其每個記錄組態區段和其 DDInstall 中指定專案。FactDef 區段的順序相同。
範例
此 IOConfig 專案指定大小為 8 個字節的 I/O 連接埠區域,其大小可以從 2F8 開始。
IOConfig=2F8-2FF
此 MemConfig 專案指定可以從 D0000 開始的 32K 位元組記憶體區域。
MemConfig=D0000-D7FFF
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應