요약·해설과 원문, 전문 번역을 서로 분리했습니다. 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/nvidia,tegra30-tsensor.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NVIDIA Tegra30 Thermal Sensor
maintainers:
- Dmitry Osipenko <digetx@gmail.com>
- Jon Hunter <jonathanh@nvidia.com>
- Thierry Reding <thierry.reding@gmail.com>
description: |
TSENSOR provides thermal and voltage sensors which monitor temperature
and voltage of the chip. Sensors are placed across the die to gauge the
temperature of the whole chip. The TSENSOR module:
Generates an interrupt to SW to lower temperature via DVFS on reaching
a certain thermal/voltage threshold.
Generates a signal to the CAR to reduce CPU frequency by half on reaching
a certain thermal/voltage threshold.
Generates a signal to the PMC when the temperature reaches dangerously high
levels to reset the chip and sets a flag in the PMC.
TSENSOR has two channels which monitor two different spots of the SoC.
$ref: thermal-sensor.yaml#
properties:
compatible:
const: nvidia,tegra30-tsensor
reg:
maxItems: 1
clocks:
maxItems: 1
resets:
maxItems: 1
interrupts:
maxItems: 1
"#thermal-sensor-cells":
const: 1
required:
- compatible
- reg
- clocks
- resets
- interrupts
unevaluatedProperties: false
examples:
- |
thermal-sensor@70014000 {
compatible = "nvidia,tegra30-tsensor";
reg = <0x70014000 0x500>;
interrupts = <0 102 4>;
clocks = <&clk 100>;
resets = <&rst 100>;
#thermal-sensor-cells = <1>;
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
NVIDIA Tegra30 Thermal Sensor
1-13이 GPL-2.0-only 또는 BSD-2-Clause YAML 스키마는 NVIDIA Tegra30 TSENSOR를 정의합니다. Maintainer는 Dmitry Osipenko, Jon Hunter, Thierry Reding입니다.
DVFS, CAR, PMC 보호 동작
14-30TSENSOR는 chip의 여러 die 위치에 배치된 thermal·voltage sensor로 전체 chip의 temperature와 voltage를 감시합니다. Thermal 또는 voltage threshold에 도달하면 software에 interrupt를 보내 DVFS로 온도를 낮춥니다. 또 CAR에 signal을 보내 CPU frequency를 절반으로 줄입니다. Temperature가 위험하게 높아지면 PMC에 signal을 보내 chip을 reset하고 PMC에 flag를 설정합니다. 서로 다른 SoC 지점을 감시하는 channel은 두 개입니다. 공통 `thermal-sensor.yaml#`을 사용합니다.
Register, clock, reset, interrupt
31-50`compatible`은 `nvidia,tegra30-tsensor`입니다. `reg`, `clocks`, `resets`, `interrupts`는 각각 최대 한 항목입니다. `#thermal-sensor-cells`는 channel ID 하나를 받도록 1입니다.
필수 속성과 제한
51-59필수 속성은 `compatible`, `reg`, `clocks`, `resets`, `interrupts`입니다. `unevaluatedProperties: false`로 추가 속성을 제한합니다.
Tegra30 TSENSOR 예제
60-70예제는 0x70014000의 0x500-byte register, interrupt 102, clock 100, reset 100을 지정하고 1-cell thermal sensor provider로 노출합니다.
thermal-sensor@70014000 {
compatible = "nvidia,tegra30-tsensor";
reg = <0x70014000 0x500>;
interrupts = <0 102 4>;
clocks = <&clk 100>;
resets = <&rst 100>;
#thermal-sensor-cells = <1>;
};
요약과 해설
nvidia,tegra30-tsensor.yaml:1-70Tegra30 TSENSOR의 DVFS·CAR·PMC 기반 thermal protection을 설명합니다. 접을 수 있는 영어 원문 전체는 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·register·interrupt·수치·예제 코드를 원형대로 유지합니다.