Site Tools


software:freebsd:amdtemp

This is an old revision of the document!


amdtemp

- универсальный драйвер для датчика температуры в процессорах AMD. Драйвер основательно переписан, полностью изменён подход к работе с процессором:

  • старый подход: в драйвере прописаны все известные ID процессоров и как работать с каждым из них
  • новый подход: во время инициализации определяем какие методы для считывания показаний доступны и используем их, ID используются только для старых процессоров и процессоров где считывание имеет особенности.

Те новый подход полностью идентичен тому как кодеки и прочий софт определяет наличие MMX, SSE, AVX и прочих специфичных вещей в конкретном процессоре, вместо того чтобы таскать с собой базу процессоров где есть эти наборы инструкций.

Поддерживаемые методы считывания

  1. D18F3xE4 Thermtrip Status Register (TTS)
  2. D18F3x64 Hardware Thermal Control (HTC)
  3. D18F3xA4 Reported Temperature Control Register (RTC)
  4. SB-TSI - Temperature Sensor Interface via CPU registers (TSI)
  5. TSI via SMBus - не реализовано!

Для каждого метода считывания можно задать свой offset - значение которое будет прибавляться или отниматься от показаний датчика.

Крутилки

Добавлено множество параметров которые можно посмотреть, а некоторые изменить

D18F3xE4 Thermtrip Status Register

  • TjOffset (RD) - This field is the offset from CurTmp used to normalize to Tcontrol.
  • DiodeOffset (RD) - Thermal diode offset is used to correct the measurement made by an external temperature sensor.
  • ThermtpEn (RD) - The THERMTRIP state is supported by the processor.
  • Thermtrip (RD) - The processor has entered the THERMTRIP state.

D18F3x64 Hardware Thermal Control (HTC)

  • HtcTmpLmt (RD, Кельвины) - HTC temperature limit
  • HtcHystLmt (RW, Кельвины) - HTC hysteresis. The processor exits the HTC active state when the temperature selected by HtcSlewSel is less than the HTC temperature limit (HtcTmpLmt) minus the HTC hysteresis (HtcHystLmt).
  • HtcEn (RW) - HTC is enabled; the processor is capable of entering the HTC-active state.
  • HtcLock (RW) - HtcPstateLimit, HtcHystLmt, HtcTmpLmt, and HtcEn are read-only.
  • HtcSlewSel (RW) - HTC slew-controlled temperature select.
  • HtcPstateLimit (RW) - HTC P-state limit select.
  • HtcAct (RW) - The processor is currently in the HTC-active state.
  • HtcActSts (RW) - set-by-hardware; write-1-to-clear. Reset: 0. This bit is set by hardware when the processor enters the HTC-active state. It is cleared by writing a 1 to it.
  • PslApicHiEn (RW) - P-state limit higher value change APIC interrupt enable.
  • PslApicLoEn (RW) - P-state limit lower value change APIC interrupt enable.

D18F3xA4 Reported Temperature Control Register

  • CurTmp (RD, Кельвины) - Provides the current control temperature, Tctl, after the slew-rate controls have been applied.
  • CurTmpTjSel (RW, Кельвины) - Specifies a value used to create Tctl.
  • TmpSlewDnEn (RW) - Temperature slew downward enable.
  • TmpMaxDiffUp (RW) - Specifies the maximum difference, (Tctlm - Tctl), when Tctl immediatly updates to Tctlm.
  • PerStepTimeDn (RW) - Specifies the time that Tctlm must remain below Tctl before applying a 0.125 downward step.
  • PerStepTimeUp (RW) - Specifies the time that Tctlm must remain above Tctl before applying a 0.125 upward step.

SB-TSI registers

  • cpu_temperature (RD, Кельвины) - CPU Temperature
  • high_temperature_threshold (RD, Кельвины) - High 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
software/freebsd/amdtemp.1432765919.txt.gz · Last modified: 2015/05/27 22:31 (external edit)