요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/timer/nxp,s32g2-stm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP System Timer Module (STM)
maintainers:
- Daniel Lezcano <[email protected]>
description:
The System Timer Module supports commonly required system and application
software timing functions. STM includes a 32-bit count-up timer and four
32-bit compare channels with a separate interrupt source for each channel.
The timer is driven by the STM module clock divided by an 8-bit prescale
value.
properties:
compatible:
oneOf:
- const: nxp,s32g2-stm
- items:
- const: nxp,s32g3-stm
- const: nxp,s32g2-stm
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
items:
- description: Counter clock
- description: Module clock
- description: Register clock
clock-names:
items:
- const: counter
- const: module
- const: register
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
timer@4011c000 {
compatible = "nxp,s32g2-stm";
reg = <0x4011c000 0x3000>;
interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>;
clock-names = "counter", "module", "register";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
NXP System Timer Module
1-18GPL-2.0-only 또는 BSD-2-Clause 라이선스의 이 스키마는 system·application software timing 기능을 제공하는 NXP System Timer Module(STM)을 정의합니다. STM은 32-bit count-up timer와 각각 별도 interrupt source를 가진 32-bit compare channel 네 개를 포함합니다. Timer는 STM module clock을 8-bit prescale 값으로 나눈 clock으로 구동됩니다. Maintainer는 Daniel Lezcano입니다.
S32G3 fallback과 세 clock
19-53S32G2는 `nxp,s32g2-stm`을 단독 사용하고 S32G3는 `nxp,s32g3-stm` 뒤에 S32G2 fallback을 둡니다. `reg`와 `interrupts`는 각각 최대 한 항목입니다. `clocks`는 counter, module, register clock 세 개이고 `clock-names`도 같은 순서입니다. `compatible`, `reg`, `interrupts`, `clocks`, `clock-names`가 필수이며 추가 속성은 허용되지 않습니다.
properties:
compatible:
oneOf:
- const: nxp,s32g2-stm
- items:
- const: nxp,s32g3-stm
- const: nxp,s32g2-stm
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
items:
- description: Counter clock
- description: Module clock
- description: Register clock
clock-names:
items:
- const: counter
- const: module
- const: register
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
additionalProperties: false
S32G2 STM 예제
54-64예제는 `timer@4011c000`에 0x3000-byte register 영역, GIC SPI 24 level-high interrupt를 지정합니다. Clock index 0x3b를 `counter`, index 0x3c 두 참조를 각각 `module`, `register`로 연결합니다.
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
timer@4011c000 {
compatible = "nxp,s32g2-stm";
reg = <0x4011c000 0x3000>;
interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>;
clock-names = "counter", "module", "register";
};
요약과 해설
nxp,s32g2-stm.yaml:1-64S32G2·S32G3 STM의 count-up timer와 세 clock을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며 compatible, interrupt, clock, register, phandle, 수치와 줄 좌표를 원형대로 보존합니다.