ACPI 介面:PCIe 根埠的裝置特定資料 (_DSD)
在 Windows 10 (1803 版) 中,已新增新的 ACPI _DSD 方法來支援新式待命和 PCI 熱插即用外掛程式案例。
PCIe 根埠上的最深入執行時間閒置平臺狀態 (DRIPS) 支援
這個 ACPI 物件必須實作在每個 PCIe 根埠/位置的 ACPI 範圍中,這些位置可供新式待命系統上的使用者存取,且能夠實作 導向電源管理架構 (DFx) 。
Name (_DSD, Package () {
ToUUID("FDF06FAD-F744-4451-BB64-ECD792215B10"),
Package () {
Package (2) {"FundamentalDeviceResetTriggeredOnD3ToD0", 1},
}
}
)
識別支援 D3 熱插即用的 PCIe 根埠
這個 ACPI 物件可讓作業系統識別及電源管理可在 D3 狀態中處理熱插即用事件的電腦Ie 根埠。 如果未在 PCIe 熱插即用埠上實作此物件,則系統若沒有子電腦Ie 裝置,系統就不會對它進行電源管理,導致系統耗用比必要更多的電源。
此物件必須在根埠 ACPI 裝置範圍中的 Runtime D3 (RTD3) 支援系統的所有 PCIe 根埠上實作。
Name (_DSD, Package () {
ToUUID("6211E2C0-58A3-4AF3-90E1-927A4E0C55A4"),
Package () {
Package (2) {"HotPlugSupportInD3", 1},
}
}
)
識別外部公開的 PCIe 根埠
此 ACPI 物件可讓作業系統識別外部公開的 PCIe 階層,例如一般。 此物件必須在根埠 ACPI 裝置範圍中實作。
注意:在隨附于 Windows 10 1803 版的系統上,此物件應該只實作在 PcIe 根埠上。
Name (_DSD, Package () {
ToUUID("EFCC06CC-73AC-4BC3-BFF0-76143807C389"),
Package () {
Package (2) {"ExternalFacingPort", 1}, // Property 1: This is an externally facing port/hierarchy
Package (2) {"UID", 0}, // Property 2: UID of the externally facing port on platform, range is: 0, 1, …, n-1
}
}
)
識別使用者可存取且需要 DMA 保護的內部 PCIe 埠
此 ACPI 物件可讓作業系統識別使用者可輕易存取的內部 PCIe 階層 (,例如,膝上型電腦 M.2 PCIe 插槽可透過閂鎖) 存取,而且需要 OS 核心 DMA 保護 機制的保護。 此物件必須在根埠 ACPI 裝置範圍中實作。
注意的主要專案:
只有 1903 版和更新版本Windows 10才支援使用此 ACPI 物件的 PCI 埠。
核心 DMA 保護必須在系統 BIOS/UEFI 中啟用,OS 才能剖析_DSD,並將必要的保護套用至 PCI 埠。
連線到此埠的裝置驅動程式必須支援DMA 重新對應,否則Windows 10可能會封鎖這些裝置運作,直到使用者根據DMAGuard 原則登入或無限期登入為止。
Name (_DSD, Package () {
ToUUID("70D24161-6DD5-4C9E-8070-705531292865"),
Package () {
Package (2) {"DmaProperty", 1}, // Property 1: This port needs to be protected by the OS
Package (2) {"UID", 0}, // Property 2: UID of the PCIe port on platform, range is: 0, 1, …, n-1
}
}
)
識別支援 D3_COLD_AUX_POWER ECN 介面的 PCIe 埠
這個 ACPI 物件可讓作業系統識別支援 D3_COLD_AUX_POWER ECN 介面的 PCIe 埠,這可讓 PCIe 裝置從 D3 中的平臺額外輔助電源要求,高於預設的 375mA @3.3V。 任何定義此 DSD 的 PCI 埠或橋接器 都必須 保證,在針對先前交涉的輔助電源值進行程式設計時,作業會成功。
Name (_DSD, Package () {
ToUUID("6B4AD420-8FD3-4364-ACF8-EB94876FD9EB"),
Package () {
}
}
)
將原生通訊協定 (PCIe、DisplayPort) 透過 USB4 通道傳送至 USB4 主機路由器
此 ACPI 物件可讓作業系統對應原生通訊協定,例如 PCIe 和 DisplayPort,透過 USB4 通道傳送至正確的 USB4 主機路由器。
在下列範例中, Device (DSB0)
具有 相依性 \_SB.PCI0.NHI0
。
Scope (\_SB.PCI0)
{
Device (NHI0) { } //Host interface instance which has dependency on \_SB.PCI0.NHI0
Device (DSB0) //Tunneled PCIe port instance
{
Name (_DSD, Package () {
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Properties UUID
Package () {
Package () { “usb4-host-interface", \_SB.PCI0.NHI0 },
Package () { “usb4-port-number", PortInstance#},
}
})
}
Device (…) //Extend to DP and USB tunneled ports, as needed
{
Name (_DSD, Package () {
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Properties UUID
Package () {
Package () { “usb4-host-interface", \_SB.PCI0.NHI0 },
Package () { “usb4-port-number", PortInstance#},
}
})
}
}
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應