← Documents Documentation/devicetree/bindings/watchdog/fsl-imx7ulp-wdt.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / Watchdog

Freescale i.MX7ULP Watchdog Timer

i.MX7ULP·8ULP·93·94 fallback, 외부 reset과 WDG1 클록을 설명합니다.

Source pathDocumentation/devicetree/bindings/watchdog/fsl-imx7ulp-wdt.yaml
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

fsl-imx7ulp-wdt.yaml:1-67

i.MX7ULP·8ULP·93·94 fallback, 외부 reset과 WDG1 클록을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, reset, 예제와 원문 줄 좌표를 원형대로 보존합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/watchdog/fsl-imx7ulp-wdt.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Freescale i.MX7ULP Watchdog Timer (WDT) Controller
8
9 maintainers:
10 - Shawn Guo <shawnguo@kernel.org>
11 - Sascha Hauer <s.hauer@pengutronix.de>
12 - Fabio Estevam <festevam@gmail.com>
13
14 allOf:
15 - $ref: watchdog.yaml#
16
17 properties:
18 compatible:
19 oneOf:
20 - const: fsl,imx7ulp-wdt
21 - items:
22 - const: fsl,imx8ulp-wdt
23 - const: fsl,imx7ulp-wdt
24 - const: fsl,imx93-wdt
25 - items:
26 - enum:
27 - fsl,imx94-wdt
28 - const: fsl,imx93-wdt
29
30 reg:
31 maxItems: 1
32
33 interrupts:
34 maxItems: 1
35
36 clocks:
37 maxItems: 1
38
39 fsl,ext-reset-output:
40 description:
41 When set, wdog can generate external reset from the wdog_any pin.
42 type: boolean
43
44 required:
45 - compatible
46 - interrupts
47 - reg
48 - clocks
49
50 unevaluatedProperties: false
51
52 examples:
53 - |
54 #include <dt-bindings/interrupt-controller/arm-gic.h>
55 #include <dt-bindings/clock/imx7ulp-clock.h>
56
57 watchdog@403d0000 {
58 compatible = "fsl,imx7ulp-wdt";
59 reg = <0x403d0000 0x10000>;
60 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
61 clocks = <&pcc2 IMX7ULP_CLK_WDG1>;
62 assigned-clocks = <&pcc2 IMX7ULP_CLK_WDG1>;
63 assigned-clock-parents = <&scg1 IMX7ULP_CLK_FIRC_BUS_CLK>;
64 timeout-sec = <40>;
65 };
66
67 ...
68

3. 한국어 전문 번역

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

Freescale i.MX7ULP 워치독

1-13

GPL-2.0 또는 BSD-2-Clause로 배포되는 이 스키마는 Freescale i.MX7ULP 계열 워치독 타이머 컨트롤러를 정의합니다. 관리자는 Shawn Guo, Sascha Hauer, Fabio Estevam입니다.

i.MX7ULP·8ULP·93·94 호환성과 외부 reset

14-51

공통 `watchdog.yaml`을 상속합니다. i.MX7ULP와 i.MX93은 각각 `fsl,imx7ulp-wdt`, `fsl,imx93-wdt`를 직접 사용합니다. i.MX8ULP는 `fsl,imx8ulp-wdt` 뒤에 i.MX7ULP fallback을, i.MX94는 `fsl,imx94-wdt` 뒤에 i.MX93 fallback을 둡니다.

`reg`, `interrupts`, `clocks`는 각각 최대 하나입니다. boolean `fsl,ext-reset-output`을 지정하면 워치독이 `wdog_any` pin을 통해 external reset을 생성할 수 있습니다. `compatible`, `interrupts`, `reg`, `clocks`가 모두 필수이며 평가되지 않은 추가 속성은 허용하지 않습니다.

allOf:
  - $ref: watchdog.yaml#

properties:
  compatible:
    oneOf:
      - const: fsl,imx7ulp-wdt
      - items:
          - const: fsl,imx8ulp-wdt
          - const: fsl,imx7ulp-wdt
      - const: fsl,imx93-wdt
      - items:
          - enum:
              - fsl,imx94-wdt
          - const: fsl,imx93-wdt

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  fsl,ext-reset-output:
    description:
      When set, wdog can generate external reset from the wdog_any pin.
    type: boolean

required:
  - compatible
  - interrupts
  - reg
  - clocks

unevaluatedProperties: false

i.MX7ULP WDG1 클록 예제

52-67

예제는 주소 `0x403d0000`의 i.MX7ULP 워치독에 level-high GIC SPI interrupt 55와 `IMX7ULP_CLK_WDG1`을 연결합니다. 해당 클록의 parent를 `IMX7ULP_CLK_FIRC_BUS_CLK`로 지정하고 timeout을 40초로 설정합니다.

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/imx7ulp-clock.h>

    watchdog@403d0000 {
        compatible = "fsl,imx7ulp-wdt";
        reg = <0x403d0000 0x10000>;
        interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&pcc2 IMX7ULP_CLK_WDG1>;
        assigned-clocks = <&pcc2 IMX7ULP_CLK_WDG1>;
        assigned-clock-parents = <&scg1 IMX7ULP_CLK_FIRC_BUS_CLK>;
        timeout-sec = <40>;
    };

...