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 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.

1. 요약·해설

원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.

요약과 해설

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. 한국어 전문 번역

영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, 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)
        >;
};