From patchwork Wed Oct 7 11:11:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lars Povlsen X-Patchwork-Id: 11820439 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D2EA313B2 for ; Wed, 7 Oct 2020 11:12:13 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8BB662075A for ; Wed, 7 Oct 2020 11:12:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="e+HQL3CX"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=microchip.com header.i=@microchip.com header.b="vdvgzL34" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8BB662075A Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=microchip.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=OWGKzlByPW4q/rOxA/I0QzPc+cVEk+rdGiBZK1nbsME=; b=e+HQL3CXdIKgna5gO4pTwTs+qL k/SDR+dBsiIio/PmoAqgpoSc3PC3EOrBsmpU6BnjRfCjxQMvr92N12SBqV/1Hb+OEEEQitH3gQHw/ doRCAThD31YSh/kAdBB28ZxqN3R5djPsuGaFIgr5pj8foleMiurrKG8UiuEK85hTvVi+LHZDgti35 RbzFROvxwC6KZmCWtWH6MUMppcrasqtjDTqz8+NwMoDJWW09MzEJYbTdu8IuJE3x4WtX5+g7f2PeN vIE6sUkazrARx+OTNE6n5PxSGbDga2i1b35ErXjTzVF0tpMTc0ymKc2dy3COFJ2b2obQmq1OC6jlO yb9IxSuA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQ7MZ-00016Q-V9; Wed, 07 Oct 2020 11:12:04 +0000 Received: from esa4.microchip.iphmx.com ([68.232.154.123]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQ7MX-00015W-1C for linux-arm-kernel@lists.infradead.org; Wed, 07 Oct 2020 11:12:01 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1602069121; x=1633605121; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=jTkGXO9V/G30ymkdWTzloF+IoAl5IuZdTB0pP3RMpuQ=; b=vdvgzL345pAhzwzYuxWMWTEd4ZxXpne43aMCJn86nQv2zt6b6s1Ynn45 sfcFeYUdD8MAPcenQorK4ZyWfBWbRWl/j63L9pmlYeFeB56nV8J2ZIe1N KOm4T2rEoEGPaHxlvzJsWN5IUXtdE4iFt2XQ8PIPi5Ia2Us+SpvXOJoP3 dqiOWUXbEWCbEodAaz7zQ/igXddJY4xNO5zXe/La4XVx5qoN1z8CInt/M Vzld0Nf9H4rjHz0OVb0BoKUJMBqN2yvRvWaOz8TSoU+MmyCLNZQB+cviJ iXJxxnSYgoU2GRVHKNvJ87Oyeurb5s+qD/hvmWw8T7K2JOwf6k/kpcYIk Q==; IronPort-SDR: UGUDLJpMF5V9CASCPKIQBnN2cBZS8kNuKPxFol3aYwddJK8UiCfi/lH4x7D55UCEyyX2GRY8xK TVWgBVZtvqB/u0k6a3Kj/SbJnTpb58/Q6RX1M3W5lpABVyoPdq1/kPYbhvZd6AWdIDu2b/yBQL HTOizve7aI89/6JIzYUI6OwiOA7eKfyehlJAkAcHEbU6gCHD06vbxKcw72HhwcGVyfMbXTnIQi +3m0wLjt/DGhQ+CX9x9jDrUY30r2UUYocC8KZu9KXvxeGUBDvvehQFf8Ya5O6GldSbjLRkF0Nj uMk= X-IronPort-AV: E=Sophos;i="5.77,346,1596524400"; d="scan'208";a="89405090" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa4.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 07 Oct 2020 04:12:00 -0700 Received: from chn-vm-ex02.mchp-main.com (10.10.85.144) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1979.3; Wed, 7 Oct 2020 04:11:42 -0700 Received: from soft-dev10.microsemi.net (10.10.115.15) by chn-vm-ex02.mchp-main.com (10.10.85.144) with Microsoft SMTP Server id 15.1.1979.3 via Frontend Transport; Wed, 7 Oct 2020 04:11:40 -0700 From: Lars Povlsen To: Linus Walleij Subject: [PATCH v4 0/3] pinctrl: Adding support for Microchip/Microsemi serial GPIO controller Date: Wed, 7 Oct 2020 13:11:42 +0200 Message-ID: <20201007111145.2306213-1-lars.povlsen@microchip.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201007_071201_192999_BA026A5C X-CRM114-Status: GOOD ( 12.71 ) X-Spam-Score: -2.5 (--) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-2.5 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [68.232.154.123 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [68.232.154.123 listed in wl.mailspike.net] -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Alexandre Belloni , linux-kernel@vger.kernel.org, Microchip Linux Driver Support , linux-gpio@vger.kernel.org, Lars Povlsen , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org The series add support for the serial GPIO controller used by Microchip Sparx5, as well as (MSCC) ocelot/jaguar2 SoCs. The driver now register two separate banks (per instance), one for input pins (the first) and one for output direction. This eliminates the need for specifying the direction as part of the gpio arguments. The (fixed) direction is thus inherent from the gpio handle. v4 changes (binding comments from Rob): - microchip,sgpio-port-ranges changed to uint32-matrix so tuples can be represented properly. - gpio controller node name changed to "gpio@[0-1]" - whitespace fixes - DT files updated as per schema changes v3 changes: - Renamed all usage of "mchp" abbrevation with "microchip". - Split the in/output directions into (two) separate banks. - Eliminated the bindings include file (from above) - Changed SPDX license to "GPL-2.0-or-later" - Change -ENOTSUPP to -EOPNOTSUPP - Minor type/symbol naming changes v2 changes: - Adds both in and output modes. - Use direct adressing of the individual banks (#gpio-cells = <4>), also osoleting need for addressing macros in bindings include file. - Property 'microchip,sgpio-ports' (uint32, bitmask) replaced by proper range set (array of [start,end]) 'microchip,sgpio-port-ranges'. - Fixes whitespace issues in Kconfig file Lars Povlsen (3): dt-bindings: pinctrl: Add bindings for pinctrl-mchp-sgpio driver pinctrl: pinctrl-mchp-sgpio: Add pinctrl driver for Microsemi Serial GPIO arm64: dts: sparx5: Add SGPIO devices .../pinctrl/microchip,sparx5-sgpio.yaml | 140 ++++ MAINTAINERS | 1 + arch/arm64/boot/dts/microchip/sparx5.dtsi | 91 +++ .../boot/dts/microchip/sparx5_pcb125.dts | 5 + .../dts/microchip/sparx5_pcb134_board.dtsi | 258 +++++++ .../dts/microchip/sparx5_pcb135_board.dtsi | 55 ++ drivers/pinctrl/Kconfig | 18 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-microchip-sgpio.c | 676 ++++++++++++++++++ 9 files changed, 1245 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,sparx5-sgpio.yaml create mode 100644 drivers/pinctrl/pinctrl-microchip-sgpio.c --- 2.25.1