From patchwork Wed Feb 28 18:14:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Manivannan Sadhasivam X-Patchwork-Id: 130031 Delivered-To: patch@linaro.org Received: by 10.80.172.228 with SMTP id x91csp1845366edc; Wed, 28 Feb 2018 10:15:17 -0800 (PST) X-Google-Smtp-Source: AG47ELsRKVRtRBzCmf7ChNgFPnGJhs1kRyKGwwG9RnVtL8RpzElzGBROxfIZSpNa3N9t/GV/ZZ8O X-Received: by 10.98.59.218 with SMTP id w87mr11730113pfj.37.1519841717164; Wed, 28 Feb 2018 10:15:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519841717; cv=none; d=google.com; s=arc-20160816; b=mzzu7XTq80nIeI3MbL2wLRL35ACd0ceb1DL6p8bGUk8Qa8JhPkmMt6HHt3EfsrRJo7 o5jDGqufP7dpsq3O/OAmZTAB1DOzQVf8gj36wHd7Yuwdt2Xc9TnPWWT/JFoYTNgUU0BC 88vOtlx/AtWSqkSUWgfiA+rwGlh7c9GQ4qzYsczuKNulNchNFyMp38XwbMuHPDaYoex7 Bxv+JiTnYknYIHDSNVcXp9XF+7m0sO7yMX/buqZy7hzvj4hwwdtXFlPVZlW0umhiBmG6 RlursntmbQrD7EkmRJFVH0Q/9/BAC5IvgP28jHMEdOgtOLwFvOJeI7L4/FR8a/+5b5XI E6gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=u+brDA1TE6O+hspVE8EIndcclrGNtrQEEnyzmYGALMw=; b=DRoQsVzLjIl9j/8hz2hm3+6X8fON5i031lmPGihsf9uNJWI3pxHnha+PtmiG/SWZSc 5mEcRMt8BDunRQLZtNSVNqYe9oEl+nOjI5VbXdn3n/MP9yLOiYydmXaXzZBtPPi6nKis eS8OQ3lJJvYAx7/sbEdm1Pm3Myf7RbnJl86wbF+7KM/SRJEex6LT127qsb/fDMLh1uL6 aZ/gllsC2iNtPD4JZqMQkCH19bWwW4MyQE7phsCekT7avWw9VNX6rs0Zx/BxalBgVsQ/ Tys7dmACIL/EYVM/TG/vwPgH8AWCFwB3yI2CwQgP7DsbaJzisiKSBfj8qHR1ngVLPF/7 xByg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=GbZFNyFx; spf=pass (google.com: best guess record for domain of linux-gpio-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-gpio-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u1-v6si1636383plj.651.2018.02.28.10.15.16; Wed, 28 Feb 2018 10:15:17 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-gpio-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=GbZFNyFx; spf=pass (google.com: best guess record for domain of linux-gpio-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-gpio-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752946AbeB1SPQ (ORCPT + 5 others); Wed, 28 Feb 2018 13:15:16 -0500 Received: from mail-pl0-f65.google.com ([209.85.160.65]:39945 "EHLO mail-pl0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752834AbeB1SPP (ORCPT ); Wed, 28 Feb 2018 13:15:15 -0500 Received: by mail-pl0-f65.google.com with SMTP id i6-v6so1989224plt.7 for ; Wed, 28 Feb 2018 10:15:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=HSKVjLhawedZqQde1aDDpkmsvz0AxopDoBcbPC0BEN0=; b=GbZFNyFxH32NmIVKIWWP2GCi9WuO9x97qNeRYONeP1rkdzdSx1R10QlEPfJiPr1bRg Ce4ZJf1RY4NkBKSBkJLuGcBoOOiMpGCg0jKaMsSbVpguz2xt8MhuST6Ufwb+eXPLmr4B KziScDzlSGg2bYtG17xwO2Ia8M56vGXW1BBwg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=HSKVjLhawedZqQde1aDDpkmsvz0AxopDoBcbPC0BEN0=; b=ppGN9uYuN0zH2EPfG9eluE6Lbk5U4l/plyBh8tbPh+qJN9xSAQhNKKPmcNsVuFQFuT HOIRWNrEK2N2lJjOtwGwhWIv6ChqgpsSpfzUAIZp82w3Zsko6JMtubrBaXdw/3qH6ohE WSp8jpgz3rM13XOBZMmj4Q7Dyxv0DoTSNC+1R3Vf14dZeOqXJyK1FvKfgBJc6+frn5le OIbTC5ZYDyNYlryPeMr0Uvb3nUxByUaL00+aKSTgHTqTwsTIgmWa69SoNX22Jv6RQCRs 9Fv+Q9HiV9v1gwBxEIoDmt/3gVC4TLulXDv46HRnxYn95HR153I67Kvd0VP9zxRPeX1/ kTEw== X-Gm-Message-State: APf1xPC42BndT6zkPkeCkzEA1R4edqhDUOMvOOwmCPyfIyvbiDZ3gT2s l1+Axp6okdC49LzOvXBjKJMg X-Received: by 2002:a17:902:5482:: with SMTP id e2-v6mr18747018pli.65.1519841714428; Wed, 28 Feb 2018 10:15:14 -0800 (PST) Received: from localhost.localdomain ([2405:204:7380:867e:a4dd:d27b:1244:f453]) by smtp.gmail.com with ESMTPSA id u27sm4980258pfk.172.2018.02.28.10.15.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 28 Feb 2018 10:15:13 -0800 (PST) From: Manivannan Sadhasivam To: linus.walleij@linaro.org, robh+dt@kernel.org, afaerber@suse.de Cc: liuwei@actions-semi.com, mp-cs@actions-semi.com, 96boards@ucrobotics.com, devicetree@vger.kernel.org, daniel.thompson@linaro.org, amit.kucheria@linaro.org, linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, hzhang@ucrobotics.com, bdong@ucrobotics.com, manivannanece23@gmail.com, Manivannan Sadhasivam Subject: [PATCH v3 00/10] Add Actions Semi S900 pinctrl and gpio support Date: Wed, 28 Feb 2018 23:44:22 +0530 Message-Id: <20180228181432.26847-1-manivannan.sadhasivam@linaro.org> X-Mailer: git-send-email 2.14.1 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org This patchset adds pinctrl and gpio support for Actions Semi S900 SoC. Pinctrl and gpio subsystems share the common set of register range but implemented as individual drivers for making it less complex. Pinmux functions are only accessible for pin groups while pinconf parameters are available for both pin groups and individual pins. gpio-line-names has been added for the Bubblegum-96 board matching the 96Boards CE specification v1.0. Both pinctrl and gpio drivers are verified using the Bubblegum-96 board. This patchset depends on the clock driver which is still under review: https://lkml.org/lkml/2018/2/9/831 There is also S500 pinctrl and gpio driver developed by Andreas Farber independently to this patchset. https://github.com/afaerber/linux/commits/bg96-next If this patchseries seems to be good enough to add base OWL pinctrl and gpio support. Then, we may decide on adding S500 support on top of this later by reusing the pinctrl definitions from Andreas. Thanks, Mani Changes in v3: * Simplified owl_gpio_set_reg() with _relaxed functions * Added interrupt controller properties to gpio node bindings as suggested by Rob * Minor code cleanups Changes in v2: * Implemented each GPIO bank as its own gpio-controller * Added gpio-ranges property * Modified pin group to follow pad names instead of register names * Incorporated review comments from Andy * Incorporated review comments from Andreas * Fixed the MODULE_LICENSE with respect to SPDX tag * Added Reviewed by tag from Rob for pinctrl binding Manivannan Sadhasivam (10): dt-bindings: pinctrl: Add bindings for Actions S900 SoC arm64: dts: actions: Add pinctrl node for S900 arm64: actions: Enable PINCTRL in platforms Kconfig pinctrl: actions: Add Actions S900 pinctrl driver dt-bindings: gpio: Add gpio nodes for Actions S900 SoC arm64: dts: actions: Add S900 gpio nodes arm64: dts: actions: Add gpio line names to Bubblegum-96 board gpio: Add gpio driver for Actions OWL S900 SoC MAINTAINERS: Add reviewer for ACTIONS platforms MAINTAINERS: Add Actions Semi S900 pinctrl and gpio entries .../devicetree/bindings/gpio/actions,owl-gpio.txt | 95 + .../bindings/pinctrl/actions,s900-pinctrl.txt | 178 ++ MAINTAINERS | 5 + arch/arm64/Kconfig.platforms | 1 + arch/arm64/boot/dts/actions/s900-bubblegum-96.dts | 201 ++ arch/arm64/boot/dts/actions/s900.dtsi | 54 + drivers/gpio/Kconfig | 8 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-owl.c | 218 ++ drivers/pinctrl/Kconfig | 1 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/actions/Kconfig | 12 + drivers/pinctrl/actions/Makefile | 2 + drivers/pinctrl/actions/pinctrl-owl.c | 571 +++++ drivers/pinctrl/actions/pinctrl-owl.h | 142 ++ drivers/pinctrl/actions/pinctrl-s900.c | 2505 ++++++++++++++++++++ 16 files changed, 3995 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/actions,owl-gpio.txt create mode 100644 Documentation/devicetree/bindings/pinctrl/actions,s900-pinctrl.txt create mode 100644 drivers/gpio/gpio-owl.c create mode 100644 drivers/pinctrl/actions/Kconfig create mode 100644 drivers/pinctrl/actions/Makefile create mode 100644 drivers/pinctrl/actions/pinctrl-owl.c create mode 100644 drivers/pinctrl/actions/pinctrl-owl.h create mode 100644 drivers/pinctrl/actions/pinctrl-s900.c -- 2.14.1 -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html