Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G

2017-02-27 Thread Chunyan Zhang
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

2017-02-27 Thread Chunyan Zhang
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

2017-02-24 Thread Rob Herring
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

2017-02-24 Thread Rob Herring
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

2017-02-24 Thread Chunyan Zhang
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

2017-02-24 Thread Chunyan Zhang
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

2017-02-23 Thread Rob Herring
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 {
> + 

Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G

2017-02-23 Thread Rob Herring
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

2017-02-23 Thread Sudeep Holla
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

2017-02-23 Thread Sudeep Holla
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

2017-02-22 Thread Chunyan Zhang
[...]

>>> > +
>>> > +   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

2017-02-22 Thread Chunyan Zhang
[...]

>>> > +
>>> > +   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

2017-02-22 Thread Mathieu Poirier
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", 

Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G

2017-02-22 Thread Mathieu Poirier
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

2017-02-21 Thread Chunyan Zhang
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

2017-02-21 Thread Chunyan Zhang
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

2017-02-21 Thread Mathieu Poirier
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>;
> + 

Re: [PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G

2017-02-21 Thread Mathieu Poirier
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

2017-02-21 Thread Sudeep Holla


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

2017-02-21 Thread Sudeep Holla


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

2017-02-20 Thread Chunyan Zhang
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 

[PATCH V2 1/3] arm64: dts: Add basic DT to support Spreadtrum's SP9860G

2017-02-20 Thread Chunyan Zhang
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>;
+