요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/snps,arc-timer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Synopsys ARC Local Timer
maintainers:
- Vineet Gupta <[email protected]>
description: >
Synopsys ARC Local Timer with Interrupt Capabilities
- Found on all ARC CPUs (ARC700/ARCHS)
- Can be optionally programmed to interrupt on Limit
- Two identical copies TIMER0 and TIMER1 exist in ARC cores and historically
TIMER0 used as clockevent provider (true for all ARC cores)
TIMER1 used for clocksource (mandatory for ARC700, optional for ARC HS)
properties:
compatible:
const: snps,arc-timer
interrupts:
maxItems: 1
description: A single timer interrupt going into the parent interrupt controller.
Use <16> for ARCHS cores, <3> for ARC700 cores.
clocks:
maxItems: 1
required:
- compatible
- clocks
additionalProperties: false
examples:
- |
timer0 {
compatible = "snps,arc-timer";
interrupts = <3>;
clocks = <&core_clk>;
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Synopsys ARC Local Timer
1-20GPL-2.0-only 또는 BSD-2-Clause 라이선스의 이 스키마는 interrupt 기능이 있는 Synopsys ARC Local Timer를 정의합니다. 이 timer는 모든 ARC CPU(ARC700/ARC HS)에 존재하며, limit에 도달했을 때 interrupt를 발생시키도록 선택적으로 programming할 수 있습니다.
ARC core에는 동일한 TIMER0와 TIMER1 두 개가 있습니다. 역사적으로 TIMER0는 모든 ARC core에서 clockevent provider로 사용했고, TIMER1은 clocksource로 사용했습니다. TIMER1은 ARC700에서는 필수이고 ARC HS에서는 선택 사항입니다. Maintainer는 Vineet Gupta입니다.
ARC700·ARC HS interrupt 번호
21-37`compatible`은 `snps,arc-timer`입니다. `interrupts`는 parent interrupt controller로 들어가는 timer interrupt 한 개를 지정합니다. ARC HS core에서는 `<16>`, ARC700 core에서는 `<3>`을 사용합니다. `clocks`도 최대 한 항목입니다. `compatible`과 `clocks`는 필수이지만 `interrupts`는 선택 사항이며, 추가 속성은 허용하지 않습니다.
properties:
compatible:
const: snps,arc-timer
interrupts:
maxItems: 1
description: A single timer interrupt going into the parent interrupt controller.
Use <16> for ARCHS cores, <3> for ARC700 cores.
clocks:
maxItems: 1
required:
- compatible
- clocks
additionalProperties: false
ARC700 TIMER0 예제
38-45예제 `timer0` node는 `snps,arc-timer` compatible, ARC700용 interrupt 3, `core_clk` clock을 지정합니다.
examples:
- |
timer0 {
compatible = "snps,arc-timer";
interrupts = <3>;
clocks = <&core_clk>;
};
요약과 해설
snps,arc-timer.yaml:1-45ARC local TIMER0·TIMER1의 clockevent·clocksource 역할을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며 compatible, interrupt, clock, register, phandle, 수치와 줄 좌표를 원형대로 보존합니다.