* [PATCH v5 0/3] Add ZTE ZX296718 support
@ 2016-09-13 1:42 Jun Nie
2016-09-13 1:42 ` [PATCH v5 1/3] arm64: add ZTE ZX SoC family Jun Nie
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Jun Nie @ 2016-09-13 1:42 UTC (permalink / raw)
To: linux-arm-kernel
Changes in version5:
- Add GPL license to new files.
- Unify clocks dts nodes names.
- Move interrupt parents info to root nodes in dts, move
pmu and timer node out of soc node.
Changes in version4:
- Change dts file name to align with compatible name.
- Reorder dts nodes with reg address sequence.
- Move nodes out of soc, which do not have soc simple
bus address or share soc interrupt.
- Change some nodes name to align with convention.
Changes in version3:
- Remove unnecessary flag of gic in dts.
Changes in version2:
- Use more precise cpu and pmu compatible name in dts.
- fix minor coding style issue.
Jun Nie (3):
arm64: add ZTE ZX SoC family
arm64: dts: Add ZTE ZX296718 SoC dts and Makefile
arm64: defconfig: enable ZTE ZX related config
Documentation/devicetree/bindings/arm/zte.txt | 24 +++
arch/arm64/Kconfig.platforms | 5 +
arch/arm64/boot/dts/Makefile | 1 +
arch/arm64/boot/dts/zte/Makefile | 5 +
arch/arm64/boot/dts/zte/zx296718-evb.dts | 25 +++
arch/arm64/boot/dts/zte/zx296718.dtsi | 254 ++++++++++++++++++++++++++
arch/arm64/configs/defconfig | 1 +
7 files changed, 315 insertions(+)
create mode 100644 arch/arm64/boot/dts/zte/Makefile
create mode 100644 arch/arm64/boot/dts/zte/zx296718-evb.dts
create mode 100644 arch/arm64/boot/dts/zte/zx296718.dtsi
--
1.9.1
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH v5 1/3] arm64: add ZTE ZX SoC family 2016-09-13 1:42 [PATCH v5 0/3] Add ZTE ZX296718 support Jun Nie @ 2016-09-13 1:42 ` Jun Nie 2016-09-13 1:42 ` [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile Jun Nie ` (2 subsequent siblings) 3 siblings, 0 replies; 8+ messages in thread From: Jun Nie @ 2016-09-13 1:42 UTC (permalink / raw) To: linux-arm-kernel This patch introduces ARCH_ZX to add the support of the ZTE ZX SoC family for the arm64 architecture. Signed-off-by: Jun Nie <jun.nie@linaro.org> --- arch/arm64/Kconfig.platforms | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index be5d824..bc75fd2 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -204,6 +204,11 @@ config ARCH_XGENE help This enables support for AppliedMicro X-Gene SOC Family +config ARCH_ZX + bool "ZTE ZX SoC Family" + help + This enables support for ZTE ZX SoC Family + config ARCH_ZYNQMP bool "Xilinx ZynqMP Family" help -- 1.9.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile 2016-09-13 1:42 [PATCH v5 0/3] Add ZTE ZX296718 support Jun Nie 2016-09-13 1:42 ` [PATCH v5 1/3] arm64: add ZTE ZX SoC family Jun Nie @ 2016-09-13 1:42 ` Jun Nie 2016-09-16 2:55 ` Shawn Guo 2016-09-13 1:42 ` [PATCH v5 3/3] arm64: defconfig: enable ZTE ZX related config Jun Nie 2016-09-13 7:21 ` [PATCH v5 0/3] Add ZTE ZX296718 support Shawn Guo 3 siblings, 1 reply; 8+ messages in thread From: Jun Nie @ 2016-09-13 1:42 UTC (permalink / raw) To: linux-arm-kernel Add device tree support for ZX296718 SoC and evaluation board based on it. Also document new values. Signed-off-by: Jun Nie <jun.nie@linaro.org> --- Documentation/devicetree/bindings/arm/zte.txt | 24 +++ arch/arm64/boot/dts/Makefile | 1 + arch/arm64/boot/dts/zte/Makefile | 5 + arch/arm64/boot/dts/zte/zx296718-evb.dts | 29 +++ arch/arm64/boot/dts/zte/zx296718.dtsi | 260 ++++++++++++++++++++++++++ 5 files changed, 319 insertions(+) create mode 100644 arch/arm64/boot/dts/zte/Makefile create mode 100644 arch/arm64/boot/dts/zte/zx296718-evb.dts create mode 100644 arch/arm64/boot/dts/zte/zx296718.dtsi diff --git a/Documentation/devicetree/bindings/arm/zte.txt b/Documentation/devicetree/bindings/arm/zte.txt index 3ff5c9e..8336978 100644 --- a/Documentation/devicetree/bindings/arm/zte.txt +++ b/Documentation/devicetree/bindings/arm/zte.txt @@ -13,3 +13,27 @@ Low power management required properties: Bus matrix required properties: - compatible = "zte,zx-bus-matrix" + + +--------------------------------------- +- ZX296718 SoC: + Required root node properties: + - compatible = "zte,zx296718" + +ZX296718 EVB board: + - "zte,zx296718-evb" + +System management required properties: + - compatible = "zte,zx296718-aon-sysctrl" + - compatible = "zte,zx296718-sysctrl" + +Example: +aon_sysctrl: aon-sysctrl at 116000 { + compatible = "zte,zx296718-aon-sysctrl", "syscon"; + reg = <0x116000 0x1000>; +}; + +sysctrl: sysctrl at 1463000 { + compatible = "zte,zx296718-sysctrl", "syscon"; + reg = <0x1463000 0x1000>; +}; diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile index 6e199c9..6684f97 100644 --- a/arch/arm64/boot/dts/Makefile +++ b/arch/arm64/boot/dts/Makefile @@ -19,6 +19,7 @@ dts-dirs += socionext dts-dirs += sprd dts-dirs += xilinx dts-dirs += lg +dts-dirs += zte subdir-y := $(dts-dirs) diff --git a/arch/arm64/boot/dts/zte/Makefile b/arch/arm64/boot/dts/zte/Makefile new file mode 100644 index 0000000..6678066 --- /dev/null +++ b/arch/arm64/boot/dts/zte/Makefile @@ -0,0 +1,5 @@ +dtb-$(CONFIG_ARCH_ZX) += zx296718-evb.dtb + +always := $(dtb-y) +subdir-y := $(dts-dirs) +clean-files := *.dtb diff --git a/arch/arm64/boot/dts/zte/zx296718-evb.dts b/arch/arm64/boot/dts/zte/zx296718-evb.dts new file mode 100644 index 0000000..820fe1c --- /dev/null +++ b/arch/arm64/boot/dts/zte/zx296718-evb.dts @@ -0,0 +1,29 @@ +/* + * ZTE Ltd. zx296718 Plaform + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * publishhed by the Free Software Foundation. + * + */ +/dts-v1/; +#include "zx296718.dtsi" + +/ { + model = "ZTE zx296718 evaluation board"; + compatible = "zte,zx296718-evb", "zte,zx296718"; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory at 40000000 { + device_type = "memory"; + reg = <0x40000000 0x40000000>; + }; + +}; + +&uart0 { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/zte/zx296718.dtsi b/arch/arm64/boot/dts/zte/zx296718.dtsi new file mode 100644 index 0000000..f690e8f --- /dev/null +++ b/arch/arm64/boot/dts/zte/zx296718.dtsi @@ -0,0 +1,260 @@ +/* + * DTS File for ZTE ZX296718 Plaform + * + * Copyright (c) 2016 ZTE Semiconductor Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * publishhed by the Free Software Foundation. + * + */ + +#include <dt-bindings/input/input.h> +#include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/gpio/gpio.h> + +/ { + compatible = "zte,zx296718"; + #address-cells = <1>; + #size-cells = <1>; + interrupt-parent = <&gic>; + + aliases { + serial0 = &uart0; + }; + + cpus { + #address-cells = <2>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + core2 { + cpu = <&cpu2>; + }; + core3 { + cpu = <&cpu3>; + }; + }; + }; + + cpu0: cpu at 0 { + device_type = "cpu"; + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x0>; + enable-method = "psci"; + }; + + cpu1: cpu at 1 { + device_type = "cpu"; + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x1>; + enable-method = "psci"; + }; + + cpu2: cpu at 2 { + device_type = "cpu"; + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x2>; + enable-method = "psci"; + }; + + cpu3: cpu at 3 { + device_type = "cpu"; + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x3>; + enable-method = "psci"; + }; + }; + + clk24k: clk-24k { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000>; + clock-output-names = "rtcclk"; + }; + + osc32k: clk-osc32k { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <32000>; + clock-output-names = "osc32k"; + }; + + osc12m: clk-osc12m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <12000000>; + clock-output-names = "osc12m"; + }; + + osc24m: clk-osc24m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000000>; + clock-output-names = "osc24m"; + }; + + osc25m: clk-osc25m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <25000000>; + clock-output-names = "osc25m"; + }; + + osc60m: clk-osc60m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <60000000>; + clock-output-names = "osc60m"; + }; + + osc99m: clk-osc99m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <99000000>; + clock-output-names = "osc99m"; + }; + + osc125m: clk-osc125m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <125000000>; + clock-output-names = "osc125m"; + }; + + osc198m: clk-osc198m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <198000000>; + clock-output-names = "osc198m"; + }; + + pll_audio: clk-pll-884m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <884000000>; + clock-output-names = "pll_audio"; + }; + + pll_ddr: clk-pll-932m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <932000000>; + clock-output-names = "pll_ddr"; + }; + + pll_hsic: clk-pll-960m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <960000000>; + clock-output-names = "pll_hsic"; + }; + + pll_mac: clk-pll-1000m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <1000000000>; + clock-output-names = "pll_mac"; + }; + + pll_vga: clk-pll-1073m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <1073000000>; + clock-output-names = "pll_vga"; + }; + + pll_mm0: clk-pll-1188m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <1188000000>; + clock-output-names = "pll_mm0"; + }; + + pll_mm1: clk-pll-1296m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <1296000000>; + clock-output-names = "pll_mm1"; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; + }; + + pmu { + compatible = "arm,cortex-a53-pmu"; + interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; + }; + + gic: interrupt-controller at 2a00000 { + compatible = "arm,gic-v3"; + #interrupt-cells = <3>; + #address-cells = <0>; + #redistributor-regions = <6>; + redistributor-stride = <0x0 0x40000>; + interrupt-controller; + reg = <0x02a00000 0x10000>, + <0x02b00000 0x20000>, + <0x02b20000 0x20000>, + <0x02b40000 0x20000>, + <0x02b60000 0x20000>, + <0x02b80000 0x20000>, + <0x02ba0000 0x20000>; + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; + }; + + soc { + #address-cells = <1>; + #size-cells = <1>; + compatible = "simple-bus"; + ranges; + + aon_sysctrl: aon-sysctrl at 116000 { + compatible = "zte,zx296718-aon-sysctrl", "syscon"; + reg = <0x116000 0x1000>; + }; + + uart0: uart at 11f000 { + compatible = "arm,pl011", "arm,primecell"; + arm,primecell-periphid = <0x001feffe>; + reg = <0x11f000 0x1000>; + interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&osc24m>; + clock-names = "apb_pclk"; + status = "disabled"; + }; + + dma: dma-controller at 1460000 { + compatible = "zte,zx296702-dma"; + reg = <0x01460000 0x1000>; + interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&osc24m>; + clock-names = "dmaclk"; + #dma-cells = <1>; + dma-channels = <32>; + dma-requests = <32>; + }; + + sysctrl: sysctrl at 1463000 { + compatible = "zte,zx296718-sysctrl", "syscon"; + reg = <0x1463000 0x1000>; + }; + }; +}; -- 1.9.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile 2016-09-13 1:42 ` [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile Jun Nie @ 2016-09-16 2:55 ` Shawn Guo 0 siblings, 0 replies; 8+ messages in thread From: Shawn Guo @ 2016-09-16 2:55 UTC (permalink / raw) To: linux-arm-kernel On Tue, Sep 13, 2016 at 09:42:05AM +0800, Jun Nie wrote: > diff --git a/arch/arm64/boot/dts/zte/zx296718-evb.dts b/arch/arm64/boot/dts/zte/zx296718-evb.dts > new file mode 100644 > index 0000000..820fe1c > --- /dev/null > +++ b/arch/arm64/boot/dts/zte/zx296718-evb.dts > @@ -0,0 +1,29 @@ > +/* > + * ZTE Ltd. zx296718 Plaform > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License version 2 as > + * publishhed by the Free Software Foundation. > + * > + */ Just found this is still not what's recommended, i.e. GPL/X11 dual license. I updated it and applied all 3 patches. Shawn ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v5 3/3] arm64: defconfig: enable ZTE ZX related config 2016-09-13 1:42 [PATCH v5 0/3] Add ZTE ZX296718 support Jun Nie 2016-09-13 1:42 ` [PATCH v5 1/3] arm64: add ZTE ZX SoC family Jun Nie 2016-09-13 1:42 ` [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile Jun Nie @ 2016-09-13 1:42 ` Jun Nie 2016-09-13 7:21 ` [PATCH v5 0/3] Add ZTE ZX296718 support Shawn Guo 3 siblings, 0 replies; 8+ messages in thread From: Jun Nie @ 2016-09-13 1:42 UTC (permalink / raw) To: linux-arm-kernel This patch enables the configuration for the ZTE ZX family. Signed-off-by: Jun Nie <jun.nie@linaro.org> --- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index eadf485..2bd5c88 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -57,6 +57,7 @@ CONFIG_ARCH_UNIPHIER=y CONFIG_ARCH_VEXPRESS=y CONFIG_ARCH_VULCAN=y CONFIG_ARCH_XGENE=y +CONFIG_ARCH_ZX=y CONFIG_ARCH_ZYNQMP=y CONFIG_PCI=y CONFIG_PCI_MSI=y -- 1.9.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 0/3] Add ZTE ZX296718 support 2016-09-13 1:42 [PATCH v5 0/3] Add ZTE ZX296718 support Jun Nie ` (2 preceding siblings ...) 2016-09-13 1:42 ` [PATCH v5 3/3] arm64: defconfig: enable ZTE ZX related config Jun Nie @ 2016-09-13 7:21 ` Shawn Guo 2016-09-15 13:24 ` Arnd Bergmann 3 siblings, 1 reply; 8+ messages in thread From: Shawn Guo @ 2016-09-13 7:21 UTC (permalink / raw) To: linux-arm-kernel On Tue, Sep 13, 2016 at 09:42:03AM +0800, Jun Nie wrote: > Changes in version5: > - Add GPL license to new files. > - Unify clocks dts nodes names. > - Move interrupt parents info to root nodes in dts, move > pmu and timer node out of soc node. > > Changes in version4: > - Change dts file name to align with compatible name. > - Reorder dts nodes with reg address sequence. > - Move nodes out of soc, which do not have soc simple > bus address or share soc interrupt. > - Change some nodes name to align with convention. > > Changes in version3: > - Remove unnecessary flag of gic in dts. > > Changes in version2: > - Use more precise cpu and pmu compatible name in dts. > - fix minor coding style issue. > > > Jun Nie (3): > arm64: add ZTE ZX SoC family > arm64: dts: Add ZTE ZX296718 SoC dts and Makefile > arm64: defconfig: enable ZTE ZX related config For the series, Reviewed-by: Shawn Guo <shawnguo@kernel.org> Arnd, Olof, If you like, I can help collect ZTE DTS patches to reduce your maintenance burden, considering we have an established pull-request work flow and I get ZTE platform on hands to test patches. Shawn ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v5 0/3] Add ZTE ZX296718 support 2016-09-13 7:21 ` [PATCH v5 0/3] Add ZTE ZX296718 support Shawn Guo @ 2016-09-15 13:24 ` Arnd Bergmann 2016-09-16 6:38 ` Shawn Guo 0 siblings, 1 reply; 8+ messages in thread From: Arnd Bergmann @ 2016-09-15 13:24 UTC (permalink / raw) To: linux-arm-kernel On Tuesday, September 13, 2016 3:21:46 PM CEST Shawn Guo wrote: > > Reviewed-by: Shawn Guo <shawnguo@kernel.org> > > Arnd, Olof, > > If you like, I can help collect ZTE DTS patches to reduce your > maintenance burden, considering we have an established pull-request > work flow and I get ZTE platform on hands to test patches. Thanks, I think that would be a good idea. I was going to apply the patches manually, but I'll just wait for you to forward them to me. Also thanks for your thorough reviews of the patch series! Arnd ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v5 0/3] Add ZTE ZX296718 support 2016-09-15 13:24 ` Arnd Bergmann @ 2016-09-16 6:38 ` Shawn Guo 0 siblings, 0 replies; 8+ messages in thread From: Shawn Guo @ 2016-09-16 6:38 UTC (permalink / raw) To: linux-arm-kernel On Thu, Sep 15, 2016 at 03:24:06PM +0200, Arnd Bergmann wrote: > On Tuesday, September 13, 2016 3:21:46 PM CEST Shawn Guo wrote: > > > > Reviewed-by: Shawn Guo <shawnguo@kernel.org> > > > > Arnd, Olof, > > > > If you like, I can help collect ZTE DTS patches to reduce your > > maintenance burden, considering we have an established pull-request > > work flow and I get ZTE platform on hands to test patches. > > Thanks, I think that would be a good idea. I was going to apply > the patches manually, but I'll just wait for you to forward > them to me. I will send pull requests to you shortly. We will likely have more ZTE DTS patches to come for the later releases, and doing so should ease your life, I hope. Shawn ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-09-16 6:38 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-09-13 1:42 [PATCH v5 0/3] Add ZTE ZX296718 support Jun Nie 2016-09-13 1:42 ` [PATCH v5 1/3] arm64: add ZTE ZX SoC family Jun Nie 2016-09-13 1:42 ` [PATCH v5 2/3] arm64: dts: Add ZTE ZX296718 SoC dts and Makefile Jun Nie 2016-09-16 2:55 ` Shawn Guo 2016-09-13 1:42 ` [PATCH v5 3/3] arm64: defconfig: enable ZTE ZX related config Jun Nie 2016-09-13 7:21 ` [PATCH v5 0/3] Add ZTE ZX296718 support Shawn Guo 2016-09-15 13:24 ` Arnd Bergmann 2016-09-16 6:38 ` Shawn Guo
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).