요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/fsl,sgtl5000.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale SGTL5000 Stereo Codec
maintainers:
- Fabio Estevam <festevam@gmail.com>
allOf:
- $ref: dai-common.yaml#
properties:
compatible:
const: fsl,sgtl5000
reg:
maxItems: 1
"#sound-dai-cells":
const: 0
assigned-clock-parents: true
assigned-clock-rates: true
assigned-clocks: true
clocks:
items:
- description: the clock provider of SYS_MCLK
VDDA-supply:
description: the regulator provider of VDDA
VDDIO-supply:
description: the regulator provider of VDDIO
VDDD-supply:
description: the regulator provider of VDDD
micbias-resistor-k-ohms:
description: The bias resistor to be used in kOhms. The resistor can take
values of 2k, 4k or 8k. If set to 0 it will be off. If this node is not
mentioned or if the value is unknown, then micbias resistor is set to
4k.
enum: [ 0, 2, 4, 8 ]
micbias-voltage-m-volts:
description: The bias voltage to be used in mVolts. The voltage can take
values from 1.25V to 3V by 250mV steps. If this node is not mentioned
or the value is unknown, then the value is set to 1.25V.
$ref: /schemas/types.yaml#/definitions/uint32
enum: [ 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000 ]
lrclk-strength:
description: |
The LRCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
table below:
VDDIO 1.8V 2.5V 3.3V
0 = Disable
1 = 1.66 mA 2.87 mA 4.02 mA
2 = 3.33 mA 5.74 mA 8.03 mA
3 = 4.99 mA 8.61 mA 12.05 mA
$ref: /schemas/types.yaml#/definitions/uint32
enum: [ 0, 1, 2, 3 ]
sclk-strength:
description: |
The SCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
table below:
VDDIO 1.8V 2.5V 3.3V
0 = Disable
1 = 1.66 mA 2.87 mA 4.02 mA
2 = 3.33 mA 5.74 mA 8.03 mA
3 = 4.99 mA 8.61 mA 12.05 mA
$ref: /schemas/types.yaml#/definitions/uint32
enum: [ 0, 1, 2, 3 ]
port:
$ref: audio-graph-port.yaml#
unevaluatedProperties: false
required:
- compatible
- reg
- "#sound-dai-cells"
- clocks
- VDDA-supply
- VDDIO-supply
unevaluatedProperties: false
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
codec@a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
#sound-dai-cells = <0>;
clocks = <&clks 150>;
micbias-resistor-k-ohms = <2>;
micbias-voltage-m-volts = <2250>;
VDDA-supply = <®_3p3v>;
VDDIO-supply = <®_3p3v>;
};
};
...
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Freescale SGTL5000 stereo codec
1-14이 YAML binding은 Freescale SGTL5000 Stereo Codec을 정의합니다. `dai-common.yaml#`을 상속하며 schema ID는 `http://devicetree.org/schemas/sound/fsl,sgtl5000.yaml#`, maintainer는 Fabio Estevam입니다.
DAI, SYS_MCLK와 전원 regulator
15-41`compatible`은 `fsl,sgtl5000`, `reg`는 최대 한 항목이며 `#sound-dai-cells`는 0입니다. `assigned-clock-parents`, `assigned-clock-rates`, `assigned-clocks` 공통 clock assignment 속성을 사용할 수 있습니다.
`clocks`는 `SYS_MCLK`의 clock provider 한 항목입니다. `VDDA-supply`, `VDDIO-supply`, `VDDD-supply`는 각각 해당 전원 rail의 regulator provider입니다.
Microphone bias resistor와 voltage
42-55`micbias-resistor-k-ohms`는 kOhm 단위 bias resistor이며 0, 2, 4, 8 중 하나입니다. 0이면 꺼지고, 속성이 없거나 값을 알 수 없으면 4 kOhm을 사용합니다.
`micbias-voltage-m-volts`는 mV 단위 bias voltage이며 1250 mV부터 3000 mV까지 250 mV 간격으로 선택합니다. 속성이 없거나 값을 알 수 없으면 1250 mV가 기본값입니다.
LRCLK pad strength
56-68`lrclk-strength`는 LRCLK pad drive strength를 0~3으로 설정합니다. VDDIO 전압별 전류는 다음과 같습니다.
| 설정 | VDDIO 1.8V | VDDIO 2.5V | VDDIO 3.3V |
|---|---|---|---|
| 0 | Disable | Disable | Disable |
| 1 | 1.66 mA | 2.87 mA | 4.02 mA |
| 2 | 3.33 mA | 5.74 mA | 8.03 mA |
| 3 | 4.99 mA | 8.61 mA | 12.05 mA |
SCLK pad strength
69-81`sclk-strength`는 SCLK pad drive strength를 0~3으로 설정하며 LRCLK와 같은 VDDIO별 전류 표를 사용합니다.
| 설정 | VDDIO 1.8V | VDDIO 2.5V | VDDIO 3.3V |
|---|---|---|---|
| 0 | Disable | Disable | Disable |
| 1 | 1.66 mA | 2.87 mA | 4.02 mA |
| 2 | 3.33 mA | 5.74 mA | 8.03 mA |
| 3 | 4.99 mA | 8.61 mA | 12.05 mA |
Audio graph와 필수 속성
82-95`port`는 `audio-graph-port.yaml#`을 참조하며 평가되지 않은 추가 속성을 허용하지 않습니다. 필수 속성은 `compatible`, `reg`, `#sound-dai-cells`, `clocks`, `VDDA-supply`, `VDDIO-supply`이며 전체 binding에서도 평가되지 않은 속성은 금지됩니다.
I2C SGTL5000 예제
96-113예제는 I2C address `0x0a`의 SGTL5000에 clock 150, 2 kOhm mic bias resistor, 2250 mV bias voltage, 3.3 V VDDA/VDDIO regulator를 연결합니다.
i2c {
#address-cells = <1>;
#size-cells = <0>;
codec@a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
#sound-dai-cells = <0>;
clocks = <&clks 150>;
micbias-resistor-k-ohms = <2>;
micbias-voltage-m-volts = <2250>;
VDDA-supply = <®_3p3v>;
VDDIO-supply = <®_3p3v>;
};
};
...
요약과 해설
fsl,sgtl5000.yaml:1-113Freescale/NXP codec, SOF processor, S/PDIF와 SSI의 clock·DMA·전원·signal mode를 먼저 해설하고, 접을 수 있는 영어 원문 전체와 표·symbol·줄 좌표를 보존한 한국어 전문 번역을 제공합니다.