diff mbox

[U-Boot,1/3] dm: dts: ls2085a: Bring in ls2085a dts files from linux kernel

Message ID 1435319316-28702-1-git-send-email-haikun.wang@freescale.com
State Accepted
Delegated to: York Sun
Headers show

Commit Message

Haikun.Wang@freescale.com June 26, 2015, 11:48 a.m. UTC
From: Haikun Wang <Haikun.Wang@freescale.com>

Bring in required device tree files for ls2085a from Linux.
These are initially unchanged and have a number of pieces not needed by U-Boot.

Signed-off-by: Haikun Wang <Haikun.Wang@freescale.com>
---
 arch/arm/dts/fsl-ls2085a.dtsi | 120 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 120 insertions(+)
 create mode 100644 arch/arm/dts/fsl-ls2085a.dtsi

Comments

Haikun.Wang@freescale.com July 8, 2015, 6:51 a.m. UTC | #1
On 6/26/2015 7:53 PM, Haikun Wang wrote:
> From: Haikun Wang <Haikun.Wang@freescale.com>
>
> Bring in required device tree files for ls2085a from Linux.
> These are initially unchanged and have a number of pieces not needed by U-Boot.
Hi Simon,

I got below comment when review this patch internal.
Please help me confirm.

"For new platforms like ARM64, it was discussed to not duplicate the DTS 
in u-boot and Linux, simply because that will break compatibility with 
other bootloaders like Linaro's BootMonitor and UEFI bootloader, which 
do not place the DTS in the bootloader. Also in near future, with DTS 
being replaced by ACPI gradually for ARM64 platforms, it was discussed 
that in a longer run it would be beneficial to move DTS out of both 
u-boot and Linux and maintain it as a separate tree."

Best regards,
Wang Haikun
>
> Signed-off-by: Haikun Wang <Haikun.Wang@freescale.com>
> ---
>   arch/arm/dts/fsl-ls2085a.dtsi | 120 ++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 120 insertions(+)
>   create mode 100644 arch/arm/dts/fsl-ls2085a.dtsi
>
> diff --git a/arch/arm/dts/fsl-ls2085a.dtsi b/arch/arm/dts/fsl-ls2085a.dtsi
> new file mode 100644
> index 0000000..f0679a8
> --- /dev/null
> +++ b/arch/arm/dts/fsl-ls2085a.dtsi
> @@ -0,0 +1,120 @@
> +/*
> + * Freescale ls2085a SOC common device tree source
> + *
> + * Copyright 2013-2015 Freescale Semiconductor, Inc.
> + *
> + * SPDX-License-Identifier:	GPL-2.0+
> + */
> +
> +/ {
> +	compatible = "fsl,ls2085a";
> +	interrupt-parent = <&gic>;
> +	#address-cells = <2>;
> +	#size-cells = <2>;
> +
> +	cpus {
> +		#address-cells = <2>;
> +		#size-cells = <0>;
> +
> +		/*
> +		 * We expect the enable-method for cpu's to be "psci", but this
> +		 * is dependent on the SoC FW, which will fill this in.
> +		 *
> +		 * Currently supported enable-method is psci v0.2
> +		 */
> +
> +		/* We have 4 clusters having 2 Cortex-A57 cores each */
> +		cpu@0 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x0>;
> +		};
> +
> +		cpu@1 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x1>;
> +		};
> +
> +		cpu@100 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x100>;
> +		};
> +
> +		cpu@101 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x101>;
> +		};
> +
> +		cpu@200 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x200>;
> +		};
> +
> +		cpu@201 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x201>;
> +		};
> +
> +		cpu@300 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x300>;
> +		};
> +
> +		cpu@301 {
> +			device_type = "cpu";
> +			compatible = "arm,cortex-a57";
> +			reg = <0x0 0x301>;
> +		};
> +	};
> +
> +	memory@80000000 {
> +		device_type = "memory";
> +		reg = <0x00000000 0x80000000 0 0x80000000>;
> +		      /* DRAM space - 1, size : 2 GB DRAM */
> +	};
> +
> +	gic: interrupt-controller@6000000 {
> +		compatible = "arm,gic-v3";
> +		reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
> +		      <0x0 0x06100000 0 0x100000>; /* GICR (RD_base + SGI_base) */
> +		#interrupt-cells = <3>;
> +		interrupt-controller;
> +		interrupts = <1 9 0x4>;
> +	};
> +
> +	timer {
> +		compatible = "arm,armv8-timer";
> +		interrupts = <1 13 0x8>, /* Physical Secure PPI, active-low */
> +			     <1 14 0x8>, /* Physical Non-Secure PPI, active-low */
> +			     <1 11 0x8>, /* Virtual PPI, active-low */
> +			     <1 10 0x8>; /* Hypervisor PPI, active-low */
> +	};
> +
> +	serial0: serial@21c0500 {
> +		device_type = "serial";
> +		compatible = "fsl,ns16550", "ns16550a";
> +		reg = <0x0 0x21c0500 0x0 0x100>;
> +		clock-frequency = <0>;	/* Updated by bootloader */
> +		interrupts = <0 32 0x1>; /* edge triggered */
> +	};
> +
> +	serial1: serial@21c0600 {
> +		device_type = "serial";
> +		compatible = "fsl,ns16550", "ns16550a";
> +		reg = <0x0 0x21c0600 0x0 0x100>;
> +		clock-frequency = <0>; 	/* Updated by bootloader */
> +		interrupts = <0 32 0x1>; /* edge triggered */
> +	};
> +
> +	fsl_mc: fsl-mc@80c000000 {
> +		compatible = "fsl,qoriq-mc";
> +		reg = <0x00000008 0x0c000000 0 0x40>,	 /* MC portal base */
> +		      <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
> +	};
> +};
>
Bin Meng July 8, 2015, 7:13 a.m. UTC | #2
Hi,

On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com> wrote:
> On 6/26/2015 7:53 PM, Haikun Wang wrote:
>> From: Haikun Wang <Haikun.Wang@freescale.com>
>>
>> Bring in required device tree files for ls2085a from Linux.
>> These are initially unchanged and have a number of pieces not needed by U-Boot.
> Hi Simon,
>
> I got below comment when review this patch internal.
> Please help me confirm.
>
> "For new platforms like ARM64, it was discussed to not duplicate the DTS
> in u-boot and Linux, simply because that will break compatibility with
> other bootloaders like Linaro's BootMonitor and UEFI bootloader, which
> do not place the DTS in the bootloader. Also in near future, with DTS
> being replaced by ACPI gradually for ARM64 platforms, it was discussed
> that in a longer run it would be beneficial to move DTS out of both
> u-boot and Linux and maintain it as a separate tree."
>

I think UEFI + ACPI is only required for ARMv8 servers, not for all
ARMv8 processors. Is ls2085a a processor targeting the server market?

[snip]

Regards,
Bin
Haikun.Wang@freescale.com July 8, 2015, 7:27 a.m. UTC | #3
On 7/8/2015 3:13 PM, Bin Meng wrote:
> Hi,
>
> On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com> wrote:
>> On 6/26/2015 7:53 PM, Haikun Wang wrote:
>>> From: Haikun Wang <Haikun.Wang@freescale.com>
>>>
>>> Bring in required device tree files for ls2085a from Linux.
>>> These are initially unchanged and have a number of pieces not needed by U-Boot.
>> Hi Simon,
>>
>> I got below comment when review this patch internal.
>> Please help me confirm.
>>
>> "For new platforms like ARM64, it was discussed to not duplicate the DTS
>> in u-boot and Linux, simply because that will break compatibility with
>> other bootloaders like Linaro's BootMonitor and UEFI bootloader, which
>> do not place the DTS in the bootloader. Also in near future, with DTS
>> being replaced by ACPI gradually for ARM64 platforms, it was discussed
>> that in a longer run it would be beneficial to move DTS out of both
>> u-boot and Linux and maintain it as a separate tree."
>>
>
> I think UEFI + ACPI is only required for ARMv8 servers, not for all
> ARMv8 processors. Is ls2085a a processor targeting the server market?
No, at least it's not our major market.
I want to know whether we have made a conclusion that u-boot will not 
add Arm64 dts files?

Best regards,
Wang Haikun
>
> [snip]
>
> Regards,
> Bin
>
Bhupesh Sharma July 8, 2015, 7:31 a.m. UTC | #4
> -----Original Message-----
> From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
> Haikun
> On 7/8/2015 3:13 PM, Bin Meng wrote:
> > Hi,
> >
> > On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com>
> wrote:
> >> On 6/26/2015 7:53 PM, Haikun Wang wrote:
> >>> From: Haikun Wang <Haikun.Wang@freescale.com>
> >>>
> >>> Bring in required device tree files for ls2085a from Linux.
> >>> These are initially unchanged and have a number of pieces not needed
> by U-Boot.
> >> Hi Simon,
> >>
> >> I got below comment when review this patch internal.
> >> Please help me confirm.
> >>
> >> "For new platforms like ARM64, it was discussed to not duplicate the
> >> DTS in u-boot and Linux, simply because that will break compatibility
> >> with other bootloaders like Linaro's BootMonitor and UEFI bootloader,
> >> which do not place the DTS in the bootloader. Also in near future,
> >> with DTS being replaced by ACPI gradually for ARM64 platforms, it was
> >> discussed that in a longer run it would be beneficial to move DTS out
> >> of both u-boot and Linux and maintain it as a separate tree."
> >>
> >
> > I think UEFI + ACPI is only required for ARMv8 servers, not for all
> > ARMv8 processors. Is ls2085a a processor targeting the server market?
> No, at least it's not our major market.
> I want to know whether we have made a conclusion that u-boot will not add
> Arm64 dts files?

Adding Russell and Mark for their thoughts.

AFAIK there were discussions to generate common DTS files for PPC and ARM platforms,
where it was discussed that in a longer run it would be beneficial to move DTS out
of both u-boot and Linux and maintain it as a separate tree.

Regards,
Bhupesh

> Best regards,
> Wang Haikun
> >
> > [snip]
> >
> > Regards,
> > Bin
> >
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
Albert ARIBAUD July 8, 2015, 9:19 a.m. UTC | #5
Hello Sharma,

On Wed, 8 Jul 2015 07:31:47 +0000, Sharma Bhupesh
<bhupesh.sharma@freescale.com> wrote:
> > -----Original Message-----
> > From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
> > Haikun
> > On 7/8/2015 3:13 PM, Bin Meng wrote:
> > > Hi,
> > >
> > > On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com>
> > wrote:
> > >> On 6/26/2015 7:53 PM, Haikun Wang wrote:
> > >>> From: Haikun Wang <Haikun.Wang@freescale.com>
> > >>>
> > >>> Bring in required device tree files for ls2085a from Linux.
> > >>> These are initially unchanged and have a number of pieces not needed
> > by U-Boot.
> > >> Hi Simon,
> > >>
> > >> I got below comment when review this patch internal.
> > >> Please help me confirm.
> > >>
> > >> "For new platforms like ARM64, it was discussed to not duplicate the
> > >> DTS in u-boot and Linux, simply because that will break compatibility
> > >> with other bootloaders like Linaro's BootMonitor and UEFI bootloader,
> > >> which do not place the DTS in the bootloader. Also in near future,
> > >> with DTS being replaced by ACPI gradually for ARM64 platforms, it was
> > >> discussed that in a longer run it would be beneficial to move DTS out
> > >> of both u-boot and Linux and maintain it as a separate tree."
> > >>
> > >
> > > I think UEFI + ACPI is only required for ARMv8 servers, not for all
> > > ARMv8 processors. Is ls2085a a processor targeting the server market?
> > No, at least it's not our major market.
> > I want to know whether we have made a conclusion that u-boot will not add
> > Arm64 dts files?
> 
> Adding Russell and Mark for their thoughts.
> 
> AFAIK there were discussions to generate common DTS files for PPC and ARM platforms,
> where it was discussed that in a longer run it would be beneficial to move DTS out
> of both u-boot and Linux and maintain it as a separate tree.

This might be what happens in the long term (and I pretty much agree
with having DTS common to, and separate from, any project that uses
them even though that means yet one more configuration item to manage
at the full project delivery level), but precisely because it is a
long term goal, it is not what's going on right now.

In the interim, and AFAIAC, I'm fine with DTS files living in U-Boot.
And I'd be finer yet with a simple way to specify where the DTS files
can be searched for at build time, using e.g. an env var, something
like:

  DTC_PATH = "/home/dev/linux/arch/arm/boot/dtc" tools/buildman/...

I believe this would be quite easy to implement in both U-Boot and
Linux with dtc_cpp_flags, by passing DTC_PATH as a -I option.

One could even specify a set of paths, which would produce several -I
options, for instance making dtc search first in U-Boot's own repo,
then in the standalone DTS files projects repo (once a standalone
DTS files project exists, that is). Looking in U-Boot first would allow
using U-boot as a staging area for new DTS files until the standalone
DTS project picks them up.

> Regards,
> Bhupesh

Amicalement,
Bhupesh Sharma July 8, 2015, 10:31 a.m. UTC | #6
Hi Albert

> -----Original Message-----
> From: Albert ARIBAUD [mailto:albert.u.boot@aribaud.net]
> Sent: Wednesday, July 08, 2015 2:50 PM
> To: Sharma Bhupesh-B45370
> Cc: Wang Haikun-B53464; Bin Meng; Russell King; Mark Rutland; Sun York-
> R58495; Kushwaha Prabhakar-B32579; u-boot@lists.denx.de
> Subject: Re: [U-Boot] [PATCH 1/3] dm: dts: ls2085a: Bring in ls2085a dts
> files from linux kernel
> 
> Hello Sharma,
> 
> On Wed, 8 Jul 2015 07:31:47 +0000, Sharma Bhupesh
> <bhupesh.sharma@freescale.com> wrote:
> > > -----Original Message-----
> > > From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
> > > Haikun On 7/8/2015 3:13 PM, Bin Meng wrote:
> > > > Hi,
> > > >
> > > > On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun
> > > > <Haikun.Wang@freescale.com>
> > > wrote:
> > > >> On 6/26/2015 7:53 PM, Haikun Wang wrote:
> > > >>> From: Haikun Wang <Haikun.Wang@freescale.com>
> > > >>>
> > > >>> Bring in required device tree files for ls2085a from Linux.
> > > >>> These are initially unchanged and have a number of pieces not
> > > >>> needed
> > > by U-Boot.
> > > >> Hi Simon,
> > > >>
> > > >> I got below comment when review this patch internal.
> > > >> Please help me confirm.
> > > >>
> > > >> "For new platforms like ARM64, it was discussed to not duplicate
> > > >> the DTS in u-boot and Linux, simply because that will break
> > > >> compatibility with other bootloaders like Linaro's BootMonitor
> > > >> and UEFI bootloader, which do not place the DTS in the
> > > >> bootloader. Also in near future, with DTS being replaced by ACPI
> > > >> gradually for ARM64 platforms, it was discussed that in a longer
> > > >> run it would be beneficial to move DTS out of both u-boot and
> Linux and maintain it as a separate tree."
> > > >>
> > > >
> > > > I think UEFI + ACPI is only required for ARMv8 servers, not for
> > > > all
> > > > ARMv8 processors. Is ls2085a a processor targeting the server
> market?
> > > No, at least it's not our major market.
> > > I want to know whether we have made a conclusion that u-boot will
> > > not add
> > > Arm64 dts files?
> >
> > Adding Russell and Mark for their thoughts.
> >
> > AFAIK there were discussions to generate common DTS files for PPC and
> > ARM platforms, where it was discussed that in a longer run it would be
> > beneficial to move DTS out of both u-boot and Linux and maintain it as
> a separate tree.
> 
> This might be what happens in the long term (and I pretty much agree with
> having DTS common to, and separate from, any project that uses them even
> though that means yet one more configuration item to manage at the full
> project delivery level), but precisely because it is a long term goal, it
> is not what's going on right now.
> 
> In the interim, and AFAIAC, I'm fine with DTS files living in U-Boot.
> And I'd be finer yet with a simple way to specify where the DTS files can
> be searched for at build time, using e.g. an env var, something
> like:
> 
>   DTC_PATH = "/home/dev/linux/arch/arm/boot/dtc" tools/buildman/...
> 
> I believe this would be quite easy to implement in both U-Boot and Linux
> with dtc_cpp_flags, by passing DTC_PATH as a -I option.
> 
> One could even specify a set of paths, which would produce several -I
> options, for instance making dtc search first in U-Boot's own repo, then
> in the standalone DTS files projects repo (once a standalone DTS files
> project exists, that is). Looking in U-Boot first would allow using U-
> boot as a staging area for new DTS files until the standalone DTS project
> picks them up.
> 

I am in agreement, with what you said above, but we must be careful to not introduce
any dependencies in Linux dts assuming that the u-boot dts will fix them up or implement
them. With Linaro BootMonitor and UEFI like bootloaders, which don't have the comprehensive
DTS infrastructure, nor the dts fixup infrastructure, we should be pushing u-boot
dts changes back to the Linux dts, to make sure that Linux boots fine with other
ARM64 bootloaders like UEFI.

Regards,
Bhupesh

> Amicalement,
> --
> Albert.
Albert ARIBAUD July 8, 2015, 2:04 p.m. UTC | #7
Hello Sharma,

On Wed, 8 Jul 2015 10:31:45 +0000, Sharma Bhupesh
<bhupesh.sharma@freescale.com> wrote:
> Hi Albert
> 
> > -----Original Message-----
> > From: Albert ARIBAUD [mailto:albert.u.boot@aribaud.net]
> > Sent: Wednesday, July 08, 2015 2:50 PM
> > To: Sharma Bhupesh-B45370
> > Cc: Wang Haikun-B53464; Bin Meng; Russell King; Mark Rutland; Sun York-
> > R58495; Kushwaha Prabhakar-B32579; u-boot@lists.denx.de
> > Subject: Re: [U-Boot] [PATCH 1/3] dm: dts: ls2085a: Bring in ls2085a dts
> > files from linux kernel
> > 
> > Hello Sharma,
> > 
> > On Wed, 8 Jul 2015 07:31:47 +0000, Sharma Bhupesh
> > <bhupesh.sharma@freescale.com> wrote:
> > > > -----Original Message-----
> > > > From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
> > > > Haikun On 7/8/2015 3:13 PM, Bin Meng wrote:
> > > > > Hi,
> > > > >
> > > > > On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun
> > > > > <Haikun.Wang@freescale.com>
> > > > wrote:
> > > > >> On 6/26/2015 7:53 PM, Haikun Wang wrote:
> > > > >>> From: Haikun Wang <Haikun.Wang@freescale.com>
> > > > >>>
> > > > >>> Bring in required device tree files for ls2085a from Linux.
> > > > >>> These are initially unchanged and have a number of pieces not
> > > > >>> needed
> > > > by U-Boot.
> > > > >> Hi Simon,
> > > > >>
> > > > >> I got below comment when review this patch internal.
> > > > >> Please help me confirm.
> > > > >>
> > > > >> "For new platforms like ARM64, it was discussed to not duplicate
> > > > >> the DTS in u-boot and Linux, simply because that will break
> > > > >> compatibility with other bootloaders like Linaro's BootMonitor
> > > > >> and UEFI bootloader, which do not place the DTS in the
> > > > >> bootloader. Also in near future, with DTS being replaced by ACPI
> > > > >> gradually for ARM64 platforms, it was discussed that in a longer
> > > > >> run it would be beneficial to move DTS out of both u-boot and
> > Linux and maintain it as a separate tree."
> > > > >>
> > > > >
> > > > > I think UEFI + ACPI is only required for ARMv8 servers, not for
> > > > > all
> > > > > ARMv8 processors. Is ls2085a a processor targeting the server
> > market?
> > > > No, at least it's not our major market.
> > > > I want to know whether we have made a conclusion that u-boot will
> > > > not add
> > > > Arm64 dts files?
> > >
> > > Adding Russell and Mark for their thoughts.
> > >
> > > AFAIK there were discussions to generate common DTS files for PPC and
> > > ARM platforms, where it was discussed that in a longer run it would be
> > > beneficial to move DTS out of both u-boot and Linux and maintain it as
> > a separate tree.
> > 
> > This might be what happens in the long term (and I pretty much agree with
> > having DTS common to, and separate from, any project that uses them even
> > though that means yet one more configuration item to manage at the full
> > project delivery level), but precisely because it is a long term goal, it
> > is not what's going on right now.
> > 
> > In the interim, and AFAIAC, I'm fine with DTS files living in U-Boot.
> > And I'd be finer yet with a simple way to specify where the DTS files can
> > be searched for at build time, using e.g. an env var, something
> > like:
> > 
> >   DTC_PATH = "/home/dev/linux/arch/arm/boot/dtc" tools/buildman/...
> > 
> > I believe this would be quite easy to implement in both U-Boot and Linux
> > with dtc_cpp_flags, by passing DTC_PATH as a -I option.
> > 
> > One could even specify a set of paths, which would produce several -I
> > options, for instance making dtc search first in U-Boot's own repo, then
> > in the standalone DTS files projects repo (once a standalone DTS files
> > project exists, that is). Looking in U-Boot first would allow using U-
> > boot as a staging area for new DTS files until the standalone DTS project
> > picks them up.
> > 
> 
> I am in agreement, with what you said above, but we must be careful to not introduce
> any dependencies in Linux dts assuming that the u-boot dts will fix them up or implement
> them. With Linaro BootMonitor and UEFI like bootloaders, which don't have the comprehensive
> DTS infrastructure, nor the dts fixup infrastructure, we should be pushing u-boot
> dts changes back to the Linux dts, to make sure that Linux boots fine with other
> ARM64 bootloaders like UEFI.

Agreed: DTS files should be designed to work with all projects that use
them, even DTS files temporarily provided within U-Boot.

> Regards,
> Bhupesh

Amicalement,
Mark Rutland July 13, 2015, 9:28 a.m. UTC | #8
On Wed, Jul 08, 2015 at 08:31:47AM +0100, Sharma Bhupesh wrote:
> > -----Original Message-----
> > From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
> > Haikun
> > On 7/8/2015 3:13 PM, Bin Meng wrote:
> > > Hi,
> > >
> > > On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com>
> > wrote:
> > >> On 6/26/2015 7:53 PM, Haikun Wang wrote:
> > >>> From: Haikun Wang <Haikun.Wang@freescale.com>
> > >>>
> > >>> Bring in required device tree files for ls2085a from Linux.
> > >>> These are initially unchanged and have a number of pieces not needed
> > by U-Boot.
> > >> Hi Simon,
> > >>
> > >> I got below comment when review this patch internal.
> > >> Please help me confirm.
> > >>
> > >> "For new platforms like ARM64, it was discussed to not duplicate the
> > >> DTS in u-boot and Linux, simply because that will break compatibility
> > >> with other bootloaders like Linaro's BootMonitor and UEFI bootloader,
> > >> which do not place the DTS in the bootloader. Also in near future,
> > >> with DTS being replaced by ACPI gradually for ARM64 platforms, it was
> > >> discussed that in a longer run it would be beneficial to move DTS out
> > >> of both u-boot and Linux and maintain it as a separate tree."
> > >>
> > >
> > > I think UEFI + ACPI is only required for ARMv8 servers, not for all
> > > ARMv8 processors. Is ls2085a a processor targeting the server market?
> > No, at least it's not our major market.
> > I want to know whether we have made a conclusion that u-boot will not add
> > Arm64 dts files?
> 
> Adding Russell and Mark for their thoughts.
> 
> AFAIK there were discussions to generate common DTS files for PPC and ARM platforms,
> where it was discussed that in a longer run it would be beneficial to move DTS out
> of both u-boot and Linux and maintain it as a separate tree.

While I would like to see dts moved out of the kernel, I don't see this
happening in the short term.

I'm not sure what the best strategy is w.r.t. U-Boot and dts.

Thanks,
Mark.
York Sun July 14, 2015, 11:16 p.m. UTC | #9
On 07/13/2015 02:28 AM, Mark Rutland wrote:
> On Wed, Jul 08, 2015 at 08:31:47AM +0100, Sharma Bhupesh wrote:
>>> -----Original Message-----
>>> From: U-Boot [mailto:u-boot-bounces@lists.denx.de] On Behalf Of Wang
>>> Haikun
>>> On 7/8/2015 3:13 PM, Bin Meng wrote:
>>>> Hi,
>>>>
>>>> On Wed, Jul 8, 2015 at 2:51 PM, Wang Haikun <Haikun.Wang@freescale.com>
>>> wrote:
>>>>> On 6/26/2015 7:53 PM, Haikun Wang wrote:
>>>>>> From: Haikun Wang <Haikun.Wang@freescale.com>
>>>>>>
>>>>>> Bring in required device tree files for ls2085a from Linux.
>>>>>> These are initially unchanged and have a number of pieces not needed
>>> by U-Boot.
>>>>> Hi Simon,
>>>>>
>>>>> I got below comment when review this patch internal.
>>>>> Please help me confirm.
>>>>>
>>>>> "For new platforms like ARM64, it was discussed to not duplicate the
>>>>> DTS in u-boot and Linux, simply because that will break compatibility
>>>>> with other bootloaders like Linaro's BootMonitor and UEFI bootloader,
>>>>> which do not place the DTS in the bootloader. Also in near future,
>>>>> with DTS being replaced by ACPI gradually for ARM64 platforms, it was
>>>>> discussed that in a longer run it would be beneficial to move DTS out
>>>>> of both u-boot and Linux and maintain it as a separate tree."
>>>>>
>>>>
>>>> I think UEFI + ACPI is only required for ARMv8 servers, not for all
>>>> ARMv8 processors. Is ls2085a a processor targeting the server market?
>>> No, at least it's not our major market.
>>> I want to know whether we have made a conclusion that u-boot will not add
>>> Arm64 dts files?
>>
>> Adding Russell and Mark for their thoughts.
>>
>> AFAIK there were discussions to generate common DTS files for PPC and ARM platforms,
>> where it was discussed that in a longer run it would be beneficial to move DTS out
>> of both u-boot and Linux and maintain it as a separate tree.
> 
> While I would like to see dts moved out of the kernel, I don't see this
> happening in the short term.
> 
> I'm not sure what the best strategy is w.r.t. U-Boot and dts.
> 

Looks like we agree to put this dts in u-boot, at least temporarily. I am
preparing to bring it in to enable SPI devices.

York
York Sun July 20, 2015, 9:17 p.m. UTC | #10
On 06/26/2015 04:48 AM, Haikun Wang wrote:
> From: Haikun Wang <Haikun.Wang@freescale.com>
> 
> Bring in required device tree files for ls2085a from Linux.
> These are initially unchanged and have a number of pieces not needed by U-Boot.
> 
> Signed-off-by: Haikun Wang <Haikun.Wang@freescale.com>
> ---

This set is applied to u-boot-fsl-qoriq master branch.

York
diff mbox

Patch

diff --git a/arch/arm/dts/fsl-ls2085a.dtsi b/arch/arm/dts/fsl-ls2085a.dtsi
new file mode 100644
index 0000000..f0679a8
--- /dev/null
+++ b/arch/arm/dts/fsl-ls2085a.dtsi
@@ -0,0 +1,120 @@ 
+/*
+ * Freescale ls2085a SOC common device tree source
+ *
+ * Copyright 2013-2015 Freescale Semiconductor, Inc.
+ *
+ * SPDX-License-Identifier:	GPL-2.0+
+ */
+
+/ {
+	compatible = "fsl,ls2085a";
+	interrupt-parent = <&gic>;
+	#address-cells = <2>;
+	#size-cells = <2>;
+
+	cpus {
+		#address-cells = <2>;
+		#size-cells = <0>;
+
+		/*
+		 * We expect the enable-method for cpu's to be "psci", but this
+		 * is dependent on the SoC FW, which will fill this in.
+		 *
+		 * Currently supported enable-method is psci v0.2
+		 */
+
+		/* We have 4 clusters having 2 Cortex-A57 cores each */
+		cpu@0 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x0>;
+		};
+
+		cpu@1 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x1>;
+		};
+
+		cpu@100 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x100>;
+		};
+
+		cpu@101 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x101>;
+		};
+
+		cpu@200 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x200>;
+		};
+
+		cpu@201 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x201>;
+		};
+
+		cpu@300 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x300>;
+		};
+
+		cpu@301 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a57";
+			reg = <0x0 0x301>;
+		};
+	};
+
+	memory@80000000 {
+		device_type = "memory";
+		reg = <0x00000000 0x80000000 0 0x80000000>;
+		      /* DRAM space - 1, size : 2 GB DRAM */
+	};
+
+	gic: interrupt-controller@6000000 {
+		compatible = "arm,gic-v3";
+		reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
+		      <0x0 0x06100000 0 0x100000>; /* GICR (RD_base + SGI_base) */
+		#interrupt-cells = <3>;
+		interrupt-controller;
+		interrupts = <1 9 0x4>;
+	};
+
+	timer {
+		compatible = "arm,armv8-timer";
+		interrupts = <1 13 0x8>, /* Physical Secure PPI, active-low */
+			     <1 14 0x8>, /* Physical Non-Secure PPI, active-low */
+			     <1 11 0x8>, /* Virtual PPI, active-low */
+			     <1 10 0x8>; /* Hypervisor PPI, active-low */
+	};
+
+	serial0: serial@21c0500 {
+		device_type = "serial";
+		compatible = "fsl,ns16550", "ns16550a";
+		reg = <0x0 0x21c0500 0x0 0x100>;
+		clock-frequency = <0>;	/* Updated by bootloader */
+		interrupts = <0 32 0x1>; /* edge triggered */
+	};
+
+	serial1: serial@21c0600 {
+		device_type = "serial";
+		compatible = "fsl,ns16550", "ns16550a";
+		reg = <0x0 0x21c0600 0x0 0x100>;
+		clock-frequency = <0>; 	/* Updated by bootloader */
+		interrupts = <0 32 0x1>; /* edge triggered */
+	};
+
+	fsl_mc: fsl-mc@80c000000 {
+		compatible = "fsl,qoriq-mc";
+		reg = <0x00000008 0x0c000000 0 0x40>,	 /* MC portal base */
+		      <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
+	};
+};