Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 24 February 2017 at 23:07, Rob Herringwrote: > On Fri, Feb 24, 2017 at 1:57 AM, Chunyan Zhang > wrote: >> On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: >>> On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang >>> wrote: >>> > From: Orson Zhai >>> > >>> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >>> > >>> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >>> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >>> > and sp9860g dts is for the board level. >>> > >>> > Signed-off-by: Orson Zhai >>> > Signed-off-by: Chunyan Zhang >>> > --- >>> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >>> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >>> > ++ >>> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >>> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >>> > 4 files changed, 659 insertions(+), 1 deletion(-) >>> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >>> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >>> > >>> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >>> > b/arch/arm64/boot/dts/sprd/Makefile >>> > index b658c5e..f0535e6 100644 >>> > --- a/arch/arm64/boot/dts/sprd/Makefile >>> > +++ b/arch/arm64/boot/dts/sprd/Makefile >>> > @@ -1,4 +1,5 @@ >>> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >>> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >>> > + sp9860g-1h10.dtb >>> > >>> > always := $(dtb-y) >>> > subdir-y := $(dts-dirs) >>> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > new file mode 100644 >>> > index 000..73deb4e >>> > --- /dev/null >>> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > @@ -0,0 +1,531 @@ >>> > +/* >>> > + * Spreadtrum SP9860 SoC DTS file >>> > + * >>> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >>> > + * >>> > + * This file is licensed under a dual GPLv2 or X11 license. >>> >>> Please use SPDX-License-Identifier tag instead. >>> >> >> Just to double check, if I use it like: >> >> SPDX-License-Identifier: (GPL-2.0 or X11) >> >> Is this what you mean? > > Yes. However, X11 is not actually correct (pretty much all dts files > have it wrong). This is the X11 license[1] which is explicitly for the > X Consortium and has a couple of extra clauses. While the MIT > license[2] is the text that most dts files actually use (while also > stating X11 license). It's obvious that everyone just copies and > pastes the license and has not consulted their lawyers. OK, got it. > >> Will this file still be licensed under the same terms it was, right? > > Consult your lawyer. :) > > [...] > >>> > + ext_26m: ext-26m { >>> >>> This should be at the top-level. It is not part of the bus. >> >> This clock node is in 'soc' node, not under 'ap-apb'. Since there're other >> clocks on SC9860 which would have 'reg' property, we thought this fixed >> clock would be better under 'soc' with other clocks. > > But the clock is part of the board, not the soc. Or to put it another > way, it's not related to anything else, so it shouldn't be a child of > anything. Ok, I will move it to the top-level. Thanks, Chunyan > > Rob > > [1] https://spdx.org/licenses/X11.html > [2] https://spdx.org/licenses/MIT.html
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 24 February 2017 at 23:07, Rob Herring wrote: > On Fri, Feb 24, 2017 at 1:57 AM, Chunyan Zhang > wrote: >> On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: >>> On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang >>> wrote: >>> > From: Orson Zhai >>> > >>> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >>> > >>> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >>> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >>> > and sp9860g dts is for the board level. >>> > >>> > Signed-off-by: Orson Zhai >>> > Signed-off-by: Chunyan Zhang >>> > --- >>> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >>> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >>> > ++ >>> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >>> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >>> > 4 files changed, 659 insertions(+), 1 deletion(-) >>> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >>> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >>> > >>> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >>> > b/arch/arm64/boot/dts/sprd/Makefile >>> > index b658c5e..f0535e6 100644 >>> > --- a/arch/arm64/boot/dts/sprd/Makefile >>> > +++ b/arch/arm64/boot/dts/sprd/Makefile >>> > @@ -1,4 +1,5 @@ >>> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >>> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >>> > + sp9860g-1h10.dtb >>> > >>> > always := $(dtb-y) >>> > subdir-y := $(dts-dirs) >>> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > new file mode 100644 >>> > index 000..73deb4e >>> > --- /dev/null >>> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >>> > @@ -0,0 +1,531 @@ >>> > +/* >>> > + * Spreadtrum SP9860 SoC DTS file >>> > + * >>> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >>> > + * >>> > + * This file is licensed under a dual GPLv2 or X11 license. >>> >>> Please use SPDX-License-Identifier tag instead. >>> >> >> Just to double check, if I use it like: >> >> SPDX-License-Identifier: (GPL-2.0 or X11) >> >> Is this what you mean? > > Yes. However, X11 is not actually correct (pretty much all dts files > have it wrong). This is the X11 license[1] which is explicitly for the > X Consortium and has a couple of extra clauses. While the MIT > license[2] is the text that most dts files actually use (while also > stating X11 license). It's obvious that everyone just copies and > pastes the license and has not consulted their lawyers. OK, got it. > >> Will this file still be licensed under the same terms it was, right? > > Consult your lawyer. :) > > [...] > >>> > + ext_26m: ext-26m { >>> >>> This should be at the top-level. It is not part of the bus. >> >> This clock node is in 'soc' node, not under 'ap-apb'. Since there're other >> clocks on SC9860 which would have 'reg' property, we thought this fixed >> clock would be better under 'soc' with other clocks. > > But the clock is part of the board, not the soc. Or to put it another > way, it's not related to anything else, so it shouldn't be a child of > anything. Ok, I will move it to the top-level. Thanks, Chunyan > > Rob > > [1] https://spdx.org/licenses/X11.html > [2] https://spdx.org/licenses/MIT.html
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Fri, Feb 24, 2017 at 1:57 AM, Chunyan Zhangwrote: > On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: >> On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang >> wrote: >> > From: Orson Zhai >> > >> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >> > >> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >> > and sp9860g dts is for the board level. >> > >> > Signed-off-by: Orson Zhai >> > Signed-off-by: Chunyan Zhang >> > --- >> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >> > ++ >> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >> > 4 files changed, 659 insertions(+), 1 deletion(-) >> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >> > >> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >> > b/arch/arm64/boot/dts/sprd/Makefile >> > index b658c5e..f0535e6 100644 >> > --- a/arch/arm64/boot/dts/sprd/Makefile >> > +++ b/arch/arm64/boot/dts/sprd/Makefile >> > @@ -1,4 +1,5 @@ >> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >> > + sp9860g-1h10.dtb >> > >> > always := $(dtb-y) >> > subdir-y := $(dts-dirs) >> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > new file mode 100644 >> > index 000..73deb4e >> > --- /dev/null >> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > @@ -0,0 +1,531 @@ >> > +/* >> > + * Spreadtrum SP9860 SoC DTS file >> > + * >> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >> > + * >> > + * This file is licensed under a dual GPLv2 or X11 license. >> >> Please use SPDX-License-Identifier tag instead. >> > > Just to double check, if I use it like: > > SPDX-License-Identifier: (GPL-2.0 or X11) > > Is this what you mean? Yes. However, X11 is not actually correct (pretty much all dts files have it wrong). This is the X11 license[1] which is explicitly for the X Consortium and has a couple of extra clauses. While the MIT license[2] is the text that most dts files actually use (while also stating X11 license). It's obvious that everyone just copies and pastes the license and has not consulted their lawyers. > Will this file still be licensed under the same terms it was, right? Consult your lawyer. :) [...] >> > + ext_26m: ext-26m { >> >> This should be at the top-level. It is not part of the bus. > > This clock node is in 'soc' node, not under 'ap-apb'. Since there're other > clocks on SC9860 which would have 'reg' property, we thought this fixed > clock would be better under 'soc' with other clocks. But the clock is part of the board, not the soc. Or to put it another way, it's not related to anything else, so it shouldn't be a child of anything. Rob [1] https://spdx.org/licenses/X11.html [2] https://spdx.org/licenses/MIT.html
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Fri, Feb 24, 2017 at 1:57 AM, Chunyan Zhang wrote: > On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: >> On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang >> wrote: >> > From: Orson Zhai >> > >> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >> > >> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >> > and sp9860g dts is for the board level. >> > >> > Signed-off-by: Orson Zhai >> > Signed-off-by: Chunyan Zhang >> > --- >> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >> > ++ >> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >> > 4 files changed, 659 insertions(+), 1 deletion(-) >> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >> > >> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >> > b/arch/arm64/boot/dts/sprd/Makefile >> > index b658c5e..f0535e6 100644 >> > --- a/arch/arm64/boot/dts/sprd/Makefile >> > +++ b/arch/arm64/boot/dts/sprd/Makefile >> > @@ -1,4 +1,5 @@ >> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >> > + sp9860g-1h10.dtb >> > >> > always := $(dtb-y) >> > subdir-y := $(dts-dirs) >> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > new file mode 100644 >> > index 000..73deb4e >> > --- /dev/null >> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > @@ -0,0 +1,531 @@ >> > +/* >> > + * Spreadtrum SP9860 SoC DTS file >> > + * >> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >> > + * >> > + * This file is licensed under a dual GPLv2 or X11 license. >> >> Please use SPDX-License-Identifier tag instead. >> > > Just to double check, if I use it like: > > SPDX-License-Identifier: (GPL-2.0 or X11) > > Is this what you mean? Yes. However, X11 is not actually correct (pretty much all dts files have it wrong). This is the X11 license[1] which is explicitly for the X Consortium and has a couple of extra clauses. While the MIT license[2] is the text that most dts files actually use (while also stating X11 license). It's obvious that everyone just copies and pastes the license and has not consulted their lawyers. > Will this file still be licensed under the same terms it was, right? Consult your lawyer. :) [...] >> > + ext_26m: ext-26m { >> >> This should be at the top-level. It is not part of the bus. > > This clock node is in 'soc' node, not under 'ap-apb'. Since there're other > clocks on SC9860 which would have 'reg' property, we thought this fixed > clock would be better under 'soc' with other clocks. But the clock is part of the board, not the soc. Or to put it another way, it's not related to anything else, so it shouldn't be a child of anything. Rob [1] https://spdx.org/licenses/X11.html [2] https://spdx.org/licenses/MIT.html
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: > On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang >wrote: > > From: Orson Zhai > > > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > > and sp9860g dts is for the board level. > > > > Signed-off-by: Orson Zhai > > Signed-off-by: Chunyan Zhang > > --- > > arch/arm64/boot/dts/sprd/Makefile | 3 +- > > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > > ++ > > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > > 4 files changed, 659 insertions(+), 1 deletion(-) > > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > > b/arch/arm64/boot/dts/sprd/Makefile > > index b658c5e..f0535e6 100644 > > --- a/arch/arm64/boot/dts/sprd/Makefile > > +++ b/arch/arm64/boot/dts/sprd/Makefile > > @@ -1,4 +1,5 @@ > > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > > + sp9860g-1h10.dtb > > > > always := $(dtb-y) > > subdir-y := $(dts-dirs) > > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > new file mode 100644 > > index 000..73deb4e > > --- /dev/null > > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > @@ -0,0 +1,531 @@ > > +/* > > + * Spreadtrum SP9860 SoC DTS file > > + * > > + * Copyright (C) 2016, Spreadtrum Communications Inc. > > + * > > + * This file is licensed under a dual GPLv2 or X11 license. > > Please use SPDX-License-Identifier tag instead. > Just to double check, if I use it like: SPDX-License-Identifier: (GPL-2.0 or X11) Is this what you mean? Will this file still be licensed under the same terms it was, right? > > + */ > > + > > +#include > > +#include "whale2.dtsi" > > + > > +/ { > > + cpus { > > + #address-cells = <2>; > > + #size-cells = <0>; > > + > > + cpu-map { > > + cluster0 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + > > + cluster1 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + }; > > + > > + CPU0: cpu@53 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x53>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU1: cpu@530001 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530001>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU2: cpu@530002 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530002>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU3: cpu@530003 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530003>; > > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 四, 2月 23, 2017 at 06:00:20下午 -0600, Rob Herring wrote: > On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang > wrote: > > From: Orson Zhai > > > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > > and sp9860g dts is for the board level. > > > > Signed-off-by: Orson Zhai > > Signed-off-by: Chunyan Zhang > > --- > > arch/arm64/boot/dts/sprd/Makefile | 3 +- > > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > > ++ > > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > > 4 files changed, 659 insertions(+), 1 deletion(-) > > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > > b/arch/arm64/boot/dts/sprd/Makefile > > index b658c5e..f0535e6 100644 > > --- a/arch/arm64/boot/dts/sprd/Makefile > > +++ b/arch/arm64/boot/dts/sprd/Makefile > > @@ -1,4 +1,5 @@ > > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > > + sp9860g-1h10.dtb > > > > always := $(dtb-y) > > subdir-y := $(dts-dirs) > > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > new file mode 100644 > > index 000..73deb4e > > --- /dev/null > > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > @@ -0,0 +1,531 @@ > > +/* > > + * Spreadtrum SP9860 SoC DTS file > > + * > > + * Copyright (C) 2016, Spreadtrum Communications Inc. > > + * > > + * This file is licensed under a dual GPLv2 or X11 license. > > Please use SPDX-License-Identifier tag instead. > Just to double check, if I use it like: SPDX-License-Identifier: (GPL-2.0 or X11) Is this what you mean? Will this file still be licensed under the same terms it was, right? > > + */ > > + > > +#include > > +#include "whale2.dtsi" > > + > > +/ { > > + cpus { > > + #address-cells = <2>; > > + #size-cells = <0>; > > + > > + cpu-map { > > + cluster0 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + > > + cluster1 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + }; > > + > > + CPU0: cpu@53 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x53>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU1: cpu@530001 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530001>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU2: cpu@530002 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530002>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU3: cpu@530003 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530003>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > >
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhangwrote: > From: Orson Zhai > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > b/arch/arm64/boot/dts/sprd/Makefile > index b658c5e..f0535e6 100644 > --- a/arch/arm64/boot/dts/sprd/Makefile > +++ b/arch/arm64/boot/dts/sprd/Makefile > @@ -1,4 +1,5 @@ > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > + sp9860g-1h10.dtb > > always := $(dtb-y) > subdir-y := $(dts-dirs) > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. Please use SPDX-License-Identifier tag instead. > + */ > + > +#include > +#include "whale2.dtsi" > + > +/ { > + cpus { > + #address-cells = <2>; > + #size-cells = <0>; > + > + cpu-map { > + cluster0 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + > + cluster1 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + }; > + > + CPU0: cpu@53 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x53>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU1: cpu@530001 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530001>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU2: cpu@530002 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530002>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU3: cpu@530003 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530003>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU4: cpu@530100 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530100>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU5: cpu@530101 { > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Tue, Feb 21, 2017 at 12:55 AM, Chunyan Zhang wrote: > From: Orson Zhai > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > b/arch/arm64/boot/dts/sprd/Makefile > index b658c5e..f0535e6 100644 > --- a/arch/arm64/boot/dts/sprd/Makefile > +++ b/arch/arm64/boot/dts/sprd/Makefile > @@ -1,4 +1,5 @@ > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > + sp9860g-1h10.dtb > > always := $(dtb-y) > subdir-y := $(dts-dirs) > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. Please use SPDX-License-Identifier tag instead. > + */ > + > +#include > +#include "whale2.dtsi" > + > +/ { > + cpus { > + #address-cells = <2>; > + #size-cells = <0>; > + > + cpu-map { > + cluster0 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + > + cluster1 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + }; > + > + CPU0: cpu@53 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x53>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU1: cpu@530001 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530001>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU2: cpu@530002 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530002>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU3: cpu@530003 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530003>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU4: cpu@530100 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530100>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU5: cpu@530101 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
Hi Chunyan, On 23/02/17 06:20, Chunyan Zhang wrote: [...] >>> I noticed Juno use the 2), would you suggest that way? >> >> It is better to describe the HW component themselves rather than where >> they are in the topology - the address of the component will make sure >> the names are unique. So just the component type (etm, funnel, >> replicator, ) and the address they are located at. >> > > OK. And to avoid making other person confused in the future, is it > better to revise juno-base.dtsi according to this convention? > Yes, it was noticed by Olof and should be now fixed for v4.11(already queued). You can check linux-next if you want to have a look before it gets merged. -- Regards, Sudeep
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
Hi Chunyan, On 23/02/17 06:20, Chunyan Zhang wrote: [...] >>> I noticed Juno use the 2), would you suggest that way? >> >> It is better to describe the HW component themselves rather than where >> they are in the topology - the address of the component will make sure >> the names are unique. So just the component type (etm, funnel, >> replicator, ) and the address they are located at. >> > > OK. And to avoid making other person confused in the future, is it > better to revise juno-base.dtsi according to this convention? > Yes, it was noticed by Olof and should be now fixed for v4.11(already queued). You can check linux-next if you want to have a look before it gets merged. -- Regards, Sudeep
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
[...] >>> > + >>> > + soc { >>> > + soc_funnel: funnel@10001000 { >>> >>> There is no need for a label ("soc_funnel) before the device name if that >>> device is not referenced elsewhere in the DTS. The same comment applies to >>> most >>> of the component listed below. >>> >> >> OK, I will remove these labels from this DT. >> And there's another issue I'd like to discuss with you, do you think which >> way is better: >> 1) use class name which can represent this kind of components as device node >> name in DT, e.g. >> funnel@... { >> >> } >> replicator@... { >> >> } >> etb@... { >> >> } >> etf@... >> etm@... >> stm@... >> >> 2) use more descriptive device name for those which are more than one on >> a SoC, e.g. >> soc-funnel@... { >> >> } >> cluster0-funnel@... { >> >> } >> cluster1-funnel@... { >> >> } >> >> I noticed Juno use the 2), would you suggest that way? > > It is better to describe the HW component themselves rather than where > they are in the topology - the address of the component will make sure > the names are unique. So just the component type (etm, funnel, > replicator, ) and the address they are located at. > OK. And to avoid making other person confused in the future, is it better to revise juno-base.dtsi according to this convention? Thanks, Chunyan >> >> Thanks, >> Chunyan >> >>> > + compatible = "arm,coresight-funnel", "arm,primecell"; >>> > + reg = <0 0x10001000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + ports { >>> > + #address-cells = <1>; >>> > + #size-cells = <0>; >>> > + >>> > + port@0 { >>> > + reg = <0>; >>> > + soc_funnel_out_port: endpoint { >>> > + remote-endpoint = <_in>; >>> > + }; >>> > + }; >>> > + >>> > + port@1 { >>> > + reg = <0>; >>> > + soc_funnel_in_port: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = >>> > + <_funnel_out_port>; >>> > + }; >>> > + }; >>> > + }; >>> > + }; >>> > + >>> > + etb@10003000 { >>> > + compatible = "arm,coresight-tmc", "arm,primecell"; >>> > + reg = <0 0x10003000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + port { >>> > + etb_in: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = >>> > + <_funnel_out_port>; >>> > + }; >>> > + }; >>> > + }; >>> > + >>> > + cluster0_funnel: funnel@11001000 { >>> > + compatible = "arm,coresight-funnel", "arm,primecell"; >>> > + reg = <0 0x11001000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + ports { >>> > + #address-cells = <1>; >>> > + #size-cells = <0>; >>> > + >>> > + port@0 { >>> > + reg = <0>; >>> > + cluster0_funnel_out_port: endpoint { >>> > + remote-endpoint = >>> > + <_etf_in>; >>> > + }; >>> > + }; >>> > + >>> > + port@1 { >>> > + reg = <0>; >>> > + cluster0_funnel_in_port0: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = <_out>; >>> > + }; >>> > + }; >>> > + >>> > + port@2 { >>> > + reg = <1>; >>> > + cluster0_funnel_in_port1: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = <_out>; >>> > + }; >>> > + }; >>> > + >>> > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
[...] >>> > + >>> > + soc { >>> > + soc_funnel: funnel@10001000 { >>> >>> There is no need for a label ("soc_funnel) before the device name if that >>> device is not referenced elsewhere in the DTS. The same comment applies to >>> most >>> of the component listed below. >>> >> >> OK, I will remove these labels from this DT. >> And there's another issue I'd like to discuss with you, do you think which >> way is better: >> 1) use class name which can represent this kind of components as device node >> name in DT, e.g. >> funnel@... { >> >> } >> replicator@... { >> >> } >> etb@... { >> >> } >> etf@... >> etm@... >> stm@... >> >> 2) use more descriptive device name for those which are more than one on >> a SoC, e.g. >> soc-funnel@... { >> >> } >> cluster0-funnel@... { >> >> } >> cluster1-funnel@... { >> >> } >> >> I noticed Juno use the 2), would you suggest that way? > > It is better to describe the HW component themselves rather than where > they are in the topology - the address of the component will make sure > the names are unique. So just the component type (etm, funnel, > replicator, ) and the address they are located at. > OK. And to avoid making other person confused in the future, is it better to revise juno-base.dtsi according to this convention? Thanks, Chunyan >> >> Thanks, >> Chunyan >> >>> > + compatible = "arm,coresight-funnel", "arm,primecell"; >>> > + reg = <0 0x10001000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + ports { >>> > + #address-cells = <1>; >>> > + #size-cells = <0>; >>> > + >>> > + port@0 { >>> > + reg = <0>; >>> > + soc_funnel_out_port: endpoint { >>> > + remote-endpoint = <_in>; >>> > + }; >>> > + }; >>> > + >>> > + port@1 { >>> > + reg = <0>; >>> > + soc_funnel_in_port: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = >>> > + <_funnel_out_port>; >>> > + }; >>> > + }; >>> > + }; >>> > + }; >>> > + >>> > + etb@10003000 { >>> > + compatible = "arm,coresight-tmc", "arm,primecell"; >>> > + reg = <0 0x10003000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + port { >>> > + etb_in: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = >>> > + <_funnel_out_port>; >>> > + }; >>> > + }; >>> > + }; >>> > + >>> > + cluster0_funnel: funnel@11001000 { >>> > + compatible = "arm,coresight-funnel", "arm,primecell"; >>> > + reg = <0 0x11001000 0 0x1000>; >>> > + clocks = <_26m>; >>> > + clock-names = "apb_pclk"; >>> > + ports { >>> > + #address-cells = <1>; >>> > + #size-cells = <0>; >>> > + >>> > + port@0 { >>> > + reg = <0>; >>> > + cluster0_funnel_out_port: endpoint { >>> > + remote-endpoint = >>> > + <_etf_in>; >>> > + }; >>> > + }; >>> > + >>> > + port@1 { >>> > + reg = <0>; >>> > + cluster0_funnel_in_port0: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = <_out>; >>> > + }; >>> > + }; >>> > + >>> > + port@2 { >>> > + reg = <1>; >>> > + cluster0_funnel_in_port1: endpoint { >>> > + slave-mode; >>> > + remote-endpoint = <_out>; >>> > + }; >>> > + }; >>> > + >>> > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 21 February 2017 at 20:46, Chunyan Zhangwrote: > Hello Mathieu, > > On 二, 2月 21, 2017 at 09:27:44上午 -0700, Mathieu Poirier wrote: >> On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: >> > From: Orson Zhai >> >> Hello Chunyan, >> >> > >> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >> > >> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >> > and sp9860g dts is for the board level. >> > >> > Signed-off-by: Orson Zhai >> > Signed-off-by: Chunyan Zhang >> > --- >> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >> > ++ >> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >> > 4 files changed, 659 insertions(+), 1 deletion(-) >> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >> > >> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >> > b/arch/arm64/boot/dts/sprd/Makefile >> > index b658c5e..f0535e6 100644 >> > --- a/arch/arm64/boot/dts/sprd/Makefile >> > +++ b/arch/arm64/boot/dts/sprd/Makefile >> > @@ -1,4 +1,5 @@ >> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >> > + sp9860g-1h10.dtb >> > >> > always := $(dtb-y) >> > subdir-y := $(dts-dirs) >> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > new file mode 100644 >> > index 000..73deb4e >> > --- /dev/null >> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > @@ -0,0 +1,531 @@ >> > +/* >> > + * Spreadtrum SP9860 SoC DTS file >> > + * >> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >> > + * >> > + * This file is licensed under a dual GPLv2 or X11 license. >> > + */ >> > + >> > +#include >> > +#include "whale2.dtsi" >> > + >> > +/ { >> > + cpus { >> > + #address-cells = <2>; >> > + #size-cells = <0>; >> > + >> > + cpu-map { >> > + cluster0 { >> > + core0 { >> > + cpu = <>; >> > + }; >> > + core1 { >> > + cpu = <>; >> > + }; >> > + core2 { >> > + cpu = <>; >> > + }; >> > + core3 { >> > + cpu = <>; >> > + }; >> > + }; >> > + >> > + cluster1 { >> > + core0 { >> > + cpu = <>; >> > + }; >> > + core1 { >> > + cpu = <>; >> > + }; >> > + core2 { >> > + cpu = <>; >> > + }; >> > + core3 { >> > + cpu = <>; >> > + }; >> > + }; >> > + }; >> > + >> > + CPU0: cpu@53 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x53>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU1: cpu@530001 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530001>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU2: cpu@530002 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530002>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU3: cpu@530003 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530003>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU4: cpu@530100 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53",
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 21 February 2017 at 20:46, Chunyan Zhang wrote: > Hello Mathieu, > > On 二, 2月 21, 2017 at 09:27:44上午 -0700, Mathieu Poirier wrote: >> On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: >> > From: Orson Zhai >> >> Hello Chunyan, >> >> > >> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. >> > >> > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC >> > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff >> > and sp9860g dts is for the board level. >> > >> > Signed-off-by: Orson Zhai >> > Signed-off-by: Chunyan Zhang >> > --- >> > arch/arm64/boot/dts/sprd/Makefile | 3 +- >> > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 >> > ++ >> > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 >> > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 >> > 4 files changed, 659 insertions(+), 1 deletion(-) >> > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi >> > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts >> > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi >> > >> > diff --git a/arch/arm64/boot/dts/sprd/Makefile >> > b/arch/arm64/boot/dts/sprd/Makefile >> > index b658c5e..f0535e6 100644 >> > --- a/arch/arm64/boot/dts/sprd/Makefile >> > +++ b/arch/arm64/boot/dts/sprd/Makefile >> > @@ -1,4 +1,5 @@ >> > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb >> > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ >> > + sp9860g-1h10.dtb >> > >> > always := $(dtb-y) >> > subdir-y := $(dts-dirs) >> > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > new file mode 100644 >> > index 000..73deb4e >> > --- /dev/null >> > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi >> > @@ -0,0 +1,531 @@ >> > +/* >> > + * Spreadtrum SP9860 SoC DTS file >> > + * >> > + * Copyright (C) 2016, Spreadtrum Communications Inc. >> > + * >> > + * This file is licensed under a dual GPLv2 or X11 license. >> > + */ >> > + >> > +#include >> > +#include "whale2.dtsi" >> > + >> > +/ { >> > + cpus { >> > + #address-cells = <2>; >> > + #size-cells = <0>; >> > + >> > + cpu-map { >> > + cluster0 { >> > + core0 { >> > + cpu = <>; >> > + }; >> > + core1 { >> > + cpu = <>; >> > + }; >> > + core2 { >> > + cpu = <>; >> > + }; >> > + core3 { >> > + cpu = <>; >> > + }; >> > + }; >> > + >> > + cluster1 { >> > + core0 { >> > + cpu = <>; >> > + }; >> > + core1 { >> > + cpu = <>; >> > + }; >> > + core2 { >> > + cpu = <>; >> > + }; >> > + core3 { >> > + cpu = <>; >> > + }; >> > + }; >> > + }; >> > + >> > + CPU0: cpu@53 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x53>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU1: cpu@530001 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530001>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU2: cpu@530002 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530002>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU3: cpu@530003 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530003>; >> > + enable-method = "psci"; >> > + cpu-idle-states = <_PD _PD>; >> > + }; >> > + >> > + CPU4: cpu@530100 { >> > + device_type = "cpu"; >> > + compatible = "arm,cortex-a53", "arm,armv8"; >> > + reg = <0x0 0x530100>; >> > + enable-method = "psci"; >> > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
Hello Mathieu, On 二, 2月 21, 2017 at 09:27:44上午 -0700, Mathieu Poirier wrote: > On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: > > From: Orson Zhai> > Hello Chunyan, > > > > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > > and sp9860g dts is for the board level. > > > > Signed-off-by: Orson Zhai > > Signed-off-by: Chunyan Zhang > > --- > > arch/arm64/boot/dts/sprd/Makefile | 3 +- > > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > > ++ > > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > > 4 files changed, 659 insertions(+), 1 deletion(-) > > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > > b/arch/arm64/boot/dts/sprd/Makefile > > index b658c5e..f0535e6 100644 > > --- a/arch/arm64/boot/dts/sprd/Makefile > > +++ b/arch/arm64/boot/dts/sprd/Makefile > > @@ -1,4 +1,5 @@ > > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > > + sp9860g-1h10.dtb > > > > always := $(dtb-y) > > subdir-y := $(dts-dirs) > > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > new file mode 100644 > > index 000..73deb4e > > --- /dev/null > > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > @@ -0,0 +1,531 @@ > > +/* > > + * Spreadtrum SP9860 SoC DTS file > > + * > > + * Copyright (C) 2016, Spreadtrum Communications Inc. > > + * > > + * This file is licensed under a dual GPLv2 or X11 license. > > + */ > > + > > +#include > > +#include "whale2.dtsi" > > + > > +/ { > > + cpus { > > + #address-cells = <2>; > > + #size-cells = <0>; > > + > > + cpu-map { > > + cluster0 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + > > + cluster1 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + }; > > + > > + CPU0: cpu@53 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x53>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU1: cpu@530001 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530001>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU2: cpu@530002 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530002>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU3: cpu@530003 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530003>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU4: cpu@530100 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530100>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU5:
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
Hello Mathieu, On 二, 2月 21, 2017 at 09:27:44上午 -0700, Mathieu Poirier wrote: > On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: > > From: Orson Zhai > > Hello Chunyan, > > > > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > > and sp9860g dts is for the board level. > > > > Signed-off-by: Orson Zhai > > Signed-off-by: Chunyan Zhang > > --- > > arch/arm64/boot/dts/sprd/Makefile | 3 +- > > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > > ++ > > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > > 4 files changed, 659 insertions(+), 1 deletion(-) > > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > > b/arch/arm64/boot/dts/sprd/Makefile > > index b658c5e..f0535e6 100644 > > --- a/arch/arm64/boot/dts/sprd/Makefile > > +++ b/arch/arm64/boot/dts/sprd/Makefile > > @@ -1,4 +1,5 @@ > > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > > + sp9860g-1h10.dtb > > > > always := $(dtb-y) > > subdir-y := $(dts-dirs) > > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > new file mode 100644 > > index 000..73deb4e > > --- /dev/null > > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > > @@ -0,0 +1,531 @@ > > +/* > > + * Spreadtrum SP9860 SoC DTS file > > + * > > + * Copyright (C) 2016, Spreadtrum Communications Inc. > > + * > > + * This file is licensed under a dual GPLv2 or X11 license. > > + */ > > + > > +#include > > +#include "whale2.dtsi" > > + > > +/ { > > + cpus { > > + #address-cells = <2>; > > + #size-cells = <0>; > > + > > + cpu-map { > > + cluster0 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + > > + cluster1 { > > + core0 { > > + cpu = <>; > > + }; > > + core1 { > > + cpu = <>; > > + }; > > + core2 { > > + cpu = <>; > > + }; > > + core3 { > > + cpu = <>; > > + }; > > + }; > > + }; > > + > > + CPU0: cpu@53 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x53>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU1: cpu@530001 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530001>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU2: cpu@530002 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530002>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU3: cpu@530003 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530003>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU4: cpu@530100 { > > + device_type = "cpu"; > > + compatible = "arm,cortex-a53", "arm,armv8"; > > + reg = <0x0 0x530100>; > > + enable-method = "psci"; > > + cpu-idle-states = <_PD _PD>; > > + }; > > + > > + CPU5: cpu@530101 { > > + device_type = "cpu"; > > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: > From: Orson ZhaiHello Chunyan, > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > b/arch/arm64/boot/dts/sprd/Makefile > index b658c5e..f0535e6 100644 > --- a/arch/arm64/boot/dts/sprd/Makefile > +++ b/arch/arm64/boot/dts/sprd/Makefile > @@ -1,4 +1,5 @@ > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > + sp9860g-1h10.dtb > > always := $(dtb-y) > subdir-y := $(dts-dirs) > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. > + */ > + > +#include > +#include "whale2.dtsi" > + > +/ { > + cpus { > + #address-cells = <2>; > + #size-cells = <0>; > + > + cpu-map { > + cluster0 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + > + cluster1 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + }; > + > + CPU0: cpu@53 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x53>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU1: cpu@530001 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530001>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU2: cpu@530002 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530002>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU3: cpu@530003 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530003>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU4: cpu@530100 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530100>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU5: cpu@530101 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530101>; > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On Tue, Feb 21, 2017 at 02:55:02PM +0800, Chunyan Zhang wrote: > From: Orson Zhai Hello Chunyan, > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > > diff --git a/arch/arm64/boot/dts/sprd/Makefile > b/arch/arm64/boot/dts/sprd/Makefile > index b658c5e..f0535e6 100644 > --- a/arch/arm64/boot/dts/sprd/Makefile > +++ b/arch/arm64/boot/dts/sprd/Makefile > @@ -1,4 +1,5 @@ > -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb > +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ > + sp9860g-1h10.dtb > > always := $(dtb-y) > subdir-y := $(dts-dirs) > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. > + */ > + > +#include > +#include "whale2.dtsi" > + > +/ { > + cpus { > + #address-cells = <2>; > + #size-cells = <0>; > + > + cpu-map { > + cluster0 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + > + cluster1 { > + core0 { > + cpu = <>; > + }; > + core1 { > + cpu = <>; > + }; > + core2 { > + cpu = <>; > + }; > + core3 { > + cpu = <>; > + }; > + }; > + }; > + > + CPU0: cpu@53 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x53>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU1: cpu@530001 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530001>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU2: cpu@530002 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530002>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU3: cpu@530003 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530003>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU4: cpu@530100 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530100>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > + }; > + > + CPU5: cpu@530101 { > + device_type = "cpu"; > + compatible = "arm,cortex-a53", "arm,armv8"; > + reg = <0x0 0x530101>; > + enable-method = "psci"; > + cpu-idle-states = <_PD _PD>; > +
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 21/02/17 06:55, Chunyan Zhang wrote: > From: Orson Zhai> > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > [...] > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. > + */ > + [...] > + > + idle-states{ > + entry-method = "arm,psci"; > + > + CORE_PD: core_pd { > + compatible = "arm,idle-state"; > + entry-latency-us = <1000>; > + exit-latency-us = <700>; > + min-residency-us = <2500>; > + local-timer-stop; > + arm,psci-suspend-param = <0x00010002>; > + }; > + > + CLUSTER_PD: cluster_pd { > + compatible = "arm,idle-state"; > + entry-latency-us = <1000>; > + exit-latency-us = <1000>; > + min-residency-us = <3000>; > + local-timer-stop; > + arm,psci-suspend-param = <0x01010003>; > + }; Thanks for dropping the hacked up "deep sleep" state :) This version looks fine to me. -- Regards, Sudeep
Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
On 21/02/17 06:55, Chunyan Zhang wrote: > From: Orson Zhai > > SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. > > According to regular hierarchy of sprd dts, whale2.dtsi contains SoC > peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff > and sp9860g dts is for the board level. > > Signed-off-by: Orson Zhai > Signed-off-by: Chunyan Zhang > --- > arch/arm64/boot/dts/sprd/Makefile | 3 +- > arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 > ++ > arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 > arch/arm64/boot/dts/sprd/whale2.dtsi | 70 > 4 files changed, 659 insertions(+), 1 deletion(-) > create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi > create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts > create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi > [...] > diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi > b/arch/arm64/boot/dts/sprd/sc9860.dtsi > new file mode 100644 > index 000..73deb4e > --- /dev/null > +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi > @@ -0,0 +1,531 @@ > +/* > + * Spreadtrum SP9860 SoC DTS file > + * > + * Copyright (C) 2016, Spreadtrum Communications Inc. > + * > + * This file is licensed under a dual GPLv2 or X11 license. > + */ > + [...] > + > + idle-states{ > + entry-method = "arm,psci"; > + > + CORE_PD: core_pd { > + compatible = "arm,idle-state"; > + entry-latency-us = <1000>; > + exit-latency-us = <700>; > + min-residency-us = <2500>; > + local-timer-stop; > + arm,psci-suspend-param = <0x00010002>; > + }; > + > + CLUSTER_PD: cluster_pd { > + compatible = "arm,idle-state"; > + entry-latency-us = <1000>; > + exit-latency-us = <1000>; > + min-residency-us = <3000>; > + local-timer-stop; > + arm,psci-suspend-param = <0x01010003>; > + }; Thanks for dropping the hacked up "deep sleep" state :) This version looks fine to me. -- Regards, Sudeep
[PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
From: Orson ZhaiSC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. According to regular hierarchy of sprd dts, whale2.dtsi contains SoC peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff and sp9860g dts is for the board level. Signed-off-by: Orson Zhai Signed-off-by: Chunyan Zhang --- arch/arm64/boot/dts/sprd/Makefile | 3 +- arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 ++ arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 arch/arm64/boot/dts/sprd/whale2.dtsi | 70 4 files changed, 659 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi diff --git a/arch/arm64/boot/dts/sprd/Makefile b/arch/arm64/boot/dts/sprd/Makefile index b658c5e..f0535e6 100644 --- a/arch/arm64/boot/dts/sprd/Makefile +++ b/arch/arm64/boot/dts/sprd/Makefile @@ -1,4 +1,5 @@ -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ + sp9860g-1h10.dtb always := $(dtb-y) subdir-y := $(dts-dirs) diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi b/arch/arm64/boot/dts/sprd/sc9860.dtsi new file mode 100644 index 000..73deb4e --- /dev/null +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi @@ -0,0 +1,531 @@ +/* + * Spreadtrum SP9860 SoC DTS file + * + * Copyright (C) 2016, Spreadtrum Communications Inc. + * + * This file is licensed under a dual GPLv2 or X11 license. + */ + +#include +#include "whale2.dtsi" + +/ { + cpus { + #address-cells = <2>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <>; + }; + core1 { + cpu = <>; + }; + core2 { + cpu = <>; + }; + core3 { + cpu = <>; + }; + }; + + cluster1 { + core0 { + cpu = <>; + }; + core1 { + cpu = <>; + }; + core2 { + cpu = <>; + }; + core3 { + cpu = <>; + }; + }; + }; + + CPU0: cpu@53 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x53>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU1: cpu@530001 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530001>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU2: cpu@530002 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530002>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU3: cpu@530003 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530003>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU4: cpu@530100 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530100>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU5: cpu@530101 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530101>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU6: cpu@530102 { + device_type = "cpu"; + compatible
[PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G
From: Orson Zhai SC9860G is a 8 cores of A53 SoC with 4G LTE support SoC from Spreadtrum. According to regular hierarchy of sprd dts, whale2.dtsi contains SoC peripherals IP nodes, sc9860.dtsi contains stuff related to ARM core stuff and sp9860g dts is for the board level. Signed-off-by: Orson Zhai Signed-off-by: Chunyan Zhang --- arch/arm64/boot/dts/sprd/Makefile | 3 +- arch/arm64/boot/dts/sprd/sc9860.dtsi | 531 ++ arch/arm64/boot/dts/sprd/sp9860g-1h10.dts | 56 arch/arm64/boot/dts/sprd/whale2.dtsi | 70 4 files changed, 659 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/sprd/sc9860.dtsi create mode 100644 arch/arm64/boot/dts/sprd/sp9860g-1h10.dts create mode 100644 arch/arm64/boot/dts/sprd/whale2.dtsi diff --git a/arch/arm64/boot/dts/sprd/Makefile b/arch/arm64/boot/dts/sprd/Makefile index b658c5e..f0535e6 100644 --- a/arch/arm64/boot/dts/sprd/Makefile +++ b/arch/arm64/boot/dts/sprd/Makefile @@ -1,4 +1,5 @@ -dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb +dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \ + sp9860g-1h10.dtb always := $(dtb-y) subdir-y := $(dts-dirs) diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi b/arch/arm64/boot/dts/sprd/sc9860.dtsi new file mode 100644 index 000..73deb4e --- /dev/null +++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi @@ -0,0 +1,531 @@ +/* + * Spreadtrum SP9860 SoC DTS file + * + * Copyright (C) 2016, Spreadtrum Communications Inc. + * + * This file is licensed under a dual GPLv2 or X11 license. + */ + +#include +#include "whale2.dtsi" + +/ { + cpus { + #address-cells = <2>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <>; + }; + core1 { + cpu = <>; + }; + core2 { + cpu = <>; + }; + core3 { + cpu = <>; + }; + }; + + cluster1 { + core0 { + cpu = <>; + }; + core1 { + cpu = <>; + }; + core2 { + cpu = <>; + }; + core3 { + cpu = <>; + }; + }; + }; + + CPU0: cpu@53 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x53>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU1: cpu@530001 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530001>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU2: cpu@530002 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530002>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU3: cpu@530003 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530003>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU4: cpu@530100 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530100>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU5: cpu@530101 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530101>; + enable-method = "psci"; + cpu-idle-states = <_PD _PD>; + }; + + CPU6: cpu@530102 { + device_type = "cpu"; + compatible = "arm,cortex-a53", "arm,armv8"; + reg = <0x0 0x530102>; +