核心驅動程式 w83627ehf¶
支援的晶片
華邦 W83627EHF/EHG (僅限 ISA 訪問)
字首: ‘w83627ehf’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 不可用
華邦 W83627DHG
字首: ‘w83627dhg’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 不可用
華邦 W83627DHG-P
字首: ‘w83627dhg’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 不可用
華邦 W83627UHG
字首: ‘w83627uhg’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 可從 www.nuvoton.com 獲取
華邦 W83667HG
字首: ‘w83667hg’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 不可用
華邦 W83667HG-B
字首: ‘w83667hg’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 可向 Nuvoton 請求獲取
新唐 NCT6775F/W83667HG-I
字首: ‘nct6775’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 可向 Nuvoton 請求獲取
新唐 NCT6776F
字首: ‘nct6776’
掃描地址: 從 Super I/O 暫存器檢索的 ISA 地址
資料手冊: 可向 Nuvoton 請求獲取
作者
Jean Delvare <jdelvare@suse.de>
Yuan Mu (華邦)
Rudolf Marek <r.marek@assembler.cz>
David Hubbard <david.c.hubbard@gmail.com>
Gong Jun <JGong@nuvoton.com>
描述¶
此驅動程式支援華邦 W83627EHF、W83627EHG、W83627DHG、W83627DHG-P、W83627UHG、W83667HG、W83667HG-B、W83667HG-I (NCT6775F) 和 NCT6776F 超級 I/O 晶片。我們將它們統稱為華邦晶片。
這些晶片實現了 3 到 4 個溫度感測器(NCT6775F 和 NCT6776F 為 9 個)、2 到 5 個風扇轉速感測器、8 到 10 個模擬電壓感測器、一個 VID(627UHG 除外)、帶蜂鳴警告的報警功能(控制未實現),以及一些自動風扇調節策略(加上手動風扇控制模式)。
W82677HG-B、NCT6775F 和 NCT6776F 上的溫度感測器源是可配置的。僅當 temp4 及更高屬性的溫度源與已報告溫度感測器的溫度源不同時,才報告這些屬性。每個溫度感測器的配置源在 tempX_label 中提供。
溫度以攝氏度(degC)測量,temp1 的測量解析度為 1 degC,temp2 和 temp3 為 0.5 degC。對於 temp4 及更高版本,W83667HG-B 的解析度為 1 degC,NCT6775F 和 NCT6776F 的解析度為 0.0 degC。當溫度高於上限時,會觸發警報;警報會一直持續到溫度低於滯後值。警報僅支援 temp1、temp2 和 temp3。
風扇轉速以 RPM(每分鐘轉數)報告。如果轉速低於可程式設計限值,則會觸發警報。風扇讀數可以透過可程式設計分頻器(1、2、4、8、16、32、64 或 128)進行分頻,以提供更大的讀數範圍或更高的準確性。驅動程式會自行設定最合適的風扇分頻器。某些風扇可能不存在,因為它們與其它功能共享引腳。
電壓感測器(也稱為 IN 感測器)以毫伏(millivolts)報告其值。如果電壓超出可程式設計的最小或最大限制,則會觸發警報。
驅動程式支援名為“Thermal Cruise”的自動風扇控制模式。在此模式下,晶片會嘗試將測量溫度保持在預定義的溫度範圍內。如果溫度超出範圍,風扇會減速/加速,以便再次達到預定範圍。
該模式適用於 fan1-fan4。溫度到 PWM 輸出的對映如下:
temp1 -> pwm1
temp2 -> pwm2
temp3 -> pwm3 (not on 627UHG)
prog -> pwm4 (not on 667HG and 667HG-B; the programmable setting is not
supported by the driver)
/sys 檔案¶
- 名稱
這是一個標準的 hwmon 裝置條目,包含裝置的名稱(請參閱此檔案頂部支援裝置列表中的字首)
- pwm[1-4]
此檔案儲存 PWM 佔空比或直流值(風扇速度),範圍為
0(停止)到 255(全速)
- pwm[1-4]_enable
此檔案控制風扇/溫度控制模式
1 手動模式,向 pwm 檔案寫入任意值 0-255(全速)
2 “Thermal Cruise” 模式
3 “Fan Speed Cruise” 模式
4 “Smart Fan III” 模式
5 “Smart Fan IV” 模式
NCT6776F 不支援 SmartFan III 模式。
SmartFan IV 模式僅在系統啟動時配置後才可配置,且僅支援 W83677HG-B、NCT6775F 和 NCT6776F。SmartFan IV 的操作引數目前無法配置,並且 SmartFan IV 模式下不使用各種 pwm 屬性。這些屬性可以寫入,如果您計劃為系統配置不同的 pwm 模式,這將很有用。但是,讀取 pwm 屬性時返回的資訊與 SmartFan IV 操作無關。
- pwm[1-4]_mode
控制輸出是 PWM 還是直流電平
0 直流輸出 (0 - 12v)
1 PWM 輸出
Thermal Cruise 模式¶
如果溫度在由以下引數定義的範圍內:
- pwm[1-4]_target
設定目標溫度,單位毫攝氏度 (millidegree Celsius)(範圍 0 - 127000)
- pwm[1-4]_tolerance
容差,單位毫攝氏度 (millidegree Celsius)(範圍 0 - 15000)
風扇速度不會發生變化。一旦溫度超出此區間,如果溫度更高則風扇速度增加,如果溫度低於預期則風扇速度降低。雖然定義了步進和時間,但驅動程式尚未匯出。
- pwm[1-4]_min_output
最小風扇速度(範圍 1 - 255),當溫度低於定義範圍時。
- pwm[1-4]_stop_time
需要經過多少毫秒 [ms] 才能關閉相應的風扇。(當溫度低於定義範圍時)。
- pwm[1-4]_start_output
啟動時最小風扇速度(範圍 1 - 255)
- pwm[1-4]_step_output
風扇速度變化率 (1 - 255)
- pwm[1-4]_stop_output
降速時最小風扇速度(範圍 1 - 255)
- pwm[1-4]_max_output
最大風扇速度(範圍 1 - 255),當溫度高於定義範圍時。
- 注意:最後六個功能受其他控制位影響,但尚未匯出
透過驅動程式,因此更改可能不會有任何效果。
實現細節¶
未來的驅動程式開發應注意,以下暫存器在 627EHF 和 627DHG 上具有不同的功能。某些暫存器也具有不同的上電預設值,但 BIOS 應該已經載入了適當的預設值。請注意,對於所有暫存器地址,必須像驅動程式中當前那樣執行 bank 選擇。
暫存器 |
含義 |
|---|---|
0x49 |
僅在 DHG 上,選擇 AUX 風扇、CPU fan0 的溫度源 |
0x4a |
EHF 尚未完全文件化,DHG 文件為位 7 和 6 分配了不同的行為,包括將溫度輸入選擇擴充套件到 SmartFan I,而不僅僅是 SmartFan III。在 EHF 上進行測試將揭示它們是否相容。 |
0x58 |
晶片 ID: 0xa1=EHF 0xc1=DHG |
0x5e |
僅在 DHG 上,有用於啟用“電流模式”溫度檢測和關鍵溫度保護的位 |
0x45b |
僅在 EHF 上,位 3,vin4 報警(EHF 支援 10 個輸入,DHG 僅支援 9 個) |
0x552 |
僅在 EHF 上,vin4 |
0x558 |
僅在 EHF 上,vin4 上限 |
0x559 |
僅在 EHF 上,vin4 下限 |
0x6b |
僅在 DHG 上,SYS 風扇關鍵溫度 |
0x6c |
僅在 DHG 上,CPU fan0 關鍵溫度 |
0x6d |
僅在 DHG 上,AUX 風扇關鍵溫度 |
0x6e |
僅在 DHG 上,CPU fan1 關鍵溫度 |
0x50-0x55 和 0x650-0x657 |
標記為
|
DHG 還支援 PECI,DHG 查詢 Intel CPU 溫度,ICH8 南橋透過 PECI 從 DHG 獲取該資料,從而使南橋驅動風扇。DHG 還支援 SST,一種單線序列匯流排。
DHG-P 具有一個名為 Smart Fan (TM) III+ 的額外自動風扇速度控制模式。此模式尚未被驅動程式支援。