Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Mon, Jan 1, 2018 at 7:29 AM, Tom Rini wrote: > On Thu, Dec 28, 2017 at 05:17:13PM -0600, Derald D. Woods wrote: > > On Thu, Dec 28, 2017 at 02:24:08PM -0500, Tom Rini wrote: > > > On Thu, Dec 28, 2017 at 01:21:05PM -0600, Derald D. Woods wrote: > > > > On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > > > > > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > > > > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > > > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods > wrote: > > > > > > > > > > > > > > > This commit keeps the 'fdtaddr' as provided by > DEFAULT_LINUX_BOOT_ENV. > > > > > > > > > > > > > > > > Signed-off-by: Derald D. Woods > > > > > > > > --- > > > > > > > > include/configs/omap3_evm.h | 1 + > > > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > > > > > diff --git a/include/configs/omap3_evm.h > b/include/configs/omap3_evm.h > > > > > > > > index 629d60b961..d95ccdf035 100644 > > > > > > > > --- a/include/configs/omap3_evm.h > > > > > > > > +++ b/include/configs/omap3_evm.h > > > > > > > > @@ -127,6 +127,7 @@ > > > > > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > > > > > + "fdt_high=0x\0" \ > > > > > > > > "bootenv=uEnv.txt\0" \ > > > > > > > > "optargs=\0" \ > > > > > > > > "mmcdev=0\0" \ > > > > > > > > > > > > > > What's the problem this solves, and how much memory is on the > system in > > > > > > > question? bootm_size should be ensuring we never relocate it > outside of > > > > > > > the first 256MB of memory. Thanks! > > > > > > > > > > > > > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > > > > > addition of this fairly common environment variable allowed my > > > > > > OMAP34XX board to boot the kernel without an appended devicetree. > > > > > > When I use the variable to trigger 'disable_relocation', as the > code > > > > > > indicates, the kernel boot behavior is what I expect. I spent a > few > > > > > > hours following the code path to a single line edition that > works. > > > > > > > > > > > > > > > > > > Without 'fdt_high' > > > > > > == > > > > > > > > > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - > 11:16:52) > > > > > > Trying to boot from MMC1 > > > > > > reading u-boot.img > > > > > > reading u-boot.img > > > > > > > > > > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - > 11:16:52 -0600) > > > > > > > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > > > > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > > > > > OMAP3 EVM board + LPDDR/NAND > > > > > > I2C: ready > > > > > > DRAM: 256 MiB > > > > > > NAND: 256 MiB > > > > > > MMC: OMAP SD/MMC: 0 > > > > > > Read back SMSC id 0x9220 > > > > > > OMAP die ID: 265a0024040365fa1801b01f > > > > > > Net: smc911x-0 > > > > > > starting USB... > > > > > > USB0: USB EHCI 1.00 > > > > > > scanning bus 0 for devices... 1 USB Device(s) found > > > > > > Hit any key to stop autoboot: 0 > > > > > > switch to partitions #0, OK > > > > > > mmc0 is current device > > > > > > Scanning mmc 0:1... > > > > > > switch to partitions #0, OK > > > > > > mmc0 is current device > > > > > > ** Unable to read file uEnv.txt ** > > > > > > reading zImage > > > > > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > > > > > reading omap3-evm.dtb > > > > > > 62832 bytes read in 10 ms (6 MiB/s) > > > > > > Booting zImage from mmc ... > > > > > > * fdt: cmdline image address = 0x8800 > > > > > > ## Checking for 'FDT'/'FDT Image' at 8800 > > > > > > * fdt: raw FDT blob > > > > > > ## Flattened Device Tree blob at 8800 > > > > > >Booting using the fdt blob at 0x8800 > > > > > >of_flat_tree at 0x8800 size 0xf570 > > > > > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > > > > > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > > > > > > > > > Starting kernel ... > > > > > > > > > > > > [HANG] > > > > > > > > > > > > > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > > > > > > > > > Ah, hmmm. Can you please try setting bootm_size, as an > experiment, to > > > > > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > > > > > putting the DTB into where U-Boot is and we stomp on it a bit, > causing > > > > > Linux to boot, see an invalid DTB and not have a console available > to > > > > > tell us. Thanks! > > > > > > > > > > > > > > > > > That seemed to do it. > > > > > > Ah, good! > > > > > > > ---8<--- > - > > > > > > > > OMAP3_EVM # echo $bootm_size > > > > 0x0a00 > > > > OMAP3_EVM # reset > > > > resetting ... > > > > O > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - > 13:03:42) > > > > Trying to boot fr
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 05:17:13PM -0600, Derald D. Woods wrote: > On Thu, Dec 28, 2017 at 02:24:08PM -0500, Tom Rini wrote: > > On Thu, Dec 28, 2017 at 01:21:05PM -0600, Derald D. Woods wrote: > > > On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > > > > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > > > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > > > > > > > > > This commit keeps the 'fdtaddr' as provided by > > > > > > > DEFAULT_LINUX_BOOT_ENV. > > > > > > > > > > > > > > Signed-off-by: Derald D. Woods > > > > > > > --- > > > > > > > include/configs/omap3_evm.h | 1 + > > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > > > diff --git a/include/configs/omap3_evm.h > > > > > > > b/include/configs/omap3_evm.h > > > > > > > index 629d60b961..d95ccdf035 100644 > > > > > > > --- a/include/configs/omap3_evm.h > > > > > > > +++ b/include/configs/omap3_evm.h > > > > > > > @@ -127,6 +127,7 @@ > > > > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > > > > + "fdt_high=0x\0" \ > > > > > > > "bootenv=uEnv.txt\0" \ > > > > > > > "optargs=\0" \ > > > > > > > "mmcdev=0\0" \ > > > > > > > > > > > > What's the problem this solves, and how much memory is on the > > > > > > system in > > > > > > question? bootm_size should be ensuring we never relocate it > > > > > > outside of > > > > > > the first 256MB of memory. Thanks! > > > > > > > > > > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > > > > addition of this fairly common environment variable allowed my > > > > > OMAP34XX board to boot the kernel without an appended devicetree. > > > > > When I use the variable to trigger 'disable_relocation', as the code > > > > > indicates, the kernel boot behavior is what I expect. I spent a few > > > > > hours following the code path to a single line edition that works. > > > > > > > > > > > > > > > Without 'fdt_high' > > > > > == > > > > > > > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - > > > > > 11:16:52) > > > > > Trying to boot from MMC1 > > > > > reading u-boot.img > > > > > reading u-boot.img > > > > > > > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 > > > > > -0600) > > > > > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > > > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > > > > OMAP3 EVM board + LPDDR/NAND > > > > > I2C: ready > > > > > DRAM: 256 MiB > > > > > NAND: 256 MiB > > > > > MMC: OMAP SD/MMC: 0 > > > > > Read back SMSC id 0x9220 > > > > > OMAP die ID: 265a0024040365fa1801b01f > > > > > Net: smc911x-0 > > > > > starting USB... > > > > > USB0: USB EHCI 1.00 > > > > > scanning bus 0 for devices... 1 USB Device(s) found > > > > > Hit any key to stop autoboot: 0 > > > > > switch to partitions #0, OK > > > > > mmc0 is current device > > > > > Scanning mmc 0:1... > > > > > switch to partitions #0, OK > > > > > mmc0 is current device > > > > > ** Unable to read file uEnv.txt ** > > > > > reading zImage > > > > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > > > > reading omap3-evm.dtb > > > > > 62832 bytes read in 10 ms (6 MiB/s) > > > > > Booting zImage from mmc ... > > > > > * fdt: cmdline image address = 0x8800 > > > > > ## Checking for 'FDT'/'FDT Image' at 8800 > > > > > * fdt: raw FDT blob > > > > > ## Flattened Device Tree blob at 8800 > > > > >Booting using the fdt blob at 0x8800 > > > > >of_flat_tree at 0x8800 size 0xf570 > > > > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > > > > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > > > > > > > Starting kernel ... > > > > > > > > > > [HANG] > > > > > > > > > > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > > > > > > > Ah, hmmm. Can you please try setting bootm_size, as an experiment, to > > > > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > > > > putting the DTB into where U-Boot is and we stomp on it a bit, causing > > > > Linux to boot, see an invalid DTB and not have a console available to > > > > tell us. Thanks! > > > > > > > > > > > > > That seemed to do it. > > > > Ah, good! > > > > > ---8< > > > > > > OMAP3_EVM # echo $bootm_size > > > 0x0a00 > > > OMAP3_EVM # reset > > > resetting ... > > > O > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42) > > > Trying to boot from MMC1 > > > reading u-boot.img > > > reading u-boot.img > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42 -0600) > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Ma
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 02:24:08PM -0500, Tom Rini wrote: > On Thu, Dec 28, 2017 at 01:21:05PM -0600, Derald D. Woods wrote: > > On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > > > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > > > > > > > This commit keeps the 'fdtaddr' as provided by > > > > > > DEFAULT_LINUX_BOOT_ENV. > > > > > > > > > > > > Signed-off-by: Derald D. Woods > > > > > > --- > > > > > > include/configs/omap3_evm.h | 1 + > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > diff --git a/include/configs/omap3_evm.h > > > > > > b/include/configs/omap3_evm.h > > > > > > index 629d60b961..d95ccdf035 100644 > > > > > > --- a/include/configs/omap3_evm.h > > > > > > +++ b/include/configs/omap3_evm.h > > > > > > @@ -127,6 +127,7 @@ > > > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > > > + "fdt_high=0x\0" \ > > > > > > "bootenv=uEnv.txt\0" \ > > > > > > "optargs=\0" \ > > > > > > "mmcdev=0\0" \ > > > > > > > > > > What's the problem this solves, and how much memory is on the system > > > > > in > > > > > question? bootm_size should be ensuring we never relocate it outside > > > > > of > > > > > the first 256MB of memory. Thanks! > > > > > > > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > > > addition of this fairly common environment variable allowed my > > > > OMAP34XX board to boot the kernel without an appended devicetree. > > > > When I use the variable to trigger 'disable_relocation', as the code > > > > indicates, the kernel boot behavior is what I expect. I spent a few > > > > hours following the code path to a single line edition that works. > > > > > > > > > > > > Without 'fdt_high' > > > > == > > > > > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) > > > > Trying to boot from MMC1 > > > > reading u-boot.img > > > > reading u-boot.img > > > > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 > > > > -0600) > > > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > > > OMAP3 EVM board + LPDDR/NAND > > > > I2C: ready > > > > DRAM: 256 MiB > > > > NAND: 256 MiB > > > > MMC: OMAP SD/MMC: 0 > > > > Read back SMSC id 0x9220 > > > > OMAP die ID: 265a0024040365fa1801b01f > > > > Net: smc911x-0 > > > > starting USB... > > > > USB0: USB EHCI 1.00 > > > > scanning bus 0 for devices... 1 USB Device(s) found > > > > Hit any key to stop autoboot: 0 > > > > switch to partitions #0, OK > > > > mmc0 is current device > > > > Scanning mmc 0:1... > > > > switch to partitions #0, OK > > > > mmc0 is current device > > > > ** Unable to read file uEnv.txt ** > > > > reading zImage > > > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > > > reading omap3-evm.dtb > > > > 62832 bytes read in 10 ms (6 MiB/s) > > > > Booting zImage from mmc ... > > > > * fdt: cmdline image address = 0x8800 > > > > ## Checking for 'FDT'/'FDT Image' at 8800 > > > > * fdt: raw FDT blob > > > > ## Flattened Device Tree blob at 8800 > > > >Booting using the fdt blob at 0x8800 > > > >of_flat_tree at 0x8800 size 0xf570 > > > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > > > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > > > > > Starting kernel ... > > > > > > > > [HANG] > > > > > > > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > > > > > Ah, hmmm. Can you please try setting bootm_size, as an experiment, to > > > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > > > putting the DTB into where U-Boot is and we stomp on it a bit, causing > > > Linux to boot, see an invalid DTB and not have a console available to > > > tell us. Thanks! > > > > > > > > > That seemed to do it. > > Ah, good! > > > ---8< > > > > OMAP3_EVM # echo $bootm_size > > 0x0a00 > > OMAP3_EVM # reset > > resetting ... > > O > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42) > > Trying to boot from MMC1 > > reading u-boot.img > > reading u-boot.img > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42 -0600) > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > OMAP3 EVM board + LPDDR/NAND > > I2C: ready > > DRAM: 256 MiB > > NAND: 256 MiB > > MMC: OMAP SD/MMC: 0 > > Read back SMSC id 0x9220 > > OMAP die ID: 265a0024040365fa1801b01f > > Net: smc911x-0 > > starting USB... > > USB0: U
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 02:24:08PM -0500, Tom Rini wrote: > On Thu, Dec 28, 2017 at 01:21:05PM -0600, Derald D. Woods wrote: > > On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > > > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > > > > > > > This commit keeps the 'fdtaddr' as provided by > > > > > > DEFAULT_LINUX_BOOT_ENV. > > > > > > > > > > > > Signed-off-by: Derald D. Woods > > > > > > --- > > > > > > include/configs/omap3_evm.h | 1 + > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > diff --git a/include/configs/omap3_evm.h > > > > > > b/include/configs/omap3_evm.h > > > > > > index 629d60b961..d95ccdf035 100644 > > > > > > --- a/include/configs/omap3_evm.h > > > > > > +++ b/include/configs/omap3_evm.h > > > > > > @@ -127,6 +127,7 @@ > > > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > > > + "fdt_high=0x\0" \ > > > > > > "bootenv=uEnv.txt\0" \ > > > > > > "optargs=\0" \ > > > > > > "mmcdev=0\0" \ > > > > > > > > > > What's the problem this solves, and how much memory is on the system > > > > > in > > > > > question? bootm_size should be ensuring we never relocate it outside > > > > > of > > > > > the first 256MB of memory. Thanks! > > > > > > > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > > > addition of this fairly common environment variable allowed my > > > > OMAP34XX board to boot the kernel without an appended devicetree. > > > > When I use the variable to trigger 'disable_relocation', as the code > > > > indicates, the kernel boot behavior is what I expect. I spent a few > > > > hours following the code path to a single line edition that works. > > > > > > > > > > > > Without 'fdt_high' > > > > == > > > > > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) > > > > Trying to boot from MMC1 > > > > reading u-boot.img > > > > reading u-boot.img > > > > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 > > > > -0600) > > > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > > > OMAP3 EVM board + LPDDR/NAND > > > > I2C: ready > > > > DRAM: 256 MiB > > > > NAND: 256 MiB > > > > MMC: OMAP SD/MMC: 0 > > > > Read back SMSC id 0x9220 > > > > OMAP die ID: 265a0024040365fa1801b01f > > > > Net: smc911x-0 > > > > starting USB... > > > > USB0: USB EHCI 1.00 > > > > scanning bus 0 for devices... 1 USB Device(s) found > > > > Hit any key to stop autoboot: 0 > > > > switch to partitions #0, OK > > > > mmc0 is current device > > > > Scanning mmc 0:1... > > > > switch to partitions #0, OK > > > > mmc0 is current device > > > > ** Unable to read file uEnv.txt ** > > > > reading zImage > > > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > > > reading omap3-evm.dtb > > > > 62832 bytes read in 10 ms (6 MiB/s) > > > > Booting zImage from mmc ... > > > > * fdt: cmdline image address = 0x8800 > > > > ## Checking for 'FDT'/'FDT Image' at 8800 > > > > * fdt: raw FDT blob > > > > ## Flattened Device Tree blob at 8800 > > > >Booting using the fdt blob at 0x8800 > > > >of_flat_tree at 0x8800 size 0xf570 > > > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > > > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > > > > > Starting kernel ... > > > > > > > > [HANG] > > > > > > > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > > > > > Ah, hmmm. Can you please try setting bootm_size, as an experiment, to > > > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > > > putting the DTB into where U-Boot is and we stomp on it a bit, causing > > > Linux to boot, see an invalid DTB and not have a console available to > > > tell us. Thanks! > > > > > > > > > That seemed to do it. > > Ah, good! > > > ---8< > > > > OMAP3_EVM # echo $bootm_size > > 0x0a00 > > OMAP3_EVM # reset > > resetting ... > > O > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42) > > Trying to boot from MMC1 > > reading u-boot.img > > reading u-boot.img > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42 -0600) > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > OMAP3 EVM board + LPDDR/NAND > > I2C: ready > > DRAM: 256 MiB > > NAND: 256 MiB > > MMC: OMAP SD/MMC: 0 > > Read back SMSC id 0x9220 > > OMAP die ID: 265a0024040365fa1801b01f > > Net: smc911x-0 > > starting USB... > > USB0: U
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 01:21:05PM -0600, Derald D. Woods wrote: > On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > > > > > This commit keeps the 'fdtaddr' as provided by DEFAULT_LINUX_BOOT_ENV. > > > > > > > > > > Signed-off-by: Derald D. Woods > > > > > --- > > > > > include/configs/omap3_evm.h | 1 + > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h > > > > > index 629d60b961..d95ccdf035 100644 > > > > > --- a/include/configs/omap3_evm.h > > > > > +++ b/include/configs/omap3_evm.h > > > > > @@ -127,6 +127,7 @@ > > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > > + "fdt_high=0x\0" \ > > > > > "bootenv=uEnv.txt\0" \ > > > > > "optargs=\0" \ > > > > > "mmcdev=0\0" \ > > > > > > > > What's the problem this solves, and how much memory is on the system in > > > > question? bootm_size should be ensuring we never relocate it outside of > > > > the first 256MB of memory. Thanks! > > > > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > > addition of this fairly common environment variable allowed my > > > OMAP34XX board to boot the kernel without an appended devicetree. > > > When I use the variable to trigger 'disable_relocation', as the code > > > indicates, the kernel boot behavior is what I expect. I spent a few > > > hours following the code path to a single line edition that works. > > > > > > > > > Without 'fdt_high' > > > == > > > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) > > > Trying to boot from MMC1 > > > reading u-boot.img > > > reading u-boot.img > > > > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 -0600) > > > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > > OMAP3 EVM board + LPDDR/NAND > > > I2C: ready > > > DRAM: 256 MiB > > > NAND: 256 MiB > > > MMC: OMAP SD/MMC: 0 > > > Read back SMSC id 0x9220 > > > OMAP die ID: 265a0024040365fa1801b01f > > > Net: smc911x-0 > > > starting USB... > > > USB0: USB EHCI 1.00 > > > scanning bus 0 for devices... 1 USB Device(s) found > > > Hit any key to stop autoboot: 0 > > > switch to partitions #0, OK > > > mmc0 is current device > > > Scanning mmc 0:1... > > > switch to partitions #0, OK > > > mmc0 is current device > > > ** Unable to read file uEnv.txt ** > > > reading zImage > > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > > reading omap3-evm.dtb > > > 62832 bytes read in 10 ms (6 MiB/s) > > > Booting zImage from mmc ... > > > * fdt: cmdline image address = 0x8800 > > > ## Checking for 'FDT'/'FDT Image' at 8800 > > > * fdt: raw FDT blob > > > ## Flattened Device Tree blob at 8800 > > >Booting using the fdt blob at 0x8800 > > >of_flat_tree at 0x8800 size 0xf570 > > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > > > Starting kernel ... > > > > > > [HANG] > > > > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > > > Ah, hmmm. Can you please try setting bootm_size, as an experiment, to > > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > > putting the DTB into where U-Boot is and we stomp on it a bit, causing > > Linux to boot, see an invalid DTB and not have a console available to > > tell us. Thanks! > > > > > That seemed to do it. Ah, good! > ---8< > > OMAP3_EVM # echo $bootm_size > 0x0a00 > OMAP3_EVM # reset > resetting ... > O > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42) > Trying to boot from MMC1 > reading u-boot.img > reading u-boot.img > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42 -0600) > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > Model: TI OMAP35XX EVM (TMDSEVM3530) > OMAP3 EVM board + LPDDR/NAND > I2C: ready > DRAM: 256 MiB > NAND: 256 MiB > MMC: OMAP SD/MMC: 0 > Read back SMSC id 0x9220 > OMAP die ID: 265a0024040365fa1801b01f > Net: smc911x-0 > starting USB... > USB0: USB EHCI 1.00 > scanning bus 0 for devices... 1 USB Device(s) found > Hit any key to stop autoboot: 0 > switch to partitions #0, OK > mmc0 is current device > Scanning mmc 0:1... > switch to partitions #0, OK > mmc0 is current device > ** Unable to read file uEnv.txt ** > reading zImage > 4637344 bytes read in 407 ms (10.9 MiB/s) > reading omap3-evm.dtb > 62
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 01:43:43PM -0500, Tom Rini wrote: > On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > > > This commit keeps the 'fdtaddr' as provided by DEFAULT_LINUX_BOOT_ENV. > > > > > > > > Signed-off-by: Derald D. Woods > > > > --- > > > > include/configs/omap3_evm.h | 1 + > > > > 1 file changed, 1 insertion(+) > > > > > > > > diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h > > > > index 629d60b961..d95ccdf035 100644 > > > > --- a/include/configs/omap3_evm.h > > > > +++ b/include/configs/omap3_evm.h > > > > @@ -127,6 +127,7 @@ > > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > > + "fdt_high=0x\0" \ > > > > "bootenv=uEnv.txt\0" \ > > > > "optargs=\0" \ > > > > "mmcdev=0\0" \ > > > > > > What's the problem this solves, and how much memory is on the system in > > > question? bootm_size should be ensuring we never relocate it outside of > > > the first 256MB of memory. Thanks! > > > > > > > The logic within "common/image-fdt.c" lead me down this path. The > > addition of this fairly common environment variable allowed my > > OMAP34XX board to boot the kernel without an appended devicetree. > > When I use the variable to trigger 'disable_relocation', as the code > > indicates, the kernel boot behavior is what I expect. I spent a few > > hours following the code path to a single line edition that works. > > > > > > Without 'fdt_high' > > == > > > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) > > Trying to boot from MMC1 > > reading u-boot.img > > reading u-boot.img > > > > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 -0600) > > > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > > Model: TI OMAP35XX EVM (TMDSEVM3530) > > OMAP3 EVM board + LPDDR/NAND > > I2C: ready > > DRAM: 256 MiB > > NAND: 256 MiB > > MMC: OMAP SD/MMC: 0 > > Read back SMSC id 0x9220 > > OMAP die ID: 265a0024040365fa1801b01f > > Net: smc911x-0 > > starting USB... > > USB0: USB EHCI 1.00 > > scanning bus 0 for devices... 1 USB Device(s) found > > Hit any key to stop autoboot: 0 > > switch to partitions #0, OK > > mmc0 is current device > > Scanning mmc 0:1... > > switch to partitions #0, OK > > mmc0 is current device > > ** Unable to read file uEnv.txt ** > > reading zImage > > 4637344 bytes read in 407 ms (10.9 MiB/s) > > reading omap3-evm.dtb > > 62832 bytes read in 10 ms (6 MiB/s) > > Booting zImage from mmc ... > > * fdt: cmdline image address = 0x8800 > > ## Checking for 'FDT'/'FDT Image' at 8800 > > * fdt: raw FDT blob > > ## Flattened Device Tree blob at 8800 > >Booting using the fdt blob at 0x8800 > >of_flat_tree at 0x8800 size 0xf570 > > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) > >Loading Device Tree to 8ffed000, end 856f ... OK > > > > Starting kernel ... > > > > [HANG] > > > > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. > > Ah, hmmm. Can you please try setting bootm_size, as an experiment, to > 0x0a00 ? I wonder if, since you have 256MB of memory we're not > putting the DTB into where U-Boot is and we stomp on it a bit, causing > Linux to boot, see an invalid DTB and not have a console available to > tell us. Thanks! > That seemed to do it. ---8< OMAP3_EVM # echo $bootm_size 0x0a00 OMAP3_EVM # reset resetting ... O U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42) Trying to boot from MMC1 reading u-boot.img reading u-boot.img U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 13:03:42 -0600) OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz Model: TI OMAP35XX EVM (TMDSEVM3530) OMAP3 EVM board + LPDDR/NAND I2C: ready DRAM: 256 MiB NAND: 256 MiB MMC: OMAP SD/MMC: 0 Read back SMSC id 0x9220 OMAP die ID: 265a0024040365fa1801b01f Net: smc911x-0 starting USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 1 USB Device(s) found Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... switch to partitions #0, OK mmc0 is current device ** Unable to read file uEnv.txt ** reading zImage 4637344 bytes read in 407 ms (10.9 MiB/s) reading omap3-evm.dtb 62832 bytes read in 10 ms (6 MiB/s) Booting zImage from mmc ... * fdt: cmdline image address = 0x8800 ## Checking for 'FDT'/'FDT Image' at 8800 * fdt: raw FDT blob ## Flattened Device Tree blob at 8800 Booting using the fdt blob at 0x8800 of_flat_tree at 0x8800 size 0xf570 ## device tree at 8800 ... 880
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 11:48:29AM -0600, Derald D. Woods wrote: > On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > > > This commit keeps the 'fdtaddr' as provided by DEFAULT_LINUX_BOOT_ENV. > > > > > > Signed-off-by: Derald D. Woods > > > --- > > > include/configs/omap3_evm.h | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h > > > index 629d60b961..d95ccdf035 100644 > > > --- a/include/configs/omap3_evm.h > > > +++ b/include/configs/omap3_evm.h > > > @@ -127,6 +127,7 @@ > > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > > + "fdt_high=0x\0" \ > > > "bootenv=uEnv.txt\0" \ > > > "optargs=\0" \ > > > "mmcdev=0\0" \ > > > > What's the problem this solves, and how much memory is on the system in > > question? bootm_size should be ensuring we never relocate it outside of > > the first 256MB of memory. Thanks! > > > > The logic within "common/image-fdt.c" lead me down this path. The > addition of this fairly common environment variable allowed my > OMAP34XX board to boot the kernel without an appended devicetree. > When I use the variable to trigger 'disable_relocation', as the code > indicates, the kernel boot behavior is what I expect. I spent a few > hours following the code path to a single line edition that works. > > > Without 'fdt_high' > == > > U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) > Trying to boot from MMC1 > reading u-boot.img > reading u-boot.img > > > U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 -0600) > > OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz > Model: TI OMAP35XX EVM (TMDSEVM3530) > OMAP3 EVM board + LPDDR/NAND > I2C: ready > DRAM: 256 MiB > NAND: 256 MiB > MMC: OMAP SD/MMC: 0 > Read back SMSC id 0x9220 > OMAP die ID: 265a0024040365fa1801b01f > Net: smc911x-0 > starting USB... > USB0: USB EHCI 1.00 > scanning bus 0 for devices... 1 USB Device(s) found > Hit any key to stop autoboot: 0 > switch to partitions #0, OK > mmc0 is current device > Scanning mmc 0:1... > switch to partitions #0, OK > mmc0 is current device > ** Unable to read file uEnv.txt ** > reading zImage > 4637344 bytes read in 407 ms (10.9 MiB/s) > reading omap3-evm.dtb > 62832 bytes read in 10 ms (6 MiB/s) > Booting zImage from mmc ... > * fdt: cmdline image address = 0x8800 > ## Checking for 'FDT'/'FDT Image' at 8800 > * fdt: raw FDT blob > ## Flattened Device Tree blob at 8800 >Booting using the fdt blob at 0x8800 >of_flat_tree at 0x8800 size 0xf570 > ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) >Loading Device Tree to 8ffed000, end 856f ... OK > > Starting kernel ... > > [HANG] > > > Make note of the "of_flat_tree" and "Loading Device Tree" lines. Ah, hmmm. Can you please try setting bootm_size, as an experiment, to 0x0a00 ? I wonder if, since you have 256MB of memory we're not putting the DTB into where U-Boot is and we stomp on it a bit, causing Linux to boot, see an invalid DTB and not have a console available to tell us. Thanks! -- Tom signature.asc Description: PGP signature ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 10:37:18AM -0500, Tom Rini wrote: > On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > > > This commit keeps the 'fdtaddr' as provided by DEFAULT_LINUX_BOOT_ENV. > > > > Signed-off-by: Derald D. Woods > > --- > > include/configs/omap3_evm.h | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h > > index 629d60b961..d95ccdf035 100644 > > --- a/include/configs/omap3_evm.h > > +++ b/include/configs/omap3_evm.h > > @@ -127,6 +127,7 @@ > > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > > + "fdt_high=0x\0" \ > > "bootenv=uEnv.txt\0" \ > > "optargs=\0" \ > > "mmcdev=0\0" \ > > What's the problem this solves, and how much memory is on the system in > question? bootm_size should be ensuring we never relocate it outside of > the first 256MB of memory. Thanks! > The logic within "common/image-fdt.c" lead me down this path. The addition of this fairly common environment variable allowed my OMAP34XX board to boot the kernel without an appended devicetree. When I use the variable to trigger 'disable_relocation', as the code indicates, the kernel boot behavior is what I expect. I spent a few hours following the code path to a single line edition that works. Without 'fdt_high' == U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52) Trying to boot from MMC1 reading u-boot.img reading u-boot.img U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:16:52 -0600) OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz Model: TI OMAP35XX EVM (TMDSEVM3530) OMAP3 EVM board + LPDDR/NAND I2C: ready DRAM: 256 MiB NAND: 256 MiB MMC: OMAP SD/MMC: 0 Read back SMSC id 0x9220 OMAP die ID: 265a0024040365fa1801b01f Net: smc911x-0 starting USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 1 USB Device(s) found Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... switch to partitions #0, OK mmc0 is current device ** Unable to read file uEnv.txt ** reading zImage 4637344 bytes read in 407 ms (10.9 MiB/s) reading omap3-evm.dtb 62832 bytes read in 10 ms (6 MiB/s) Booting zImage from mmc ... * fdt: cmdline image address = 0x8800 ## Checking for 'FDT'/'FDT Image' at 8800 * fdt: raw FDT blob ## Flattened Device Tree blob at 8800 Booting using the fdt blob at 0x8800 of_flat_tree at 0x8800 size 0xf570 ## device tree at 8800 ... 8800f56f (len=75120 [0x12570]) Loading Device Tree to 8ffed000, end 856f ... OK Starting kernel ... [HANG] Make note of the "of_flat_tree" and "Loading Device Tree" lines. With 'fdt_high=0x' == U-Boot SPL 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:24:25) Trying to boot from MMC1 reading u-boot.img reading u-boot.img U-Boot 2018.01-rc2-00028-gaf9da945cd-dirty (Dec 28 2017 - 11:24:25 -0600) OMAP3530-GP ES3.1, CPU-OPP2, L3-165MHz, Max CPU Clock 720 MHz Model: TI OMAP35XX EVM (TMDSEVM3530) OMAP3 EVM board + LPDDR/NAND I2C: ready DRAM: 256 MiB NAND: 256 MiB MMC: OMAP SD/MMC: 0 Read back SMSC id 0x9220 OMAP die ID: 265a0024040365fa1801b01f Net: smc911x-0 starting USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 1 USB Device(s) found Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... switch to partitions #0, OK mmc0 is current device ** Unable to read file uEnv.txt ** reading zImage 4637344 bytes read in 407 ms (10.9 MiB/s) reading omap3-evm.dtb 62832 bytes read in 10 ms (6 MiB/s) Booting zImage from mmc ... * fdt: cmdline image address = 0x8800 ## Checking for 'FDT'/'FDT Image' at 8800 * fdt: raw FDT blob ## Flattened Device Tree blob at 8800 Booting using the fdt blob at 0x8800 of_flat_tree at 0x8800 size 0xf570 Using Device Tree in place at 8800, end 8801256f Starting kernel ... [0.00] Booting Linux on physical CPU 0x0 [0.00] Linux version 4.15.0-rc5-1-gdc7de7cf5f08 (ddwoods@ethiopia) (gcc version 7.2.0 (crosstool-NG crosstool-ng-1.23.0-269-ge832b9b2 - Linux 4.14.y)) #17 PREEMPT Wed Dec 27 22:59:37 CST 2017 [0.00] CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c5387d [0.00] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache [0.00] OF: fdt: Machine model: TI OMAP35XX EVM (TMDSEVM3530) [0.00] Memory policy: Data cache writeback [0.00] cma: Reserved 16 MiB at 0x8e80 [0.00] CPU: All CPU(s) started in SVC mode. [0.00] OMAP3430/3530 ES3.1 (l2cache iva sgx neon isp) [0.00] random: fast init done [0.00] Built 1 zonelists, mobility grouping on. Total pages: 64706 [0.00] Kernel command line: console=ttyO0,115200n8 mtdp
Re: [U-Boot] [PATCH] ARM: omap3: evm: Do not relocate FDT address
On Thu, Dec 28, 2017 at 01:25:43AM -0600, Derald D. Woods wrote: > This commit keeps the 'fdtaddr' as provided by DEFAULT_LINUX_BOOT_ENV. > > Signed-off-by: Derald D. Woods > --- > include/configs/omap3_evm.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h > index 629d60b961..d95ccdf035 100644 > --- a/include/configs/omap3_evm.h > +++ b/include/configs/omap3_evm.h > @@ -127,6 +127,7 @@ > "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ > "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ > "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ > + "fdt_high=0x\0" \ > "bootenv=uEnv.txt\0" \ > "optargs=\0" \ > "mmcdev=0\0" \ What's the problem this solves, and how much memory is on the system in question? bootm_size should be ensuring we never relocate it outside of the first 256MB of memory. Thanks! -- Tom signature.asc Description: PGP signature ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot