内核驱动 sbrmi

支持的硬件

  • 符合侧带远程管理接口 (SB-RMI) 标准的 AMD SoC 设备,通过 APML 连接到 BMC。

    前缀:‘sbrmi’

    扫描地址:此驱动程序不支持地址扫描。

    要在支持 SB-RMI 的 AMD CPU 上实例化此驱动程序,i2c 总线号将是从板载管理控制器 (BMC) 连接到 CPU 的总线。SMBus 地址实际上是 7 位。一些供应商和 SMBus 规范将地址显示为 8 位,左对齐,R/W 位作为写 (0) 使位 0。一些供应商仅使用 7 位来描述地址。如 AMD 的 APML 规范中所述,对于插槽 0,SB-RMI 地址通常为 78h(0111 100W) 或 3Ch(011 1100),对于插槽 1,则为 70h(0111 000W) 或 38h(011 1000),但它可能会根据硬件地址选择引脚而有所不同。

    数据手册:SB-RMI 接口和协议以及高级

    平台管理链路 (APML) 规范可作为开源 SoC 寄存器参考的一部分,网址为

    https://www.amd.com/en/support/tech-docs?keyword=55898

作者:Akshay Gupta <akshay.gupta@amd.com>

描述

APML 提供了一种通过外部 SMBus 主站与 SB 远程管理接口 (SB-RMI) 模块通信的方式,该接口可用于使用邮箱命令报告 AMD 平台上的插槽电源,并且类似于典型的 8 引脚远程电源传感器的 I2C 接口到 BMC。

此驱动程序实现了具有功率上限和最大功率上限的电流功率。

sysfs 接口

可以通过 sysfs 上标准的 hwmon 接口在目录 /sys/class/hwmon/hwmonX 下查询和设置电源传感器,其中 X 为某个值(搜索 X,使得 /sys/class/hwmon/hwmonX/name 的内容为 sbrmi

名称

权限

描述

power1_input

RO

当前功耗

power1_cap

RW

功率限制可以设置在 0 和 power1_cap_max 之间

power1_cap_max

RO

由 SMU FW 计算和报告的最大功率限制

以下示例显示了如何使用 sensors 二进制文件等用户空间实用程序来监视 i2c 地址的“功率”属性

# sensors
sbrmi-i2c-1-38
Adapter: bcm2835 I2C adapter
power1:       61.00 W (cap = 225.00 W)

sbrmi-i2c-1-3c
Adapter: bcm2835 I2C adapter
power1:       28.39 W (cap = 224.77 W)
#
此外,下面展示了如何从 sysfs 条目中单独获取和设置值:

# cat /sys/class/hwmon/hwmon1/power1_cap_max 225000000

# echo 180000000 > /sys/class/hwmon/hwmon1/power1_cap # cat /sys/class/hwmon/hwmon1/power1_cap 180000000