요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
* Pin configuration for TI DA850/OMAP-L138/AM18x
These SoCs have a separate controller for setting bias (internal pullup/down).
Bias can only be selected for groups rather than individual pins.
Required Properties:
- compatible: Must be "ti,da850-pupd"
- reg: Base address and length of the memory resource used by the pullup/down
controller hardware module.
The controller node also acts as a container for pin group configuration nodes.
The names of these groups are ignored.
Pin Group Node Properties:
- groups: An array of strings, each string containing the name of a pin group.
Valid names are "cp0".."cp31".
The pin configuration parameters use the generic pinconf bindings defined in
pinctrl-bindings.txt in this directory. The supported parameters are
bias-disable, bias-pull-up, bias-pull-down.
Example
-------
In common dtsi file:
pinconf: pin-controller@22c00c {
compatible = "ti,da850-pupd";
reg = <0x22c00c 0x8>;
};
In board-specific file:
&pinconf {
pinctrl-0 = <&pinconf_bias_groups>;
pinctrl-names = "default";
pinconf_bias_groups: bias-groups {
pull-up {
groups = "cp30", "cp31";
bias-pull-up;
};
pull-down {
groups = "cp29", "cp28";
bias-pull-down;
};
disable {
groups = "cp27", "cp26";
bias-disable;
};
};
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
DA850·OMAP-L138·AM18x bias controller
1-14TI DA850, OMAP-L138, AM18x SoC에는 internal pull-up/down bias를 설정하는 별도 controller가 있습니다. Bias는 개별 pin이 아니라 group 단위로만 선택할 수 있습니다.
필수 `compatible`은 `ti,da850-pupd`입니다. `reg`는 pull-up/down controller hardware module이 사용하는 memory resource의 base address와 length입니다.
Controller node는 pin group configuration node들의 container 역할도 하며, 이 group node의 이름은 무시됩니다.
Pin group 속성과 generic bias
15-24`groups`는 pin group 이름 string 배열입니다. 유효한 이름은 `cp0`부터 `cp31`까지입니다.
Pin configuration parameter는 이 directory의 `pinctrl-bindings.txt`에 정의된 generic pinconf binding을 사용합니다. 지원 parameter는 `bias-disable`, `bias-pull-up`, `bias-pull-down`입니다.
공통 DTSI controller 예제
25-34SoC 공통 DTSI에서 controller를 `pin-controller@22c00c`에 선언하고 8byte register range를 지정합니다.
pinconf: pin-controller@22c00c {
compatible = "ti,da850-pupd";
reg = <0x22c00c 0x8>;
};
Board별 bias group 예제
35-55Board file은 default state에서 `pinconf_bias_groups`를 참조합니다. CP30·31은 pull-up, CP29·28은 pull-down, CP27·26은 bias disabled로 묶어 설정합니다.
&pinconf {
pinctrl-0 = <&pinconf_bias_groups>;
pinctrl-names = "default";
pinconf_bias_groups: bias-groups {
pull-up {
groups = "cp30", "cp31";
bias-pull-up;
};
pull-down {
groups = "cp29", "cp28";
bias-pull-down;
};
disable {
groups = "cp27", "cp26";
bias-disable;
};
};
};
요약과 해설
ti,da850-pupd.txt:1-55CP0~CP31 group에 generic pull-up·pull-down·disable을 적용하는 구성을 설명합니다.