[U-Boot] [RFC] ARM: omap3_logic_somlv: Enable OF_CONTROL in SPL

Adam Ford aford173 at gmail.com
Thu Jan 24 15:56:30 UTC 2019


On Wed, Jan 23, 2019 at 3:21 PM Tom Rini <trini at konsulko.com> wrote:
>
> On Wed, Jan 23, 2019 at 03:13:52PM -0600, Adam Ford wrote:
>
> > By removing EXT support from SPL, it makes room for the extra
> > overhead of enabling OF_CONTROL in SPL.  With SPL_OF_CONTROL
> > enabled, extra options need to be added to the device tree to
> > tell it which portions of the tree are needed early in boot time
> >
> > Unfortunately, with these options as-is, the system doesn't boot
> > nor does it display anything on the UART.  I don't have a debugger
> > readily available, but I have seen others with AM33x boards which
> > are similar to OMAP3 boards. This is posted as an RFC just in case
> > anyone has any suggestions on what  might be missing.
> >
> > Signed-off-by: Adam Ford <aford173 at gmail.com>
> >
>
> Hmm.  Here's what I have for omap3_beagle that has SPL booting, but
> cannot boot its own full U-Boot.  Mixing new SPL and old U-Boot does
> work.  There's probably something silly I didn't get right that's
> causing that problem:

Patchwork isn't letting me download the patch.  Could you e-mail your
patch directly?  I'd like to run some tests.

Thanks

adam
>
> diff --git a/arch/arm/dts/omap3-beagle-u-boot.dtsi b/arch/arm/dts/omap3-beagle-u-boot.dtsi
> index 41beaf0900c3..2c03701c896a 100644
> --- a/arch/arm/dts/omap3-beagle-u-boot.dtsi
> +++ b/arch/arm/dts/omap3-beagle-u-boot.dtsi
> @@ -5,20 +5,10 @@
>   * (C) Copyright 2017 Derald D. Woods <woods.technical at gmail.com>
>   */
>
> +#include "omap3-u-boot.dtsi"
> +
>  / {
>         chosen {
>                 stdout-path = &uart3;
>         };
>  };
> -
> -&uart1 {
> -       reg-shift = <2>;
> -};
> -
> -&uart2 {
> -       reg-shift = <2>;
> -};
> -
> -&uart3 {
> -       reg-shift = <2>;
> -};
> diff --git a/arch/arm/dts/omap3-beagle-xm-ab-u-boot.dtsi b/arch/arm/dts/omap3-beagle-xm-ab-u-boot.dtsi
> index 41beaf0900c3..2c03701c896a 100644
> --- a/arch/arm/dts/omap3-beagle-xm-ab-u-boot.dtsi
> +++ b/arch/arm/dts/omap3-beagle-xm-ab-u-boot.dtsi
> @@ -5,20 +5,10 @@
>   * (C) Copyright 2017 Derald D. Woods <woods.technical at gmail.com>
>   */
>
> +#include "omap3-u-boot.dtsi"
> +
>  / {
>         chosen {
>                 stdout-path = &uart3;
>         };
>  };
> -
> -&uart1 {
> -       reg-shift = <2>;
> -};
> -
> -&uart2 {
> -       reg-shift = <2>;
> -};
> -
> -&uart3 {
> -       reg-shift = <2>;
> -};
> diff --git a/arch/arm/dts/omap3-beagle-xm-u-boot.dtsi b/arch/arm/dts/omap3-beagle-xm-u-boot.dtsi
> index 41beaf0900c3..2c03701c896a 100644
> --- a/arch/arm/dts/omap3-beagle-xm-u-boot.dtsi
> +++ b/arch/arm/dts/omap3-beagle-xm-u-boot.dtsi
> @@ -5,20 +5,10 @@
>   * (C) Copyright 2017 Derald D. Woods <woods.technical at gmail.com>
>   */
>
> +#include "omap3-u-boot.dtsi"
> +
>  / {
>         chosen {
>                 stdout-path = &uart3;
>         };
>  };
> -
> -&uart1 {
> -       reg-shift = <2>;
> -};
> -
> -&uart2 {
> -       reg-shift = <2>;
> -};
> -
> -&uart3 {
> -       reg-shift = <2>;
> -};
> diff --git a/arch/arm/dts/omap3-evm-37xx-u-boot.dtsi b/arch/arm/dts/omap3-evm-37xx-u-boot.dtsi
> index de411316d83a..b9e433f873b7 100644
> --- a/arch/arm/dts/omap3-evm-37xx-u-boot.dtsi
> +++ b/arch/arm/dts/omap3-evm-37xx-u-boot.dtsi
> @@ -5,20 +5,10 @@
>   * (C) Copyright 2017 Derald D. Woods <woods.technical at gmail.com>
>   */
>
> +#include "omap3-u-boot.dtsi"
> +
>  / {
>         chosen {
>                 stdout-path = &uart1;
>         };
>  };
> -
> -&uart1 {
> -       reg-shift = <2>;
> -};
> -
> -&uart2 {
> -       reg-shift = <2>;
> -};
> -
> -&uart3 {
> -       reg-shift = <2>;
> -};
> diff --git a/arch/arm/dts/omap3-evm-u-boot.dtsi b/arch/arm/dts/omap3-evm-u-boot.dtsi
> index de411316d83a..b9e433f873b7 100644
> --- a/arch/arm/dts/omap3-evm-u-boot.dtsi
> +++ b/arch/arm/dts/omap3-evm-u-boot.dtsi
> @@ -5,20 +5,10 @@
>   * (C) Copyright 2017 Derald D. Woods <woods.technical at gmail.com>
>   */
>
> +#include "omap3-u-boot.dtsi"
> +
>  / {
>         chosen {
>                 stdout-path = &uart1;
>         };
>  };
> -
> -&uart1 {
> -       reg-shift = <2>;
> -};
> -
> -&uart2 {
> -       reg-shift = <2>;
> -};
> -
> -&uart3 {
> -       reg-shift = <2>;
> -};
> diff --git a/arch/arm/dts/omap3-u-boot.dtsi b/arch/arm/dts/omap3-u-boot.dtsi
> new file mode 100644
> index 000000000000..32bea6b6d9b8
> --- /dev/null
> +++ b/arch/arm/dts/omap3-u-boot.dtsi
> @@ -0,0 +1,81 @@
> +/*
> + * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + * Based on "omap5-u-boot.dtsi"
> + */
> +
> +/{
> +       ocp at 68000000 {
> +               u-boot,dm-spl;
> +
> +               bandgap at 48002524 {
> +                       u-boot,dm-spl;
> +               };
> +       };
> +};
> +
> +&uart1 {
> +       u-boot,dm-spl;
> +       reg-shift = <2>;
> +};
> +
> +&uart2 {
> +       u-boot,dm-spl;
> +       reg-shift = <2>;
> +};
> +
> +&uart3 {
> +       u-boot,dm-spl;
> +       reg-shift = <2>;
> +};
> +
> +&mmc1 {
> +       u-boot,dm-spl;
> +};
> +
> +&mmc2 {
> +       u-boot,dm-spl;
> +};
> +
> +&l4_core {
> +       u-boot,dm-spl;
> +};
> +
> +&scm {
> +       u-boot,dm-spl;
> +};
> +
> +&scm_conf {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio1 {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio2 {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio3 {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio4 {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio5 {
> +       u-boot,dm-spl;
> +};
> +
> +&gpio6 {
> +       u-boot,dm-spl;
> +};
> +
> +&i2c1 {
> +       u-boot,dm-spl;
> +};
> diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
> index 9581dd953730..54f999e1b0c7 100644
> --- a/configs/omap3_beagle_defconfig
> +++ b/configs/omap3_beagle_defconfig
> @@ -1,4 +1,6 @@
>  CONFIG_ARM=y
> +# CONFIG_SPL_USE_ARCH_MEMCPY is not set
> +# CONFIG_SPL_USE_ARCH_MEMSET is not set
>  CONFIG_ARCH_OMAP2PLUS=y
>  CONFIG_SYS_TEXT_BASE=0x80100000
>  CONFIG_TARGET_OMAP3_BEAGLE=y
> @@ -7,11 +9,12 @@ CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_NR_DRAM_BANKS=2
>  CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
>  CONFIG_SYS_CONSOLE_INFO_QUIET=y
> -CONFIG_DEFAULT_FDT_FILE="omap3-beagle.dtb"
> +CONFIG_DEFAULT_FDT_FILE="omap3-beagle-xm-ab.dtb"
>  CONFIG_VERSION_VARIABLE=y
> +CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +CONFIG_SPL_SEPARATE_BSS=y
>  # CONFIG_SPL_EXT_SUPPORT is not set
>  CONFIG_SPL_MTD_SUPPORT=y
> -CONFIG_SPL_OS_BOOT=y
>  CONFIG_SYS_PROMPT="BeagleBoard # "
>  CONFIG_CMD_SPL=y
>  CONFIG_CMD_SPL_NAND_OFS=0x280000
> @@ -33,10 +36,18 @@ CONFIG_MTDIDS_DEFAULT="nand0=omap2-nand.0"
>  CONFIG_MTDPARTS_DEFAULT="mtdparts=omap2-nand.0:512k(spl),1920k(u-boot),128k(u-boot-env),128k(dtb),6m(kernel),-(rootfs)"
>  CONFIG_CMD_UBI=y
>  # CONFIG_ISO_PARTITION is not set
> +# CONFIG_SPL_EFI_PARTITION is not set
> +CONFIG_SPL_PARTITION_UUIDS=y
>  CONFIG_OF_CONTROL=y
> -CONFIG_DEFAULT_DEVICE_TREE="omap3-beagle"
> -CONFIG_ENV_IS_IN_NAND=y
> +CONFIG_SPL_OF_CONTROL=y
> +CONFIG_DEFAULT_DEVICE_TREE="omap3-beagle-xm-ab"
> +CONFIG_OF_SPL_REMOVE_PROPS="clocks clock-names interrupt-parent"
> +CONFIG_ENV_IS_IN_FAT=y
> +CONFIG_ENV_FAT_INTERFACE="mmc"
> +CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
>  CONFIG_SPL_DM=y
> +CONFIG_SPL_DM_SEQ_ALIAS=y
> +CONFIG_SPL_OF_TRANSLATE=y
>  CONFIG_USB_FUNCTION_FASTBOOT=y
>  CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>  CONFIG_LED_STATUS=y
> @@ -52,6 +63,7 @@ CONFIG_LED_STATUS_GREEN_ENABLE=y
>  CONFIG_LED_STATUS_GREEN=2
>  CONFIG_LED_STATUS_CMD=y
>  CONFIG_TWL4030_LED=y
> +CONFIG_DM_MMC=y
>  CONFIG_MMC_OMAP_HS=y
>  CONFIG_NAND=y
>  CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
> @@ -76,6 +88,4 @@ CONFIG_USB_ETHER_ASIX=y
>  CONFIG_USB_ETHER_MCS7830=y
>  CONFIG_USB_ETHER_SMSC95XX=y
>  CONFIG_VIDEO_OMAP3=y
> -CONFIG_FAT_WRITE=y
>  CONFIG_BCH=y
> -CONFIG_SPL_OF_LIBFDT=y
>
> --
> Tom


More information about the U-Boot mailing list