brintos

brintos / linux-shallow public Read only

0
0
Text · 2.9 KiB · a53569a Raw
122 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/input/samsung,s3c6410-keypad.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Samsung SoC series Keypad Controller8 9description:10  Samsung SoC Keypad controller is used to interface a SoC with a matrix-type11  keypad device. The keypad controller supports multiple row and column lines.12  A key can be placed at each intersection of a unique row and a unique column.13  The keypad controller can sense a key-press and key-release and report the14  event using a interrupt to the cpu.15 16maintainers:17  - Krzysztof Kozlowski <krzk@kernel.org>18 19properties:20  compatible:21    enum:22      - samsung,s3c6410-keypad23      - samsung,s5pv210-keypad24 25  reg:26    maxItems: 127 28  clocks:29    maxItems: 130 31  clock-names:32    items:33      - const: keypad34 35  interrupts:36    maxItems: 137 38  wakeup-source: true39 40  linux,input-no-autorepeat:41    type: boolean42    description:43      Do no enable autorepeat feature.44 45  linux,input-wakeup:46    type: boolean47    deprecated: true48 49  samsung,keypad-num-columns:50    $ref: /schemas/types.yaml#/definitions/uint3251    description:52      Number of column lines connected to the keypad controller.53 54  samsung,keypad-num-rows:55    $ref: /schemas/types.yaml#/definitions/uint3256    description:57      Number of row lines connected to the keypad controller.58 59patternProperties:60  '^key-[0-9a-z]+$':61    type: object62    $ref: input.yaml#63    additionalProperties: false64    description:65      Each key connected to the keypad controller is represented as a child66      node to the keypad controller device node.67 68    properties:69      keypad,column:70        $ref: /schemas/types.yaml#/definitions/uint3271        description: The column number to which the key is connected.72 73      keypad,row:74        $ref: /schemas/types.yaml#/definitions/uint3275        description: The row number to which the key is connected.76 77      linux,code: true78 79    required:80      - keypad,column81      - keypad,row82      - linux,code83 84required:85  - compatible86  - reg87  - interrupts88  - samsung,keypad-num-columns89  - samsung,keypad-num-rows90 91additionalProperties: false92 93examples:94  - |95    #include <dt-bindings/clock/exynos4.h>96    #include <dt-bindings/interrupt-controller/arm-gic.h>97 98    keypad@100a0000 {99        compatible = "samsung,s5pv210-keypad";100        reg = <0x100a0000 0x100>;101        interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;102        clocks = <&clock CLK_KEYIF>;103        clock-names = "keypad";104 105        samsung,keypad-num-rows = <2>;106        samsung,keypad-num-columns = <8>;107        linux,input-no-autorepeat;108        wakeup-source;109 110        key-1 {111            keypad,row = <0>;112            keypad,column = <3>;113            linux,code = <2>;114        };115 116        key-2 {117            keypad,row = <0>;118            keypad,column = <4>;119            linux,code = <3>;120        };121    };122