On 10.09.2013, at 16:46, Stefan Seyfried wrote:

> Am 10.09.2013 15:58, schrieb Guillaume Gardet:
>> Hi,
>> 
>> 
>> Le 10/09/2013 15:43, Stefan Seyfried a écrit :
>>> Hi all,
>>> 
>>> I'm trying to get RasPi to boot with U-Boot, streamlined with the
>>> other ARM platforms (I guess).
>> 
>> Raspberry Pi is a bit special. ;)
> 
> I know :-)
> 
>> boot.scr is a compiled version of boot.script. So it depends what you
>> put in boot.script. We should use zImage from /boot in rootfs if
>> possible.
> 
> I managed to do that.
> 
> Steps to achieve this:
> 
> 1) I patched U-Boot to preserve the command line that the bootcode.bin
> passed to it (the bootcode.bin is loading the u-boot as a kernel, so it
> passes the commandline) and expose it as $bootargs_orig. Additionally I
> enabled ext2/ext4 Filesytems. Result is in home:seife:ARM/u-boot-rpib
> 
> 2) installed my u-boot-rpib.rpm, copied /boot/u-boot.bin onto the
> FAT-partition (not renamed).
> 
> 3) edit config.txt on the FAT partition, add the line
> 
>       kernel=u-boot.bin
> 
> 4) create a script, e.g. /tmp/boot.scr:
> 
> # u-boot script to boot from second partition, can be / or /boot
> prefixes="/boot/ /"
> kernel="zImage"
> dev=mmc
> part=0:2  # second partition
> # the boot args we got from the firmware loader
> setenv bootargs \"$bootargs_orig\"
> echo
> echo "searching for kernel in..."
> for prefix in $prefixes; do
>  echo "\\c    $prefix "
>  # hush has no "break" command, so we must put this inside the loop...
>  if load $dev $part $kernel_addr_r ${prefix}zImage; then
>    echo
>    echo "booting the kernel... good luck :-)"
>    echo
>    bootz $kernel_addr_r
>  fi
> done
> 
> 5) create a u-boot image from the script:
> 
>  mkimage -A arm -T script -C none -n "RaspberryPi boot helper" \
>     -d /tmp/boot.scr /tmp/boot.scr.uimg
> 
> 6) copy /boot.scr.uimg onto the FAT partition.
> 
> 7) reboot, enjoy! :-)
> 
> The script searches zImage in the second partition, which should be ext2
> or ext4. It searches first in /boot, if this fails it tries /, so that a
> setup with 3 partitions, first FAT, second ext2 /boot, third for rootfs
> will also work.
> 
>>> * who creates boot.scr.img?
>> 
>> It is you in the u-boot rpm build.
> 
> Well, I did not find anything in the u-boot build / spec file that would
> do this. I notice that other architectures also use a boot.scr, wo I was
> wondering which part of the build process actually creates this script /
> image file.

It's part of the JeOS package :).

Oh, and thanks a lot for sitting down on this! I'm looking very much forward to 
a full ARMv6 tree with u-boot enabled Raspberry PI support :).


Alex

--
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]

Reply via email to