← Documents Documentation/devicetree/bindings/timer/renesas,ostm.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / Timer

Renesas OS Timer

Renesas OSTM의 동작 mode와 SoC별 reset 조건을 설명합니다.

Source pathDocumentation/devicetree/bindings/timer/renesas,ostm.yaml
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

renesas,ostm.yaml:1-79

Renesas OSTM의 동작 mode와 SoC별 reset 조건을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며 compatible, interrupt, clock, register, phandle, 수치와 줄 좌표를 원형대로 보존합니다.

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/timer/renesas,ostm.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Renesas OS Timer (OSTM)
8
9 maintainers:
10 - Chris Brandt <chris.brandt@renesas.com>
11 - Geert Uytterhoeven <geert+renesas@glider.be>
12
13 description:
14 The OSTM is a multi-channel 32-bit timer/counter with fixed clock source that
15 can operate in either interval count down timer or free-running compare match
16 mode.
17
18 Channels are independent from each other.
19
20 properties:
21 compatible:
22 items:
23 - enum:
24 - renesas,r7s72100-ostm # RZ/A1H
25 - renesas,r7s9210-ostm # RZ/A2M
26 - renesas,r9a07g043-ostm # RZ/G2UL and RZ/Five
27 - renesas,r9a07g044-ostm # RZ/G2{L,LC}
28 - renesas,r9a07g054-ostm # RZ/V2L
29 - renesas,r9a09g056-ostm # RZ/V2N
30 - renesas,r9a09g057-ostm # RZ/V2H(P)
31 - const: renesas,ostm # Generic
32
33 reg:
34 maxItems: 1
35
36 interrupts:
37 maxItems: 1
38
39 clocks:
40 maxItems: 1
41
42 power-domains:
43 maxItems: 1
44
45 resets:
46 maxItems: 1
47
48 required:
49 - compatible
50 - reg
51 - interrupts
52 - clocks
53 - power-domains
54
55 if:
56 properties:
57 compatible:
58 not:
59 contains:
60 enum:
61 - renesas,r7s72100-ostm
62 - renesas,r7s9210-ostm
63 then:
64 required:
65 - resets
66
67 additionalProperties: false
68
69 examples:
70 - |
71 #include <dt-bindings/clock/r7s72100-clock.h>
72 #include <dt-bindings/interrupt-controller/arm-gic.h>
73 ostm0: timer@fcfec000 {
74 compatible = "renesas,r7s72100-ostm", "renesas,ostm";
75 reg = <0xfcfec000 0x30>;
76 interrupts = <GIC_SPI 102 IRQ_TYPE_EDGE_RISING>;
77 clocks = <&mstp5_clks R7S72100_CLK_OSTM0>;
78 power-domains = <&cpg_clocks>;
79 };
80

3. 한국어 전문 번역

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

Renesas OS Timer

1-19

GPL-2.0-only 또는 BSD-2-Clause 라이선스의 이 스키마는 Renesas OS Timer(OSTM)를 정의합니다. OSTM은 fixed clock source를 사용하며 interval count-down timer 또는 free-running compare match mode로 동작할 수 있는 multi-channel 32-bit timer/counter입니다. Channel은 서로 독립적입니다. Maintainer는 Chris Brandt와 Geert Uytterhoeven입니다.

RZ 계열 compatible과 resource

20-54

RZ/A1H, RZ/A2M, RZ/G2UL, RZ/Five, RZ/G2L·LC, RZ/V2L·V2N·V2H(P)는 SoC별 OSTM compatible 뒤에 generic `renesas,ostm` fallback을 둡니다. `reg`, `interrupts`, `clocks`, `power-domains`, 선택적인 `resets`는 각각 최대 한 항목입니다. `compatible`, `reg`, `interrupts`, `clocks`, `power-domains`가 공통 필수 속성입니다.

properties:
  compatible:
    items:
      - enum:
          - renesas,r7s72100-ostm  # RZ/A1H
          - renesas,r7s9210-ostm   # RZ/A2M
          - renesas,r9a07g043-ostm # RZ/G2UL and RZ/Five
          - renesas,r9a07g044-ostm # RZ/G2{L,LC}
          - renesas,r9a07g054-ostm # RZ/V2L
          - renesas,r9a09g056-ostm # RZ/V2N
          - renesas,r9a09g057-ostm # RZ/V2H(P)
      - const: renesas,ostm        # Generic

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  power-domains:
    maxItems: 1

  resets:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - power-domains

구형 SoC의 reset 예외

55-68

Compatible 목록에 `renesas,r7s72100-ostm` 또는 `renesas,r7s9210-ostm`이 들어 있지 않은 모든 OSTM node에는 `resets`가 추가로 필수입니다. 추가 속성은 허용되지 않습니다.

if:
  properties:
    compatible:
      not:
        contains:
          enum:
            - renesas,r7s72100-ostm
            - renesas,r7s9210-ostm
then:
  required:
    - resets

additionalProperties: false

RZ/A1H OSTM0 예제

69-79

예제는 `timer@fcfec000`에 0x30-byte register 영역과 GIC SPI 102 rising-edge interrupt를 지정합니다. `mstp5_clks`의 `R7S72100_CLK_OSTM0` clock과 `cpg_clocks` power domain을 연결합니다. RZ/A1H는 앞의 예외에 해당하므로 reset 속성이 없습니다.

examples:
  - |
    #include <dt-bindings/clock/r7s72100-clock.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    ostm0: timer@fcfec000 {
        compatible = "renesas,r7s72100-ostm", "renesas,ostm";
        reg = <0xfcfec000 0x30>;
        interrupts = <GIC_SPI 102 IRQ_TYPE_EDGE_RISING>;
        clocks = <&mstp5_clks R7S72100_CLK_OSTM0>;
        power-domains = <&cpg_clocks>;
    };