[U-Boot] [PATCH 8/8][RESEND] powerpc: dts: Enable device tree support for T2080QDS

Jagdish Gediya jagdish.gediya at nxp.com
Tue Aug 28 03:44:45 UTC 2018


Hi,

> -----Original Message-----
> From: Bin Meng <bmeng.cn at gmail.com>
> Sent: Tuesday, August 21, 2018 5:32 PM
> To: Jagdish Gediya <jagdish.gediya at nxp.com>
> Cc: Prabhakar Kushwaha <prabhakar.kushwaha at nxp.com>; York Sun
> <york.sun at nxp.com>; Poonam Aggrwal <poonam.aggrwal at nxp.com>; Tom
> Rini <trini at konsulko.com>; Simon Glass <sjg at chromium.org>; U-Boot
> Mailing List <u-boot at lists.denx.de>
> Subject: Re: [PATCH 8/8][RESEND] powerpc: dts: Enable device tree support
> for T2080QDS
> 
> On Wed, Aug 22, 2018 at 2:18 AM, Jagdish Gediya
> <jagdish.gediya at nxp.com> wrote:
> > Add device tree for T2080QDS board and enable CONFIG_OF_CONTROL so
> > that device tree can be compiled.
> >
> > update board README for device tree usage.
> >
> > Signed-off-by: Jagdish Gediya <jagdish.gediya at nxp.com>
> > ---
> >  arch/powerpc/dts/Makefile             |  2 ++
> >  arch/powerpc/dts/e6500_power_isa.dtsi | 39 +++++++++++++++++++++
> >  arch/powerpc/dts/t2080qds.dts         | 17 ++++++++++
> >  arch/powerpc/dts/t2080qds.dtsi        | 64
> +++++++++++++++++++++++++++++++++++
> 
> Are all these dts files imported from Linux? It looks only interrupt controller
> node is present but other peripherals nodes are missing.

These dts files are minimal subset of Linux dts files. Other peripherals node are not needed as drivers are not using device tree at present.

> >  board/freescale/t208xqds/README       | 17 ++++++++++
> >  configs/T2080QDS_NAND_defconfig       |  3 +-
> >  configs/T2080QDS_SDCARD_defconfig     |  3 +-
> >  configs/T2080QDS_SPIFLASH_defconfig   |  3 +-
> >  configs/T2080QDS_defconfig            |  3 +-
> >  9 files changed, 147 insertions(+), 4 deletions(-)  create mode
> > 100644 arch/powerpc/dts/e6500_power_isa.dtsi
> >  create mode 100644 arch/powerpc/dts/t2080qds.dts  create mode 100644
> > arch/powerpc/dts/t2080qds.dtsi
> >
> > diff --git a/arch/powerpc/dts/Makefile b/arch/powerpc/dts/Makefile
> > index de14e7b..a19aa56 100644
> > --- a/arch/powerpc/dts/Makefile
> > +++ b/arch/powerpc/dts/Makefile
> > @@ -1,5 +1,7 @@
> >  # SPDX-License-Identifier: GPL-2.0+
> >
> > +dtb-$(CONFIG_TARGET_T2080QDS) += t2080qds.dtb
> > +
> >  targets += $(dtb-y)
> >
> >  # Add any required device tree compiler flags here diff --git
> > a/arch/powerpc/dts/e6500_power_isa.dtsi
> > b/arch/powerpc/dts/e6500_power_isa.dtsi
> > new file mode 100644
> > index 0000000..1b06170
> > --- /dev/null
> > +++ b/arch/powerpc/dts/e6500_power_isa.dtsi
> > @@ -0,0 +1,39 @@
> > +// SPDX-License-Identifier: GPL-2.0+ OR X11
> > +/*
> > + * e6500 Power ISA Device Tree Source (include)
> > + *
> > + * Copyright 2013 Freescale Semiconductor Inc.
> > + * Copyright 2018 NXP
> > + */
> > +
> > +/ {
> > +       cpus {
> > +               power-isa-version = "2.06";
> > +               power-isa-b;            // Base
> > +               power-isa-e;            // Embedded
> > +               power-isa-atb;          // Alternate Time Base
> > +               power-isa-cs;           // Cache Specification
> > +               power-isa-ds;           // Decorated Storage
> > +               power-isa-e.ed;         // Embedded.Enhanced Debug
> > +               power-isa-e.pd;         // Embedded.External PID
> > +               power-isa-e.hv;         // Embedded.Hypervisor
> > +               power-isa-e.le;         // Embedded.Little-Endian
> > +               power-isa-e.pm;         // Embedded.Performance Monitor
> > +               power-isa-e.pc;         // Embedded.Processor Control
> > +               power-isa-ecl;          // Embedded Cache Locking
> > +               power-isa-exp;          // External Proxy
> > +               power-isa-fp;           // Floating Point
> > +               power-isa-fp.r;         // Floating Point.Record
> > +               power-isa-mmc;          // Memory Coherence
> > +               power-isa-scpm;         // Store Conditional Page Mobility
> > +               power-isa-wt;           // Wait
> > +               power-isa-64;           // 64-bit
> > +               power-isa-e.pt;         // Embedded.Page Table
> > +               power-isa-e.hv.lrat;    // Embedded.Hypervisor.LRAT
> > +               power-isa-e.em;         // Embedded Multi-Threading
> > +               power-isa-v;            // Vector (AltiVec)
> > +               fsl,eref-er;            // Enhanced Reservations
> > +               fsl,eref-deo;           // Data Cache Extended Operations
> > +               mmu-type = "power-embedded";
> > +       };
> > +};
> > diff --git a/arch/powerpc/dts/t2080qds.dts
> > b/arch/powerpc/dts/t2080qds.dts new file mode 100644 index
> > 0000000..bf8cb23
> > --- /dev/null
> > +++ b/arch/powerpc/dts/t2080qds.dts
> > @@ -0,0 +1,17 @@
> > +// SPDX-License-Identifier: GPL-2.0+ OR X11
> > +/*
> > + * T2080QDS Device Tree Source
> > + *
> > + * Copyright 2013 - 2015 Freescale Semiconductor Inc.
> > + * Copyright 2018 NXP
> > + */
> > +
> > +/include/ "t2080qds.dtsi"
> > +
> > +/ {
> > +       model = "fsl,T2080QDS";
> > +       compatible = "fsl,T2080QDS";
> > +       #address-cells = <2>;
> > +       #size-cells = <2>;
> > +       interrupt-parent = <&mpic>;
> > +};
> > diff --git a/arch/powerpc/dts/t2080qds.dtsi
> > b/arch/powerpc/dts/t2080qds.dtsi new file mode 100644 index
> > 0000000..2006dec
> > --- /dev/null
> > +++ b/arch/powerpc/dts/t2080qds.dtsi
> > @@ -0,0 +1,64 @@
> > +// SPDX-License-Identifier: GPL-2.0+ OR X11
> > +/*
> > + * T2080/T2081 Silicon/SoC Device Tree Source (pre include)
> > + *
> > + * Copyright 2013 Freescale Semiconductor Inc.
> > + * Copyright 2018 NXP
> > + */
> > +
> > +/dts-v1/;
> > +
> > +/include/ "e6500_power_isa.dtsi"
> > +
> > +/ {
> > +       model = "fsl,T2080QDS";
> > +       compatible = "fsl,T2080QDS";
> > +       #address-cells = <2>;
> > +       #size-cells = <2>;
> > +       interrupt-parent = <&mpic>;
> > +
> > +       cpus {
> > +               #address-cells = <1>;
> > +               #size-cells = <0>;
> > +
> > +               cpu0: PowerPC,e6500 at 0 {
> > +                       device_type = "cpu";
> > +                       reg = <0 1>;
> > +                       fsl,portid-mapping = <0x80000000>;
> > +               };
> > +               cpu1: PowerPC,e6500 at 2 {
> > +                       device_type = "cpu";
> > +                       reg = <2 3>;
> > +                       fsl,portid-mapping = <0x80000000>;
> > +               };
> > +               cpu2: PowerPC,e6500 at 4 {
> > +                       device_type = "cpu";
> > +                       reg = <4 5>;
> > +                       fsl,portid-mapping = <0x80000000>;
> > +               };
> > +               cpu3: PowerPC,e6500 at 6 {
> > +                       device_type = "cpu";
> > +                       reg = <6 7>;
> > +                       fsl,portid-mapping = <0x80000000>;
> > +               };
> > +       };
> > +
> > +       soc: soc at ffe000000 {
> > +               ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
> > +               reg = <0xf 0xfe000000 0 0x00001000>;
> > +               #address-cells = <1>;
> > +               #size-cells = <1>;
> > +               device_type = "soc";
> > +               compatible = "simple-bus";
> > +
> > +               mpic: pic at 40000 {
> > +                       interrupt-controller;
> > +                       #address-cells = <0>;
> > +                       #interrupt-cells = <4>;
> > +                       reg = <0x40000 0x40000>;
> > +                       compatible = "fsl,mpic";
> > +                       device_type = "open-pic";
> > +                       clock-frequency = <0x0>;
> > +               };
> > +       };
> > +};
> > diff --git a/board/freescale/t208xqds/README
> > b/board/freescale/t208xqds/README index 2a2a0e5..2b979f1 100755
> > --- a/board/freescale/t208xqds/README
> > +++ b/board/freescale/t208xqds/README
> > @@ -272,3 +272,20 @@ How to update the ucode of Freescale FMAN
> >
> >  For more details, please refer to T2080QDS User Guide and access
> > website
> https://emea01.safelinks.protection.outlook.com/?url=www.freescale.com&
> amp;data=02%7C01%7Cjagdish.gediya%40nxp.com%7C8f63fa2542e848c3a46
> c08d6075dd88e%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636
> 704496978698811&sdata=ON19F134brcRh%2BQah8Eay%2FQhPhbM1%
> 2Fu%2BJCcTVx7layA%3D&reserved=0 and Freescale QorIQ SDK
> Infocenter document.
> > +
> > +Device Tree support and How to enable it for different configs
> 
> nits: tree, how
> 
> > +--------------------------------------------------------------
> > +Device tree support is available for t2080qds for below mentioned
> > +boot, 1. NOR Boot 2. NAND Boot 3. SD Boot 4. SPIFLASH Boot
> > +
> > +To enable Device Tree support for other boot, below configs need to
> > +be
> 
> nits: device tree
> 
> > +enabled in relative defconfig file,
> > +1. CONFIG_DEFAULT_DEVICE_TREE="t2080qds" (Change default device
> tree
> > +name if required) 2. CONFIG_OF_CONTROL
> > +
> > +If device tree support is enabled in defconfig, 1. use
> > +'u-boot-dtb.bin' for NOR boot.
> > +2. Use 'u-boot-with-spl-pbl.bin' for other boot.
> 
> nits: use
> 
> > diff --git a/configs/T2080QDS_NAND_defconfig
> > b/configs/T2080QDS_NAND_defconfig index 6960412..33a2381 100644
> > --- a/configs/T2080QDS_NAND_defconfig
> > +++ b/configs/T2080QDS_NAND_defconfig
> > @@ -7,6 +7,7 @@ CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
> CONFIG_SPL=y
> > CONFIG_MPC85xx=y  CONFIG_TARGET_T2080QDS=y
> > +CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
> >  CONFIG_FIT=y
> >  CONFIG_FIT_VERBOSE=y
> >  CONFIG_OF_BOARD_SETUP=y
> > @@ -35,6 +36,7 @@ CONFIG_CMD_FAT=y
> >  CONFIG_CMD_MTDPARTS=y
> >
> CONFIG_MTDIDS_DEFAULT="nor0=fe8000000.nor,nand0=fff800000.flash,spi
> 0=spife110000.0"
> >
> CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(ker
> nel),128k(dtb),96m(fs),-
> (user);fff800000.flash:1m(uboot),5m(kernel),128k(dtb),96m(fs),-
> (user);spife110000.0:1m(uboot),5m(kernel),128k(dtb),-(user)"
> > +CONFIG_OF_CONTROL=y
> >  CONFIG_ENV_IS_IN_NAND=y
> >  CONFIG_FSL_CAAM=y
> >  CONFIG_FSL_ESDHC=y
> > @@ -54,4 +56,3 @@ CONFIG_SPI=y
> >  CONFIG_FSL_ESPI=y
> >  CONFIG_USB=y
> >  CONFIG_USB_STORAGE=y
> > -CONFIG_OF_LIBFDT=y
> > diff --git a/configs/T2080QDS_SDCARD_defconfig
> > b/configs/T2080QDS_SDCARD_defconfig
> > index 20a0a37..bb1e89c 100644
> > --- a/configs/T2080QDS_SDCARD_defconfig
> > +++ b/configs/T2080QDS_SDCARD_defconfig
> > @@ -8,6 +8,7 @@ CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
> CONFIG_SPL=y
> > CONFIG_MPC85xx=y  CONFIG_TARGET_T2080QDS=y
> > +CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
> >  CONFIG_FIT=y
> >  CONFIG_FIT_VERBOSE=y
> >  CONFIG_OF_BOARD_SETUP=y
> > @@ -35,6 +36,7 @@ CONFIG_CMD_FAT=y
> >  CONFIG_CMD_MTDPARTS=y
> >
> CONFIG_MTDIDS_DEFAULT="nor0=fe8000000.nor,nand0=fff800000.flash,spi
> 0=spife110000.0"
> >
> CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(ker
> nel),128k(dtb),96m(fs),-
> (user);fff800000.flash:1m(uboot),5m(kernel),128k(dtb),96m(fs),-
> (user);spife110000.0:1m(uboot),5m(kernel),128k(dtb),-(user)"
> > +CONFIG_OF_CONTROL=y
> >  CONFIG_ENV_IS_IN_MMC=y
> >  CONFIG_FSL_CAAM=y
> >  CONFIG_FSL_ESDHC=y
> > @@ -53,4 +55,3 @@ CONFIG_SPI=y
> >  CONFIG_FSL_ESPI=y
> >  CONFIG_USB=y
> >  CONFIG_USB_STORAGE=y
> > -CONFIG_OF_LIBFDT=y
> > diff --git a/configs/T2080QDS_SPIFLASH_defconfig
> > b/configs/T2080QDS_SPIFLASH_defconfig
> > index c763316..a5450a6 100644
> > --- a/configs/T2080QDS_SPIFLASH_defconfig
> > +++ b/configs/T2080QDS_SPIFLASH_defconfig
> > @@ -9,6 +9,7 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
> > CONFIG_SPL_SPI_SUPPORT=y  CONFIG_MPC85xx=y
> CONFIG_TARGET_T2080QDS=y
> > +CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
> >  CONFIG_FIT=y
> >  CONFIG_FIT_VERBOSE=y
> >  CONFIG_OF_BOARD_SETUP=y
> > @@ -36,6 +37,7 @@ CONFIG_CMD_FAT=y
> >  CONFIG_CMD_MTDPARTS=y
> >
> CONFIG_MTDIDS_DEFAULT="nor0=fe8000000.nor,nand0=fff800000.flash,spi
> 0=spife110000.0"
> >
> CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(ker
> nel),128k(dtb),96m(fs),-
> (user);fff800000.flash:1m(uboot),5m(kernel),128k(dtb),96m(fs),-
> (user);spife110000.0:1m(uboot),5m(kernel),128k(dtb),-(user)"
> > +CONFIG_OF_CONTROL=y
> >  CONFIG_ENV_IS_IN_SPI_FLASH=y
> >  CONFIG_FSL_CAAM=y
> >  CONFIG_FSL_ESDHC=y
> > @@ -54,4 +56,3 @@ CONFIG_SPI=y
> >  CONFIG_FSL_ESPI=y
> >  CONFIG_USB=y
> >  CONFIG_USB_STORAGE=y
> > -CONFIG_OF_LIBFDT=y
> > diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
> > index 5ed7836..c5f79da 100644
> > --- a/configs/T2080QDS_defconfig
> > +++ b/configs/T2080QDS_defconfig
> > @@ -2,6 +2,7 @@ CONFIG_PPC=y
> >  CONFIG_SYS_TEXT_BASE=0xEFF40000
> >  CONFIG_MPC85xx=y
> >  CONFIG_TARGET_T2080QDS=y
> > +CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
> >  CONFIG_FIT=y
> >  CONFIG_FIT_VERBOSE=y
> >  CONFIG_OF_BOARD_SETUP=y
> > @@ -24,6 +25,7 @@ CONFIG_CMD_FAT=y
> >  CONFIG_CMD_MTDPARTS=y
> >
> CONFIG_MTDIDS_DEFAULT="nor0=fe8000000.nor,nand0=fff800000.flash,spi
> 0=spife110000.0"
> >
> CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(ker
> nel),128k(dtb),96m(fs),-
> (user);fff800000.flash:1m(uboot),5m(kernel),128k(dtb),96m(fs),-
> (user);spife110000.0:1m(uboot),5m(kernel),128k(dtb),-(user)"
> > +CONFIG_OF_CONTROL=y
> >  CONFIG_ENV_IS_IN_FLASH=y
> >  CONFIG_FSL_CAAM=y
> >  CONFIG_FSL_ESDHC=y
> > @@ -42,4 +44,3 @@ CONFIG_SPI=y
> >  CONFIG_FSL_ESPI=y
> >  CONFIG_USB=y
> >  CONFIG_USB_STORAGE=y
> > -CONFIG_OF_LIBFDT=y
> > --
> >
> 

Thanks,
Jagdish


More information about the U-Boot mailing list