요약·해설과 원문, 전문 번역을 서로 분리했습니다. 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,imx-audio-es8328.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale i.MX audio complex with ES8328 codec
maintainers:
- Shawn Guo <[email protected]>
- Sascha Hauer <[email protected]>
allOf:
- $ref: sound-card-common.yaml#
properties:
compatible:
const: fsl,imx-audio-es8328
model:
$ref: /schemas/types.yaml#/definitions/string
description: The user-visible name of this sound complex
ssi-controller:
$ref: /schemas/types.yaml#/definitions/phandle
description: The phandle of the i.MX SSI controller
jack-gpio:
description: Optional GPIO for headphone jack
maxItems: 1
audio-amp-supply:
description: Power regulator for speaker amps
audio-codec:
$ref: /schemas/types.yaml#/definitions/phandle
description: The phandle to the ES8328 audio codec
audio-routing:
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
description: |
A list of the connections between audio components. Each entry
is a pair of strings, the first being the connection's sink, the second
being the connection's source. Valid names could be power supplies,
ES8328 pins, and the jacks on the board:
Power supplies:
* audio-amp
ES8328 pins:
* LOUT1
* LOUT2
* ROUT1
* ROUT2
* LINPUT1
* LINPUT2
* RINPUT1
* RINPUT2
* Mic PGA
Board connectors:
* Headphone
* Speaker
* Mic Jack
mux-int-port:
$ref: /schemas/types.yaml#/definitions/uint32
description: The internal port of the i.MX audio muxer (AUDMUX)
enum: [1, 2, 7]
default: 1
mux-ext-port:
$ref: /schemas/types.yaml#/definitions/uint32
description: The external port of the i.MX audio muxer (AUDMIX)
enum: [3, 4, 5, 6]
default: 3
required:
- compatible
- model
- ssi-controller
- jack-gpio
- audio-amp-supply
- audio-codec
- audio-routing
- mux-int-port
- mux-ext-port
unevaluatedProperties: false
examples:
- |
sound {
compatible = "fsl,imx-audio-es8328";
model = "imx-audio-es8328";
ssi-controller = <&ssi1>;
audio-codec = <&codec>;
jack-gpio = <&gpio5 15 0>;
audio-amp-supply = <®_audio_amp>;
audio-routing =
"Speaker", "LOUT2",
"Speaker", "ROUT2",
"Speaker", "audio-amp",
"Headphone", "ROUT1",
"Headphone", "LOUT1",
"LINPUT1", "Mic Jack",
"RINPUT1", "Mic Jack",
"Mic Jack", "Mic Bias";
mux-int-port = <1>;
mux-ext-port = <3>;
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
i.MX와 ES8328 sound complex
1-15이 YAML binding은 ES8328 codec을 사용하는 Freescale i.MX audio complex를 정의합니다. Schema ID는 `http://devicetree.org/schemas/sound/fsl,imx-audio-es8328.yaml#`이며 Shawn Guo와 Sascha Hauer가 유지관리합니다. 공통 sound card 규칙인 `sound-card-common.yaml#`을 상속합니다.
Card, SSI, jack과 codec 연결
16-38`compatible`은 `fsl,imx-audio-es8328`로 고정됩니다. `model`은 사용자에게 보이는 sound complex 이름이고 `ssi-controller`는 i.MX SSI controller의 phandle입니다.
`jack-gpio`는 headphone jack을 위한 선택적 GPIO로 최대 한 항목이며, `audio-amp-supply`는 speaker amplifier의 power regulator입니다. `audio-codec`은 ES8328 audio codec을 가리키는 phandle입니다.
Audio routing의 sink와 source
39-65`audio-routing`은 audio component 사이 연결 목록입니다. 각 항목은 두 문자열의 pair이며 첫 문자열은 connection의 sink, 두 번째는 source입니다.
유효한 이름에는 power supply `audio-amp`, ES8328 pin `LOUT1`, `LOUT2`, `ROUT1`, `ROUT2`, `LINPUT1`, `LINPUT2`, `RINPUT1`, `RINPUT2`, `Mic PGA`, 그리고 board connector `Headphone`, `Speaker`, `Mic Jack`이 포함됩니다.
AUDMUX 내부·외부 port
66-77`mux-int-port`는 i.MX audio muxer(AUDMUX)의 internal port이며 1, 2, 7 중 하나이고 기본값은 1입니다. `mux-ext-port`는 external port이며 3, 4, 5, 6 중 하나이고 기본값은 3입니다. 원문의 external port 설명에 적힌 `AUDMIX` 표기는 그대로 보존합니다.
필수 속성과 확장 제한
78-90필수 속성은 `compatible`, `model`, `ssi-controller`, `jack-gpio`, `audio-amp-supply`, `audio-codec`, `audio-routing`, `mux-int-port`, `mux-ext-port`입니다. `unevaluatedProperties: false`이므로 공통 schema까지 평가한 뒤 정의되지 않은 추가 속성을 허용하지 않습니다.
ES8328 machine card 예제
91-111예제 sound node는 SSI1과 codec을 연결하고 GPIO5 pin 15를 jack 감지에 사용합니다. Speaker는 `LOUT2`, `ROUT2`, `audio-amp`에서, Headphone은 `ROUT1`, `LOUT1`에서 신호를 받으며 microphone 입력은 `LINPUT1`과 `RINPUT1`로 route됩니다. AUDMUX port는 내부 1, 외부 3입니다.
sound {
compatible = "fsl,imx-audio-es8328";
model = "imx-audio-es8328";
ssi-controller = <&ssi1>;
audio-codec = <&codec>;
jack-gpio = <&gpio5 15 0>;
audio-amp-supply = <®_audio_amp>;
audio-routing =
"Speaker", "LOUT2",
"Speaker", "ROUT2",
"Speaker", "audio-amp",
"Headphone", "ROUT1",
"Headphone", "LOUT1",
"LINPUT1", "Mic Jack",
"RINPUT1", "Mic Jack",
"Mic Jack", "Mic Bias";
mux-int-port = <1>;
mux-ext-port = <3>;
};
요약과 해설
fsl,imx-audio-es8328.yaml:1-111Freescale/NXP audio sample-rate conversion, board-level codec routing과 CM7 SOF 처리 경로의 핵심 속성을 먼저 해설하고, 접을 수 있는 영어 원문 전체와 원문 줄 좌표를 보존한 한국어 전문 번역을 제공합니다.