共用方式為


其他 ACPI 命名空間物件

對於某些特定類別的裝置,需要額外的進階設定和 Power Interface (ACPI) 命名空間物件出現在命名空間中的這些裝置底下。 本節列出 SoC 型平臺所需的其他物件。

處理器識別物件

處理器必須在 ACPI 命名空間中列舉。 處理器會在 \_SB下宣告,使用 「Device」 語句,如同平臺上的其他裝置一樣。 處理器裝置必須包含下列物件:

  • _HID:ACPI0007
  • _UID:符合 MADT 中處理器專案的唯一數位。

顯示特定物件

如需顯示特定物件的詳細資訊,請參閱 ACPI 5.0 規格的附錄 B、。

Display-Specific物件需求

方法 描述 需求
_Dos 啟用/停用輸出切換。 如果系統支援顯示切換或 LED 亮度等級,則為必要專案。
_國防部 列舉連接至顯示配接器的所有裝置。 如果整合控制器支援輸出切換,則為必要項。
_羅 取得 ROM 資料。 如果 ROM 影像是以專屬格式儲存,則為必要專案。
_GPD 取得 POST 裝置。 如果實作_VPO,則為必要項。
_Spd 設定 POST 裝置。 如果實作_VPO,則為必要項。
_Vpo 影片 POST 選項。 如果系統支援變更 VGA 裝置後,則為必要專案。
_Adr 傳回此裝置的唯一識別碼。 必要。
_B c l 支援的亮度控制等級查詢清單。 如果內嵌的 LED 支援亮度控制,則為必要項。
_Bcm 設定亮度等級。 如果實作_BCL,則為必要項。
_Ddc 傳回此裝置的 EDID。 如果內嵌的 SSD 不支援透過標準介面傳回 EDID,則為必要專案。
_Dcs 傳回輸出裝置的狀態。 如果系統支援透過快速鍵) 顯示切換 (,則為必要專案。
_DGS 查詢圖形狀態。 如果系統支援透過快速鍵) 顯示切換 (,則為必要專案。
_Dss 裝置狀態集。 如果系統支援透過快速鍵) 顯示切換 (,則為必要專案。

USB 主機控制器和裝置

SOC 平臺上會使用 USB 主機控制器來連接內部和外部裝置。 Windows 包含符合 EHCI 或 XHCI 規格之標準 USB 主機控制器的收件匣驅動程式。

在 SoC 型平臺上,USB 主機控制器可由 ACPI 列舉。 Windows 在列舉和設定相容的 USB 硬體時,會使用下列 ACPI 命名空間物件:

  • 廠商指派的 ACPI 相容硬體識別碼 (_HID) 。

  • 唯一識別碼 (_UID) 物件,如果命名空間中有一個以上的 USB 控制器實例, (即具有相同裝置識別物件的兩個或多個節點) 。

  • EHCI 或 XHCI 標準相容 USB 主機控制器的相容識別碼 (_CID) (EHCI:PNP0D20) , (XHCI:PNP0D10) 。

  • 目前資源設定 (_CRS) 指派給 USB 控制器。 控制器的資源會在 EHCI 或 XHCI) (適當的硬體介面規格中說明。

USB Device-Specific 方法 (_DSM)

Windows 會定義 Device-Specific 方法 (_DSM) ,以支援 USB 子系統的裝置類別特定設定。 如需詳細資訊,請參閱 USB Device-Specific 方法

USB 整合式交易翻譯工具 (TT) 支援 (_HRV)

標準 EHCI 主機控制器僅支援高速 USB 裝置。 在 SoC 平臺上,Windows 支援兩個符合 EHCI 規範主控制器的常見設計,可實作低速和全速 USB 裝置的整合式交易翻譯工具。 硬體修訂 (_HRV) 物件表示 USB 主機控制器驅動程式的整合式 TT 支援類型。

_HRV會根據下列準則進行設定:

  • NoIntegratedTT - _HRV = 0

    標準 EHCI 主機控制器不會實作整合式交易翻譯工具,而且_HRV值 0 僅適用于這些控制器。 不需要包含這些控制器的 _HRV 物件。

  • IntegratedTTSpeedInPortSc - _HRV = 1

    啟用整合式 TT 支援。 此介面類別別包含 PORTSC 暫存器本身的 LowSpeed 和 HiSpeed 位。 這些位分別位移 26 和 27。 判斷速度時,EHCI 驅動程式會讀取 PORTSC,並從這些位擷取速度資訊。

  • IntegratedTTSpeedInHostPc - _HRV = 2

    啟用整合式 TT 支援。 此介面類別別包含個別 HOSTPC 暫存器中的 LowSpeed 和 HiSpeed 位。 當 EHCI 驅動程式需要判斷埠速度時,它會讀取對應至相關埠的 HOSTPC 暫存器,並擷取速度資訊。

USB XHCI D3cold 支援

除了選擇性暫停之外,連線到 XHCI 控制器的內部 USB 裝置也可以進入 D3cold 狀態,並在未使用時關閉電源。 如需詳細資訊,請參閱 裝置電源管理。 所有 USB 設備函式驅動程式都必須加入宣告 D3cold。

USB 埠特定物件

Windows 必須知道系統上 USB 埠的可見度和連線能力。 這是必要專案,才能為使用者提供有關埠和裝置的準確資訊。 實體裝置位置 (_PLD) 和 USB 埠功能 (_UPC) 兩個物件用於此用途。 如需詳細資訊,請參閱下列:

SD 主機控制器和裝置

SD 主機控制器用於 SoC 平臺上,以存取儲存體和 I/O 裝置。 Windows 包含適用于 SDA 標準主機控制器硬體的收件匣驅動程式。 為了與此驅動程式相容,SD 主機控制器裝置必須符合 SD 關聯的 SD 主機控制器規格

在 SoC 平臺上,SD 主機控制器可由 ACPI 列舉。 Windows 在列舉及設定相容的 SD 硬體時,會使用下列 ACPI 命名空間物件:

  • 廠商指派的 ACPI 相容硬體識別碼 (_HID) 。

  • 唯一識別碼 (_UID) 物件,如果 (命名空間中有一個以上的 SD 控制器實例,也就是兩個或多個具有相同裝置識別物件的節點) 。

  • SDA 標準相容 SD 主機控制器的相容識別碼 (_CID) , (PNP0D40) 。

  • 指派給控制器的目前資源設定 (_CRS) 。 控制器的資源如下所述:

    • 包含所有實作位置的硬體資源。 位置是記憶體或 I/O 裝置之 SDIO 匯流排上的連接點。 每個位置都會與 SD 主機控制器中的一組標準暫存器和中斷相關聯,用於與連線裝置的通訊。 SD 主機控制器可以實作任意數目的插槽,但在 SoC 平臺上,通常只有一個。

    • 位置資源會一起列出,依位置號碼 (位置 0 的資源是第一個、位置 1 的資源是第二個,依此類) 。

    • 針對每個位置,資源會依下列順序列出:

      • 為位置設定 SD 標準暫存器的基底位址。

      • 位置的 SD 標準中斷。

      • 位置的 GPIO 中斷資源,用於訊號卡插入和移除 (如果標準 SD 記憶卡偵測介面在所有電源狀態期間都不支援) 。

      • 位置的 GPIO 輸入資源,用於讀取卡片目前是否在插槽中 (如果標準 SD 記憶卡偵測介面在所有電源狀態期間都不支援) 。 使用與插入/移除中斷相同的針腳。

      • 第二個 GPIO 輸入資源,用於讀取插槽中的卡片是否受到寫入保護, (如果標準 SD 寫入保護介面在所有電源狀態期間都不支援) 。

中斷必須能夠喚醒, (描述為 「SharedAndWake」 或 「ExclusiveAndWake」) 。

內嵌 SD 裝置

SD 連線的裝置是由 SD 匯流排驅動程式列舉。 整合至平臺的 SD 裝置也必須列在 ACPI 命名空間中,作為 SD 主機控制器的子系。 這項需求可讓作業系統將匯流排列舉裝置與 ACPI (物件所提供的平臺特定屬性產生關聯,例如,非可移動性、裝置電源狀態、GPIO 或 SPB 資源等) 。 若要建立此關聯,裝置命名空間需要 Address (_ADR) 物件,這會在 SDIO 匯流排上傳達裝置的位址。 _ADR 物件會傳回整數。

針對 SDIO 匯流排,此整數的值定義如下:

  • 高字 – 插槽編號 (0 – 第一個位置)

  • 低字 – 函式編號 (請參閱定義 SD 規格。)

內嵌 SD 裝置命名空間也必須包含:

  • Remove 方法 (_RMV) 物件,傳回 0 (,表示無法移除裝置) 。

  • 裝置需要 (例如 GPIO 針腳或 SPB 連線) 等側帶資源的_CRS物件。如有需要的話。

影像處理類別裝置 (相機)

相機裝置可由圖形驅動程式或 USB 列舉。 不論是哪一種情況,Windows 都必須知道相機的實體位置,才能顯示適當的 UI。 若要這樣做,內建于系統底座且具有機械固定方向的相機裝置會包含在 ACPI 命名空間中,並提供實體裝置位置 (_PLD) 物件。 這需要:

  • 要顯示為子裝置的相機裝置, (列舉值裝置的巢狀裝置) , (GPU 裝置或 USB 裝置) 。

  • 要提供 Address (_ADR) 物件的相機裝置,該物件包含父裝置匯流排上的相機位址。

    • 如需 USB,請參閱下一節中 適用于內嵌 USB 裝置的 ACPI 命名空間階層和_ADR

    • 針對圖形,這是在 GPU 裝置下提供之_DOD方法中指定的識別碼。 如需詳細資訊,請參閱 ACPI 5.0 規格的附錄 B、「影片延伸模組」。

  • 要提供_PLD物件的相機裝置。

  • 如果相機驅動程式 (需要任何側邊帶資源,例如 GPIO 中斷或 I/O 連線,或 SPB 連線) ,則會針對這些資源提供_CRS物件。

在 _PLD 物件中, Panel 欄位 (位 67-69) 、 Lid 欄位 (位 66) 和 Dock 欄位 (位 65) 會設定為相機掛接所在表面的正確值。 其他所有欄位均為選填。 對於包括平板電腦在內的便攜行動裝置,前面板是按住顯示畫面的裝置,而其原點是在直向檢視顯示器時位於左下角。 使用此參考時,「Front」 表示相機檢視使用者 (網路攝影機) ,而 「Back」 表示相機檢視與使用者 (仍然或視訊相機) 。 For more information, see, section 6.1.8, "_PLD (Physical Location of Device)", in the ACPI 5.0 specification.

適用于內嵌 USB 裝置的 ACPI 命名空間階層和_ADR

將內嵌 USB 裝置新增至 ACPI 命名空間時,裝置節點的階層必須完全符合 Windows USB 驅動程式所列舉之裝置的階層。 這可以藉由檢查 Windows 裝置管理員在 [依連線檢視] 模式中判斷。 必須包含從 USB 主機控制器開始並向下延伸至內嵌裝置的整個階層。 每個裝置裝置管理員中提供的 「Address」 屬性是韌體必須在裝置_ADR中報告的位址。

ACPI 5.0 規格會定義 USB 裝置的位址,如下所示:

USB 根中樞:只有主機控制器的子系。 它必須有 0 _ADR。 不允許其他子系或_ADR值。

USB 埠:埠號碼 (1-n)

連線到特定埠的 USB 裝置會共用該埠的位址。

如果連線到埠的裝置是複合 USB 裝置,複合裝置內的函式必須使用下列位址:

複合 USB 裝置內的 USB 函式:複合裝置所連接的埠埠號碼,加上函式的第一個介面編號。 (算術加法) 。

如需詳細資訊,請參閱 識別內部相機的位置

ASL 程式碼範例

下列 ASL 程式碼範例說明直接連線到 USB 埠 3 的 USB 網路攝影機。

Device (EHCI) {
    ...  // Objects required for EHCI devices
    Device {RHUB) {         // the Root HUB
     Name (_ADR, ZERO)      // Address is always 0.
     Device (CAM0) {          // Camera connected directly to USB
                       //   port number 3 under the Root.
            Name (_ADR, 3)      // Address is the same as the port.
            Method (_PLD, 0, Serialized) {...}
            }  //  End of Camera device
    } // End of Root Hub Device
}  // End of EHCI device

下列 ASL 程式碼範例描述將網路攝影機實作為函式 2 的 USB 複合裝置。

Device (EHCI) {
    ...  // Objects required for EHCI devices
    Device {RHUB) {
     Name (_ADR, ZERO)
     Device (CUSB) {        // Composite USB device
                    //   connected to USB port number 3
                    //   under the Root.
            Name (_ADR, 3)      // Address is the same as the port.
            Device (CAM0) { // Camera function within the
                    //   Composite USB device.
                Name (_ADR, 5)  // Camera function has a first
                    //   Interface number of 2, so
                    //   Address is 3 + 2  = 5.
                Method (_PLD, 0, Serialized) {...}
            }  //  End of Camera device
        } // End of Composite USB Device
    } // End of Root Hub Device
}  // End of EHCI device

下列 ASL 程式碼範例描述透過 I2C 連線的網路攝影機。

Device (GPU0) {
    ... // Other objects required for graphics devices
    Name (_DOD, Package ()  // Identifies the children of this graphics device.
                // Each integer must be unique within the GPU0 namespace.
                {
                    0x00024321,  // The ID for CAM0. It is a non-VGA
                    //   device, cannot be detected by
                    //   the VGA BIOS, and uses a vendor-
                    //   specific ID format in bits 15:0
                    //   (see the _DOD specification).
                    ...     // Other child device IDs (for
                    //   example, display output ports)
                })
    Device (CAM0) {
        Name (_ADR, 0x00024321) // The identifier for this device
                    //   (Same as in _DOD above)
        Name (_CRS, ResourceTemplate()
            {
            // I2C Resource
            // GPIO interrupt resource(s), if required by
            //   driver
            // GPIO I/O resource(s), if required by driver
                ...
            })
        Method (_PLD, 0, Serialized) {...}
    } // End of CAM0 device
} // End of GPU0 device

HID-over-I2C 裝置

Windows 包含人類介面裝置的類別驅動程式, (HID) 。 此驅動程式可針對各種輸入裝置啟用一般支援, (例如觸控式螢幕、鍵盤、滑鼠和感應器) 。 在 SoC 平臺上,HID 裝置可以透過 I2C 連線到平臺,並由 ACPI 列舉。 為了與 Windows 中的 HID 類別支援相容,會使用下列命名空間物件:

  • 廠商特定的_HID

  • A _CID of PNP0C50

  • 具有_CRS:

    • I2CSerialBusConnection 資源,可存取裝置

    • 用於中斷 (s) 的 GpioInt 資源

  • HIDI2C _DSM 方法,可傳回裝置中的 HID 描述元登入位址。 如需詳細資訊,請參閱 HIDI2C Device-Specific 方法 (_DSM)

按鈕裝置

針對 SoC 平臺,Windows 同時支援 ACPI 定義的控制方法電源按鈕,以及 Windows 相容的五個按鈕陣列。 電源按鈕,無論是實作為 ACPI 控制項方法電源按鈕或 Windows 相容按鈕陣列的一部分,都執行下列動作:

  • 讓平臺關閉電源。

  • 按住電源按鈕覆寫事件時產生。 如需詳細資訊,請參閱 ACPI 5.0 規格的 4.8.2.2.1.3 節「電源按鈕覆寫」。

控制方法電源按鈕

使用 ACPI 5.0 規格的第 4.8.2.1.2 節) GPIO-Signaled ACPI 5.0 規格) ACPI (5.0 規格) 實作 ACPI 5.6.5 一節的 ACPI 定義控制 (方法電源按鈕) 。 若要支援電源按鈕裝置,命名空間:

  • 將電源按鈕的 GPIO 中斷針腳描述為非共用 (獨佔) GPIO 中斷資源。

  • 列出電源按鈕的 GPIO 中斷資源,其所連接的 GPIO 控制器_AEI物件中。

  • 在 GPIO 控制器裝置下提供相關聯的事件方法 (Lxx/Exx/EVT) 。 這個事件方法會通知作業系統中的 Control Method Button 驅動程式發生按鈕事件。

如需詳細資訊,請參閱Windows 8平板電腦和可轉換裝置的硬體按鈕

Windows 相容按鈕陣列

對於觸控優先 (無鍵盤) 平臺,例如平板,Windows 提供五個按鈕陣列的一般驅動程式。 陣列中的每個按鈕都有其已定義的函式 (查看下列清單中的編號專案) ,而特定「按住和按下」按鈕組合在 UI 中也有其他意義。 未定義任何按鈕組合,需要按住電源按鈕。 為了與 Windows 收件匣按鈕驅動程式相容,會實作 Windows 相容的 Button Array ACPI 裝置。 裝置的定義如下:

  • 這五個按鈕中的每一個都會連線到平臺上自己的專用中斷針腳。

  • 每個中斷針腳都會設定為非共用 (獨佔) 、邊緣觸發 (Edge) 中斷資源,而中斷兩個邊緣 (ActiveBoth) 。

  • 裝置命名空間包含廠商定義的_HID,以及 PNP0C40 _CID。

  • _CRS 物件中的 GPIO 中斷資源會依照下列順序列出:

    1. 對應至 [電源] 按鈕的中斷

      [電源] 按鈕必須具備喚醒功能,才能 (ExclusiveAndWake) 。

    2. 對應至 [Windows] 按鈕的中斷

      Windows 按鈕必須具備喚醒功能,才能 (ExclusiveAndWake) 。

    3. 對應至 [音量向上] 按鈕的中斷

      「音量向上」按鈕不可喚醒, (必須使用獨佔) 。

    4. 對應至 [音量減少] 按鈕的中斷

      「音量降低」按鈕不可喚醒, (必須使用獨佔) 。

    5. 如果支援,則中斷對應至 [旋轉鎖定] 按鈕

      「旋轉鎖定」按鈕不得具有喚醒功能, (必須使用獨佔) 。

如需詳細資訊,請參閱Windows 8平板電腦和可轉換裝置的硬體按鈕

為了支援 Windows 按鈕 UI 的演進,Windows 會定義 Windows Button Array 裝置的Device-Specific方法 (_DSM) 。 如需詳細資訊,請參閱 Windows Button Array Device-Specific 方法 (_DSM)

擴充和可轉換電腦感應器

Windows 支援使用 ACPI 命名空間中的兩個感應器裝置, (clamshell/平板電腦群組合) 。 Windows 收件匣按鈕驅動程式支援這些裝置。 請注意,適用于按鈕陣列裝置的相同需求也適用于這些裝置:

  • GPIO ActiveBoth 中斷必須連線到 SoC GPIO 控制器, (不是 SPB 連線的 GPIO 控制器) 。

  • GPIO 控制器必須支援層級模式中斷和動態極性重新程式設計。

  • GPIO 控制器驅動程式必須使用 GPIO 架構延伸模組 所提供的 ActiveBoth 模擬, (GpioClx) 。

  • 如果判斷提示狀態 (「Docked」 或 「Converted」) 未判斷提示邏輯層級低,則需要 GPIO 控制器_DSM方法來覆寫 GPIO 驅動程式堆疊的預設行為。 如需詳細資訊,請參閱一般用途 I/O (GPIO) 主題中的GPIO 控制器裝置一節。

如需詳細資訊,請參閱Windows 8平板電腦和可轉換裝置的硬體按鈕

停駐感應器裝置

停駐感知裝置會在從系統附加或取消附加停駐時中斷系統。 此模式變更資訊可用來視需要更新使用者輸入和輸出體驗。 裝置的命名空間需要:

  • 廠商特定的_HID

  • PNP0C70 的_CID

  • 具有一個 ActiveBoth 中斷的_CRS

    中斷無法喚醒。

可轉換電腦檢測裝置

當可轉換電腦從平板電腦切換至 Clamshell 規格時,可轉換電腦時,可轉換的電腦就會中斷系統。 此模式變更資訊可用來視需要更新使用者輸入和輸出體驗。 裝置的命名空間需要:

  • 廠商特定的_HID

  • A _CID of PNP0C60

  • 具有一個 ActiveBoth 中斷的_CRS

    中斷無法喚醒。