요약·해설과 원문, 전문 번역을 서로 분리했습니다. 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/sound/fsl,micfil.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP MICFIL Digital Audio Interface (MICFIL)
maintainers:
- Shengjiu Wang <[email protected]>
description: |
The MICFIL digital interface provides a 16-bit or 24-bit audio signal
from a PDM microphone bitstream in a configurable output sampling rate.
properties:
compatible:
oneOf:
- items:
- enum:
- fsl,imx95-micfil
- const: fsl,imx93-micfil
- enum:
- fsl,imx8mm-micfil
- fsl,imx8mp-micfil
- fsl,imx93-micfil
- fsl,imx943-micfil
reg:
maxItems: 1
interrupts:
items:
- description: Digital Microphone interface interrupt
- description: Digital Microphone interface error interrupt
- description: voice activity detector event interrupt
- description: voice activity detector error interrupt
dmas:
items:
- description: DMA controller phandle and request line for RX
dma-names:
items:
- const: rx
clocks:
items:
- description: The ipg clock for register access
- description: internal micfil clock
- description: PLL clock source for 8kHz series
- description: PLL clock source for 11kHz series
- description: External clock 3
minItems: 2
clock-names:
items:
- const: ipg_clk
- const: ipg_clk_app
- const: pll8k
- const: pll11k
- const: clkext3
minItems: 2
"#sound-dai-cells":
const: 0
required:
- compatible
- reg
- interrupts
- dmas
- dma-names
- clocks
- clock-names
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/imx8mm-clock.h>
micfil: audio-controller@30080000 {
compatible = "fsl,imx8mm-micfil";
reg = <0x30080000 0x10000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MM_CLK_PDM_IPG>,
<&clk IMX8MM_CLK_PDM_ROOT>;
clock-names = "ipg_clk", "ipg_clk_app";
dmas = <&sdma2 24 25 0>;
dma-names = "rx";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
NXP MICFIL digital audio interface
1-15이 YAML binding은 NXP MICFIL Digital Audio Interface를 정의합니다. MICFIL은 PDM microphone bitstream에서 구성 가능한 출력 sampling rate의 16-bit 또는 24-bit audio signal을 생성합니다. Schema ID는 `http://devicetree.org/schemas/sound/fsl,micfil.yaml#`이며 maintainer는 Shengjiu Wang입니다.
SoC 호환성과 네 interrupt
16-39`compatible`은 `fsl,imx95-micfil` 뒤에 fallback `fsl,imx93-micfil`을 두는 배열이거나 `fsl,imx8mm-micfil`, `fsl,imx8mp-micfil`, `fsl,imx93-micfil`, `fsl,imx943-micfil` 중 하나입니다. `reg`는 최대 한 항목입니다.
`interrupts`의 네 항목은 순서대로 Digital Microphone interface interrupt, interface error interrupt, voice activity detector event interrupt, voice activity detector error interrupt입니다.
RX DMA와 MICFIL clock 집합
40-68`dmas`는 RX용 DMA controller phandle과 request line 한 항목이고 `dma-names`는 `rx`입니다.
`clocks`는 최소 2개이며 register 접근용 IPG clock, internal MICFIL clock, 8 kHz 계열 PLL source, 11 kHz 계열 PLL source, external clock 3 순으로 최대 5개입니다. 대응하는 `clock-names`는 `ipg_clk`, `ipg_clk_app`, `pll8k`, `pll11k`, `clkext3`이며 최소 앞의 두 이름이 필요합니다. `#sound-dai-cells`는 0입니다.
필수 속성과 추가 속성 제한
69-79필수 속성은 `compatible`, `reg`, `interrupts`, `dmas`, `dma-names`, `clocks`, `clock-names`입니다. `additionalProperties: false`이므로 정의되지 않은 속성은 허용하지 않습니다.
i.MX8MM MICFIL 예제
80-96예제는 `0x30080000`의 MICFIL controller에 interface와 VAD용 interrupt 4개, PDM IPG/root clock, SDMA2 RX request 24를 연결합니다.
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/imx8mm-clock.h>
micfil: audio-controller@30080000 {
compatible = "fsl,imx8mm-micfil";
reg = <0x30080000 0x10000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MM_CLK_PDM_IPG>,
<&clk IMX8MM_CLK_PDM_ROOT>;
clock-names = "ipg_clk", "ipg_clk_app";
dmas = <&sdma2 24 25 0>;
dma-names = "rx";
};
요약과 해설
fsl,micfil.yaml:1-96NXP/Freescale digital microphone, GPIO audio, SGTL5000 machine card와 QMC multichannel audio의 핵심 signal path와 조건부 속성을 먼저 해설하고, 접을 수 있는 영어 원문 전체와 줄 좌표를 보존한 한국어 전문 번역을 제공합니다.