요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
* Texas Instruments - LM3697 Highly Efficient White LED Driver
The LM3697 11-bit LED driver provides high-
performance backlight dimming for 1, 2, or 3 series
LED strings while delivering up to 90% efficiency.
This device is suitable for display and keypad lighting
Required properties:
- compatible:
"ti,lm3697"
- reg : I2C slave address
- #address-cells : 1
- #size-cells : 0
Optional properties:
- enable-gpios : GPIO pin to enable/disable the device
- vled-supply : LED supply
Required child properties:
- reg : 0 - LED is Controlled by bank A
1 - LED is Controlled by bank B
- led-sources : Indicates which HVLED string is associated to which
control bank. This is a zero based property so
HVLED1 = 0, HVLED2 = 1, HVLED3 = 2.
Additional information is contained
in Documentation/devicetree/bindings/leds/common.txt
Optional child properties:
- ti,brightness-resolution - see Documentation/devicetree/bindings/mfd/ti-lmu.txt
- ramp-up-us: see Documentation/devicetree/bindings/mfd/ti-lmu.txt
- ramp-down-us: see Documentation/devicetree/bindings/mfd/ti-lmu.txt
- label : see Documentation/devicetree/bindings/leds/common.txt
- linux,default-trigger :
see Documentation/devicetree/bindings/leds/common.txt
Example:
HVLED string 1 and 3 are controlled by control bank A and HVLED 2 string is
controlled by control bank B.
led-controller@36 {
compatible = "ti,lm3697";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x36>;
enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
vled-supply = <&vbatt>;
led@0 {
reg = <0>;
led-sources = <0 2>;
ti,brightness-resolution = <2047>;
ramp-up-us = <5000>;
ramp-down-us = <1000>;
label = "white:first_backlight_cluster";
linux,default-trigger = "backlight";
};
led@1 {
reg = <1>;
led-sources = <1>;
ti,brightness-resolution = <255>;
ramp-up-us = <500>;
ramp-down-us = <1000>;
label = "white:second_backlight_cluster";
linux,default-trigger = "backlight";
};
}
For more product information please see the link below:
https://www.ti.com/lit/ds/symlink/lm3697.pdf
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
LM3697 control bank 속성
1-36TI LM3697은 최대 90% 효율로 직렬 LED string 1개, 2개 또는 3개의 고성능 backlight dimming을 제공하는 11-bit white LED driver입니다. Display와 keypad lighting에 적합합니다.
필수 `compatible`은 `ti,lm3697`, `reg`는 I2C slave 주소이며 `#address-cells`는 1, `#size-cells`는 0입니다. 선택 `enable-gpios`는 장치 enable/disable GPIO이고 `vled-supply`는 LED 전원입니다.
필수 child `reg` 0은 bank A, 1은 bank B 제어를 뜻합니다. `led-sources`는 control bank에 연결할 HVLED string을 zero-based로 지정하여 HVLED1=0, HVLED2=1, HVLED3=2입니다.
선택 `ti,brightness-resolution`, `ramp-up-us`, `ramp-down-us`는 TI LMU 바인딩을 따르고 `label`과 `linux,default-trigger`는 공통 LED 바인딩을 따릅니다.
Child reg와 zero-based HVLED source의 대응입니다.
LM3697 두 backlight cluster 예제
37-73예제는 주소 `0x36`의 controller에 active-high enable과 battery LED supply를 연결합니다. Bank A는 source 0과 2, 즉 HVLED1과 HVLED3을 11-bit resolution 2047로 제어하며 ramp-up 5000us, ramp-down 1000us를 사용합니다.
Bank B는 source 1, 즉 HVLED2를 resolution 255로 제어하며 ramp-up 500us, ramp-down 1000us를 사용합니다. 두 cluster 모두 backlight trigger를 사용합니다.
led-controller@36 {
compatible = "ti,lm3697";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x36>;
enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
vled-supply = <&vbatt>;
led@0 {
reg = <0>;
led-sources = <0 2>;
ti,brightness-resolution = <2047>;
ramp-up-us = <5000>;
ramp-down-us = <1000>;
label = "white:first_backlight_cluster";
linux,default-trigger = "backlight";
};
led@1 {
reg = <1>;
led-sources = <1>;
ti,brightness-resolution = <255>;
ramp-up-us = <500>;
ramp-down-us = <1000>;
label = "white:second_backlight_cluster";
linux,default-trigger = "backlight";
};
}
요약과 해설
leds-lm3697.txt:1-738/11-bit brightness와 두 cluster의 ramp 설정을 설명합니다.