요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright 2022 Linaro Ltd.
%YAML 1.2
---
$id: http://devicetree.org/schemas/timer/st,nomadik-mtu.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST Microelectronics Nomadik Multi-Timer Unit MTU Timer
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
description: This timer is found in the ST Microelectronics Nomadik
SoCs STn8800, STn8810 and STn8815 as well as in ST-Ericsson DB8500.
properties:
compatible:
items:
- const: st,nomadik-mtu
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
description: The first clock named TIMCLK clocks the actual timers and
the second clock clocks the digital interface to the interconnect.
maxItems: 2
clock-names:
items:
- const: timclk
- const: apb_pclk
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/mfd/dbx500-prcmu.h>
timer@a03c6000 {
compatible = "st,nomadik-mtu";
reg = <0xa03c6000 0x1000>;
interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>;
clock-names = "timclk", "apb_pclk";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Nomadik Multi-Timer Unit
1-15GPL-2.0 또는 BSD-2-Clause 라이선스의 이 스키마는 STMicroelectronics Nomadik Multi-Timer Unit(MTU)을 정의합니다. 이 timer는 Nomadik STn8800·STn8810·STn8815 SoC와 ST-Ericsson DB8500에 존재합니다. 저작권은 2022 Linaro Ltd.에 있고 Maintainer는 Linus Walleij입니다.
TIMCLK와 APB interface clock
16-44`compatible`은 `st,nomadik-mtu`입니다. `reg`와 `interrupts`는 각각 최대 한 항목입니다. `clocks`는 최대 두 항목으로, 첫 clock `TIMCLK`가 실제 timer를 구동하고 둘째 clock이 interconnect에 연결되는 digital interface를 구동합니다. `clock-names`의 순서는 `timclk`, `apb_pclk`입니다. `compatible`, `reg`, `interrupts`, `clocks`, `clock-names`가 모두 필수이며 추가 속성은 허용하지 않습니다.
properties:
compatible:
items:
- const: st,nomadik-mtu
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
description: The first clock named TIMCLK clocks the actual timers and
the second clock clocks the digital interface to the interconnect.
maxItems: 2
clock-names:
items:
- const: timclk
- const: apb_pclk
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
additionalProperties: false
DB8500 MTU 예제
45-58예제 `timer@a03c6000`은 0x1000-byte register 영역과 GIC SPI 4 level-high interrupt를 사용합니다. PRCMU의 `PRCMU_TIMCLK`를 `timclk`으로, PRCC peripheral clock을 `apb_pclk`으로 연결합니다.
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/mfd/dbx500-prcmu.h>
timer@a03c6000 {
compatible = "st,nomadik-mtu";
reg = <0xa03c6000 0x1000>;
interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>;
clock-names = "timclk", "apb_pclk";
};
요약과 해설
st,nomadik-mtu.yaml:1-58Nomadik MTU의 timer·APB clock과 interrupt 구성을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며 compatible, interrupt, clock, register, phandle, 수치와 줄 좌표를 원형대로 보존합니다.