fuchsia.hardware.ufs.phy

Added: HEAD

协议

UfsPhy

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

GetProperties

返回 PHY 驱动程序的静态功能。控制器驱动程序会在初始化时调用此函数一次,以确定其可以使用哪些电源管理功能。未实现此方法的 PHY 驱动程序会被视为不支持任何可选功能。

请求

<EMPTY>

响应

名称类型
payload UfsPhy_GetProperties_Result

Init

执行在链路启动之前发生的 UFS PHY 专用初始化。

请求

名称类型
ufs_hci client_end:Ufshci

响应

名称类型
payload UfsPhy_Init_Result

PrePowerModeChange

在电源模式 / 档位更改之前执行 PHY 校准和配置。

请求

<EMPTY>

响应

名称类型
payload UfsPhy_PrePowerModeChange_Result

继续

在启用主机控制器和启动链接之前,先启动 UFS 电源域和时钟。

在未暂停的情况下调用 Resume 是一个返回成功的空操作。如果失败,PHY 必须释放它在尝试期间获取的所有内容并保持暂停状态,以便调用方可以调用 Suspend 或重试 Resume。

请求

<EMPTY>

响应

名称类型
payload UfsPhy_Resume_Result

暂停

关闭 UFS 设备电源轨、PHY 重置、调节器、时钟和电源域。

调用方必须在调用此函数之前停止主机控制器 (HCE = 0);在此函数返回后,在 Resume 成功之前,不得访问 UFSHCI 寄存器空间。在已暂停的情况下调用 Suspend 是空操作。如果失败,PHY 仍会被视为已暂停(系统会尝试执行每个步骤并报告第一个错误),因此调用方必须通过 Resume 将其恢复。只有实际持有的资源才会被释放,因此在 Resume 失败(已释放其获取的资源)后,也可以安全地调用 Suspend。主机控制器在 Suspend 和 Resume 的整个持续时间内都会停止,因此从其中发出的 Ufshci 调用会失败,并显示 ZX_ERR_BAD_STATE。

请求

<EMPTY>

响应

名称类型
payload UfsPhy_Suspend_Result

Ufshci

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

由 UFS MAC(控制器驱动程序)向 PHY 驱动程序提供的接口,允许 PHY 驱动程序发送 UIC 命令(例如 DME_SET)或访问 PHY 初始化所需的 MAC 级寄存器。

DmeGet

向 UFS 控制器发送 UIC DME_GET 命令。 如果 MIB 属性的值未通过 DME_SET 命令设置,设备会返回硬件重置默认值。 如果 mib_attribute 或 gen_selector_index 值无效,系统会返回 ZX_ERR_INTERNAL 错误。

请求

名称类型
mib_attribute uint16
gen_selector_index uint16

响应

名称类型
payload Ufshci_DmeGet_Result

DmeSet

向 UFS 控制器发送 UIC DME_SET 命令。

请求

名称类型
mib_attribute uint16
gen_selector_index uint16
value uint32

响应

名称类型
payload Ufshci_DmeSet_Result

STRUCTS

UfsPhy_Init_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

<EMPTY>

UfsPhy_PrePowerModeChange_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

<EMPTY>

UfsPhy_Resume_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

<EMPTY>

UfsPhy_Suspend_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

<EMPTY>

Ufshci_DmeGet_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

字段类型说明默认
value uint32 无默认应用

Ufshci_DmeSet_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

<EMPTY>

TABLES

UfsPhy_GetProperties_Response

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数字段类型说明
supports_suspend_resume bool

是否实现了 Suspend 和 Resume,即 PHY 能否关闭 UFS 设备、PHY 和主机控制器电源域,并将其重新启动。如果未设置或设置为 false,则控制器驱动程序仅在系统挂起时使用链路休眠。

UNIONS

UfsPhy_GetProperties_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response UfsPhy_GetProperties_Response
framework_err internal

UfsPhy_Init_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response UfsPhy_Init_Response
err zx/Status
framework_err internal

UfsPhy_PrePowerModeChange_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response UfsPhy_PrePowerModeChange_Response
err zx/Status
framework_err internal

UfsPhy_Resume_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response UfsPhy_Resume_Response
err zx/Status
framework_err internal

UfsPhy_Suspend_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response UfsPhy_Suspend_Response
err zx/Status
framework_err internal

Ufshci_DmeGet_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response Ufshci_DmeGet_Response
err zx/Status
framework_err internal

Ufshci_DmeSet_Result strict

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

序数变体类型说明
response Ufshci_DmeSet_Response
err zx/Status
framework_err internal

服务

服务

在 fuchsia.hardware.ufs.phy/ufs_phy.fidl 中定义

名称类型传输
phy fuchsia.hardware.ufs.phy/UfsPhy 渠道
inline_crypto fuchsia.hardware.inlineencryption/Controller 渠道