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

Bin Meng bmeng.cn at gmail.com
Tue Aug 21 12:01:35 UTC 2018


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.

>  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 www.freescale.com 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,spi0=spife110000.0"
>  CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(kernel),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,spi0=spife110000.0"
>  CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(kernel),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,spi0=spife110000.0"
>  CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(kernel),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,spi0=spife110000.0"
>  CONFIG_MTDPARTS_DEFAULT="mtdparts=fe8000000.nor:1m(uboot),5m(kernel),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
> --
>

Regards,
Bin


More information about the U-Boot mailing list