* [PATCH 0/3] arm64: dts: berlin4ct: add GPIO support @ 2015-09-18 13:47 Jisheng Zhang 2015-09-18 13:47 ` [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB Jisheng Zhang ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Jisheng Zhang @ 2015-09-18 13:47 UTC (permalink / raw) To: linux-arm-kernel Marvell berlin4ct SoC has 6 GPIO ports powered by snps,dw-apb-gpio. patch1 enables ARCH_REQUIRE_GPIOLIB for ARCH_BERLIN. patch2 add GPIO nodes in the SoC dtsi. The last patch add board dts file for STB reference board. Jisheng Zhang (3): arm64: berlin: enable ARCH_REQUIRE_GPIOLIB arm64: dts: berlin4ct: add GPIO nodes arm64: dts: add dts file for Marvell Berlin4CT STB board arch/arm64/Kconfig.platforms | 1 + arch/arm64/boot/dts/marvell/berlin4ct-stb.dts | 66 ++++++++++++++ arch/arm64/boot/dts/marvell/berlin4ct.dtsi | 120 ++++++++++++++++++++++++++ 3 files changed, 187 insertions(+) create mode 100644 arch/arm64/boot/dts/marvell/berlin4ct-stb.dts -- 2.5.1 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB 2015-09-18 13:47 [PATCH 0/3] arm64: dts: berlin4ct: add GPIO support Jisheng Zhang @ 2015-09-18 13:47 ` Jisheng Zhang 2015-09-20 19:06 ` Sebastian Hesselbarth 2015-09-18 13:47 ` [PATCH 2/3] arm64: dts: berlin4ct: add GPIO nodes Jisheng Zhang 2015-09-18 13:47 ` [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board Jisheng Zhang 2 siblings, 1 reply; 7+ messages in thread From: Jisheng Zhang @ 2015-09-18 13:47 UTC (permalink / raw) To: linux-arm-kernel All berlin SoCs have GPIOs driven by the dwapb GPIO driver. Add GPIOLIB as a dependency to be able to support them. Signed-off-by: Jisheng Zhang <jszhang@marvell.com> --- arch/arm64/Kconfig.platforms | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 23800a1..c6e2c75 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -7,6 +7,7 @@ config ARCH_BCM_IPROC config ARCH_BERLIN bool "Marvell Berlin SoC Family" + select ARCH_REQUIRE_GPIOLIB select DW_APB_ICTL help This enables support for Marvell Berlin SoC Family -- 2.5.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB 2015-09-18 13:47 ` [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB Jisheng Zhang @ 2015-09-20 19:06 ` Sebastian Hesselbarth 0 siblings, 0 replies; 7+ messages in thread From: Sebastian Hesselbarth @ 2015-09-20 19:06 UTC (permalink / raw) To: linux-arm-kernel On 18.09.2015 15:47, Jisheng Zhang wrote: > All berlin SoCs have GPIOs driven by the dwapb GPIO driver. Add GPIOLIB > as a dependency to be able to support them. > > Signed-off-by: Jisheng Zhang <jszhang@marvell.com> Applied to berlin64/soc. Thanks, Sebastian > --- > arch/arm64/Kconfig.platforms | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms > index 23800a1..c6e2c75 100644 > --- a/arch/arm64/Kconfig.platforms > +++ b/arch/arm64/Kconfig.platforms > @@ -7,6 +7,7 @@ config ARCH_BCM_IPROC > > config ARCH_BERLIN > bool "Marvell Berlin SoC Family" > + select ARCH_REQUIRE_GPIOLIB > select DW_APB_ICTL > help > This enables support for Marvell Berlin SoC Family > ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/3] arm64: dts: berlin4ct: add GPIO nodes 2015-09-18 13:47 [PATCH 0/3] arm64: dts: berlin4ct: add GPIO support Jisheng Zhang 2015-09-18 13:47 ` [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB Jisheng Zhang @ 2015-09-18 13:47 ` Jisheng Zhang 2015-09-18 13:47 ` [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board Jisheng Zhang 2 siblings, 0 replies; 7+ messages in thread From: Jisheng Zhang @ 2015-09-18 13:47 UTC (permalink / raw) To: linux-arm-kernel Marvell berlin4ct SoC has 6 GPIO ports powered by snps,dw-apb-gpio. This patch adds the corresponding device tree nodes. Signed-off-by: Jisheng Zhang <jszhang@marvell.com> --- arch/arm64/boot/dts/marvell/berlin4ct.dtsi | 120 +++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/arch/arm64/boot/dts/marvell/berlin4ct.dtsi b/arch/arm64/boot/dts/marvell/berlin4ct.dtsi index dd4a10d..a3b5f1d 100644 --- a/arch/arm64/boot/dts/marvell/berlin4ct.dtsi +++ b/arch/arm64/boot/dts/marvell/berlin4ct.dtsi @@ -135,6 +135,96 @@ interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; }; + apb at e80000 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + + ranges = <0 0xe80000 0x10000>; + interrupt-parent = <&aic>; + + gpio0: gpio at 0400 { + compatible = "snps,dw-apb-gpio"; + reg = <0x0400 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + porta: gpio-port at 0 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + interrupt-controller; + #interrupt-cells = <2>; + interrupts = <0>; + }; + }; + + gpio1: gpio at 0800 { + compatible = "snps,dw-apb-gpio"; + reg = <0x0800 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + portb: gpio-port at 1 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + interrupt-controller; + #interrupt-cells = <2>; + interrupts = <1>; + }; + }; + + gpio2: gpio at 0c00 { + compatible = "snps,dw-apb-gpio"; + reg = <0x0c00 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + portc: gpio-port at 2 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + interrupt-controller; + #interrupt-cells = <2>; + interrupts = <2>; + }; + }; + + gpio3: gpio at 1000 { + compatible = "snps,dw-apb-gpio"; + reg = <0x1000 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + portd: gpio-port at 3 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + interrupt-controller; + #interrupt-cells = <2>; + interrupts = <3>; + }; + }; + + aic: interrupt-controller at 3800 { + compatible = "snps,dw-apb-ictl"; + reg = <0x3800 0x30>; + interrupt-controller; + #interrupt-cells = <1>; + interrupt-parent = <&gic>; + interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; + }; + }; + apb at fc0000 { compatible = "simple-bus"; #address-cells = <1>; @@ -151,6 +241,36 @@ interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; }; + sm_gpio0: gpio at 8000 { + compatible = "snps,dw-apb-gpio"; + reg = <0x8000 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + porte: gpio-port at 4 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + }; + }; + + sm_gpio1: gpio at 9000 { + compatible = "snps,dw-apb-gpio"; + reg = <0x9000 0x400>; + #address-cells = <1>; + #size-cells = <0>; + + portf: gpio-port at 5 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + #gpio-cells = <2>; + snps,nr-gpios = <32>; + reg = <0>; + }; + }; + uart0: uart at d000 { compatible = "snps,dw-apb-uart"; reg = <0xd000 0x100>; -- 2.5.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board 2015-09-18 13:47 [PATCH 0/3] arm64: dts: berlin4ct: add GPIO support Jisheng Zhang 2015-09-18 13:47 ` [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB Jisheng Zhang 2015-09-18 13:47 ` [PATCH 2/3] arm64: dts: berlin4ct: add GPIO nodes Jisheng Zhang @ 2015-09-18 13:47 ` Jisheng Zhang 2015-09-20 19:06 ` Sebastian Hesselbarth 2 siblings, 1 reply; 7+ messages in thread From: Jisheng Zhang @ 2015-09-18 13:47 UTC (permalink / raw) To: linux-arm-kernel This patch adds dts for the Berlin4CT STB reference board which is also based on the Berlin4CT SoC. The Berlin4CT DMP board will be deprecated as time goes. Signed-off-by: Jisheng Zhang <jszhang@marvell.com> --- arch/arm64/boot/dts/marvell/berlin4ct-stb.dts | 66 +++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 arch/arm64/boot/dts/marvell/berlin4ct-stb.dts diff --git a/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts new file mode 100644 index 0000000..348c37e --- /dev/null +++ b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2015 Marvell Technology Group Ltd. + * + * Author: Jisheng Zhang <jszhang@marvell.com> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPLv2 or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/dts-v1/; + +#include "berlin4ct.dtsi" + +/ { + model = "Marvell BG4CT STB board"; + compatible = "marvell,berlin4ct-stb", "marvell,berlin4ct", "marvell,berlin"; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory { + device_type = "memory"; + /* the first 16MB is for firmwares' usage */ + reg = <0 0x01000000 0 0x7f000000>; + }; +}; + +&uart0 { + status = "okay"; +}; -- 2.5.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board 2015-09-18 13:47 ` [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board Jisheng Zhang @ 2015-09-20 19:06 ` Sebastian Hesselbarth 2015-09-21 2:19 ` Jisheng Zhang 0 siblings, 1 reply; 7+ messages in thread From: Sebastian Hesselbarth @ 2015-09-20 19:06 UTC (permalink / raw) To: linux-arm-kernel On 18.09.2015 15:47, Jisheng Zhang wrote: > This patch adds dts for the Berlin4CT STB reference board which is also > based on the Berlin4CT SoC. The Berlin4CT DMP board will be deprecated as > time goes. > > Signed-off-by: Jisheng Zhang <jszhang@marvell.com> > --- > arch/arm64/boot/dts/marvell/berlin4ct-stb.dts | 66 +++++++++++++++++++++++++++ This is missing the corresponding Makefile change to add the board to the default dtb build list. I've fixed it up and Applied the two dts patches to berlin64/dt Sebastian > 1 file changed, 66 insertions(+) > create mode 100644 arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > > diff --git a/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > new file mode 100644 > index 0000000..348c37e > --- /dev/null > +++ b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > @@ -0,0 +1,66 @@ > +/* > + * Copyright (C) 2015 Marvell Technology Group Ltd. > + * > + * Author: Jisheng Zhang <jszhang@marvell.com> > + * > + * This file is dual-licensed: you can use it either under the terms > + * of the GPLv2 or the X11 license, at your option. Note that this dual > + * licensing only applies to this file, and not this project as a > + * whole. > + * > + * a) This library is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License as > + * published by the Free Software Foundation; either version 2 of the > + * License, or (at your option) any later version. > + * > + * This library is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * Or, alternatively, > + * > + * b) Permission is hereby granted, free of charge, to any person > + * obtaining a copy of this software and associated documentation > + * files (the "Software"), to deal in the Software without > + * restriction, including without limitation the rights to use, > + * copy, modify, merge, publish, distribute, sublicense, and/or > + * sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following > + * conditions: > + * > + * The above copyright notice and this permission notice shall be > + * included in all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES > + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND > + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT > + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, > + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > +/dts-v1/; > + > +#include "berlin4ct.dtsi" > + > +/ { > + model = "Marvell BG4CT STB board"; > + compatible = "marvell,berlin4ct-stb", "marvell,berlin4ct", "marvell,berlin"; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + > + memory { > + device_type = "memory"; > + /* the first 16MB is for firmwares' usage */ > + reg = <0 0x01000000 0 0x7f000000>; > + }; > +}; > + > +&uart0 { > + status = "okay"; > +}; > ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board 2015-09-20 19:06 ` Sebastian Hesselbarth @ 2015-09-21 2:19 ` Jisheng Zhang 0 siblings, 0 replies; 7+ messages in thread From: Jisheng Zhang @ 2015-09-21 2:19 UTC (permalink / raw) To: linux-arm-kernel On Sun, 20 Sep 2015 21:06:19 +0200 Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> wrote: > On 18.09.2015 15:47, Jisheng Zhang wrote: > > This patch adds dts for the Berlin4CT STB reference board which is also > > based on the Berlin4CT SoC. The Berlin4CT DMP board will be deprecated as > > time goes. > > > > Signed-off-by: Jisheng Zhang <jszhang@marvell.com> > > --- > > arch/arm64/boot/dts/marvell/berlin4ct-stb.dts | 66 +++++++++++++++++++++++++++ > > This is missing the corresponding Makefile change to add the > board to the default dtb build list. oops, sorry, I missed it. > > I've fixed it up and > > Applied the two dts patches to berlin64/dt Thanks a lot ;) > > Sebastian > > > 1 file changed, 66 insertions(+) > > create mode 100644 arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > > > > diff --git a/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > > new file mode 100644 > > index 0000000..348c37e > > --- /dev/null > > +++ b/arch/arm64/boot/dts/marvell/berlin4ct-stb.dts > > @@ -0,0 +1,66 @@ > > +/* > > + * Copyright (C) 2015 Marvell Technology Group Ltd. > > + * > > + * Author: Jisheng Zhang <jszhang@marvell.com> > > + * > > + * This file is dual-licensed: you can use it either under the terms > > + * of the GPLv2 or the X11 license, at your option. Note that this dual > > + * licensing only applies to this file, and not this project as a > > + * whole. > > + * > > + * a) This library is free software; you can redistribute it and/or > > + * modify it under the terms of the GNU General Public License as > > + * published by the Free Software Foundation; either version 2 of the > > + * License, or (at your option) any later version. > > + * > > + * This library is distributed in the hope that it will be useful, > > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > > + * GNU General Public License for more details. > > + * > > + * Or, alternatively, > > + * > > + * b) Permission is hereby granted, free of charge, to any person > > + * obtaining a copy of this software and associated documentation > > + * files (the "Software"), to deal in the Software without > > + * restriction, including without limitation the rights to use, > > + * copy, modify, merge, publish, distribute, sublicense, and/or > > + * sell copies of the Software, and to permit persons to whom the > > + * Software is furnished to do so, subject to the following > > + * conditions: > > + * > > + * The above copyright notice and this permission notice shall be > > + * included in all copies or substantial portions of the Software. > > + * > > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > > + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES > > + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND > > + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT > > + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, > > + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > > + * OTHER DEALINGS IN THE SOFTWARE. > > + */ > > + > > +/dts-v1/; > > + > > +#include "berlin4ct.dtsi" > > + > > +/ { > > + model = "Marvell BG4CT STB board"; > > + compatible = "marvell,berlin4ct-stb", "marvell,berlin4ct", "marvell,berlin"; > > + > > + chosen { > > + stdout-path = "serial0:115200n8"; > > + }; > > + > > + memory { > > + device_type = "memory"; > > + /* the first 16MB is for firmwares' usage */ > > + reg = <0 0x01000000 0 0x7f000000>; > > + }; > > +}; > > + > > +&uart0 { > > + status = "okay"; > > +}; > > > ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-09-21 2:19 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-09-18 13:47 [PATCH 0/3] arm64: dts: berlin4ct: add GPIO support Jisheng Zhang 2015-09-18 13:47 ` [PATCH 1/3] arm64: berlin: enable ARCH_REQUIRE_GPIOLIB Jisheng Zhang 2015-09-20 19:06 ` Sebastian Hesselbarth 2015-09-18 13:47 ` [PATCH 2/3] arm64: dts: berlin4ct: add GPIO nodes Jisheng Zhang 2015-09-18 13:47 ` [PATCH 3/3] arm64: dts: add dts file for Marvell Berlin4CT STB board Jisheng Zhang 2015-09-20 19:06 ` Sebastian Hesselbarth 2015-09-21 2:19 ` Jisheng Zhang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).