← Documents Documentation/hwmon/k10temp.rst GitHub 원문 ↗

Linux 6.18.37 · Hardware Monitoring

Kernel driver k10temp

AMD Family 10h~19h의 Tctl, Tdie, CCD 온도와 소켓 erratum 처리입니다.

Source pathDocumentation/hwmon/k10temp.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

k10temp.rst:1-134

AMD 프로세서 온도를 PCI 공간에서 읽고 세대별 Tctl 보정, Tdie 실제 온도, 최대 8개 CCD 온도 채널을 제공합니다.

문서 개요
항목
SourceDocumentation/hwmon/k10temp.rst
분량134 source lines
패밀리10h~19h
탐색PCI space

원문 분량과 핵심 인터페이스입니다.

동작 흐름
CPU 패밀리 확인Tctl 판독지원 시 Tdie 보정CCD 채널 감시

하드웨어 측정에서 hwmon 게시까지의 핵심 순서입니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 Kernel driver k10temp
2 =====================
3
4 Supported chips:
5
6 * AMD Family 10h processors:
7
8 Socket F: Quad-Core/Six-Core/Embedded Opteron (but see below)
9
10 Socket AM2+: Quad-Core Opteron, Phenom (II) X3/X4, Athlon X2 (but see below)
11
12 Socket AM3: Quad-Core Opteron, Athlon/Phenom II X2/X3/X4, Sempron II
13
14 Socket S1G3: Athlon II, Sempron, Turion II
15
16 * AMD Family 11h processors:
17
18 Socket S1G2: Athlon (X2), Sempron (X2), Turion X2 (Ultra)
19
20 * AMD Family 12h processors: "Llano" (E2/A4/A6/A8-Series)
21
22 * AMD Family 14h processors: "Brazos" (C/E/G/Z-Series)
23
24 * AMD Family 15h processors: "Bulldozer" (FX-Series), "Trinity", "Kaveri",
25 "Carrizo", "Stoney Ridge", "Bristol Ridge"
26
27 * AMD Family 16h processors: "Kabini", "Mullins"
28
29 * AMD Family 17h processors: "Zen", "Zen 2"
30
31 * AMD Family 18h processors: "Hygon Dhyana"
32
33 * AMD Family 19h processors: "Zen 3"
34
35 Prefix: 'k10temp'
36
37 Addresses scanned: PCI space
38
39 Datasheets:
40
41 BIOS and Kernel Developer's Guide (BKDG) For AMD Family 10h Processors:
42
43 http://support.amd.com/us/Processor_TechDocs/31116.pdf
44
45 BIOS and Kernel Developer's Guide (BKDG) for AMD Family 11h Processors:
46
47 http://support.amd.com/us/Processor_TechDocs/41256.pdf
48
49 BIOS and Kernel Developer's Guide (BKDG) for AMD Family 12h Processors:
50
51 http://support.amd.com/us/Processor_TechDocs/41131.pdf
52
53 BIOS and Kernel Developer's Guide (BKDG) for AMD Family 14h Models 00h-0Fh Processors:
54
55 http://support.amd.com/us/Processor_TechDocs/43170.pdf
56
57 Revision Guide for AMD Family 10h Processors:
58
59 http://support.amd.com/us/Processor_TechDocs/41322.pdf
60
61 Revision Guide for AMD Family 11h Processors:
62
63 http://support.amd.com/us/Processor_TechDocs/41788.pdf
64
65 Revision Guide for AMD Family 12h Processors:
66
67 http://support.amd.com/us/Processor_TechDocs/44739.pdf
68
69 Revision Guide for AMD Family 14h Models 00h-0Fh Processors:
70
71 http://support.amd.com/us/Processor_TechDocs/47534.pdf
72
73 AMD Family 11h Processor Power and Thermal Data Sheet for Notebooks:
74
75 http://support.amd.com/us/Processor_TechDocs/43373.pdf
76
77 AMD Family 10h Server and Workstation Processor Power and Thermal Data Sheet:
78
79 http://support.amd.com/us/Processor_TechDocs/43374.pdf
80
81 AMD Family 10h Desktop Processor Power and Thermal Data Sheet:
82
83 http://support.amd.com/us/Processor_TechDocs/43375.pdf
84
85 Author: Clemens Ladisch <clemens@ladisch.de>
86
87 Description
88 -----------
89
90 This driver permits reading of the internal temperature sensor of AMD
91 Family 10h/11h/12h/14h/15h/16h processors.
92
93 All these processors have a sensor, but on those for Socket F or AM2+,
94 the sensor may return inconsistent values (erratum 319). The driver
95 will refuse to load on these revisions unless you specify the "force=1"
96 module parameter.
97
98 Due to technical reasons, the driver can detect only the mainboard's
99 socket type, not the processor's actual capabilities. Therefore, if you
100 are using an AM3 processor on an AM2+ mainboard, you can safely use the
101 "force=1" parameter.
102
103 For CPUs older than Family 17h, there is one temperature measurement value,
104 available as temp1_input in sysfs. It is measured in degrees Celsius with a
105 resolution of 1/8th degree. Please note that it is defined as a relative
106 value; to quote the AMD manual::
107
108 Tctl is the processor temperature control value, used by the platform to
109 control cooling systems. Tctl is a non-physical temperature on an
110 arbitrary scale measured in degrees. It does _not_ represent an actual
111 physical temperature like die or case temperature. Instead, it specifies
112 the processor temperature relative to the point at which the system must
113 supply the maximum cooling for the processor's specified maximum case
114 temperature and maximum thermal power dissipation.
115
116 The maximum value for Tctl is available in the file temp1_max.
117
118 If the BIOS has enabled hardware temperature control, the threshold at
119 which the processor will throttle itself to avoid damage is available in
120 temp1_crit and temp1_crit_hyst.
121
122 On some AMD CPUs, there is a difference between the die temperature (Tdie) and
123 the reported temperature (Tctl). Tdie is the real measured temperature, and
124 Tctl is used for fan control. While Tctl is always available as temp1_input,
125 the driver exports Tdie temperature as temp2_input for those CPUs which support
126 it.
127
128 Models from 17h family report relative temperature, the driver aims to
129 compensate and report the real temperature.
130
131 On Family 17h and Family 18h CPUs, additional temperature sensors may report
132 Core Complex Die (CCD) temperatures. Up to 8 such temperatures are reported
133 as temp{3..10}_input, labeled Tccd{1..8}. Actual support depends on the CPU
134 variant.
135

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

AMD Family 10h~19h 지원 범위

1-86

`k10temp` 드라이버는 AMD Family 10h부터 19h까지의 프로세서 온도 센서를 PCI 공간에서 찾습니다. 접두사는 `k10temp`이고 작성자는 Clemens Ladisch입니다.

Family 10h에는 Socket F의 Quad-Core·Six-Core·Embedded Opteron, AM2+의 Quad-Core Opteron·Phenom (II) X3/X4·Athlon X2, AM3의 Quad-Core Opteron·Athlon/Phenom II X2/X3/X4·Sempron II, S1G3의 Athlon II·Sempron·Turion II가 포함됩니다.

Family 11h는 S1G2 Athlon (X2)·Sempron (X2)·Turion X2 (Ultra), Family 12h는 Llano E2/A4/A6/A8, Family 14h는 Brazos C/E/G/Z, Family 15h는 Bulldozer FX·Trinity·Kaveri·Carrizo·Stoney Ridge·Bristol Ridge, Family 16h는 Kabini·Mullins입니다.

Family 17h는 Zen·Zen 2, Family 18h는 Hygon Dhyana, Family 19h는 Zen 3입니다. 원문은 Family 10h~14h BKDG, 각 리비전 가이드, Family 10h·11h 전력·열 데이터시트 링크를 제공합니다.

k10temp 지원 세대
Family대표 제품·코드명
10hSocket F/AM2+/AM3/S1G3 Opteron, Phenom, Athlon, Sempron, Turion
11hS1G2 Athlon, Sempron, Turion X2
12hLlano E2/A4/A6/A8
14hBrazos C/E/G/Z
15hBulldozer, Trinity, Kaveri, Carrizo, Stoney Ridge, Bristol Ridge
16hKabini, Mullins
17hZen, Zen 2
18hHygon Dhyana
19hZen 3

프로세서 패밀리와 대표 제품군입니다.

AMD 온도 센서 등록
PCI 공간에서 온도 기능 탐색Family와 모델 확인소켓과 erratum 적용 여부 판단k10temp 드라이버 결합지원 온도 채널 게시

PCI 장치에서 프로세서 패밀리를 판별합니다.

Kernel driver k10temp
=====================

Supported chips:

* AMD Family 10h processors:

  Socket F: Quad-Core/Six-Core/Embedded Opteron (but see below)

  Socket AM2+: Quad-Core Opteron, Phenom (II) X3/X4, Athlon X2 (but see below)

  Socket AM3: Quad-Core Opteron, Athlon/Phenom II X2/X3/X4, Sempron II

  Socket S1G3: Athlon II, Sempron, Turion II

* AMD Family 11h processors:

  Socket S1G2: Athlon (X2), Sempron (X2), Turion X2 (Ultra)

* AMD Family 12h processors: "Llano" (E2/A4/A6/A8-Series)

* AMD Family 14h processors: "Brazos" (C/E/G/Z-Series)

* AMD Family 15h processors: "Bulldozer" (FX-Series), "Trinity", "Kaveri",
  "Carrizo", "Stoney Ridge", "Bristol Ridge"

* AMD Family 16h processors: "Kabini", "Mullins"

* AMD Family 17h processors: "Zen", "Zen 2"

* AMD Family 18h processors: "Hygon Dhyana"

* AMD Family 19h processors: "Zen 3"

  Prefix: 'k10temp'

  Addresses scanned: PCI space

  Datasheets:

  BIOS and Kernel Developer's Guide (BKDG) For AMD Family 10h Processors:

    http://support.amd.com/us/Processor_TechDocs/31116.pdf

  BIOS and Kernel Developer's Guide (BKDG) for AMD Family 11h Processors:

    http://support.amd.com/us/Processor_TechDocs/41256.pdf

  BIOS and Kernel Developer's Guide (BKDG) for AMD Family 12h Processors:

    http://support.amd.com/us/Processor_TechDocs/41131.pdf

  BIOS and Kernel Developer's Guide (BKDG) for AMD Family 14h Models 00h-0Fh Processors:

    http://support.amd.com/us/Processor_TechDocs/43170.pdf

  Revision Guide for AMD Family 10h Processors:

    http://support.amd.com/us/Processor_TechDocs/41322.pdf

  Revision Guide for AMD Family 11h Processors:

    http://support.amd.com/us/Processor_TechDocs/41788.pdf

  Revision Guide for AMD Family 12h Processors:

    http://support.amd.com/us/Processor_TechDocs/44739.pdf

  Revision Guide for AMD Family 14h Models 00h-0Fh Processors:

    http://support.amd.com/us/Processor_TechDocs/47534.pdf

  AMD Family 11h Processor Power and Thermal Data Sheet for Notebooks:

    http://support.amd.com/us/Processor_TechDocs/43373.pdf

  AMD Family 10h Server and Workstation Processor Power and Thermal Data Sheet:

    http://support.amd.com/us/Processor_TechDocs/43374.pdf

  AMD Family 10h Desktop Processor Power and Thermal Data Sheet:

    http://support.amd.com/us/Processor_TechDocs/43375.pdf

Author: Clemens Ladisch <clemens@ladisch.de>

구형 패밀리의 Tctl과 강제 로드

87-121

드라이버는 AMD Family 10h, 11h, 12h, 14h, 15h, 16h 프로세서의 내부 온도 센서를 읽습니다. 모든 프로세서에 센서가 있지만 Socket F 또는 AM2+ 일부 리비전은 erratum 319 때문에 일관되지 않은 값을 반환할 수 있습니다. 드라이버는 `force=1` 모듈 매개변수를 지정하지 않으면 해당 리비전에서 로드를 거부합니다.

기술적 이유로 드라이버는 메인보드 소켓 종류만 감지하고 실제 프로세서 기능은 알 수 없습니다. 따라서 AM2+ 메인보드에서 AM3 프로세서를 사용한다면 `force=1`을 안전하게 사용할 수 있습니다.

Family 17h보다 오래된 CPU는 `temp1_input`에 온도 값 하나를 제공하며 섭씨 1/8도 분해능입니다. 이 값 Tctl은 물리적인 다이 또는 케이스 온도가 아니라 플랫폼 냉각 제어에 쓰는 상대적인 온도 제어 값입니다. 프로세서의 최대 케이스 온도와 최대 열 설계 전력 조건에서 시스템이 최대 냉각을 제공해야 하는 지점을 기준으로 한 임의 척도입니다.

Tctl 최대값은 `temp1_max`에 있습니다. BIOS가 하드웨어 온도 제어를 활성화했다면 프로세서가 손상을 피하려고 스스로 스로틀링하는 한계가 `temp1_crit`과 `temp1_crit_hyst`에 제공됩니다.

구형 k10temp 속성
항목내용
temp1_inputTctl 상대 온도, 1/8도 C 분해능
temp1_maxTctl 최대값
temp1_crit하드웨어 스로틀링 임계값
temp1_crit_hyst스로틀링 임계 히스테리시스
erratum 319Socket F·AM2+ 일부 리비전의 불일치 가능
force=1해당 리비전 강제 로드 또는 AM2+ 보드의 AM3 CPU

Tctl과 보호 한계의 의미입니다.

Tctl 해석
소켓과 프로세서 조합 확인필요할 때만 force=1 사용temp1_input에서 Tctl 읽기temp1_max와 상대 위치 비교crit·crit_hyst로 스로틀링 한계 확인

상대 온도를 물리 온도로 오해하지 않고 보호 상태를 판독합니다.

Description
-----------

This driver permits reading of the internal temperature sensor of AMD
Family 10h/11h/12h/14h/15h/16h processors.

All these processors have a sensor, but on those for Socket F or AM2+,
the sensor may return inconsistent values (erratum 319).  The driver
will refuse to load on these revisions unless you specify the "force=1"
module parameter.

Due to technical reasons, the driver can detect only the mainboard's
socket type, not the processor's actual capabilities.  Therefore, if you
are using an AM3 processor on an AM2+ mainboard, you can safely use the
"force=1" parameter.

For CPUs older than Family 17h, there is one temperature measurement value,
available as temp1_input in sysfs. It is measured in degrees Celsius with a
resolution of 1/8th degree.  Please note that it is defined as a relative
value; to quote the AMD manual::

  Tctl is the processor temperature control value, used by the platform to
  control cooling systems. Tctl is a non-physical temperature on an
  arbitrary scale measured in degrees. It does _not_ represent an actual
  physical temperature like die or case temperature. Instead, it specifies
  the processor temperature relative to the point at which the system must
  supply the maximum cooling for the processor's specified maximum case
  temperature and maximum thermal power dissipation.

The maximum value for Tctl is available in the file temp1_max.

If the BIOS has enabled hardware temperature control, the threshold at
which the processor will throttle itself to avoid damage is available in
temp1_crit and temp1_crit_hyst.

Tdie 보정과 CCD 온도

122-134

일부 AMD CPU에서는 실제 측정 다이 온도 Tdie와 팬 제어용 보고 온도 Tctl이 다릅니다. Tctl은 항상 `temp1_input`으로 제공되며, 지원 CPU에서는 Tdie가 `temp2_input`으로 추가 제공됩니다.

Family 17h 모델은 상대 온도를 보고하므로 드라이버가 이를 보정해 실제 온도를 제공하려고 합니다. Family 17h와 18h에서는 Core Complex Die(CCD) 온도 센서가 추가로 있을 수 있습니다.

CCD 온도는 최대 8개까지 `temp3_input`부터 `temp10_input`으로 제공되고 레이블은 `Tccd1`부터 `Tccd8`입니다. 실제 지원 개수는 CPU 변형에 따라 달라집니다.

AMD 온도 채널
속성레이블·값조건
temp1_inputTctl항상 제공
temp2_inputTdieTdie를 지원하는 CPU
temp{3..10}_inputTccd{1..8}Family 17h·18h, CPU 변형별 최대 8개

제어 온도, 실제 다이 온도, CCD 온도를 구분했습니다.

실제 온도 선택
temp1_input에서 Tctl 확인temp2_input 존재 시 Tdie 사용Family 17h 상대값 보정 확인temp3~10에서 CCD 채널 탐색냉각 정책에 Tctl·Tdie 역할을 구분해 적용

CPU가 제공하는 채널에 따라 적절한 온도를 사용합니다.

On some AMD CPUs, there is a difference between the die temperature (Tdie) and
the reported temperature (Tctl). Tdie is the real measured temperature, and
Tctl is used for fan control. While Tctl is always available as temp1_input,
the driver exports Tdie temperature as temp2_input for those CPUs which support
it.

Models from 17h family report relative temperature, the driver aims to
compensate and report the real temperature.

On Family 17h and Family 18h CPUs, additional temperature sensors may report
Core Complex Die (CCD) temperatures. Up to 8 such temperatures are reported
as temp{3..10}_input, labeled Tccd{1..8}. Actual support depends on the CPU
variant.