요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
* mvebu (Kirkwood, Dove, Armada 370) audio controller
Required properties:
- compatible:
"marvell,kirkwood-audio" for Kirkwood platforms
"marvell,dove-audio" for Dove platforms
"marvell,armada370-audio" for Armada 370 platforms
"marvell,armada-380-audio" for Armada 38x platforms
- reg: physical base address of the controller and length of memory mapped
region (named "i2s_regs").
With "marvell,armada-380-audio" two other regions are required:
first of those is dedicated for Audio PLL Configuration registers
(named "pll_regs") and the second one ("soc_ctrl") - for register
where one of exceptive I/O types (I2S or S/PDIF) is set.
- interrupts:
with "marvell,kirkwood-audio", the audio interrupt
with "marvell,dove-audio", a list of two interrupts, the first for
the data flow, and the second for errors.
- clocks: one or two phandles.
The first one is mandatory and defines the internal clock.
The second one is optional and defines an external clock.
- clock-names: names associated to the clocks:
"internal" for the internal clock
"extclk" for the external clock
Optional properties:
- spdif-mode:
Enable S/PDIF mode on Armada 38x SoC. Using this property
disables standard I2S I/O. Valid only with "marvell,armada-380-audio"
compatible string.
Example:
i2s1: audio-controller@b4000 {
compatible = "marvell,dove-audio";
reg = <0xb4000 0x2210>;
interrupts = <21>, <22>;
clocks = <&gate_clk 13>;
clock-names = "internal";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
MVEBU audio controller 필수 속성
1-30MVEBU audio controller는 Kirkwood의 `marvell,kirkwood-audio`, Dove의 `marvell,dove-audio`, Armada 370의 `marvell,armada370-audio`, Armada 38x의 `marvell,armada-380-audio` compatible을 사용합니다.
`reg`의 기본 region `i2s_regs`는 controller physical base와 memory-mapped 길이입니다. Armada 38x에는 Audio PLL configuration용 `pll_regs`와 I2S 또는 S/PDIF I/O type 선택 register용 `soc_ctrl` region도 필요합니다.
Kirkwood는 audio interrupt 하나를, Dove는 data-flow interrupt와 error interrupt 두 개를 지정합니다. `clocks`의 첫 phandle은 필수 internal clock이고 둘째는 선택 external clock이며 `clock-names`는 각각 `internal`, `extclk`입니다.
Armada 38x S/PDIF mode
31-37선택 `spdif-mode`는 Armada 38x SoC에서 S/PDIF mode를 활성화하고 표준 I2S I/O를 비활성화합니다. 이 속성은 `marvell,armada-380-audio` compatible에서만 유효합니다.
Dove audio controller 예제
38-46예제는 `0xb4000`의 Dove controller에 data-flow·error interrupt 21·22와 internal gate clock 13을 연결합니다.
i2s1: audio-controller@b4000 {
compatible = "marvell,dove-audio";
reg = <0xb4000 0x2210>;
interrupts = <21>, <22>;
clocks = <&gate_clk 13>;
clock-names = "internal";
};
요약과 해설
mvebu-audio.txt:1-46Kirkwood·Dove·Armada audio controller의 register, interrupt, clock과 S/PDIF mode를 설명합니다. 아래의 접을 수 있는 영어 원문은 source path와 줄 배치를 그대로 보존하고, 한국어 전문 번역은 property·phandle·symbol과 예제 코드를 원형으로 유지합니다.