···11+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)22+%YAML 1.233+---44+$id: http://devicetree.org/schemas/input/ti,twl4030-keypad.yaml#55+$schema: http://devicetree.org/meta-schemas/core.yaml#66+77+title: Texas Instruments TWL4030-family Keypad Controller88+99+maintainers:1010+ - Peter Ujfalusi <peter.ujfalusi@gmail.com>1111+1212+description:1313+ TWL4030's Keypad controller is used to interface a SoC with a matrix-type1414+ keypad device. The keypad controller supports multiple row and column lines.1515+ A key can be placed at each intersection of a unique row and a unique column.1616+ The keypad controller can sense a key-press and key-release and report the1717+ event using a interrupt to the cpu.1818+1919+allOf:2020+ - $ref: matrix-keymap.yaml#2121+2222+properties:2323+ compatible:2424+ const: ti,twl4030-keypad2525+2626+ interrupts:2727+ maxItems: 12828+2929+required:3030+ - compatible3131+ - interrupts3232+ - keypad,num-rows3333+ - keypad,num-columns3434+ - linux,keymap3535+3636+unevaluatedProperties: false3737+3838+examples:3939+ - |4040+ #include <dt-bindings/input/input.h>4141+4242+ keypad {4343+ compatible = "ti,twl4030-keypad";4444+ interrupts = <1>;4545+ keypad,num-rows = <8>;4646+ keypad,num-columns = <8>;4747+ linux,keymap = <4848+ /* row 0 */4949+ MATRIX_KEY(0, 0, KEY_1)5050+ MATRIX_KEY(0, 1, KEY_2)5151+ MATRIX_KEY(0, 2, KEY_3)5252+5353+ /* ...and so on for a full 8x8 matrix... */5454+5555+ /* row 7 */5656+ MATRIX_KEY(7, 6, KEY_Y)5757+ MATRIX_KEY(7, 7, KEY_Z)5858+ >;5959+ };
···11-* MELFAS MIP4 Touchscreen22-33-Required properties:44-- compatible: must be "melfas,mip4_ts"55-- reg: I2C slave address of the chip (0x48 or 0x34)66-- interrupts: interrupt to which the chip is connected77-88-Optional properties:99-- ce-gpios: GPIO connected to the CE (chip enable) pin of the chip1010-1111-Example:1212- i2c@00000000 {1313- touchscreen: melfas_mip4@48 {1414- compatible = "melfas,mip4_ts";1515- reg = <0x48>;1616- interrupt-parent = <&gpio>;1717- interrupts = <0 IRQ_TYPE_EDGE_FALLING>;1818- ce-gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;1919- };2020- };
···11-* TWL4030's Keypad Controller device tree bindings22-33-TWL4030's Keypad controller is used to interface a SoC with a matrix-type44-keypad device. The keypad controller supports multiple row and column lines.55-A key can be placed at each intersection of a unique row and a unique column.66-The keypad controller can sense a key-press and key-release and report the77-event using a interrupt to the cpu.88-99-This binding is based on the matrix-keymap binding with the following1010-changes:1111-1212- * keypad,num-rows and keypad,num-columns are required.1313-1414-Required SoC Specific Properties:1515-- compatible: should be one of the following1616- - "ti,twl4030-keypad": For controllers compatible with twl4030 keypad1717- controller.1818-- interrupt: should be one of the following1919- - <1>: For controllers compatible with twl4030 keypad controller.2020-2121-Example:2222- twl_keypad: keypad {2323- compatible = "ti,twl4030-keypad";2424- interrupts = <1>;2525- keypad,num-rows = <8>;2626- keypad,num-columns = <8>;2727- };
+1-1
drivers/input/misc/qnap-mcu-input.c
···103103104104 input = devm_input_allocate_device(dev);105105 if (!input)106106- return dev_err_probe(dev, -ENOMEM, "no memory for input device\n");106106+ return -ENOMEM;107107108108 idev->input = input;109109 idev->dev = dev;