bc10/rowboat

Summary

This is the last part of rowboat-eclair-dsp section. The previous sections have showed where to obtain the source files and
how to build the rowboat-ecliar-dsp files form the source. DSP and SGX have been integrate. In this section, it discusses how
to create a bootable SD card. This section shows how to transfer the files of for rowboat-eclair-dsp from a host computer to a
SD card.

SD card boot

Preparation for creating bootable SD card

This section basically follows this article. Since bc10 is a clone of BeagleBoard, the same process can be applicable. However,
the specifications of bc10's hardware are not same as beagleboard's, so the boot process of bc10 is quite differ from BeagleBoard's.
Please read bc10/booting before working on following sections.

Create bootable SD card

This follows the direction listed at Create bootable SD card in bc10/booting and create the same composition of partitions in a
SD card. FAT32 partition and Linux partition are created. To work on a host computer, the created SD card is mounted on the
host computer. (For Ubuntu, because of udev, SD cards are automatically mounted). Check the name of device.

$ mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/beat/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=beat)
/dev/sdd2 on /media/LABEL2 type ext3 (rw,nosuid,nodev,uhelper=udisks)
/dev/sdd1 on /media/LABEL1 type vfat (rw,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,flush)

Please examine whether the SD card does have the required partitions or not.

 $ sudo fdisk -l /dev/sdd
Disk /dev/sdd: 1977 MB, 1977614336 bytes
255 heads, 63 sectors/track, 240 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xfeda75ec 

   Device Boot      Start         End      Blocks   Id   System
/dev/sdd1   *           1          51      409626    c  W95 FAT32 (LBA)
/dev/sdd2              52         240     1518142+  83  Linux

Place uImage

Copy uImage into FAT partition. (Assume that MOL (x-loader) and u-boot.bin have already been copied into FAT partition.)

$ sudo cp ~/rowboat-eclair-dsp/kernel/arch/arm/boot/uImage /media/LABEL1/

Put rootfs

Expand the archive of android rootfs in ext3 partition.

$ sudo tar jxfv out/target/product/beagleboard/rootfs.tar.bz2 --numeric-owner -C /media/LABEL2

Create boot.scr

Create boot.scr. This is referred from this site. As power is turned on, u-boot looks into boot.scr file. To set up this file, enable configuring
hardware during boot process.

Create boot.script and execute mkimage

If creates the same contents as setenv, an u-boot command prompt in serial console, generates, does not require any manual setting as
every time computer boots. Since DVSDK DSP stack uses physical memory area from 88M to 120M, do not change the memory mapping
as it is configured.

Create boot.script with the contents shown below.

if fatload mmc 0 84000000 uImage
then
 echo ***** Kernel: /dev/mmcblk0p1/uImage.bin *****
fi
echo ***** RootFS: /dev/mmcblk0p2 *****
setenv bootargs 'mem=88M@0x80000000 mem=128M@0x88000000 androidboot.console=ttyS2 console=tty0 console=ttyS2,115200n8 root=/dev/mmcblk0p2 init=/init rootwait omapfb.video_mode=680x480MR-24@60'
bootm 84000000

boot.script is treated as the parameter, execute mkimage as it is shown below.

$ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n ./boot.script -d ./boot.script ./boot.scr &> /dev/null

Copy the generated boot.scr into FAT partition of the SD card.

$ sudo cp boot.scr /media/LABEL1/

This is how to create the bootable SD card for rowboat-eclair-dsp. At the end, for precaution, sync and unmount the SD card from the working
host PC.

$ sync
$ sudo umount /media/LABEL1
$ sudo umount /media/LABEL2

Reference


Front page   Edit Freeze Diff Backup Upload Copy Rename Reload   New List of pages Search Recent changes   RSS of recent changes
Last-modified: 2010-09-14 (Tue) 10:23:21 (2833d)