核心驅動程式 sbrmi¶
支援的硬體
透過 APML 連線到 BMC 的符合邊帶遠端管理介面 (SB-RMI) 的 AMD SoC 裝置。
字首: ‘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 暫存器參考中找到,網址為
作者: 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 |
只讀 |
當前功耗 |
power1_cap |
讀寫 |
功耗限制可設定在 0 到 power1_cap_max 之間 |
power1_cap_max |
只讀 |
由 SMU 韌體計算並報告的最大功耗限制 |
以下示例展示瞭如何使用 sensors 二進位制檔案等使用者空間工具來監控來自 i2c 地址的“Power”屬性
# 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