fuchsia.hardware.platform.bus

添加时间:HEAD

协议

伊奥穆

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

GetBti

请求

名称类型
iommu_index uint32
bti_id uint32

响应

名称类型
payload Iommu_GetBti_Result

PlatformBus

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

AddCompositeNodeSpec

添加具有 |node| 的复合节点规范作为 父节点的父级对象。为此,此方法会执行一些 该方法会添加 |node| 指定的平台设备节点为 平台总线的子级。此外, fuchsia.driver.framework.ParentSpec 已添加到 |spec|对应 新添加的平台设备节点。复合绑定规则应包含 与 |node| 属性匹配的节以便绑定 与 CompositeNodeSpec 匹配的规则。

请求

名称类型
node Node
spec fuchsia.driver.framework/CompositeNodeSpec

响应

名称类型
payload PlatformBus_AddCompositeNodeSpec_Result

GetBoardInfo

板级驱动程序可以使用这些信息来获取有关开发板的信息, 区分所支持的多个开发板

请求

<空>

响应

名称类型
payload PlatformBus_GetBoardInfo_Result

NodeAdd

使用提供的配置向总线添加新的平台设备节点 按 |node|。平台设备节点是在自己的 驱动程序主机。

请求

名称类型
node Node

响应

名称类型
payload PlatformBus_NodeAdd_Result

RegisterSysSuspendCallback

注册在平台总线挂起时由平台总线调用的回调。

添加时间:HEAD

请求

名称类型
suspend_cb SysSuspend

响应

名称类型
payload PlatformBus_RegisterSysSuspendCallback_Result

SetBoardInfo

板级驱动程序可能会使用此参数来设置有关开发板的信息。

请求

名称类型
info BoardInfo

响应

名称类型
payload PlatformBus_SetBoardInfo_Result

SetBootloaderInfo

板驱动程序可能会使用此参数来设置有关引导加载程序的信息。

添加时间:HEAD

请求

名称类型
info BootloaderInfo

响应

名称类型
payload PlatformBus_SetBootloaderInfo_Result

SysSuspend

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

实现此协议的服务器可以注册到该平台 总线以接收关于平台总线挂起原因的回调。

添加时间:HEAD

回调

由平台总线在调用挂起钩子时调用。

请求

名称类型
enable_wake bool
suspend_reason uint8

响应

名称类型
out_status zx/Status

结构体

Iommu_GetBti_Response 资源

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

字段类型说明默认
bti handle<bti> 无默认设置

PlatformBus_AddCompositeNodeSpec_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

<空>

PlatformBus_GetBoardInfo_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

字段类型说明默认
info TemporaryBoardInfo 无默认设置

PlatformBus_NodeAdd_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

<空>

PlatformBus_RegisterSysSuspendCallback_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

<空>

PlatformBus_SetBoardInfo_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

<空>

PlatformBus_SetBootloaderInfo_Response

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

<空>

TemporaryBoardInfo

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

它最初来自 Banjo fuchsia.hardware.platform.device 库, 但在迁移至 FIDL 之前,会暂时包含在此处。

字段类型说明默认
vid uint32

开发板的供应商 ID。

无默认设置
pid uint32

开发板的产品 ID。

无默认设置
board_name string[32]

启动映像平台 ID 记录中的板名称; (或者通过 x86 平台上的 BIOS 添加)。

无默认设置
board_revision uint32

板级修订版本号。

无默认设置

精英

ZirconInterruptMode 严格

类型:uint32

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

用于创建 Zircon 中断的模式。与 ZX_INTERRUPTMODE* 值同步 来自 //zircon/system/public/zircon/types.h。

名称说明
0
2
4
6
8
10

BoardInfo

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

由板驱动程序设置的板信息。

Ordinal字段类型说明
board_name string[32]

启动映像平台 ID 记录或 x86 平台上的 BIOS 中的板名称。

board_revision uint32

板级修订版本号。

BootMetadata

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

要通过 ZBI 记录从引导加载程序中传递的设备元数据。

Ordinal字段类型说明
zbi_type uint32

元数据类型(与引导加载程序元数据的 zbi_header_t.type 一致)。

zbi_extra uint32

匹配引导加载程序元数据的 zbi_header_t.extra。 当引导加载程序提供同一类型的多条元数据记录时使用。

BootloaderInfo

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

由板驱动程序设置的引导加载程序信息。

添加时间:HEAD

Ordinal字段类型说明
vendor string[32]

Bti

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

平台设备节点的总线事务发起者 (bti) 的定义。

Ordinal字段类型说明
iommu_index uint32
bti_id uint32
name string[128]

可用于通过 fuchsia.hardware.platform.device/GetBtiByName. 此字段为空是有效的,但资源将只能 使用 fuchsia.hardware.platform.device/GetBtiById 进行检索。

Irq

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal字段类型说明
irq uint32
mode ZirconInterruptMode

用于设置中断模式的位标记。

properties vector<fuchsia.driver.framework/NodeProperty>[64]

此中断的片段的属性。仅在 DFv2 中使用。

name string[128]

可用于通过 检索 irq 的名称 fuchsia.hardware.platform.device/GetInterruptByName. 此字段为空是有效的,但资源将只能 使用 fuchsia.hardware.platform.device/GetInterruptById 检索。

元数据

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

表示平台设备中提供的元数据。

Ordinal字段类型说明
type uint32

元数据类型。

data vector<uint8>

元数据字节数。

Mmio

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

针对平台设备节点的 MMIO 资源的定义。

Ordinal字段类型说明
base uint64

MMIO 区域的物理地址。无需对齐页面。

length uint64

MMIO 区域的长度(以字节为单位)。无需对齐页面。

name string[128]

可用于检索 Mmio(使用 fuchsia.hardware.platform.device/GetMmioByName. 此字段为空是有效的,但资源将只能 使用 fuchsia.hardware.platform.device/GetMmioById 检索。

节点

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

用于向平台总线添加平台设备节点的参数。

Ordinal字段类型说明
name string[128]

节点的名称。

vid uint32

BIND_PLATFORM_DEV_VID

pid uint32

BIND_PLATFORM_DEV_PID

did uint32

BIND_PLATFORM_DEV_DID

instance_id uint32

实例 ID。如果为非零值,则对 device-name 有贡献。 BIND_PLATFORM_DEV_INSTANCE_ID

mmio vector<Mmio>

MMIO 区域。

irq vector<Irq>

打断我。

bti vector<Bti>

BTI。

smc vector<Smc>

SMC 调用。

metadata vector<Metadata>

元数据

boot_metadata vector<BootMetadata>

启动元数据(来自 ZBI 内容)

properties vector<fuchsia.driver.framework/NodeProperty>[64]

BIND_PLATFORM_DEV_VID、BIND_PLATFORM_DEV_PID 和 BIND_PLATFORM_DEV_DID 之外的其他节点属性。

power_config vector<fuchsia.hardware.power/PowerElementConfiguration>[32]

Smc

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

安全监视器调用 (SMC) 的定义,SMC 允许从用户空间进行调用。

Ordinal字段类型说明
service_call_num_base uint32

该设备有权使用服务呼叫号码进行 SMC 调用,号码范围为 service_call_num_base 更改为 service_call_num_base + count - 1。

count uint32
exclusive bool

设备对此 smc 范围拥有独占访问权限。

name string[128]

可用于检索 smc 的名称 fuchsia.hardware.platform.device/GetSmcByName. 此字段为空是有效的,但资源将只能 使用 fuchsia.hardware.platform.device/GetSmcById 检索。

联合体

Iommu_GetBti_Result 严格 资源

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response Iommu_GetBti_Response
err zx/Status

PlatformBus_AddCompositeNodeSpec_Result strict

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_AddCompositeNodeSpec_Response
err zx/Status

PlatformBus_GetBoardInfo_Result 严格

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_GetBoardInfo_Response
err zx/Status

PlatformBus_NodeAdd_Result 严格

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_NodeAdd_Response
err zx/Status

PlatformBus_RegisterSysSuspendCallback_Result 严格

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_RegisterSysSuspendCallback_Response
err zx/Status

PlatformBus_SetBoardInfo_Result strict

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_SetBoardInfo_Response
err zx/Status

PlatformBus_SetBootloaderInfo_Result strict

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

Ordinal变体类型说明
response PlatformBus_SetBootloaderInfo_Response
err zx/Status

常量

名称类型说明
MAX_INFO_STRING_LENGTH 32 uint32
MAX_POWER_CONFIGS 32 uint32

服务

服务

fuchsia.hardware.platform.bus/platform-bus.fidl 中定义

名称类型传输
platform_bus fuchsia.hardware.platform.bus/PlatformBus 驱动程序
伊莫穆 fuchsia.hardware.platform.bus/Iommu 驱动程序