← Documents Documentation/devicetree/bindings/input/clps711x-keypad.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

CLPS711X Matrix Keypad

GPIO row를 polling하는 Cirrus Logic matrix keypad 바인딩입니다.

Source pathDocumentation/devicetree/bindings/input/clps711x-keypad.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

clps711x-keypad.txt:1-27

Polling interval과 2x2 방향키 예제를 설명합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 * Cirrus Logic CLPS711X matrix keypad device tree bindings
2
3 Required Properties:
4 - compatible: Shall contain "cirrus,ep7209-keypad".
5 - row-gpios: List of GPIOs used as row lines.
6 - poll-interval: Poll interval time in milliseconds.
7 - linux,keymap: The definition can be found at
8 bindings/input/matrix-keymap.txt.
9
10 Optional Properties:
11 - autorepeat: Enable autorepeat feature.
12
13 Example:
14 keypad {
15 compatible = "cirrus,ep7312-keypad", "cirrus,ep7209-keypad";
16 autorepeat;
17 poll-interval = <120>;
18 row-gpios = <&porta 0 0>,
19 <&porta 1 0>;
20
21 linux,keymap = <
22 MATRIX_KEY(0, 0, KEY_UP)
23 MATRIX_KEY(0, 1, KEY_DOWN)
24 MATRIX_KEY(1, 0, KEY_LEFT)
25 MATRIX_KEY(1, 1, KEY_RIGHT)
26 >;
27 };
28

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

CLPS711X matrix keypad 속성

1-12

Cirrus Logic CLPS711X matrix keypad의 필수 `compatible`은 `cirrus,ep7209-keypad`를 포함해야 합니다. `row-gpios`는 row line으로 쓸 GPIO 목록, `poll-interval`은 millisecond 단위 polling interval입니다. `linux,keymap` 정의는 `bindings/input/matrix-keymap.txt`에 있으며 선택 `autorepeat`는 auto-repeat 기능을 켭니다.

CLPS711X keypad resources
PropertyMeaning
row-gpiosRow scan lines
poll-intervalPolling period in ms
linux,keymapRow/column key mapping
autorepeatOptional repeat

Polling matrix keypad의 필수와 선택 입력을 정리합니다.

2x2 방향키 예제

13-27

예제는 EP7312와 EP7209 compatible을 함께 사용하고 120 ms마다 두 GPIO row를 polling합니다. 2x2 matrix의 row/column 조합에 `KEY_UP`, `KEY_DOWN`, `KEY_LEFT`, `KEY_RIGHT`를 mapping하며 auto-repeat를 활성화합니다.

keypad {
        compatible = "cirrus,ep7312-keypad", "cirrus,ep7209-keypad";
        autorepeat;
        poll-interval = <120>;
        row-gpios = <&porta 0 0>,
                    <&porta 1 0>;

        linux,keymap = <
                MATRIX_KEY(0, 0, KEY_UP)
                MATRIX_KEY(0, 1, KEY_DOWN)
                MATRIX_KEY(1, 0, KEY_LEFT)
                MATRIX_KEY(1, 1, KEY_RIGHT)
        >;
};