Инструменты пользователя

Инструменты сайта


ru:software:freebsd:amdtemp

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ru:software:freebsd:amdtemp [2015/05/27 22:25]
root [SB-TSI registers]
ru:software:freebsd:amdtemp [2017/03/08 06:24] (текущий)
root [amdtemp]
Строка 5: Строка 5:
   * **новый подход**:​ во время инициализации определяем какие методы для считывания показаний доступны и используем их, ID используются только для старых процессоров и процессоров где считывание имеет особенности.   * **новый подход**:​ во время инициализации определяем какие методы для считывания показаний доступны и используем их, ID используются только для старых процессоров и процессоров где считывание имеет особенности.
 Те новый подход полностью идентичен тому как кодеки и прочий софт определяет наличие MMX, SSE, AVX и прочих специфичных вещей в конкретном процессоре,​ вместо того чтобы таскать с собой базу процессоров где есть эти наборы инструкций. Те новый подход полностью идентичен тому как кодеки и прочий софт определяет наличие MMX, SSE, AVX и прочих специфичных вещей в конкретном процессоре,​ вместо того чтобы таскать с собой базу процессоров где есть эти наборы инструкций.
 +
 +**Скачать**:​ [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​patches/​amdtemp.c|amdtemp.c]] [[https://​reviews.freebsd.org/​D9759|D9759]]\\
 +**Лицензия**:​ BSD\\
 +
  
 ===== Поддерживаемые методы считывания ===== ===== Поддерживаемые методы считывания =====
   - D18F3xE4 Thermtrip Status Register (TTS)   - D18F3xE4 Thermtrip Status Register (TTS)
-  - D18F3x64 Hardware Thermal Control (HTC)+  - D18F3x64 Hardware Thermal Control (HTC) - не отдаёт температуру,​ только различные настройки
   - D18F3xA4 Reported Temperature Control Register (RTC)   - D18F3xA4 Reported Temperature Control Register (RTC)
   - SB-TSI - Temperature Sensor Interface via CPU registers (TSI)   - SB-TSI - Temperature Sensor Interface via CPU registers (TSI)
Строка 16: Строка 20:
  
 ===== Крутилки ===== ===== Крутилки =====
-Добавлено множество параметров которые можно посмотреть,​ а некоторые изменить+Добавлено множество параметров которые можно посмотреть,​ а некоторые изменить.\\ 
 +Более подробные описания параметров - см в документации на процессор.\\
  
  
Строка 49: Строка 54:
  
 ==== SB-TSI registers ==== ==== SB-TSI registers ====
-  *  { SB_TSI_REG_CPU_TEMP_LB,​ SB_TSI_REG_CPU_TEMP_HB,​ 0, (CTLFLAG_RD | CTLTYPE_INT)"​IK",​ amdtemp_tsi_temp_reg_sysctl,​ "​cpu_temperature",​ "CPU Temperature" }, +  * **cpu_temperature** ​(RDКельвины) - CPU Temperature 
- { SB_TSI_REG_HIGH_TEMP_TLBSB_TSI_REG_HIGH_TEMP_THB,​ 0, (CTLFLAG_RD | CTLTYPE_INT), "​IK",​ amdtemp_tsi_temp_reg_sysctl,​ "​high_temperature_threshold",​ "High Temperature Threshold" }, +  * **high_temperature_threshold** (RDКельвины) - High Temperature Threshold 
- { SB_TSI_REG_LOW_TEMP_TLB,​ SB_TSI_REG_LOW_TEMP_THB,​ 0, (CTLFLAG_RD | CTLTYPE_INT)"IK", ​amdtemp_tsi_temp_reg_sysctl, ​"low_temperature_threshold", "Low Temperature Threshold"​ },+  * **low_temperature_threshold** (RDКельвины) - Low Temperature Threshold 
 +  * **cpu_temperature_offset_hi** ​(RW- CPU Temperature Offset ​High Byte 
 +  * **cpu_temperature_offset_lo** (RW) - CPU Temperature ​Offset Low Byte 
 +  * **status** (RW) - SB-TSI Status 
 +  * **cfg3** (RW) - SB-TSI Configuration Register 0x03 
 +  * **cfg9** (RW) - SB-TSI Configuration Register 0x09 
 +  * **upd_rate** (RW) - Update Rate 
 +  * **timeout_cfg** (RW) - Timeout Configuration 
 +  * **alert_threshold** (RW) - Alert Threshold 
 +  * **alert_cfg** ​(RW- Alert Configuration 
 +  * **manufacture_id** (RD) - Manufacture ID 
 +  * **revision** (RD) - SB-TSI Revision 
 + 
 + 
 +===== Установка ===== 
 +  - Скачать 
 +  - Заменить amdtemp.c в папке /​usr/​src/​sys/​dev/​amdtemp/​ на скаченный 
 +  - Пересобрать и установить ядро целиком или только модуль:​ <​code>​kldunload amdtemp 
 +cd /​usr/​src/​sys/​modules/​amdtemp/​ 
 +make 
 +make install 
 +make cleandir 
 +</​code>​ 
 + 
 + 
 +===== Использование ===== 
 +Загрузить модуль (если он включён в ядро):​ 
 +<​code>​kldload amdtemp</​code>​ 
 + 
 +Можно так же загружать автоматически при старте системы прописав в файле: **/​boot/​loader.conf** 
 +<​code>​amdtemp_load="YES"</​code>​ 
 +или добавив в **kld_list** в файле: **/​etc/​rc.conf**например:​ 
 +<​code>​kld_list="amdtemp"</​code>​
  
- { SB_TSI_REG_CPU_TEMP_OFF_HB,​ 0, 0, (CTLFLAG_RW ​CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "​cpu_temperature_offset_hi",​ "CPU Temperature Offset High Byte" }, +Узнать только температуру:​ 
- { SB_TSI_REG_CPU_TEMP_OFF_LB, ​0, 0, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "​cpu_temperature_offset_lo",​ "CPU Temperature Offset Low Byte" },+<​code>#​ sysctl dev.cpu ​grep temperature 
 +dev.cpu.0.temperature:​ 56.0C 
 +dev.cpu.1.temperature:​ 56.0C</​code>​
  
- { SB_TSI_REG_STATUS, ​0, 0, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "​status",​ "SB-TSI Status"​ }, +Температуру и не только:​ 
- { SB_TSI_REG_CFG, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "cfg3", "​SB-TSI Configuration Register 0x03" }, +<​code>#​ sysctl dev.amdtemp 
- { SB_TSI_REG_CFG2, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "cfg9", "​SB-TSI Configuration Register 0x09" }, +dev.amdtemp.%parent:​  
- { SB_TSI_REG_UPD_RATE, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "upd_rate", "​Update Rate" }, +dev.amdtemp.0.%desc: AMD CPU On-Die Thermal Sensors 
- { SB_TSI_REG_TIMEOUT_CFG, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "timeout_cfg", "​Timeout Configuration"​ }, +dev.amdtemp.0.%driver: amdtemp 
- { SB_TSI_REG_ALERT_THRESHOLD, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "alert_threshold", "Alert Threshold"​ }, +dev.amdtemp.0.%location:  
- { SB_TSI_REG_ALERT_CFG, ​00, (CTLFLAG_RW | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "alert_cfg", "Alert Configuration"​ }, +dev.amdtemp.0.%pnpinfo:​  
- { SB_TSI_REG_MANUFACTURE_ID, ​00, (CTLFLAG_RD | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "manufacture_id", "​Manufacture ID" }, +dev.amdtemp.0.%parent:​ hostb4 
- { SB_TSI_REG_REVISION, ​00, (CTLFLAG_RD | CTLTYPE_UINT),​ "​IU",​ amdtemp_tsi_reg_sysctl,​ "revision", "​SB-TSI Revision"​ },+dev.amdtemp.0.htc.HtcTmpLmt:​ 100.0C 
 +dev.amdtemp.0.htc.HtcHystLmt:​ 3.0C 
 +dev.amdtemp.0.htc.HtcEn:​ 1 
 +dev.amdtemp.0.htc.HtcLock:​ 0 
 +dev.amdtemp.0.htc.HtcSlewSel:​ 0 
 +dev.amdtemp.0.htc.HtcPstateLimit:​ 2 
 +dev.amdtemp.0.htc.HtcAct:​ 0 
 +dev.amdtemp.0.htc.HtcActSts:​ 0 
 +dev.amdtemp.0.htc.PslApicHiEn:​ 0 
 +dev.amdtemp.0.htc.PslApicLoEn:​ 0 
 +dev.amdtemp.0.rtc.CurTmp:​ 56.0C 
 +dev.amdtemp.0.rtc.CurTmpTjSel:​ 7.0C 
 +dev.amdtemp.0.rtc.TmpSlewDnEn:​ 1 
 +dev.amdtemp.0.rtc.TmpMaxDiffUp:​ 3 
 +dev.amdtemp.0.rtc.PerStepTimeDn:​ 15 
 +dev.amdtemp.0.rtc.PerStepTimeUp:​ 15 
 +dev.amdtemp.0.rtc.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor0.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor0.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor0.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor0.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor0.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor0.status:​ 0 
 +dev.amdtemp.0.tsi.sensor0.cfg3: 0 
 +dev.amdtemp.0.tsi.sensor0.cfg9: ​0 
 +dev.amdtemp.0.tsi.sensor0.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor0.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor0.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor0.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor0.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor0.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor0.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor1.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor1.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor1.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor1.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor1.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor1.status:​ 0 
 +dev.amdtemp.0.tsi.sensor1.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor1.cfg9: 0 
 +dev.amdtemp.0.tsi.sensor1.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor1.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor1.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor1.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor1.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor1.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor1.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor2.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor2.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor2.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor2.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor2.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor2.status:​ 0 
 +dev.amdtemp.0.tsi.sensor2.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor2.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor2.upd_rate: 8 
 +dev.amdtemp.0.tsi.sensor2.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor2.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor2.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor2.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor2.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor2.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor3.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor3.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor3.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor3.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor3.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor3.status:​ 0 
 +dev.amdtemp.0.tsi.sensor3.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor3.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor3.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor3.timeout_cfg: 128 
 +dev.amdtemp.0.tsi.sensor3.alert_threshold: ​0 
 +dev.amdtemp.0.tsi.sensor3.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor3.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor3.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor3.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor4.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor4.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor4.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor4.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor4.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor4.status:​ 0 
 +dev.amdtemp.0.tsi.sensor4.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor4.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor4.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor4.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor4.alert_threshold: 0 
 +dev.amdtemp.0.tsi.sensor4.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor4.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor4.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor4.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor5.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor5.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor5.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor5.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor5.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor5.status:​ 0 
 +dev.amdtemp.0.tsi.sensor5.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor5.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor5.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor5.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor5.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor5.alert_cfg: 0 
 +dev.amdtemp.0.tsi.sensor5.manufacture_id: ​0 
 +dev.amdtemp.0.tsi.sensor5.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor5.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor6.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor6.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor6.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor6.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor6.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor6.status:​ 0 
 +dev.amdtemp.0.tsi.sensor6.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor6.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor6.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor6.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor6.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor6.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor6.manufacture_id: 0 
 +dev.amdtemp.0.tsi.sensor6.revision:​ 2 
 +dev.amdtemp.0.tsi.sensor6.sensor_offset:​ 0 
 +dev.amdtemp.0.tsi.sensor7.cpu_temperature:​ 56.0C 
 +dev.amdtemp.0.tsi.sensor7.high_temperature_threshold:​ 70.0C 
 +dev.amdtemp.0.tsi.sensor7.low_temperature_threshold:​ 0.0C 
 +dev.amdtemp.0.tsi.sensor7.cpu_temperature_offset_hi:​ 0 
 +dev.amdtemp.0.tsi.sensor7.cpu_temperature_offset_lo:​ 0 
 +dev.amdtemp.0.tsi.sensor7.status:​ 0 
 +dev.amdtemp.0.tsi.sensor7.cfg3:​ 0 
 +dev.amdtemp.0.tsi.sensor7.cfg9:​ 0 
 +dev.amdtemp.0.tsi.sensor7.upd_rate:​ 8 
 +dev.amdtemp.0.tsi.sensor7.timeout_cfg:​ 128 
 +dev.amdtemp.0.tsi.sensor7.alert_threshold:​ 0 
 +dev.amdtemp.0.tsi.sensor7.alert_cfg:​ 0 
 +dev.amdtemp.0.tsi.sensor7.manufacture_id:​ 0 
 +dev.amdtemp.0.tsi.sensor7.revision: 2 
 +dev.amdtemp.0.tsi.sensor7.sensor_offset:​ 0</​code>​
  
  
  
ru/software/freebsd/amdtemp.1432765555.txt.gz · Последние изменения: 2015/05/27 22:25 — root