요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/watchdog/fsl-imx-wdt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale i.MX Watchdog Timer (WDT) Controller
maintainers:
- Shawn Guo <shawnguo@kernel.org>
- Sascha Hauer <s.hauer@pengutronix.de>
- Fabio Estevam <festevam@gmail.com>
properties:
compatible:
oneOf:
- const: fsl,imx21-wdt
- items:
- enum:
- fsl,imx25-wdt
- fsl,imx27-wdt
- fsl,imx31-wdt
- fsl,imx35-wdt
- fsl,imx50-wdt
- fsl,imx51-wdt
- fsl,imx53-wdt
- fsl,imx6q-wdt
- fsl,imx6sl-wdt
- fsl,imx6sll-wdt
- fsl,imx6sx-wdt
- fsl,imx6ul-wdt
- fsl,imx7d-wdt
- fsl,imx8mm-wdt
- fsl,imx8mn-wdt
- fsl,imx8mp-wdt
- fsl,imx8mq-wdt
- fsl,ls1012a-wdt
- fsl,ls1021a-wdt
- fsl,ls1043a-wdt
- fsl,ls1046a-wdt
- fsl,vf610-wdt
- const: fsl,imx21-wdt
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 1
big-endian: true
fsl,ext-reset-output:
$ref: /schemas/types.yaml#/definitions/flag
description: |
If present, the watchdog device is configured to assert its
external reset (WDOG_B) instead of issuing a software reset.
fsl,suspend-in-wait:
$ref: /schemas/types.yaml#/definitions/flag
description: |
If present, the watchdog device is suspended in WAIT mode
(Suspend-to-Idle). Only supported on certain devices.
required:
- compatible
- interrupts
- reg
allOf:
- $ref: watchdog.yaml#
- if:
not:
properties:
compatible:
contains:
enum:
- fsl,imx25-wdt
- fsl,imx35-wdt
- fsl,imx50-wdt
- fsl,imx51-wdt
- fsl,imx53-wdt
- fsl,imx6q-wdt
- fsl,imx6sl-wdt
- fsl,imx6sll-wdt
- fsl,imx6sx-wdt
- fsl,imx6ul-wdt
- fsl,imx7d-wdt
- fsl,imx8mm-wdt
- fsl,imx8mn-wdt
- fsl,imx8mp-wdt
- fsl,imx8mq-wdt
- fsl,vf610-wdt
then:
properties:
fsl,suspend-in-wait: false
- if:
not:
properties:
compatible:
contains:
enum:
- fsl,ls1012a-wdt
- fsl,ls1021a-wdt
- fsl,ls1043a-wdt
- fsl,ls1046a-wdt
then:
properties:
big-endian: false
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/imx6qdl-clock.h>
watchdog@20bc000 {
compatible = "fsl,imx21-wdt";
reg = <0x020bc000 0x4000>;
interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6QDL_CLK_IPG>;
};
...
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Freescale i.MX 워치독
1-13GPL-2.0 또는 BSD-2-Clause로 배포되는 이 스키마는 Freescale i.MX 계열 워치독 타이머 컨트롤러를 정의합니다. 관리자는 Shawn Guo, Sascha Hauer, Fabio Estevam입니다.
i.MX21 fallback 호환 목록
14-43i.MX21은 `fsl,imx21-wdt`를 직접 사용합니다. i.MX25·27·31·35·50·51·53, i.MX6Q·6SL·6SLL·6SX·6UL, i.MX7D, i.MX8MM·8MN·8MP·8MQ, Layerscape LS1012A·LS1021A·LS1043A·LS1046A, Vybrid VF610은 각각의 SoC 문자열 뒤에 `fsl,imx21-wdt` fallback을 둡니다.
properties:
compatible:
oneOf:
- const: fsl,imx21-wdt
- items:
- enum:
- fsl,imx25-wdt
- fsl,imx27-wdt
- fsl,imx31-wdt
- fsl,imx35-wdt
- fsl,imx50-wdt
- fsl,imx51-wdt
- fsl,imx53-wdt
- fsl,imx6q-wdt
- fsl,imx6sl-wdt
- fsl,imx6sll-wdt
- fsl,imx6sx-wdt
- fsl,imx6ul-wdt
- fsl,imx7d-wdt
- fsl,imx8mm-wdt
- fsl,imx8mn-wdt
- fsl,imx8mp-wdt
- fsl,imx8mq-wdt
- fsl,ls1012a-wdt
- fsl,ls1021a-wdt
- fsl,ls1043a-wdt
- fsl,ls1046a-wdt
- fsl,vf610-wdt
- const: fsl,imx21-wdt
외부 reset과 WAIT mode suspend
44-71`reg`, `interrupts`, `clocks`는 각각 최대 하나이며 `big-endian`을 지원합니다. `fsl,ext-reset-output`을 지정하면 software reset 대신 외부 reset 신호 `WDOG_B`를 assert하도록 워치독을 구성합니다.
`fsl,suspend-in-wait`를 지정하면 WAIT mode, 즉 Suspend-to-Idle에서 워치독을 suspend합니다. 일부 장치에서만 지원됩니다. `compatible`, `interrupts`, `reg`가 필수입니다.
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 1
big-endian: true
fsl,ext-reset-output:
$ref: /schemas/types.yaml#/definitions/flag
description: |
If present, the watchdog device is configured to assert its
external reset (WDOG_B) instead of issuing a software reset.
fsl,suspend-in-wait:
$ref: /schemas/types.yaml#/definitions/flag
description: |
If present, the watchdog device is suspended in WAIT mode
(Suspend-to-Idle). Only supported on certain devices.
required:
- compatible
- interrupts
- reg
WAIT 지원 기종과 Layerscape endianness
72-115공통 `watchdog.yaml`을 상속합니다. `fsl,suspend-in-wait`는 i.MX25·35·50·51·53, i.MX6Q·6SL·6SLL·6SX·6UL, i.MX7D, i.MX8MM·8MN·8MP·8MQ, VF610에서만 허용되며 그 밖의 compatible에서는 false로 제한합니다.
`big-endian`은 Layerscape LS1012A, LS1021A, LS1043A, LS1046A에서만 허용되고 다른 compatible에서는 false입니다. 평가되지 않은 추가 속성은 허용하지 않습니다.
allOf:
- $ref: watchdog.yaml#
- if:
not:
properties:
compatible:
contains:
enum:
- fsl,imx25-wdt
- fsl,imx35-wdt
- fsl,imx50-wdt
- fsl,imx51-wdt
- fsl,imx53-wdt
- fsl,imx6q-wdt
- fsl,imx6sl-wdt
- fsl,imx6sll-wdt
- fsl,imx6sx-wdt
- fsl,imx6ul-wdt
- fsl,imx7d-wdt
- fsl,imx8mm-wdt
- fsl,imx8mn-wdt
- fsl,imx8mp-wdt
- fsl,imx8mq-wdt
- fsl,vf610-wdt
then:
properties:
fsl,suspend-in-wait: false
- if:
not:
properties:
compatible:
contains:
enum:
- fsl,ls1012a-wdt
- fsl,ls1021a-wdt
- fsl,ls1043a-wdt
- fsl,ls1046a-wdt
then:
properties:
big-endian: false
unevaluatedProperties: false
i.MX 워치독 IPG 클록 예제
116-128예제는 주소 `0x020bc000`의 i.MX21 호환 워치독에 level-high interrupt 80과 `IMX6QDL_CLK_IPG` 클록을 연결합니다.
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/imx6qdl-clock.h>
watchdog@20bc000 {
compatible = "fsl,imx21-wdt";
reg = <0x020bc000 0x4000>;
interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6QDL_CLK_IPG>;
};
...
요약과 해설
fsl-imx-wdt.yaml:1-128i.MX·Layerscape·Vybrid 호환성과 WAIT suspend·big-endian 조건을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, reset, 예제와 원문 줄 좌표를 원형대로 보존합니다.