요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/imx8mm-thermal.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP i.MX8M Mini Thermal
maintainers:
- Shawn Guo <[email protected]>
- Sascha Hauer <[email protected]>
- Fabio Estevam <[email protected]>
description: |
i.MX8MM has TMU IP to allow temperature measurement, there are
currently two distinct major versions of the IP that is supported
by a single driver. The IP versions are named v1 and v2, v1 is
for i.MX8MM which has ONLY 1 sensor, v2 is for i.MX8MP which has
2 sensors.
$ref: thermal-sensor.yaml#
properties:
compatible:
oneOf:
- enum:
- fsl,imx8mm-tmu
- fsl,imx8mp-tmu
- items:
- const: fsl,imx8mn-tmu
- const: fsl,imx8mm-tmu
reg:
maxItems: 1
clocks:
maxItems: 1
nvmem-cells:
maxItems: 1
description: Phandle to the calibration data provided by ocotp
nvmem-cell-names:
const: calib
"#thermal-sensor-cells":
description: |
Number of cells required to uniquely identify the thermal
sensors, 0 for ONLY one sensor and 1 for multiple sensors.
enum:
- 0
- 1
required:
- compatible
- reg
- clocks
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/clock/imx8mm-clock.h>
thermal-sensor@30260000 {
compatible = "fsl,imx8mm-tmu";
reg = <0x30260000 0x10000>;
clocks = <&clk IMX8MM_CLK_TMU_ROOT>;
#thermal-sensor-cells = <0>;
};
...
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
NXP i.MX8M Mini Thermal
1-22이 GPL-2.0 YAML 스키마는 i.MX8M Mini의 TMU IP를 정의하고 공통 `thermal-sensor.yaml#` 스키마를 참조합니다. 단일 driver가 서로 다른 두 major version을 지원합니다. v1인 i.MX8MM에는 sensor가 하나만 있고, v2인 i.MX8MP에는 sensor가 두 개 있습니다. Maintainer는 Shawn Guo, Sascha Hauer, Fabio Estevam입니다.
i.MX8MM·i.MX8MP·i.MX8MN
23-32`compatible`은 `fsl,imx8mm-tmu` 또는 `fsl,imx8mp-tmu`를 단독으로 사용합니다. i.MX8MN은 `fsl,imx8mn-tmu` 뒤에 `fsl,imx8mm-tmu` fallback을 둡니다.
Register, clock, calibration, sensor cells
33-53`reg`와 `clocks`는 각각 최대 한 항목입니다. 선택적 `nvmem-cells`는 OCOTP calibration data phandle 하나를 받고 `nvmem-cell-names`는 `calib`입니다. `#thermal-sensor-cells`는 sensor가 하나뿐이면 0, 여러 sensor를 구분해야 하면 1이며 두 값만 허용됩니다.
필수 속성과 추가 속성 제한
54-60필수 속성은 `compatible`, `reg`, `clocks`입니다. `unevaluatedProperties: false`로 공통 thermal sensor 스키마에서 평가되지 않은 추가 속성을 금지합니다.
i.MX8MM TMU 예제
61-72예제는 0x30260000의 0x10000-byte TMU register, `IMX8MM_CLK_TMU_ROOT` clock을 사용하고 sensor가 하나뿐이므로 `#thermal-sensor-cells = <0>`을 지정합니다.
#include <dt-bindings/clock/imx8mm-clock.h>
thermal-sensor@30260000 {
compatible = "fsl,imx8mm-tmu";
reg = <0x30260000 0x10000>;
clocks = <&clk IMX8MM_CLK_TMU_ROOT>;
#thermal-sensor-cells = <0>;
};
...
요약과 해설
imx8mm-thermal.yaml:1-72i.MX8M TMU version별 sensor 수와 calibration 속성을 설명합니다. 접을 수 있는 영어 원문 전체는 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·register·interrupt·수치·예제 코드를 원형대로 유지합니다.