From patchwork Fri Dec 12 13:15:58 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans de Goede X-Patchwork-Id: 5482161 Return-Path: X-Original-To: patchwork-linux-input@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 83CB5BEEA8 for ; Fri, 12 Dec 2014 13:17:08 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id AEBB2201B4 for ; Fri, 12 Dec 2014 13:17:03 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B8FD12013A for ; Fri, 12 Dec 2014 13:16:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S967679AbaLLNQ5 (ORCPT ); Fri, 12 Dec 2014 08:16:57 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44959 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S967578AbaLLNQ4 (ORCPT ); Fri, 12 Dec 2014 08:16:56 -0500 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id sBCDG4v7004457 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 12 Dec 2014 08:16:04 -0500 Received: from shalem.localdomain (vpn1-7-140.ams2.redhat.com [10.36.7.140]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id sBCDFxIl030443 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Fri, 12 Dec 2014 08:16:00 -0500 Message-ID: <548AEA8E.6040100@redhat.com> Date: Fri, 12 Dec 2014 14:15:58 +0100 From: Hans de Goede User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: linux-sunxi@googlegroups.com, dmitry.torokhov@gmail.com, maxime.ripard@free-electrons.com, linux@arm.linux.org.uk CC: leafy.myeh@newbietech.com, robh+dt@kernel.org, pawel.moll@arm.com, mark.rutland@arm.com, ijc+devicetree@hellion.org.uk, galak@codeaurora.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, vishnupatekar Subject: Re: [linux-sunxi] [PATCHv2 0/3] ARM:sunxi:ps2 Added support for A10/A20 ps2 controller. References: <1417907719-26775-1-git-send-email-VishnuPatekar0510@gmail.com> In-Reply-To: <1417907719-26775-1-git-send-email-VishnuPatekar0510@gmail.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.24 Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_RP_MATCHES_RCVD, T_TVD_MIME_EPI, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi, On 07-12-14 00:15, vishnupatekar wrote: > Here is v2 of SUNXI PS2 controller support patch-set as with v1. So as promised I've run this on an A10 board, with a small fix to the interrupt property in the sun4i.dtsi file this works as is. This means that the sun7i compat should be dropped, and the sun4i compat used everywhere. I've created 3 fixup patches to do this, note one also renames / moves the bindings file as it is in the wrong place. I've attached the 3 fixup patches, pleasesquash these into your existing patches before posting the next version. Thanks & Regards, Hans > > Changes in v2: > 1. added default n depends on ARCH_SUNXI || COMPILE_TEST in Kconfig. > 2. handled errors and free resources on errors. > 3. used BIT(x), DIV_ROUND_UP macros. > 4. corrected style errors. > 5. added support for A10 also, A10 and A2 have same properties of PS2 controller. > 6. by default commented ps20 and ps21 nodes,as ps20 pins conflict with HDMI > connector on Lime2 Board. > 7. added compatible as allwinner,sun4i-a10-ps2. > 8. corrected the possible race condition. > > Patch 0 Summary: Allwinner A10/A20 PS2 controller. These modifications are > for PS2 host controller. IBM compliant IBM PS2 and AT-compatible > keyboard and mouse can be connected. > > Patch 1 device tree bindings. > > Patch 2 adds support for sun7i ps2 driver. > > Patch 3 device tree support for PS2 controller. > 1) Added A10/A20 ps2 nodes to the dtsi > 2) Added A10/A20 ps2 pinmux to the dtsi > 3) Added ps2 nodes to the lime2 dts file > > vishnupatekar (3): > sunxi:dts-bindings:input:ps2 bindings for A10/A20 ps2. > sunxi:drivers:input:ps2 Added sunxi A10/A20 ps2 driver > ARM:dts:sunxi:ps2 dt nodes for A10/A20 PS2 controller. > > .../bindings/input/allwinner,sunxi-ps2.txt | 23 ++ > arch/arm/boot/dts/sun4i-a10.dtsi | 27 ++ > arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 13 + > arch/arm/boot/dts/sun7i-a20.dtsi | 29 ++ > drivers/input/serio/Kconfig | 10 + > drivers/input/serio/Makefile | 1 + > drivers/input/serio/sunxi-ps2.c | 364 ++++++++++++++++++++ > 7 files changed, 467 insertions(+) > create mode 100644 Documentation/devicetree/bindings/input/allwinner,sunxi-ps2.txt > create mode 100644 drivers/input/serio/sunxi-ps2.c > From 45985183f3e96adf1c846c7bbde32647367024dc Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Fri, 12 Dec 2014 14:01:43 +0100 Subject: [PATCH v2 3/4] FIXUP: "ARM:dts:sunxi:ps2 dt nodes for A10/A20 PS2 controller." 2 fixups for: "ARM:dts:sunxi:ps2 dt nodes for A10/A20 PS2 controller." 1) Fixup the sun4i ps/2 nodes interrupt property, sun4i interrupts take only 1 specifier 2) dt bindings should use the compat string for the earliest version of the hardware which has the relevant hardware block, unless there are differences, the A10 and A20 ps2 controllers are identical, so for both sun4i-a10-ps2 should be used as compat string, update the sun7i.dtsi ps2 entries to use the sun4i-a10-ps2 compat string. Signed-off-by: Hans de Goede --- arch/arm/boot/dts/sun4i-a10.dtsi | 4 ++-- arch/arm/boot/dts/sun7i-a20.dtsi | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi index c04c117..e8cd6db 100644 --- a/arch/arm/boot/dts/sun4i-a10.dtsi +++ b/arch/arm/boot/dts/sun4i-a10.dtsi @@ -818,14 +818,14 @@ ps20: ps2@0x01c2a000 { compatible = "allwinner,sun4i-a10-ps2"; reg = <0x01c2a000 0x400>; - interrupts = <0 62 4>; + interrupts = <62>; clocks = <&apb1_gates 6>; status = "disabled"; }; ps21: ps2@0x01c2a400 { compatible = "allwinner,sun4i-a10-ps2"; reg = <0x01c2a400 0x400>; - interrupts = <0 63 4>; + interrupts = <63>; clocks = <&apb1_gates 7>; status = "disabled"; }; diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi index 4417c8c3..d54d684 100644 --- a/arch/arm/boot/dts/sun7i-a20.dtsi +++ b/arch/arm/boot/dts/sun7i-a20.dtsi @@ -1114,14 +1114,14 @@ interrupts = <1 9 0xf04>; }; ps20: ps2@0x01c2a000 { - compatible = "allwinner,sun7i-a20-ps2"; + compatible = "allwinner,sun4i-a10-ps2"; reg = <0x01c2a000 0x400>; interrupts = <0 62 4>; clocks = <&apb1_gates 6>; status = "disabled"; }; ps21: ps2@0x01c2a400 { - compatible = "allwinner,sun7i-a20-ps2"; + compatible = "allwinner,sun4i-a10-ps2"; reg = <0x01c2a400 0x400>; interrupts = <0 63 4>; clocks = <&apb1_gates 7>; -- 2.1.0