Re: DreamPlug-jessie troubles
On Sun, 2014-10-19 at 14:01 +0000, Clint Adams wrote:
> On Sun, Oct 19, 2014 at 01:31:34PM +0000, Clint Adams wrote:
> > If I boot the wheezy kernel with initrd and no dtb it boots fine.
>
> Er, so if I do the same with the jessie kernel (uImage, uInitrd, no dtb),
> it works too.
>
> I'm quite confused.
My theory:
Booting uImage (w/ appended dtb inside) + uInitrd passes the initrd via
atags, because this is the behaviour of the two argument form u-boot's
of bootm/bootz.
Booting uImage (w/ appended dtb inside) + uInitrd + dtb passes the
initrd via the /chosen/ node of the dtb (the behaviour of the three
argument form of bootz/bootm. *But* the appended DTB inside the uImage
then shadows the provided one and it doesn't contain the initrd, hence
the kernel never sees it.
I think the answer to your problem is to either stop passing a dtb from
the bootloader (IOW use the two argument form of bootz) or to stop
flash-kernel from appending a dtb.
You can achieve the latter with (untested):
# cat >>/etc/flash-kernel/db <<EOF
Machine: Globalscale Technologies Dreamplug
DTB-Append: no
EOF
What I can't quite explain is why your setup work(s|ed) for you with
Wheezy, I don't think the behaviour of bootm/bootz has changed.
Wheezy's kernel had:
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_ATAGS_PROC=y
Jessie's has:
CONFIG_ATAGS=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
CONFIG_ATAGS_PROC=y
Perhaps one of those new options is the difference.
Ian.
Reply to: