Re: Anyone got Wheezy running on a Dreamplug?
On Sat, 2013-05-18 at 11:40 +0100, Ian Campbell wrote:
> Hi Tixy,
>
> On Fri, 2013-05-17 at 09:24 +0100, Tixy wrote:
> > Does anyone know of any foolproof method of getting Wheezy running on a
> > Dreamplug?
> >
> > I believe this requires upgrading U-Boot (to get device-tree support/fix
> > L2 cache issue?) but when I tried upgrading U-Boot by flashing it from
> > U-Boot I ended up with an expensive brick. Now this may have been user
> > error, but I don't want to risk bricking the new DreamPlug I bought
> > without instructions which are known to work. Or, perhaps the safest
> > thing is to load a new U-Boot from the old one if that's possible? And
> > in desperation I may even resort to writing a shim to make the Wheezy
> > kernel load with the stock U-Boot.
>
> You can do this with devio. My NOTES file says (I've not tried this
> recently, but I'm reasonably sure it worked when I made the notes):
> $ (
> # disable l2 caches
> devio "wl 0xee3f3f11,4" # mrc 15, 1, r3, cr15, cr1, {0}
> devio "wl 0xe3c33501,4" # bic r3, r3, #4194304 ; 0x400000
> devio "wl 0xee2f3f11,4" # mcr 15, 1, r3, cr15, cr1, {0}
>
> # flush caches
> devio "wl 0xe3a03000,4" # mov r3, #0
> devio "wl 0xee073f17,4" # mcr 15, 0, r3, cr7, cr7, {0}
>
> cat vmlinuz-3.2.0-3-kirkwood
> )> vmlinuz.devio
> $ mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 \
> -n "kernel 3.2.0-3-kirkwood" -d vmlinuz.devio myuImage
>
> This ought to work equally well with the kernel file provided by the
> installer.
If does if you append the device-tree to the kernel as well. I ended up
trying to extend the devio shim for device-tree and was having problems,
then saw the Debian Kirkwood image has CONFIG_ARM_APPENDED_DTB :-)
So for others finding this thread, I ended up with this method to
convert the installer uImage into one which will boot on the DreamPlug
with the stock U-Boot which ships on the DreamPlug...
(
# disable l2 caches
devio "wl 0xee3f3f11,4" # mrc 15, 1, r3, cr15, cr1, {0}
devio "wl 0xe3c33501,4" # bic r3, r3, #4194304 ; 0x400000
devio "wl 0xee2f3f11,4" # mcr 15, 1, r3, cr15, cr1, {0}
# flush caches
devio "wl 0xe3a03000,4" # mov r3, #0
devio "wl 0xee073f17,4" # mcr 15, 0, r3, cr7, cr7, {0}
# remove uboot header from the uImage we want to boot
dd if=original-uImage bs=1 skip=64
# append dtb to kernel image
cat kirkwood-dreamplug.dtb
)> vmlinuz.devio
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 \
-n "kernel 3.2.0-4-kirkwood" -d vmlinuz.devio new-uImage
I got the dtb file from linux-image-3.2.0-4-kirkwood_3.2.41-2_armel.deb
Of course, I will need to do similar processing of the image the
installer puts in the boot partition, and repeat each time we get a
kernel update.
Thanks Ian for your help.
--
Tixy
Reply to: