Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

This is a page about TI's BeagleBoard.

Available:

BeagleBoard Cx at Digi-Key
BeagleBoard xM at Digi-Key

Basic Requirements

Bootloader

Das U-Boot – the Universal Boot Loader http://www.denx.de/wiki/U-Boot

U-Boot Download:

Download U-Boot Tarball:

wget ftp://ftp.denx.de/pub/u-boot/u-boot-2011.12.tar.bz2
tar xjf u-boot-2011.12.tar.bz2
cd u-boot-2011.12/

Or via git:

git clone git://git.denx.de/u-boot.git
cd u-boot/
git checkout v2011.12 -b tmp

U-Boot Patches

wget https://raw.github.com/RobertCNelson/Bootloader-Builder/master/patches/0001-Revert-armv7-disable-L2-cache-in-cleanup_before_linu.patch
wget https://raw.github.com/RobertCNelson/Bootloader-Builder/master/patches/0001-beagleboard-add-support-for-scanning-loop-through-ex.patch
wget https://raw.github.com/RobertCNelson/Bootloader-Builder/master/patches/0002-OMAP-MMC-Add-delay-before-waiting-for-status.patch
wget https://raw.github.com/RobertCNelson/Bootloader-Builder/master/patches/0001-omap-beagle-this-is-Special-Computing-C4.patch
wget https://raw.github.com/RobertCNelson/Bootloader-Builder/master/patches/0002-omap-beagle-re-add-c4-support.patch

patch -p1 < 0001-Revert-armv7-disable-L2-cache-in-cleanup_before_linu.patch
patch -p1 < 0001-beagleboard-add-support-for-scanning-loop-through-ex.patch
patch -p1 < 0002-OMAP-MMC-Add-delay-before-waiting-for-status.patch
patch -p1 < 0001-omap-beagle-this-is-Special-Computing-C4.patch
patch -p1 < 0002-omap-beagle-re-add-c4-support.patch

U-Boot Configure and Build:

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- omap3_beagle_config
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-

Linux Kernel

Linux Build Script:

git clone git://github.com/RobertCNelson/stable-kernel.git
cd stable-kernel/

Run Build Script:

./build_kernel.sh

The kernel zImage and modules will be under the deploy directory.

Root File System

Default User: debian
Password: temppwd

Root User: root
Root Password: root

wget -c http://rcn-ee.net/deb/rootfs/squeeze/squeeze-minimal-armel-2011-09-28.tar.xz

verify the image with:

md5sum squeeze-minimal-armel-2011-09-28.tar.xz
7419858a18e8d2ec30fe0d437bbe5da0  squeeze-minimal-armel-2011-09-28.tar.xz

Extract Image:

tar xJf squeeze-minimal-armel-2011-09-28.tar.xz

Setup microSD card

Erase microSD card: (assuming: /dev/mmcblk0, "sudo fdisk -l" is useful for determining the device id)

sudo parted --script /dev/mmcblk0 mklabel msdos

Setup Boot Partition:

Make sure to check what version of fdisk you have installed, as 2.18+ removed a former default setting. The version can be checked with: "fdisk -v"

fdisk 2.17.x

sudo fdisk /dev/mmcblk0 << END
n
p
1
1
+64M
t
e
p
w
END

fdisk 2.18.x ->2.19.x

sudo fdisk -c=dos -u=cylinders /dev/mmcblk0 << END
n
p
1
1
+64M
t
e
p
w
END

Set Boot Flag

sudo parted --script /dev/mmcblk0 set 1 boot on

Format as fat

sudo mkfs.vfat -F 16 /dev/mmcblk0p1 -n boot

Create Partition Layout:
rootfs: ext3/4, rest of microSD card.

Mount the boot/rootfs partitions

Copy Boot Files:

Copy MLO to the boot partition

sudo cp -v ./u-boot-2011.12/MLO /media/boot/MLO

Copy u-boot.bin to the boot partition

sudo cp -v ./u-boot-2011.12/u-boot.img /media/boot/u-boot.img

Copy U-Boot BootScript:

create a new file: uEnv.txt

bootfile=uImage
address_uimage=0x80300000

console=ttyO2,115200n8

defaultdisplay=dvi
dvimode=1280x720MR-16@60

mmcroot=/dev/mmcblk0p2 ro
mmcrootfstype=ext4 rootwait fixrtc

optargs=console=tty0

mmc_load_uimage=fatload mmc 0:1 ${address_uimage} ${bootfile}

#dvi->defaultdisplay
mmcargs=setenv bootargs console=${console} ${optargs} mpurate=${mpurate} buddy=${buddy} buddy2=${buddy2} camera=${camera} vram=${vram} omapfb.mode=${defaultdisplay}:${dvimode} omapdss.def_disp=${defaultdisplay} root=${mmcroot} rootfstype=${mmcrootfstype}

loaduimage=run mmc_load_uimage; echo Booting from mmc ...; run mmcargs; bootm ${address_uimage}

Run mkimage on the Kernel zImage to create a U-Boot uImage file:

mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n "3.1.6-x6" -d ./stable-kernel/deploy/3.1.6-x6.zImage ./uImage

Copy boot.scr & uEnv.txt to the boot partition

sudo cp -v ./uEnv.txt /media/boot/

Copy Kernel uImage:

sudo cp -v ./uImage /media/boot/uImage

Copy Root File System:

sudo tar xfvp ./squeeze-minimal-armel-*/armel-rootfs-*.tar -C /media/rootfs/

Copy Kernel modules:

sudo tar xfv ./stable-kernel/deploy/3.1.6-x6-modules.tar.gz -C /media/rootfs/

Add Partition info to /etc/fstab:

sudo nano /media/rootfs/etc/fstab
add: /dev/mmcblk0p2 / ext4 errors=remount-ro 0 1

Add Serial Login:

sudo nano /media/rootfs/etc/inittab

edit last line:

from: S:2345:respawn:/sbin/getty 115200
to: S:2345:respawn:/sbin/getty 115200 ttyO2

Remove microSD card:

sync
sudo umount /media/boot/
sudo umount /media/rootfs/

First Boot:

Serial Boot log:
beagle_debian_3.0.x.txt

  • No labels