From patchwork Wed Mar 23 12:00:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair X-Patchwork-Id: 553818 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D1E2EC433FE for ; Wed, 23 Mar 2022 12:00:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244060AbiCWMCR (ORCPT ); Wed, 23 Mar 2022 08:02:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244044AbiCWMCR (ORCPT ); Wed, 23 Mar 2022 08:02:17 -0400 Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 612857A9A5; Wed, 23 Mar 2022 05:00:43 -0700 (PDT) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id 14D743201FCD; Wed, 23 Mar 2022 08:00:42 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Wed, 23 Mar 2022 08:00:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alistair23.me; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm1; bh=l1C3ccDGgcE7nR aC9V8NEemh9Ww1O1X8v8EZwzGnGZM=; b=OmRVNn2q44YDbguUD6dB7kL5IL5+Fq WRSal3peEY8VbgBU8Q5OIvbf1h5qAKNnzB8D0fxOwt/f60T/q7oorHGADpiJJrgl NyZVJRiAgnlOLk5DoH1Enjfs+iM+Qnz7fF2Vq+/VRh5X7WJCn/ZhdqU/xdrH45mx Vvkai8R6H51WqRVcsEc8pWgKosrUowY2vbtqd/9P/NZN2ABCW/Tmd7N5HPHbGcHn rEsT9ksD5DednZw9P1tJMcnt25ObEDk7+btadY8cOXWHdq/SM4KSOSYCmXacthSe q6ajzePbx+fOAk3YBMgfXEnZwUFWpeAN3LOlBQiw8eTmLEzbVr7IyuDg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=l1C3cc DGgcE7nRaC9V8NEemh9Ww1O1X8v8EZwzGnGZM=; b=i0KAvIBfnOar1VNwUMCtN6 CgDIFYLd2OymuUQvlILJHexzR7nyv+JH7CciYfFLjnIS4jhnNh1SNjwI0Fq5qhPd Ot4+Co4fs8KioWrqlO8KS0B4yusk9pfksz2bxxljGXs2REJAKtrVIGqrNS1opada 0ITWEFYMOdajAwDGJlb2RwUVnUUjTenag/WLgqtzMZfqGWy3NlAMkoIOejpQZ5cX 765XT5h3WLpCunM9j7iqEPqaCqwM1q1n6hrI9LjE60Sz2lyHNJ+Qq5eZLQANi8Zo KMa/Cug/JX+muXG1YhtqzsMGbJloo2+WR5bbVqJoaqIZckWVSFkqgXdn1epIJPZA == X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudegjedgfedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgjfhgggfestdekre dtredttdenucfhrhhomheptehlihhsthgrihhrucfhrhgrnhgtihhsuceorghlihhsthgr ihhrsegrlhhishhtrghirhdvfedrmhgvqeenucggtffrrghtthgvrhhnpefftdfhgfeggf elgfekjefhkeeigfelleefhfethfehfeetleeggeeggfefffdvtdenucffohhmrghinhep uggvvhhitggvthhrvggvrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehmrghilhhfrhhomheprghlihhsthgrihhrsegrlhhishhtrghirhdvfedrmhgv X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 23 Mar 2022 08:00:37 -0400 (EDT) From: Alistair Francis To: linux-input@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: alistair23@gmail.com, rydberg@bitmath.org, linus.walleij@linaro.org, robh+dt@kernel.org, dmitry.torokhov@gmail.com, andreas@kemnade.info, Alistair Francis Subject: [PATCH v7 2/4] dt-bindings: input: Add Cypress TT2100 touchscreen controller Date: Wed, 23 Mar 2022 22:00:19 +1000 Message-Id: <20220323120021.361137-3-alistair@alistair23.me> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220323120021.361137-1-alistair@alistair23.me> References: <20220323120021.361137-1-alistair@alistair23.me> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Add the Cypress TrueTouch Generation 5 touchscreen device tree bindings documentation. It can use I2C or SPI bus. This touchscreen can handle some defined zone that are designed and sent as button. To be able to customize the keycode sent, the "linux,code" property in a "button" sub-node can be used. Signed-off-by: Alistair Francis Reviewed-by: Linus Walleij Reviewed-by: Rob Herring --- .../input/touchscreen/cypress,tt21000.yaml | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml diff --git a/Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml b/Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml new file mode 100644 index 000000000000..3fc4b7011040 --- /dev/null +++ b/Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml @@ -0,0 +1,101 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/input/touchscreen/cypress,tt21000.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Cypress TT2100 touchscreen controller + +description: The Cypress TT2100 series (also known as "CYTTSP5" after + the marketing name Cypress TrueTouch Standard Product series 5). + +maintainers: + - Alistair Francis + +allOf: + - $ref: touchscreen.yaml# + +properties: + compatible: + const: cypress,tt21000 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + vdd-supply: + description: Regulator for voltage. + + reset-gpios: + maxItems: 1 + + linux,keycodes: + $ref: /schemas/types.yaml#/definitions/uint32 + description: EV_ABS specific event code generated by the axis. + +patternProperties: + "^button@[0-9]+$": + type: object + properties: + reg: + maxItems: 1 + linux,keycodes: + $ref: /schemas/types.yaml#/definitions/uint32 + description: Keycode to emit + + required: + - reg + - linux,keycodes + + additionalProperties: false + +required: + - compatible + - reg + - interrupts + - vdd-supply + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + touchscreen@24 { + #address-cells = <1>; + #size-cells = <0>; + + compatible = "cypress,tt21000"; + reg = <0x24>; + pinctrl-names = "default"; + pinctrl-0 = <&tp_reset_ds203>; + interrupt-parent = <&pio>; + interrupts = <1 5 IRQ_TYPE_LEVEL_LOW>; + reset-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; + vdd-supply = <®_touch>; + + button@0 { + reg = <0>; + linux,keycodes = ; + }; + + button@1 { + reg = <1>; + linux,keycodes = ; + }; + + button@2 { + reg = <2>; + linux,keycodes = ; + }; + }; + }; +... From patchwork Wed Mar 23 12:00:21 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair X-Patchwork-Id: 553817 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 96597C433F5 for ; Wed, 23 Mar 2022 12:00:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244065AbiCWMC1 (ORCPT ); Wed, 23 Mar 2022 08:02:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50824 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244048AbiCWMCY (ORCPT ); Wed, 23 Mar 2022 08:02:24 -0400 Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9A7DF7A9AA; Wed, 23 Mar 2022 05:00:55 -0700 (PDT) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.west.internal (Postfix) with ESMTP id 542BD3200C14; Wed, 23 Mar 2022 08:00:54 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Wed, 23 Mar 2022 08:00:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alistair23.me; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm1; bh=hC7X5s7HQc6viR 9PYr+JWHUjZSf2EJs42JixYxm/GUk=; b=Vwvtf8uz64RJAN1RwMGE1LktKYKT3p FmDL6lnQG8yjgqqADVZ6AuJHVV2OBbaRdgxhwpt3kbSr3ZJ4yNOMX/kK/KyeJySL abhDm4GvdLoNp5n4eeEAVGTHEsgr6U06X3/KLfi/X+G2yG/Xo53nAmAoeJn4ySee AMRmwbNR6ff1KRbMCwRtCnDuQSH8Yv8JSnBLcufPqbWlmp9qo9lesu6IeO1I5Vhy Clm/aFqu9qwmEFhWdKPse5hfBCrWH6YResE41HNYmBC9cgRfLXWBYZ4uPlPdhY6p dim4irdlTIPEg/hoK9+ufPOuV1kvFnyDK+Hm8iBHweebuGorkS0dMn5w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=hC7X5s 7HQc6viR9PYr+JWHUjZSf2EJs42JixYxm/GUk=; b=W42ngcLU9LbL/r588aAs5A tHqeNqqdk06SYG0Ip/JiUmLBcAxNDU8hFbUYHeIyIhSRXJ/FstyuxRhhMlaJYyoy NlwN7tRlkGfg6Rvut1/t7US7pP9GiGOHGfpl1ay+Qggcan0r14MFd5Mdq9i2DsoO EIkgl+BrbRKAa8ALQZr1KLt4HuzTWN8d4gNIYojDrNSTM0Lr45UZKQtCE5YdEHil ZRKUbWyaS8RFEaNlaUcaB0I7CYxeV+0t0gQ7wyTV7IAItr+GyOsJzSmAmLFo8WfM bb2dy8cJDg23iofso0WeP+Oy+RecLfzuXbQqaUwwVrgKnDUieWtn+K4fa7IePnKA == X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudegjedgfeefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgjfhgggfestdekre dtredttdenucfhrhhomheptehlihhsthgrihhrucfhrhgrnhgtihhsuceorghlihhsthgr ihhrsegrlhhishhtrghirhdvfedrmhgvqeenucggtffrrghtthgvrhhnpeeggedtteejke eggeeugfehueevudegvdetjeeviedugedvtdekffekhedtteduhfenucevlhhushhtvghr ufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrlhhishhtrghirhesrghlih hsthgrihhrvdefrdhmvg X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 23 Mar 2022 08:00:49 -0400 (EDT) From: Alistair Francis To: linux-input@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: alistair23@gmail.com, rydberg@bitmath.org, linus.walleij@linaro.org, robh+dt@kernel.org, dmitry.torokhov@gmail.com, andreas@kemnade.info, Alistair Francis Subject: [PATCH v7 4/4] ARM: dts: imx7d-remarkable2: Enable the cyttsp5 Date: Wed, 23 Mar 2022 22:00:21 +1000 Message-Id: <20220323120021.361137-5-alistair@alistair23.me> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220323120021.361137-1-alistair@alistair23.me> References: <20220323120021.361137-1-alistair@alistair23.me> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Add support for the cyttsp5 touchscreen controller for the reMarkable 2. Signed-off-by: Alistair Francis --- arch/arm/boot/dts/imx7d-remarkable2.dts | 100 ++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts index 03a4029e1e57..b0c5bea32a09 100644 --- a/arch/arm/boot/dts/imx7d-remarkable2.dts +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts @@ -8,6 +8,7 @@ /dts-v1/; #include "imx7d.dtsi" +#include / { model = "reMarkable 2.0"; @@ -78,6 +79,18 @@ reg_sdoe: regulator-sdoe { enable-active-high; }; + reg_touch: regulator-touch { + compatible = "regulator-fixed"; + regulator-name = "VDD_3V3_TOUCH"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&pinctrl_touch_reg>; + pinctrl-1 = <&pinctrl_touch_reg>; + gpio = <&gpio1 11 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + wifi_pwrseq: wifi_pwrseq { compatible = "mmc-pwrseq-simple"; pinctrl-names = "default"; @@ -125,6 +138,70 @@ wacom_digitizer: digitizer@9 { }; }; +&i2c3 { + clock-frequency = <100000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c3>; + status = "okay"; + + tsc@24 { + #address-cells = <1>; + #size-cells = <0>; + + compatible = "cypress,tt21000"; + reg = <0x24>; + + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_touch>; + interrupt-parent = <&gpio1>; + interrupts = <14 IRQ_TYPE_EDGE_FALLING>; + reset-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; + vdd-supply = <®_touch>; + touchscreen-size-x = <880>; + touchscreen-size-y = <1280>; + + button@0 { + reg = <0>; + linux,keycodes = ; + }; + + button@1 { + reg = <1>; + linux,keycodes = ; + }; + + button@2 { + reg = <2>; + linux,keycodes = ; + }; + + button@3 { + reg = <3>; + linux,keycodes = ; + }; + + button@4 { + reg = <4>; + linux,keycodes = ; + }; + + button@5 { + reg = <5>; + linux,keycodes = ; + }; + + button@6 { + reg = <6>; + linux,keycodes = ; + }; + + button@7 { + reg = <7>; + linux,keycodes = ; + }; + }; +}; + &i2c4 { clock-frequency = <100000>; pinctrl-names = "default", "sleep"; @@ -266,6 +343,15 @@ MX7D_PAD_ENET1_RGMII_TXC__GPIO7_IO11 0x00000014 >; }; + pinctrl_touch: touchgrp { + fsl,pins = < + /* CYTTSP interrupt */ + MX7D_PAD_GPIO1_IO14__GPIO1_IO14 0x54 + /* CYTTSP reset */ + MX7D_PAD_GPIO1_IO13__GPIO1_IO13 0x04 + >; + }; + pinctrl_i2c1: i2c1grp { fsl,pins = < MX7D_PAD_I2C1_SDA__I2C1_SDA 0x4000007f @@ -273,6 +359,13 @@ MX7D_PAD_I2C1_SCL__I2C1_SCL 0x4000007f >; }; + pinctrl_i2c3: i2c3grp { + fsl,pins = < + MX7D_PAD_I2C3_SDA__I2C3_SDA 0x4000007f + MX7D_PAD_I2C3_SCL__I2C3_SCL 0x4000007f + >; + }; + pinctrl_i2c4: i2c4grp { fsl,pins = < MX7D_PAD_I2C4_SDA__I2C4_SDA 0x4000007f @@ -320,6 +413,13 @@ MX7D_PAD_LCD_DATA22__GPIO3_IO27 0x74 >; }; + pinctrl_touch_reg: touchreggrp { + fsl,pins = < + /* TOUCH_PWR_EN */ + MX7D_PAD_GPIO1_IO11__GPIO1_IO11 0x14 + >; + }; + pinctrl_uart1: uart1grp { fsl,pins = < MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x79