fuchsia.hardware.platform.device

新增日期:18

通訊協定

裝置

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

GetBoardInfo

傳回裝置所連接主機板的相關資訊。

要求

<EMPTY>

回應

名稱類型
payload Device_GetBoardInfo_Result

GetBtiById

傳回指定 |index| 的匯流排交易啟動器 (bti) 控制代碼。

  • 如果 |index| 等於或大於 btis 的數目,則會傳回 ZX_ERR_OUT_OF_RANGE 錯誤。
  • 如果所擷取的 Bti 無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
index uint32

回應

名稱類型
payload Device_GetBtiById_Result

GetBtiByName

傳回指定 |name| 的公車交易啟動者 (bti) 控制代碼。

  • 如果 |name| 是空字串,就會傳回 ZX_ERR_INVALID_ARGS 錯誤。
  • 如果找不到 |name|,則傳回 ZX_ERR_OUT_OF_RANGE
  • 如果所擷取的 Bti 無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
name string[128]

回應

名稱類型
payload Device_GetBtiByName_Result

GetInterruptById

傳回指定 |index| 的中斷控點。 |flags| 會以 |options| 參數的形式轉送到 zx_interrupt_create

  • 如果 |index| 等於或大於中斷次數,則會傳回 ZX_ERR_OUT_OF_RANGE 錯誤。
  • 如果擷取的中斷無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
index uint32
flags uint32

回應

名稱類型
payload Device_GetInterruptById_Result

GetInterruptByName

傳回指定 |name| 的中斷控點。 |flags| 會以 |options| 參數的形式轉送到 zx_interrupt_create

  • 如果 |name| 是空字串,就會傳回 ZX_ERR_INVALID_ARGS 錯誤。
  • 如果找不到 |name|,則傳回 ZX_ERR_OUT_OF_RANGE
  • 如果擷取的中斷無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
name string[128]
flags uint32

回應

名稱類型
payload Device_GetInterruptByName_Result

GetMetadata

傳回與裝置和 |type| 相關聯的中繼資料。如果沒有中繼資料,則傳回 ZX_ERR_NOT_FOUND。

新增時間:HEAD

要求

名稱類型
type uint32

回應

名稱類型
payload Device_GetMetadata_Result

GetMmioById

傳回指定 |index| 的記憶體對應 IO (MMIO) 資源。

  • 如果 |index| 等於或大於 mmios ,則傳回 ZX_ERR_OUT_OF_RANGE 錯誤。
  • 如果擷取的 mmio 無效,則傳回 ZX_ERR_INTERNAL 錯誤。
  • 如果擷取的 mmio 基本地址為 NULL,則會傳回 ZX_ERR_NOT_FOUND 錯誤。

要求

名稱類型
index uint32

回應

名稱類型
payload Device_GetMmioById_Result

GetMmioByName

傳回指定 |name| 的記憶體對應 IO (MMIO) 資源。

  • 如果 |name| 是空字串,就會傳回 ZX_ERR_INVALID_ARGS 錯誤。
  • 如果找不到 |name|,則傳回 ZX_ERR_OUT_OF_RANGE
  • 如果擷取的 mmio 無效,則傳回 ZX_ERR_INTERNAL 錯誤。
  • 如果擷取的 mmio 基本地址為 NULL,則傳回 ZX_ERR_NOT_FOUND 錯誤。

要求

名稱類型
name string[128]

回應

名稱類型
payload Device_GetMmioByName_Result

GetNodeDeviceInfo

傳回與驅動程式庫繫結的節點相對應的裝置資訊。

要求

<EMPTY>

回應

名稱類型
payload Device_GetNodeDeviceInfo_Result

GetPowerConfiguration

傳回驅動程式繫結裝置的電源設定。

新增時間:HEAD

要求

<EMPTY>

回應

名稱類型
payload Device_GetPowerConfiguration_Result

GetSmcById

傳回指定 |index| 的安全監控呼叫 (smc) 控制代碼。

  • 如果 |index| 等於或大於 smcs 數量,則會傳回 ZX_ERR_OUT_OF_RANGE 錯誤。
  • 如果所擷取的 smc 無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
index uint32

回應

名稱類型
payload Device_GetSmcById_Result

GetSmcByName

傳回指定 |name| 的安全監控呼叫 (smc) 控制代碼。

  • 如果 |name| 是空字串,就會傳回 ZX_ERR_INVALID_ARGS 錯誤。
  • 如果找不到 |name|,則傳回 ZX_ERR_OUT_OF_RANGE
  • 如果所擷取的 smc 無效,則傳回 ZX_ERR_INTERNAL 錯誤。

要求

名稱類型
name string[128]

回應

名稱類型
payload Device_GetSmcByName_Result

結構

Device_GetBtiById_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
bti handle<bti> 無預設

Device_GetBtiByName_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
bti handle<bti> 無預設

Device_GetInterruptById_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
irq handle<interrupt> 無預設

Device_GetInterruptByName_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
irq handle<interrupt> 無預設

Device_GetMetadata_Response

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
metadata vector<uint8> 無預設

Device_GetPowerConfiguration_Response

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
config vector<fuchsia.hardware.power/PowerElementConfiguration>[32] 無預設

Device_GetSmcById_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
smc handle<resource> 無預設

Device_GetSmcByName_Response 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

廣闊類型說明預設
smc handle<resource> 無預設

資料表

BoardInfo

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

序數廣闊類型說明
vid uint32

開發板的供應商 ID。

pid uint32

開發板的產品 ID。

board_name string[32]

啟動映像檔平台 ID 記錄中的主面板名稱 (或 x86 平台上的 BIOS)。

board_revision uint32

主面板特定修訂版本編號。

Mmio 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

序數廣闊類型說明
offset zx/Off

從 VMO 開始的偏移量,從 mmio 區域開始。

size uint64

mmio 區域的大小。

vmo handle<vmo>

應對應至驅動程式庫程式位址空間的虛擬記憶體物件。

NodeDeviceInfo

fuchsia.hardware.platform.device/platform-device.fidl 中定義的

序數廣闊類型說明
vid uint32

供應商 ID,如 //zircon/system/ulib/ddk-platform-defs/include/lib/ddk/platform-defs.h

pid uint32

平台 ID,如 //zircon/system/ulib/ddk-platform-defs/include/lib/ddk/platform-defs.h

did uint32

裝置 ID,如 //zircon/system/ulib/ddk-platform-defs/include/lib/ddk/platform-defs.h

mmio_count uint32

提供給這部裝置的 MMIO 區域數量。

irq_count uint32

提供給這部裝置的干擾次數。

bti_count uint32

提供給這部裝置的公車交易發起人數。

smc_count uint32

提供給這部裝置的安全監控呼叫資源數量。

metadata_count uint32

與提供這部裝置相關聯的中繼資料 blob 數量。

name string[32]

為這部裝置提供的主機板驅動程式庫名稱。

聯合國

Device_GetBoardInfo_Result 嚴格

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response BoardInfo
err zx/Status
framework_err internal

Device_GetBtiById_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetBtiById_Response
err zx/Status
framework_err internal

Device_GetBtiByName_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetBtiByName_Response
err zx/Status
framework_err internal

Device_GetInterruptById_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetInterruptById_Response
err zx/Status
framework_err internal

Device_GetInterruptByName_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetInterruptByName_Response
err zx/Status
framework_err internal

Device_GetMetadata_Result 嚴格

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetMetadata_Response
err zx/Status
framework_err internal

Device_GetMmioById_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Mmio
err zx/Status
framework_err internal

Device_GetMmioByName_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Mmio
err zx/Status
framework_err internal

Device_GetNodeDeviceInfo_Result 嚴格

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response NodeDeviceInfo
err zx/Status
framework_err internal

Device_GetPowerConfiguration_Result 嚴格

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetPowerConfiguration_Response
err zx/Status
framework_err internal

Device_GetSmcById_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetSmcById_Response
err zx/Status
framework_err internal

Device_GetSmcByName_Result 嚴格 資源

fuchsia.hardware.platform.device/platform-device.fidl 中定義

序數Variant類型說明
response Device_GetSmcByName_Response
err zx/Status
framework_err internal

服務

服務

fuchsia.hardware.platform.device/platform-device.fidl 中定義

名稱類型傳輸
裝置 fuchsia.hardware.platform.device/Device 版本