fuchsia.hardware.registers

添加时间:HEAD

协议

设备

fuchsia.hardware.registers/register-util.fidl 中定义

ReadRegister16

请求

名称类型
offset uint64
mask uint16

响应

名称类型
payload Device_ReadRegister16_Result

ReadRegister32

请求

名称类型
offset uint64
mask uint32

响应

名称类型
payload Device_ReadRegister32_Result

ReadRegister64

请求

名称类型
offset uint64
mask uint64

响应

名称类型
payload Device_ReadRegister64_Result

ReadRegister8

从寄存器宽度等于 8、16、32 和 64 位变体的指定 MMIO 偏移量从寄存器中读取数据。 |offset| :相对于要读取的 MMIO 基数的偏移量。偏移量必须与寄存器的开头对齐。例如,对于 32 位,偏移量必须能被 4 整除;而对于 64 位,偏移量必须能被 8 整除。如果不满足此条件,读取将失败。 |mask|:要读取的位的掩码。例如,如需读取 32 位寄存器中的较低 2 个字节的数据,则掩码应为 0x0000FFFF。@Returns: |value| :指定地址处的寄存器值。

请求

名称类型
offset uint64
mask uint8

响应

名称类型
payload Device_ReadRegister8_Result

WriteRegister16

请求

名称类型
offset uint64
mask uint16
value uint16

响应

名称类型
payload Device_WriteRegister16_Result

WriteRegister32

请求

名称类型
offset uint64
mask uint32
value uint32

响应

名称类型
payload Device_WriteRegister32_Result

WriteRegister64

请求

名称类型
offset uint64
mask uint64
value uint64

响应

名称类型
payload Device_WriteRegister64_Result

WriteRegister8

以寄存器宽度等于 8、16、32 和 64 位变体的指定 MMIO 偏移量向寄存器写入数据 |offset|:从要写入的 MMIO 基数的偏移量。偏移量必须与寄存器的开头对齐。例如,对于 32 位,偏移量必须能被 4 整除;而对于 64 位,偏移量必须能被 8 整除。如果不满足此要求,写入将失败。 |mask|:要写入的位的掩码。例如,如需向 32 位寄存器中较低的 2 个字节写入数据,则掩码应为 0x0000FFFF。|value| :指定地址处的寄存器值。

请求

名称类型
offset uint64
mask uint8
value uint8

响应

名称类型
payload Device_WriteRegister8_Result

结构体

Device_ReadRegister16_Response

fuchsia.hardware.registers/register-util.fidl 中定义

字段类型说明默认
value uint16 无默认设置

Device_ReadRegister32_Response

fuchsia.hardware.registers/register-util.fidl 中定义

字段类型说明默认
value uint32 无默认设置

Device_ReadRegister64_Response

fuchsia.hardware.registers/register-util.fidl 中定义

字段类型说明默认
value uint64 无默认设置

Device_ReadRegister8_Response

fuchsia.hardware.registers/register-util.fidl 中定义

字段类型说明默认
value uint8 无默认设置

Device_WriteRegister16_Response

fuchsia.hardware.registers/register-util.fidl 中定义

<EMPTY>

Device_WriteRegister32_Response

fuchsia.hardware.registers/register-util.fidl 中定义

<EMPTY>

Device_WriteRegister64_Response

fuchsia.hardware.registers/register-util.fidl 中定义

<EMPTY>

Device_WriteRegister8_Response

fuchsia.hardware.registers/register-util.fidl 中定义

<EMPTY>

MaskEntry

fuchsia.hardware.registers/metadata.fidl 中定义

序数字段类型说明
mask Mask
mmio_offset uint64

掩码范围的 MMIO 偏移量。 对于 32 位寄存器,应与 4 对齐;对于 64 位寄存器,应对齐到 8,依此类推。

count uint32

具有此掩码值的遮罩数量。

overlap_check_on bool

重叠检查。 如果为 true,则检查此掩码是否存在为所有寄存器定义的重叠位。 如果为 false,则不检查。 如果不存在,则解释为 true。

元数据

fuchsia.hardware.registers/metadata.fidl 中定义

序数字段类型说明
registers vector<RegistersMetadataEntry>

寄存器元数据的矢量。每个要发布的寄存器各对应一个。

RegistersMetadataEntry

fuchsia.hardware.registers/metadata.fidl 中定义

序数字段类型说明
name string[32]

用于绑定的名称(BIND_REGISTER_NAME 设备属性)。

mmio_id uint32

与注册对应的 MMIO 的 MMIO ID。

masks vector<MaskEntry>

掩码的运行长度编码列表。 应按照从基本地址开始的顺序。遮罩应属于同一类型。

联合体

Device_ReadRegister16_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_ReadRegister16_Response
err zx/Status

Device_ReadRegister32_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_ReadRegister32_Response
err zx/Status

Device_ReadRegister64_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_ReadRegister64_Response
err zx/Status

Device_ReadRegister8_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_ReadRegister8_Response
err zx/Status

Device_WriteRegister16_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_WriteRegister16_Response
err zx/Status

Device_WriteRegister32_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_WriteRegister32_Response
err zx/Status

Device_WriteRegister64_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_WriteRegister64_Response
err zx/Status

Device_WriteRegister8_Result 严格

fuchsia.hardware.registers/register-util.fidl 中定义

序数变体类型说明
response Device_WriteRegister8_Response
err zx/Status

戴口罩严格

fuchsia.hardware.registers/metadata.fidl 中定义

序数变体类型说明
r8 uint8
r16 uint16
r32 uint32
r64 uint64

常量

名称类型说明
MAX_NAME_LENGTH 32 uint32

name 字符串的最大长度。

服务

服务

fuchsia.hardware.registers/register-util.fidl 中定义

名称类型传输
设备 fuchsia.hardware.registers/Device 频道