Documentation/devicetree/bindings/thermal/socionext,uniphier-thermal.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / Thermal

Socionext UniPhier Thermal Monitor

UniPhier PVT thermal monitor의 보정쌍과 syscon subnode 구성을 설명합니다.

Source pathDocumentation/devicetree/bindings/thermal/socionext,uniphier-thermal.yaml
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.

1. 요약·해설

원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.

요약과 해설

socionext,uniphier-thermal.yaml:1-55

UniPhier PVT thermal monitor의 보정쌍과 syscon subnode 구성을 설명합니다. 접을 수 있는 영어 원문 전체는 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·register·interrupt·clock·regulator·수치·예제 코드를 원형대로 유지합니다.

2. 영어 원문 전체

번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.

원문 전체 펼치기
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/thermal/socionext,uniphier-thermal.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Socionext UniPhier thermal monitor
8
9 description: |
10 This describes the devicetree bindings for thermal monitor supported by
11 PVT(Process, Voltage and Temperature) monitoring unit implemented on
12 Socionext UniPhier SoCs.
13
14 maintainers:
15 - Kunihiko Hayashi <[email protected]>
16
17 $ref: thermal-sensor.yaml#
18
19 properties:
20 compatible:
21 enum:
22 - socionext,uniphier-pxs2-thermal
23 - socionext,uniphier-ld20-thermal
24 - socionext,uniphier-pxs3-thermal
25 - socionext,uniphier-nx1-thermal
26
27 interrupts:
28 maxItems: 1
29
30 "#thermal-sensor-cells":
31 const: 0
32
33 socionext,tmod-calibration:
34 $ref: /schemas/types.yaml#/definitions/uint32-array
35 maxItems: 2
36 description:
37 A pair of calibrated values referred from PVT, in case that the values
38 aren't set on SoC, like a reference board.
39
40 required:
41 - compatible
42 - interrupts
43
44 unevaluatedProperties: false
45
46 examples:
47 - |
48 // The UniPhier thermal should be a subnode of a "syscon" compatible node.
49
50 #include <dt-bindings/interrupt-controller/arm-gic.h>
51 pvtctl: thermal-sensor {
52 compatible = "socionext,uniphier-ld20-thermal";
53 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
54 #thermal-sensor-cells = <0>;
55 };
56

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.

Socionext UniPhier thermal monitor

1-18

이 GPL-2.0-only 또는 BSD-2-Clause YAML 스키마는 Socionext UniPhier SoC의 PVT(Process, Voltage and Temperature) monitoring unit이 제공하는 thermal monitor를 정의합니다. Maintainer는 Kunihiko Hayashi이며 공통 `thermal-sensor.yaml#`을 사용합니다.

Compatible, interrupt와 PVT 보정쌍

19-39

지원 compatible은 UniPhier PXS2, LD20, PXS3, NX1 thermal monitor입니다. `interrupts`는 최대 한 항목이고 `#thermal-sensor-cells = 0`입니다. `socionext,tmod-calibration`은 PVT에서 참조하는 보정값 두 개의 `uint32-array`이며, reference board처럼 SoC에 값이 설정되지 않은 경우 제공합니다.

properties:
  compatible:
    enum:
      - socionext,uniphier-pxs2-thermal
      - socionext,uniphier-ld20-thermal
      - socionext,uniphier-pxs3-thermal
      - socionext,uniphier-nx1-thermal

  interrupts:
    maxItems: 1

  "#thermal-sensor-cells":
    const: 0

  socionext,tmod-calibration:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    maxItems: 2
    description:
      A pair of calibrated values referred from PVT, in case that the values
      aren't set on SoC, like a reference board.

필수 속성과 제한

40-45

`compatible`과 `interrupts`가 필수이며 `unevaluatedProperties: false`로 추가 속성을 제한합니다.

required:
  - compatible
  - interrupts

unevaluatedProperties: false

UniPhier LD20 thermal 예제

46-55

UniPhier thermal node는 `syscon` compatible node의 subnode여야 합니다. 예제는 LD20 thermal monitor를 GIC SPI 3 level-high interrupt와 연결하고 0-cell provider로 선언합니다.

- |
  // The UniPhier thermal should be a subnode of a "syscon" compatible node.

  #include <dt-bindings/interrupt-controller/arm-gic.h>
  pvtctl: thermal-sensor {
      compatible = "socionext,uniphier-ld20-thermal";
      interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
      #thermal-sensor-cells = <0>;
  };