Warning: Neither atags nor dtb found

Problem: I am getting “Warning: Neither atags nor dtb found” after i issue below commands.

# fatload mmc 0:1 0x80008000 zImage
# fatload mmc 0:1 0x81000000 omap3-beagle-xm.dtb
# bootz 0x80008000 - 0x81000000

Kernel version:
VERSION = 4
SUBLEVEL = 5

uboot: latest version

Size of dtb/uboot/zimage:

-rw-rw-r-- 1 ralph ralph 62K Aug 28 16:48 omap3-beagle-xm.dtb
-rw-rw-r-- 1 ralph ralph 372K Aug 27 18:31 u-boot.img
-rwxrwxr-x 1 ralph ralph 7.2M Aug 28 16:48 zImage

Debug information:
I debugged and looked around the kernel code and found this happens because it couldn’t find the device tree nor ATAGS.
Understandably it will not find ATAG but why it is not able to find dtb is a mystery to me. Probably it could be overwritten
by the uncompressed kernel code?

I am using buildroot environment for my development and if i just do “$fatload mmc 0:1 0x80007fc0 uImage” and boot
then kernel boots up but mmc initialization fails in the end. Probably because of the buggy
mmc card or probably because mmc driver was not initialized to it’s default state as it couldn’t
find device tree.

I tried to use older uboot but i got “machine id doesn’t match” problem. So i downloaded latest
bootloader and it at least doesn’t complain about that.

http://permalink.gmane.org/gmane.linux.ports.arm.kernel/258992 according to this documentation

the kernel be placed under 128MiB and it recommends that the DTB be placed after the 128MiB boundary. I just wanted
to know the best way to debug if kernel decompression is overwriting to dtb address space or i am
looking in the wrong direction?

I think http://lxr.free-electrons.com/source/arch/arm/kernel/devtree.c#L215 this line is failing. I will add here and confirm but
by that time does anyone know what could be the problem?

Just to add more:
I have got kernel from this link https://eewiki.net/display/linuxonarm/BeagleBoard provided by Robert Nelson.

Use the new defaults:

# fatload mmc 0:1 0x82000000 zImage
# fatload mmc 0:1 0x88000000 omap3-beagle-xm.dtb
# bootz 0x82000000 - 0x88000000

Regards,

Robert,

Not to highjack this,
Are these the same address for original Beagleboard Rev-C
Thanks in advance
amf

Correct, they are the default's in u-boot for all ti omap devices with
at-least 256MB of ram..

Regards,

Problem: I am getting “Warning: Neither atags nor dtb found” after i issue
below commands.

fatload mmc 0:1 0x80008000 zImage

fatload mmc 0:1 0x81000000 omap3-beagle-xm.dtb

bootz 0x80008000 - 0x81000000

Use the new defaults:

fatload mmc 0:1 0x82000000 zImage

fatload mmc 0:1 0x88000000 omap3-beagle-xm.dtb

bootz 0x82000000 - 0x88000000

Thanks but this also didn’t work. Bootup gets stuck at “Starting kernel” which is coming from bootloader
and after that there is no logs in console.

I have the required UART3 driver compiled in my kernel and that is why i get below logs when
i use below commands to boot but this doesn’t load up the dtb. I use uImage in below.
loaduimage=fatload mmc 0:1 0x80007fc0 uImage
loadfdt=fatload mmc 0:1 ${fdtaddr} uImage
mmcrootfstype=ext4 rootwait

For full kernel logs:

typo mistake cleared.