← Documents Documentation/devicetree/bindings/watchdog/alphascale,asm9260-wdt.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / Watchdog

Alphascale ASM9260 Watchdog

ASM9260 워치독의 두 클록, reset 자원과 hw·sw·debug 모드를 설명합니다.

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

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

1. 요약·해설

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

요약과 해설

alphascale,asm9260-wdt.yaml:1-70

ASM9260 워치독의 두 클록, reset 자원과 hw·sw·debug 모드를 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, reset, 예제와 원문 줄 좌표를 원형대로 보존합니다.

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/watchdog/alphascale,asm9260-wdt.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Alphascale asm9260 Watchdog timer
8
9 maintainers:
10 - Oleksij Rempel <linux@rempel-privat.de>
11
12 allOf:
13 - $ref: watchdog.yaml#
14
15 properties:
16 compatible:
17 const: alphascale,asm9260-wdt
18
19 reg:
20 maxItems: 1
21
22 clocks:
23 items:
24 - description: source clock, used for tick counter
25 - description: ahb gate
26
27 clock-names:
28 items:
29 - const: mod
30 - const: ahb
31
32 interrupts:
33 maxItems: 1
34
35 resets:
36 maxItems: 1
37
38 reset-names:
39 items:
40 - const: wdt_rst
41
42 alphascale,mode:
43 description: |
44 Specifies the reset mode of operation. If set to sw, then reset is handled
45 via interrupt request, if set to debug, then it does nothing and logs.
46 $ref: /schemas/types.yaml#/definitions/string
47 enum: [hw, sw, debug]
48 default: hw
49
50 required:
51 - compatible
52 - reg
53 - clocks
54 - clock-names
55 - interrupts
56
57 unevaluatedProperties: false
58
59 examples:
60 - |
61 #include <dt-bindings/clock/alphascale,asm9260.h>
62 watchdog0: watchdog@80048000 {
63 compatible = "alphascale,asm9260-wdt";
64 reg = <0x80048000 0x10>;
65 clocks = <&acc CLKID_SYS_WDT>, <&acc CLKID_AHB_WDT>;
66 clock-names = "mod", "ahb";
67 interrupts = <55>;
68 timeout-sec = <30>;
69 alphascale,mode = "hw";
70 };
71

3. 한국어 전문 번역

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

Alphascale ASM9260 워치독

1-11

GPL-2.0-only 또는 BSD-2-Clause로 배포되는 이 스키마는 Alphascale ASM9260 워치독 타이머를 정의합니다. 관리자는 Oleksij Rempel입니다.

tick 클록, AHB gate와 reset

12-41

공통 `watchdog.yaml`을 상속하고 `compatible`은 `alphascale,asm9260-wdt`로 고정합니다. `reg`는 하나의 영역을 받습니다. `clocks`에는 tick counter용 source clock과 AHB gate를 이 순서로 제공하고, `clock-names`도 각각 `mod`, `ahb`로 맞춥니다.

`interrupts`와 `resets`는 각각 최대 하나입니다. reset을 제공할 때 `reset-names`의 이름은 `wdt_rst`입니다.

allOf:
  - $ref: watchdog.yaml#

properties:
  compatible:
    const: alphascale,asm9260-wdt

  reg:
    maxItems: 1

  clocks:
    items:
      - description: source clock, used for tick counter
      - description: ahb gate

  clock-names:
    items:
      - const: mod
      - const: ahb

  interrupts:
    maxItems: 1

  resets:
    maxItems: 1

  reset-names:
    items:
      - const: wdt_rst

하드웨어·소프트웨어·디버그 모드

42-58

`alphascale,mode`는 reset 동작 방식을 정하는 문자열입니다. `hw`는 하드웨어 reset을 수행하고 기본값입니다. `sw`는 interrupt request를 통해 reset을 처리하며, `debug`는 reset 동작을 하지 않고 로그만 남깁니다.

`compatible`, `reg`, 두 `clocks`, 두 `clock-names`, `interrupts`는 필수입니다. 정의되지 않은 추가 속성은 허용하지 않습니다.

  alphascale,mode:
    description: |
      Specifies the reset mode of operation. If set to sw, then reset is handled
      via interrupt request, if set to debug, then it does nothing and logs.
    $ref: /schemas/types.yaml#/definitions/string
    enum: [hw, sw, debug]
    default: hw

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - interrupts

unevaluatedProperties: false

ASM9260 하드웨어 모드 예제

59-70

예제는 주소 `0x80048000`의 워치독에 `CLKID_SYS_WDT`와 `CLKID_AHB_WDT`를 연결하고 이름을 `mod`, `ahb`로 지정합니다. interrupt 55, 30초 timeout, `hw` 모드를 사용합니다.

examples:
  - |
    #include <dt-bindings/clock/alphascale,asm9260.h>
    watchdog0: watchdog@80048000 {
      compatible = "alphascale,asm9260-wdt";
      reg = <0x80048000 0x10>;
      clocks = <&acc CLKID_SYS_WDT>, <&acc CLKID_AHB_WDT>;
      clock-names = "mod", "ahb";
      interrupts = <55>;
      timeout-sec = <30>;
      alphascale,mode = "hw";
    };