요약·해설과 원문, 전문 번역을 서로 분리했습니다. 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/everest,es8316.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Everest ES8311, ES8316 and ES8323 audio CODECs
maintainers:
- Daniel Drake <[email protected]>
- Katsuhiro Suzuki <[email protected]>
- Matteo Martelli <[email protected]>
- Binbin Zhou <[email protected]>
description: |
Everest ES8311, ES8316 and ES8323 audio CODECs
Pins on the device (for linking into audio routes):
Outputs:
* LOUT: Left Analog Output
* ROUT: Right Analog Output
* MICBIAS: Microphone Bias
Inputs:
* MIC1P: Microphone 1 Positive Analog Input
* MIC1N: Microphone 1 Negative Analog Input
* MIC2P: Microphone 2 Positive Analog Input
* MIC2N: Microphone 2 Negative Analog Input
allOf:
- $ref: dai-common.yaml#
properties:
compatible:
enum:
- everest,es8311
- everest,es8316
- everest,es8323
reg:
maxItems: 1
clocks:
items:
- description: clock for master clock (MCLK)
clock-names:
items:
- const: mclk
port:
$ref: audio-graph-port.yaml#
unevaluatedProperties: false
"#sound-dai-cells":
const: 0
required:
- compatible
- reg
- "#sound-dai-cells"
unevaluatedProperties: false
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
es8316: codec@11 {
compatible = "everest,es8316";
reg = <0x11>;
clocks = <&clks 10>;
clock-names = "mclk";
#sound-dai-cells = <0>;
};
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
ES8311/ES8316/ES8323 schema
1-14이 YAML binding은 Everest ES8311, ES8316, ES8323 audio codec을 정의하며 GPL-2.0-only 또는 BSD-2-Clause로 배포됩니다. Schema ID는 `http://devicetree.org/schemas/sound/everest,es8316.yaml#`이고 네 maintainer가 기재되어 있습니다.
Audio route pin
15-30Audio route에 연결할 output pin은 left analog output `LOUT`, right analog output `ROUT`, microphone bias `MICBIAS`입니다.
Input pin은 microphone 1의 positive/negative analog input `MIC1P`, `MIC1N`과 microphone 2의 `MIC2P`, `MIC2N`입니다.
Compatible, MCLK와 graph port
31-58`dai-common.yaml#`을 상속하며 `compatible`은 `everest,es8311`, `everest,es8316`, `everest,es8323` 중 하나입니다. `reg`는 최대 한 항목입니다.
`clocks`는 master clock(MCLK) 한 항목이고 `clock-names`는 `mclk`입니다. `port`는 `audio-graph-port.yaml#`을 참조하며 정의되지 않은 속성을 허용하지 않습니다. `#sound-dai-cells`는 0입니다.
필수 속성과 확장 제한
59-65필수 속성은 `compatible`, `reg`, `#sound-dai-cells`입니다. `unevaluatedProperties: false`이므로 이 schema와 참조 schema에서 평가하지 않은 속성은 허용하지 않습니다.
ES8316 I2C 예제
66-78예제는 I2C address `0x11`의 ES8316에 clock 10을 `mclk`로 연결하고 DAI cell 수를 0으로 설정합니다.
i2c {
#address-cells = <1>;
#size-cells = <0>;
es8316: codec@11 {
compatible = "everest,es8316";
reg = <0x11>;
clocks = <&clks 10>;
clock-names = "mclk";
#sound-dai-cells = <0>;
};
};
요약과 해설
everest,es8316.yaml:1-78Everest audio codec의 route pin, clock, 전원과 jack interrupt 조건을 먼저 해설하고, 접을 수 있는 영어 원문 전체와 원문 줄 좌표를 보존한 한국어 전문 번역을 제공합니다.