요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
1
Device tree bindings for i2c-cbus-gpio driver
3
Required properties:
4
- compatible = "i2c-cbus-gpio";
5
- gpios: clk, dat, sel
6
- #address-cells = <1>;
7
- #size-cells = <0>;
9
Optional properties:
10
- child nodes conforming to i2c bus binding
12
Example:
14
i2c@0 {
15
compatible = "i2c-cbus-gpio";
16
gpios = <&gpio 66 0 /* clk */
17
&gpio 65 0 /* dat */
18
&gpio 64 0 /* sel */
19
>;
20
#address-cells = <1>;
21
#size-cells = <0>;
23
retu: retu@1 {
24
compatible = "nokia,retu";
25
reg = <0x1>;
26
};
27
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
CBUS GPIO I2C 속성
1-11`i2c-cbus-gpio` driver의 필수 `compatible`은 `i2c-cbus-gpio`입니다. `gpios`에는 clock, data, select 순서로 세 GPIO를 넣습니다. `#address-cells`는 1, `#size-cells`는 0입니다. 선택 child node는 I2C bus binding을 따릅니다.
clk GPIO→Serial clock
dat GPIO→Serial data
sel GPIO→CBUS select
I2C child→Addressed peripheral
세 GPIO line으로 CBUS transaction을 만들고 child device를 선택합니다.
CBUS GPIO와 RETU 예제
12-27예제는 GPIO66/65/64를 clock/data/select로 사용하고 address 1의 Nokia RETU child를 연결합니다.
i2c@0 {
compatible = "i2c-cbus-gpio";
gpios = <&gpio 66 0 /* clk */
&gpio 65 0 /* dat */
&gpio 64 0 /* sel */
>;
#address-cells = <1>;
#size-cells = <0>;
retu: retu@1 {
compatible = "nokia,retu";
reg = <0x1>;
};
};
요약과 해설
i2c-cbus-gpio.txt:1-27세 GPIO line과 RETU child 예제를 설명합니다.