From patchwork Fri Mar 2 03:50:35 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Manivannan Sadhasivam X-Patchwork-Id: 130441 Delivered-To: patch@linaro.org Received: by 10.46.66.2 with SMTP id p2csp829214lja; Thu, 1 Mar 2018 19:51:23 -0800 (PST) X-Google-Smtp-Source: AG47ELt1h0jL8woCGlIZ84mG4VGI9NtlWKTMFuB56en9engcW7sks2t4O3ihIufmYu8IXUA87+lG X-Received: by 10.101.72.198 with SMTP id o6mr3406501pgs.279.1519962683678; Thu, 01 Mar 2018 19:51:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519962683; cv=none; d=google.com; s=arc-20160816; b=ECtBKr5Mc/SsNqBG3k72GBH4VCQEkr85M5nUndae2gXbVXbQTnJg6/qv4rc+RwtMXN vTuZe4T8K2+DmSPEZISGeCH+VHnf7Jd/ArE790Zva88S1pmUM0y9/Spfmcww9GqA51gD PW7VLxRMaeOkqIRGr+2jLoctd3LORYuZBjDW9GaHidBlDZI0eaWH1dmkNiRFd1r3D+0v 9DmbOIgqB0A5qwi1QRUiEVouGSji/m9DMeFKspOwEsNYmcmmWEKT+mTEOZiFxw8SWRlr VlssGDKOx8W2u8NM6Ifri+L0gE2GdhvJfXcGcMREnJo0n0lWwGRgtQpw5jPKRkKX4Wda UDaA== 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=8YygESr6N4JTeXqMNiEORHf/Lg94DeB4JoZIhz//w/I=; b=cxiWWi2OZfYyUnTap2miPBpbgQ9gD0xmdoxPZLw/ARIqhAvclcWzyMOIKpwnakX2MV hLVijJat03Di8wKI/7RKhjMnfLqZ+DxiZ2mcYY7/55upCPCsnQrcVNZR5/c2qHuh8Kqq ipOSTdW+n/1Tl6gxGBiaRXlUxp/1/QIDFHF6tUBGyDAs76P0GIS+EfYFaUtvBhVjIYva M0IW9f8fl75xO5KroSkEJXDbogpTMlS3u8qJkLbSlEpHzNdJdWhfeGzrai8iTegjTmka ijyzKxprr59psENUawRM67VA4l7T7K9WVpiqNre3ze0JjgLW7qHVXsQziRQPOJthwqxo CW6Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=FBEOFPxn; 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 e6si3374187pgt.621.2018.03.01.19.51.23; Thu, 01 Mar 2018 19:51:23 -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=FBEOFPxn; 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 S1164200AbeCBDvW (ORCPT + 5 others); Thu, 1 Mar 2018 22:51:22 -0500 Received: from mail-pl0-f68.google.com ([209.85.160.68]:45899 "EHLO mail-pl0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1164083AbeCBDvU (ORCPT ); Thu, 1 Mar 2018 22:51:20 -0500 Received: by mail-pl0-f68.google.com with SMTP id v9-v6so4923009plp.12 for ; Thu, 01 Mar 2018 19:51:20 -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=wpPd2KHAky6OoIf9eAUux5ORs7vkuwB2v9SYzzlc9Gs=; b=FBEOFPxnGSs07CnHdOp06NEC4cf8iWywQNYzOuqVAGOhrB/yX9d7pdOUYf2RPobrbK /HvUjg5pHBDO28sZACNAKhyFTNIGVHjHxtH+Gb4LrCXEkO0C+24rGQ+Dxs+QkC1BAXVp /S4x/KV408Gr9SpVCDK/PHJBk01ZRtjsAjMhg= 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=wpPd2KHAky6OoIf9eAUux5ORs7vkuwB2v9SYzzlc9Gs=; b=PLkTDlytZUnjMvEMYdLGvkYwWuaCKN1qZTqoTqi0+NHisMaaPO5Dko6EXozAH42Ddd kgStuQaATXhoTJNRLzBtOVFuz53s2Jr/p6fDjgQTJRTMzTvxqKMqPyPm3sDaVFnbD8yl 6bFcV/xYqyK8l1dzbKHg3TilGytiqnzVvWQATZLQEbWt4uChlRvOM2lxqx7CSj1XVY7n fXI7QEkB3eutqYm8RTEi3IQycAAak6wJhvnLORYn4Zl5islb+rjeMAMwPzVsRm56cF7q 8m4s+2JrlEXepZz7bklEBxbgYnTgRH1BV5qgqdI53+YF/vqgrtssa50S9E/elB5xcJBA plHw== X-Gm-Message-State: APf1xPD+zQ7IekgjmvfPZ8aqd6xbU36HzIxUIyoKxeMWzyagWJ3bbCWk BvMieTrTop4M72f66ijinRjp X-Received: by 2002:a17:902:6e0f:: with SMTP id u15-v6mr3946726plk.78.1519962679708; Thu, 01 Mar 2018 19:51:19 -0800 (PST) Received: from localhost.localdomain ([2405:204:71c0:7f9a:bd87:b648:dccb:cbc9]) by smtp.gmail.com with ESMTPSA id n66sm10284997pfn.111.2018.03.01.19.51.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 01 Mar 2018 19:51:19 -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 v4 00/10] Add Actions Semi S900 pinctrl and gpio support Date: Fri, 2 Mar 2018 09:20:35 +0530 Message-Id: <20180302035045.14660-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 v4: * Incorporated Andy's review for pinctrl driver * Used _relaxed functions for pinctrl driver * Added Andy's Reviewed-by tag for gpio driver * Added (back) Rob's Reviewed-by tag for pinctrl bindings 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 | 579 +++++ drivers/pinctrl/actions/pinctrl-owl.h | 142 ++ drivers/pinctrl/actions/pinctrl-s900.c | 2505 ++++++++++++++++++++ 16 files changed, 4003 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 Reviewed-by: Linus Walleij Reviewed-by: Linus Walleij