核心驅動 bt1-pvt¶
支援的晶片
Baikal-T1 PVT 感測器 (片上系統內建)
字首: ‘bt1-pvt’
掃描地址: -
資料手冊: 根據請求並遵守 NDA 由 BAIKAL ELECTRONICS 提供
- 作者
Maxim Kaurkin <maxim.kaurkin@baikalelectronics.ru> Serge Semin <Sergey.Semin@baikalelectronics.ru>
描述¶
此驅動程式實現了對 Baikal-T1 內建的工藝、電壓和溫度感測器的硬體監控功能的支援。PVT IP 核由一個溫度感測器和四個電壓感測器組成,可用於監控晶片內部環境,如發熱、電源電壓和電晶體效能。驅動程式可以選擇性地為 PVT 控制器支援的每個感測器提供 hwmon 警報。警報功能在編譯時可配置,這是由於硬體介面實現的特殊性,即一次只能轉換一個感測器的資料。另一個限制是控制器在資料轉換過程同步執行閾值檢查。因此,為了自動檢測 hwmon 警報,驅動程式程式碼必須在感測器之間切換,讀取轉換後的資料並手動檢查閾值狀態位。根據測量超時設定(update_interval sysfs 節點值),這種設計可能會給系統性能帶來額外負擔。因此,如果您的系統設計不需要警報,建議停用它們以防止 PVT 中斷週期性地被觸發,從而保持資料快取/警報狀態最新。預設情況下,在無警報配置中,資料轉換在透過相應的 _input 檔案請求讀取操作時由驅動程式按需執行。
溫度監控¶
溫度以 10 位解析度測量,並以毫攝氏度報告。驅動程式自行執行所有縮放,因此報告的真實溫度不需要任何使用者空間調整。雖然資料轉換公式不是線性的,這導致非線性離散度,但它接近線性,但在更高溫度下提供更好的精度。溫度輸入對映如下(最後一列表示輸入範圍)
temp1: CPU embedded diode -48.38C - +147.438C
如果驅動程式中啟用了警報核心配置,則溫度輸入具有關聯的最小和最大限制,當超過這些限制時會觸發警報。
電壓監控¶
電壓輸入也以 10 位解析度取樣,並以毫伏報告。但在這種情況下,資料轉換公式是線性的,這提供了恆定的測量離散度。資料縮放也由驅動程式執行,因此返回真實的毫伏值。電壓輸入對映如下(最後一列表示輸入範圍)
in0: VDD (processor core) 0.62V - 1.168V
in1: Low-Vt (low voltage threshold) 0.62V - 1.168V
in2: High-Vt (high voltage threshold) 0.62V - 1.168V
in3: Standard-Vt (standard voltage threshold) 0.62V - 1.168V
如果驅動程式中啟用了警報配置,則電壓輸入具有關聯的最小和最大限制,當超過這些限制時會觸發警報。
Sysfs 屬性¶
以下是驅動程式提供的所有 sysfs 屬性列表、它們的許可權和簡短描述
名稱 |
許可權 |
描述 |
|---|---|---|
update_interval |
讀寫 |
每個感測器的測量更新間隔。 |
temp1_type |
只讀 |
感測器型別(始終為 1,作為 CPU 內建二極體)。 |
temp1_label |
只讀 |
CPU 核心溫度感測器。 |
temp1_input |
只讀 |
測量的溫度,單位毫攝氏度。 |
temp1_min |
讀寫 |
溫度輸入的下限。 |
temp1_max |
讀寫 |
溫度輸入的上限。 |
temp1_min_alarm |
只讀 |
溫度輸入警報。如果溫度輸入低於下限,則返回 1,否則返回 0。 |
temp1_max_alarm |
只讀 |
溫度輸入警報。如果溫度輸入高於上限,則返回 1,否則返回 0。 |
temp1_offset |
讀寫 |
晶片在溫度讀數中新增的溫度偏移量,單位毫攝氏度。它可用於手動調整溫度測量值,範圍在 7.130 攝氏度以內。 |
in[0-3]_label |
只讀 |
CPU 電壓感測器(核心或低/高/標準閾值)。 |
in[0-3]_input |
只讀 |
測量的電壓,單位毫伏。 |
in[0-3]_min |
讀寫 |
電壓輸入的下限。 |
in[0-3]_max |
讀寫 |
電壓輸入的上限。 |
in[0-3]_min_alarm |
只讀 |
電壓輸入警報。如果電壓輸入低於下限,則返回 1,否則返回 0。 |
in[0-3]_max_alarm |
只讀 |
電壓輸入警報。如果電壓輸入高於上限,則返回 1,否則返回 0。 |