요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/ti,j72xx-thermal.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Texas Instruments J72XX VTM (DTS)
maintainers:
- Keerthy <[email protected]>
description: |
The TI K3 family of SoCs typically have a Voltage & Thermal
Management (VTM) device to control up to 8 temperature diode
sensors to measure silicon junction temperatures from different
hotspots of the chip as well as provide temperature, interrupt
and alerting information.
The following polynomial equation can then be used to convert
value returned by this device into a temperature in Celsius
Temp(C) = (-9.2627e-12) * x^4 + (6.0373e-08) * x^3 + \
(-1.7058e-04) * x^2 + (3.2512e-01) * x + (-4.9003e+01)
$ref: thermal-sensor.yaml#
properties:
compatible:
enum:
- ti,j721e-vtm
- ti,j7200-vtm
reg:
items:
- description: VTM cfg1 register space
- description: VTM cfg2 register space
- description: |
A software trimming method must be applied to some Jacinto
devices to function properly. This eFuse region provides
the information needed for these SoCs to report
temperatures accurately.
minItems: 2
power-domains:
maxItems: 1
"#thermal-sensor-cells":
const: 1
allOf:
- if:
properties:
compatible:
contains:
const: ti,j721e-vtm
then:
properties:
reg:
minItems: 3
else:
properties:
reg:
maxItems: 2
required:
- compatible
- reg
- power-domains
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/soc/ti,sci_pm_domain.h>
wkup_vtm0: thermal-sensor@42040000 {
compatible = "ti,j721e-vtm";
reg = <0x42040000 0x350>,
<0x42050000 0x350>,
<0x43000300 0x10>;
power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
#thermal-sensor-cells = <1>;
};
mpu_thermal: mpu-thermal {
polling-delay-passive = <250>; /* milliseconds */
polling-delay = <500>; /* milliseconds */
thermal-sensors = <&wkup_vtm0 0>;
trips {
mpu_crit: mpu-crit {
temperature = <125000>; /* milliCelsius */
hysteresis = <2000>; /* milliCelsius */
type = "critical";
};
};
};
...
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Texas Instruments J72XX VTM
1-11이 GPL-2.0-only 또는 BSD-2-Clause YAML 스키마는 Texas Instruments J72XX VTM(DTS)을 정의합니다. Maintainer는 Keerthy입니다.
8개 diode sensor와 온도 변환식
12-26TI K3 SoC는 일반적으로 VTM을 사용해 최대 8개 temperature diode sensor를 제어합니다. 이 sensor들은 칩의 여러 hotspot에서 silicon junction temperature를 측정하고 온도·interrupt·alert 정보를 제공합니다. 장치가 반환한 `x`를 Celsius로 바꾸는 4차 polynomial은 아래 원문 식과 같습니다.
Temp(C) = (-9.2627e-12) * x^4 + (6.0373e-08) * x^3 + \
(-1.7058e-04) * x^2 + (3.2512e-01) * x + (-4.9003e+01)
Compatible과 cfg·eFuse register
27-49지원 compatible은 `ti,j721e-vtm`과 `ti,j7200-vtm`입니다. `reg`의 첫 두 항목은 VTM cfg1과 cfg2 register 공간입니다. 일부 Jacinto 장치에는 software trimming이 필요하므로 정확한 온도를 보고하는 데 필요한 정보를 담은 eFuse 영역을 세 번째 항목으로 제공합니다. Register는 최소 두 개이고 power domain은 최대 한 항목이며 `#thermal-sensor-cells = 1`입니다.
properties:
compatible:
enum:
- ti,j721e-vtm
- ti,j7200-vtm
reg:
items:
- description: VTM cfg1 register space
- description: VTM cfg2 register space
- description: |
A software trimming method must be applied to some Jacinto
devices to function properly. This eFuse region provides
the information needed for these SoCs to report
temperatures accurately.
minItems: 2
power-domains:
maxItems: 1
"#thermal-sensor-cells":
const: 1
J721E trimming 영역 조건
50-71`ti,j721e-vtm`은 eFuse trimming 영역을 포함하도록 `reg`가 최소 세 항목이어야 합니다. 그 밖의 J7200은 `reg`를 최대 두 항목으로 제한합니다. `compatible`, `reg`, `power-domains`가 필수이고 평가되지 않은 속성은 금지합니다.
allOf:
- if:
properties:
compatible:
contains:
const: ti,j721e-vtm
then:
properties:
reg:
minItems: 3
else:
properties:
reg:
maxItems: 2
required:
- compatible
- reg
- power-domains
unevaluatedProperties: false
J721E VTM 노드 예제
72-83예제는 cfg1 `0x42040000`, cfg2 `0x42050000`, eFuse trim `0x43000300`의 세 register 영역을 지정합니다. TI SCI exclusive power domain 154를 연결하고 1-cell sensor provider로 선언합니다.
- |
#include <dt-bindings/soc/ti,sci_pm_domain.h>
wkup_vtm0: thermal-sensor@42040000 {
compatible = "ti,j721e-vtm";
reg = <0x42040000 0x350>,
<0x42050000 0x350>,
<0x43000300 0x10>;
power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
#thermal-sensor-cells = <1>;
};
J721E MPU thermal zone 예제
84-97MPU thermal zone은 passive polling 250ms, 일반 polling 500ms로 VTM sensor index 0을 감시합니다. Critical trip은 125000 millidegree이고 hysteresis는 2000 millidegree입니다.
mpu_thermal: mpu-thermal {
polling-delay-passive = <250>; /* milliseconds */
polling-delay = <500>; /* milliseconds */
thermal-sensors = <&wkup_vtm0 0>;
trips {
mpu_crit: mpu-crit {
temperature = <125000>; /* milliCelsius */
hysteresis = <2000>; /* milliCelsius */
type = "critical";
};
};
};
...
요약과 해설
ti,j72xx-thermal.yaml:1-97J72XX VTM의 온도 변환식과 J721E eFuse trimming 영역을 설명합니다. 접을 수 있는 영어 원문 전체는 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·register·수식·수치·예제 코드를 원형대로 유지합니다.