Hi i ´m new here,
Here is a little Howto to get Arch Linux ARM on a Beagleboard xM over serial console with the 2.6.38.2 kernel running.
1.prepare your SDcard as per in this Manual http://www.labbookpages.co.uk/electronics/beagleBoard/custom.html#sdCard
you can use mkfs.ext3 or mkfs.ext4 mke2fs is not required.
2. Download MLO and u-boot.bin and store it in your fat Partition
$this->bbcode_second_pass_code('', 'cd /media/boot/
wget http://www.angstrom-distribution.org/demo/beagleboard/MLO
wget http://www.angstrom-distribution.org/demo/beagleboard/u-boot.bin')
Create a new file named bootScript
$this->bbcode_second_pass_code('', 'nano bootScript')
with the following content
$this->bbcode_second_pass_code('', 'mmc init
setenv console tty0 console=ttyO2,115200n8
setenv ramroot /dev/ram0 rw ramdisk_size=131072 initrd=0x88000000,128M
setenv optargs mem=80M@0x80000000 mem=384M@0x88000000
setenv bootargs console=${console} ${optargs} mpurate=800 root=/dev/mmcblk0p2 rootfstype=ext4 rw rootwait
fatload mmc 0 0x82000000 uImage
bootm 0x82000000
')
do not forget to change the rootfstype if you don´t use ext4...
and run now
$this->bbcode_second_pass_code('', 'mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n 'Boot script' -d bootScript boot.scr
')
2. Dowload latest Arch Linux ARM from here http://Arch Linux ARM.com/index.php5/Portal:PlugApps_Linux and extract it to the 2nd partition from your SDcard
$this->bbcode_second_pass_code('', 'sudo tar -C /media/files/ -xzf PlugApps-Linux-2011.02-rootfs.tar.gz')
and do that like this Howto http://Arch Linux ARM.com/index.php5/Developers:_Cross_Compiling
change in the /etc/initab the line from
$this->bbcode_second_pass_code('', 's0:12345:respawn:/sbin/agetty -8 115200 ttyS0 linux')
to
$this->bbcode_second_pass_code('', 's0:12345:respawn:/sbin/agetty -8 115200 ttyO2 linux')
and add in /etc/securetty
$this->bbcode_second_pass_code('', 'ttyO2')
3. Here is my PKGBUILD for the beagle kernel, it is not perfect but it works for the moment.
$this->bbcode_second_pass_code('', '# Maintainer: Christian Fritsch <fritschn@gmx.de>
pkgname=('kernel2.6-beagle' 'kernel2.6-beagle-headers')
pkgver=2.6.38.2
pkgrel=x1
pkgdesc="The Beaglboard Kernel with all needed Patches"
arch=('arm')
url="https://launchpad.net/~beagleboard-kernel"
license=('GPL')
makedepends=('ccache' 'bzr')
source=(system.sh)
md5sums=(297a467e025b3736003025cd4ad1f3c7)
#run bzr from the host system if it fails on the target.
bzr branch lp:~beagleboard-kernel/+junk/2.6-stable
cp ${startdir}/system.sh ${startdir}/2.6-stable
cd ${startdir}/2.6-stable
./build_kernel.sh || return 1
package_kernel2.6-beagle() {
pkgdesc="The Beagleboard Kernel"
groups=('beagleboard')
replaces=('kernel26')
mkdir $pkgdir/boot
cd ${startdir}/2.6-stable/deploy
cp *uImage $pkgdir/boot/uImage
tar -C $pkgdir/ -xzf *modules.tar.gz
}
package_kernel2.6-beagle-headers() {
pkgdesc="The Beagleboard Kernel headers"
groups=('beagleboard')
replaces=('kernel26-headers')
cd ${startdir}/2.6-stable/deploy
tar -C $pkgdir/ -xzf *headers.tar.gz
}
')
and the system.sh
$this->bbcode_second_pass_code('', '#!/bin/bash
ARCH=$(uname -m)
if test "-$ARCH-" = "-armv7l-"
then
echo "Using: Native armv7l Compiler"
CC=
else
echo "Using: Cross Compiler"
fi
')
remove the installed and install the new kernel
$this->bbcode_second_pass_code('', 'pacman -Rd kernel26
pacman -U kernel2.6-beagle-2.6.38.2-x1-arm.pkg.tar.xz')
exit with
$this->bbcode_second_pass_code('', 'ctrl+d')
unmount dev from /media/files
$this->bbcode_second_pass_code('', 'umount /media/files/dev')
and copy the uImage to your boot (fat) patition.
$this->bbcode_second_pass_code('', 'cp /media/files/boot/uImage /media/boot/')
thats it, i hope it is understandable..
br chris