From patchwork Mon Nov 9 12:17:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Palmer X-Patchwork-Id: 11891429 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 9FDD51130 for ; Mon, 9 Nov 2020 12:18:25 +0000 (UTC) Received: by mail.kernel.org (Postfix) id 99C1920789; Mon, 9 Nov 2020 12:18:25 +0000 (UTC) Delivered-To: soc@kernel.org Received: from mail-pf1-f194.google.com (mail-pf1-f194.google.com [209.85.210.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DDED6207BC for ; Mon, 9 Nov 2020 12:18:24 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b="DxTb+0Te" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DDED6207BC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=daniel@0x0f.com Received: by mail-pf1-f194.google.com with SMTP id y7so7991773pfq.11 for ; Mon, 09 Nov 2020 04:18:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=0x0f.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=0ECS4fSUjBtwy6Ka0FJ1351R2BmrDJGaIrqok5xLHqc=; b=DxTb+0Te0zpg9F3FsAG34GuTxjXeWUPuvJrwvHPeKZSxo9ZoOtHRVx81kpvTcsOfo8 oR+SMQtkwI5rzaIQudhw95vV2rkohZiS27WQlUwkJfclYxfeps+0wWMDqTVaAXeuUA9J 7AQKzbmzBfZSNbhm0BM7vSIvZaa9CsOctK/Yw= 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:mime-version :content-transfer-encoding; bh=0ECS4fSUjBtwy6Ka0FJ1351R2BmrDJGaIrqok5xLHqc=; b=gL3wF2lHxS0WnmNkgNxV6uYhCbDaYV8GIu8EGk/EZN8VrQqb7tpUVjXjTvLY3G87/8 92C4Bj2W++61RwE3t0CqPwT1PsmcNcgQ4TnUVnxy8qIGHcJj1t6nGffwL0E7j+oD8Ezv 17cWjiE3BkW3pfr9DTbhBpE+FkNknDCWEiaxq9bb54U2c7LaN40N5sjZRgXG5OucElyg Io2rkKBcfK2UfkuIH/Gq/wvRy6uapzq6Hl4tTLWOCt6yXmIMiRlQKIvRvdRJuzzFhi0R 1fRyPElcQrJ8AAmqY+NUrcOzsckm1Ee7D8TlW8MxmF8VisbcRFRbLWqh2ZrEODOE/gQx +qOQ== X-Gm-Message-State: AOAM533ni6hRDeEiO9csfMBzC7d8pG8Pj5hfekmurp0CyowkpEldGRDn 6AS38jJSB/v1dLxW6qjmRWFuUrLcs9yp9Q== X-Google-Smtp-Source: ABdhPJwiprztaOlzoU+V3h2d05eGOMn560WX/sUv7c/t2PAq7D9nYP6sjKVdAiErqkHfsZHQaOkoGQ== X-Received: by 2002:a65:6649:: with SMTP id z9mr12193992pgv.18.1604924303784; Mon, 09 Nov 2020 04:18:23 -0800 (PST) Received: from shiro.work (p1268123-ipngn200803sizuokaden.shizuoka.ocn.ne.jp. [118.13.124.123]) by smtp.googlemail.com with ESMTPSA id i123sm11425204pfc.13.2020.11.09.04.18.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Nov 2020 04:18:23 -0800 (PST) From: Daniel Palmer List-Id: To: soc@kernel.org, linux-gpio@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linus.walleij@linaro.org, maz@kernel.org, w@1wt.eu, Daniel Palmer Subject: [PATCH v3 0/5] Add GPIO support for MStar/SigmaStar ARMv7 Date: Mon, 9 Nov 2020 21:17:26 +0900 Message-Id: <20201109121731.1537580-1-daniel@0x0f.com> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 At the moment the MStar/SigmaStar support is only really capable of shell from an initramfs and not much else. Most of the interesting drivers are blocked on clock and pinctrl drivers and those are going to take me a little while to get cleaned up. Clock and pinctrl aren't needed for basic GPIO to work (all pins start off as GPIOs..) and it makes it possible to actually do something so this series adds everything that is needed for the main GPIO block in these chips. Changes since v2: - Numerous style and code cleanups as suggested by Andy Shevchenko, Linus Walleij, Marc Zyngier and Rob Herring. - Pad names moved out of the binding header because they are no longer needed there. The pin/pad numbers are still there as I couldn't think of a better way to do this. meson8b-gpio.h seems to be similar. Changes since v1: - Moves the binding header commit before the yaml commit - Fixes the license on the binding header to include BSD-2-Clause - The driver has been reworked to use the gpiolib irqchip functionality as suggested by Linus[0]. I think I got this right. The gpio controller doesn't actually do anything with interrupts itself.. It just happens to have 4 lines that are also wired to lines on one of the interrupt controllers. - Now that the driver is an interrupt controller in it's own right for the gpio lines that have associated interrupts the binding description has been updated to add the interrupt-controller bits and remove the description of the interrupt-names that described how the interrupts used to be passed in. Daniel Palmer (5): dt-bindings: gpio: Add a binding header for the MSC313 GPIO driver dt-bindings: gpio: Binding for MStar MSC313 GPIO controller gpio: msc313: MStar MSC313 GPIO driver ARM: mstar: Add gpio controller to MStar base dtsi ARM: mstar: Fill in GPIO controller properties for infinity .../bindings/gpio/mstar,msc313-gpio.yaml | 62 +++ MAINTAINERS | 3 + arch/arm/boot/dts/mstar-infinity.dtsi | 7 + arch/arm/boot/dts/mstar-v7.dtsi | 10 + drivers/gpio/Kconfig | 11 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-msc313.c | 460 ++++++++++++++++++ include/dt-bindings/gpio/msc313-gpio.h | 53 ++ 8 files changed, 607 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/mstar,msc313-gpio.yaml create mode 100644 drivers/gpio/gpio-msc313.c create mode 100644 include/dt-bindings/gpio/msc313-gpio.h