From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gregory CLEMENT Subject: Re: [PATCH v2 0/7] Add support for pinctrl/gpio on Armada 37xx Was Re: [PATCH v2 0/7] Hi, Date: Wed, 22 Mar 2017 12:40:49 +0100 Message-ID: <87efxpfsji.fsf@free-electrons.com> References: <87pohafj6q.fsf@free-electrons.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from mail.free-electrons.com ([62.4.15.54]:56249 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759313AbdCVLkw (ORCPT ); Wed, 22 Mar 2017 07:40:52 -0400 In-Reply-To: <87pohafj6q.fsf@free-electrons.com> (Gregory CLEMENT's message of "Tue, 21 Mar 2017 21:50:37 +0100") Sender: linux-gpio-owner@vger.kernel.org List-Id: linux-gpio@vger.kernel.org To: Linus Walleij Cc: Thomas Petazzoni , Andrew Lunn , Jason Cooper , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Nadav Haklai , linux-gpio@vger.kernel.org, Rob Herring , Neta Zur Hershkovits , Victor Gu , Hua Jing , Marcin Wojtas , Wilson Ding , linux-arm-kernel@lists.infradead.org, Sebastian Hesselbarth Hi Linus, On mar., mars 21 2017, Gregory CLEMENT wrote: > Hi, > > Obviously this cover letter is wrong. Actually I forgot to commit it in > git series. Here it is the correct one: > > After several months here it is the second version of the series adding > support for the pin and gpio controllers present on the Armada 37xx > SoCs. As the first version was sent in December here it is a link to it: http://lists.infradead.org/pipermail/linux-arm-kernel/2016-December/475216.html Also I am going to answer to your review to point what I have done in this new series. Gregory > > Each Armada 37xx SoC comes with 2 pin controllers: one on the south > bridge (managing 28 pins) and one on the north bridge (managing 36 pins). > > At the hardware level the controller configure the pins by group and not > pin by pin. > > The gpio controller is also capable to handle interrupt from gpio. > > In the second version several changes has been done: > > - Update binding documentation making clear that mfd and syscon must > be used (patch 1). > > - Split the fist patch adding pin controller support for Armada 37xx > in arm64 part (for kconfig) and pinctrl part (patch 2 and 3) > > - Add MFD_SYSCON dependency (patch 3) > > - Add kerneldoc for the armada_37xx_pin_group struct (patch 3) > > - Rename _add_function() to armada_37xx_add_function() (patch 3) > > - Use an inline function to update the reg offset (patch 4) > > - Rename gpiolib_register to gpiochip_register (patch 4) > > - Add a comment about the two registers limit (patch 4) > > - Add explicit gpio node in the device tree (patch 4) > > - Convert the driver to use GPIOLIB_IRQCHIP (patch 5) > > - Add a critical section when accessing the hardware registers (patch 5) > > - Use the gpio sub-node (patch 5) > > With these change most of the comment of the first revision have been addressed. > > Thanks, > > Gregory > > Gregory CLEMENT (7): > pinctrl: dt-bindings: Add documentation for Armada 37xx pin controllers > arm64: marvell: enable the Armada 37xx pinctrl driver > pinctrl: armada-37xx: Add pin controller support for Armada 37xx > pinctrl: armada-37xx: Add gpio support > pinctrl: aramda-37xx: Add irqchip support > ARM64: dts: marvell: Add pinctrl nodes for Armada 3700 > ARM64: dts: marvell: armada37xx: add pinctrl definition > > Documentation/devicetree/bindings/clock/armada3700-xtal-clock.txt | 7 +- > Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt | 143 +++++++++++- > arch/arm64/Kconfig.platforms | 2 +- > arch/arm64/boot/dts/marvell/armada-3720-db.dts | 8 +- > arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 71 +++++- > drivers/pinctrl/Makefile | 2 +- > drivers/pinctrl/mvebu/Kconfig | 7 +- > drivers/pinctrl/mvebu/Makefile | 3 +- > drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 918 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- > 9 files changed, 1153 insertions(+), 8 deletions(-) > create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt > create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c > > Sorry for the noise, > > Gregory > > > On mar., mars 21 2017, Gregory CLEMENT wrote: > >> this series add support for the pin and gpio controllers present on >> the Armada 37xx SoCs. >> >> Each Armada 37xx SoC comes with 2 pin controllers: one on the south >> bridge (managing 28 pins) and one on the north bridge (managing 36 pins). >> >> At the hardware level the controller configure the pins by group and not >> pin by pin. >> >> The gpio controller is also capable to handle interrupt from gpio. >> >> Gregory >> >> Gregory CLEMENT (7): >> pinctrl: dt-bindings: Add documentation for Armada 37xx pin controllers >> arm64: marvell: enable the Armada 37xx pinctrl driver >> pinctrl: armada-37xx: Add pin controller support for Armada 37xx >> pinctrl: armada-37xx: Add gpio support >> pinctrl: aramda-37xx: Add irqchip support >> ARM64: dts: marvell: Add pinctrl nodes for Armada 3700 >> ARM64: dts: marvell: armada37xx: add pinctrl definition >> >> Documentation/devicetree/bindings/clock/armada3700-xtal-clock.txt | 7 +- >> Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt | 143 +++++++++++- >> arch/arm64/Kconfig.platforms | 2 +- >> arch/arm64/boot/dts/marvell/armada-3720-db.dts | 8 +- >> arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 71 +++++- >> drivers/pinctrl/Makefile | 2 +- >> drivers/pinctrl/mvebu/Kconfig | 7 +- >> drivers/pinctrl/mvebu/Makefile | 3 +- >> drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 918 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- >> 9 files changed, 1153 insertions(+), 8 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt >> create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c >> >> base-commit: c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201 >> -- >> git-series 0.9.1 > > -- > Gregory Clement, Free Electrons > Kernel, drivers, real-time and embedded Linux > development, consulting, training and support. > http://free-electrons.com > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: gregory.clement@free-electrons.com (Gregory CLEMENT) Date: Wed, 22 Mar 2017 12:40:49 +0100 Subject: [PATCH v2 0/7] Add support for pinctrl/gpio on Armada 37xx Was Re: [PATCH v2 0/7] Hi, In-Reply-To: <87pohafj6q.fsf@free-electrons.com> (Gregory CLEMENT's message of "Tue, 21 Mar 2017 21:50:37 +0100") References: <87pohafj6q.fsf@free-electrons.com> Message-ID: <87efxpfsji.fsf@free-electrons.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Linus, On mar., mars 21 2017, Gregory CLEMENT wrote: > Hi, > > Obviously this cover letter is wrong. Actually I forgot to commit it in > git series. Here it is the correct one: > > After several months here it is the second version of the series adding > support for the pin and gpio controllers present on the Armada 37xx > SoCs. As the first version was sent in December here it is a link to it: http://lists.infradead.org/pipermail/linux-arm-kernel/2016-December/475216.html Also I am going to answer to your review to point what I have done in this new series. Gregory > > Each Armada 37xx SoC comes with 2 pin controllers: one on the south > bridge (managing 28 pins) and one on the north bridge (managing 36 pins). > > At the hardware level the controller configure the pins by group and not > pin by pin. > > The gpio controller is also capable to handle interrupt from gpio. > > In the second version several changes has been done: > > - Update binding documentation making clear that mfd and syscon must > be used (patch 1). > > - Split the fist patch adding pin controller support for Armada 37xx > in arm64 part (for kconfig) and pinctrl part (patch 2 and 3) > > - Add MFD_SYSCON dependency (patch 3) > > - Add kerneldoc for the armada_37xx_pin_group struct (patch 3) > > - Rename _add_function() to armada_37xx_add_function() (patch 3) > > - Use an inline function to update the reg offset (patch 4) > > - Rename gpiolib_register to gpiochip_register (patch 4) > > - Add a comment about the two registers limit (patch 4) > > - Add explicit gpio node in the device tree (patch 4) > > - Convert the driver to use GPIOLIB_IRQCHIP (patch 5) > > - Add a critical section when accessing the hardware registers (patch 5) > > - Use the gpio sub-node (patch 5) > > With these change most of the comment of the first revision have been addressed. > > Thanks, > > Gregory > > Gregory CLEMENT (7): > pinctrl: dt-bindings: Add documentation for Armada 37xx pin controllers > arm64: marvell: enable the Armada 37xx pinctrl driver > pinctrl: armada-37xx: Add pin controller support for Armada 37xx > pinctrl: armada-37xx: Add gpio support > pinctrl: aramda-37xx: Add irqchip support > ARM64: dts: marvell: Add pinctrl nodes for Armada 3700 > ARM64: dts: marvell: armada37xx: add pinctrl definition > > Documentation/devicetree/bindings/clock/armada3700-xtal-clock.txt | 7 +- > Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt | 143 +++++++++++- > arch/arm64/Kconfig.platforms | 2 +- > arch/arm64/boot/dts/marvell/armada-3720-db.dts | 8 +- > arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 71 +++++- > drivers/pinctrl/Makefile | 2 +- > drivers/pinctrl/mvebu/Kconfig | 7 +- > drivers/pinctrl/mvebu/Makefile | 3 +- > drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 918 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- > 9 files changed, 1153 insertions(+), 8 deletions(-) > create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt > create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c > > Sorry for the noise, > > Gregory > > > On mar., mars 21 2017, Gregory CLEMENT wrote: > >> this series add support for the pin and gpio controllers present on >> the Armada 37xx SoCs. >> >> Each Armada 37xx SoC comes with 2 pin controllers: one on the south >> bridge (managing 28 pins) and one on the north bridge (managing 36 pins). >> >> At the hardware level the controller configure the pins by group and not >> pin by pin. >> >> The gpio controller is also capable to handle interrupt from gpio. >> >> Gregory >> >> Gregory CLEMENT (7): >> pinctrl: dt-bindings: Add documentation for Armada 37xx pin controllers >> arm64: marvell: enable the Armada 37xx pinctrl driver >> pinctrl: armada-37xx: Add pin controller support for Armada 37xx >> pinctrl: armada-37xx: Add gpio support >> pinctrl: aramda-37xx: Add irqchip support >> ARM64: dts: marvell: Add pinctrl nodes for Armada 3700 >> ARM64: dts: marvell: armada37xx: add pinctrl definition >> >> Documentation/devicetree/bindings/clock/armada3700-xtal-clock.txt | 7 +- >> Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt | 143 +++++++++++- >> arch/arm64/Kconfig.platforms | 2 +- >> arch/arm64/boot/dts/marvell/armada-3720-db.dts | 8 +- >> arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 71 +++++- >> drivers/pinctrl/Makefile | 2 +- >> drivers/pinctrl/mvebu/Kconfig | 7 +- >> drivers/pinctrl/mvebu/Makefile | 3 +- >> drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 918 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- >> 9 files changed, 1153 insertions(+), 8 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt >> create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c >> >> base-commit: c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201 >> -- >> git-series 0.9.1 > > -- > Gregory Clement, Free Electrons > Kernel, drivers, real-time and embedded Linux > development, consulting, training and support. > http://free-electrons.com > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com