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 83 Next »

This is a page about TI's BeagleBoard and BeagleBoard xM.

ARM Cross Compiler: GCC

This is a pre-built (32bit) version of Linaro GCC that runs on generic linux, so 64bit users need to make sure they have installed the 32bit libraries for their distribution. (ubuntu: ia32-libs)

~/
wget -c https://launchpad.net/linaro-toolchain-binaries/trunk/2013.06/+download/gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux.tar.xz
tar xJf gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux.tar.xz
export CC=`pwd`/gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux/bin/arm-linux-gnueabihf-

Bootloader: U-Boot

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

Download:

~/
git clone git://git.denx.de/u-boot.git
cd u-boot/
git checkout v2013.04 -b tmp

Patches:

~/u-boot
wget https://raw.github.com/eewiki/u-boot-patches/master/v2013.04/0001-omap3_beagle-uEnv.txt-bootz-n-fixes.patch

patch -p1 < 0001-omap3_beagle-uEnv.txt-bootz-n-fixes.patch

Configure and Build:

~/u-boot
make ARCH=arm CROSS_COMPILE=${CC} distclean
make ARCH=arm CROSS_COMPILE=${CC} omap3_beagle_config
make ARCH=arm CROSS_COMPILE=${CC}

Linux Kernel

This script will build the kernel and modules and copy them to the deploy directory.

Old Board File tree

Download:

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

For v3.9.x:

~/stable-kernel
git checkout origin/v3.9.x -b tmp

Checkout v3.11.x branch:

~/stable-kernel
./build_kernel.sh

Device Tree

Download:

~/
git clone git://github.com/RobertCNelson/armv7-multiplatform.git
cd armv7-multiplatform

Checkout v3.11.x branch:

~/armv7-multiplatform
git checkout origin/v3.11.x -b tmp

Build:

~/armv7-multiplatform
./build_kernel.sh

Root File System

Debian 7.0 (Wheezy)

UserPassword
debiantemppwd
rootroot

Download:

~/
wget -c http://rcn-ee.net/deb/minfs/wheezy/debian-7.0.0-minimal-armhf-2013-05-05.tar.xz

Verify:

~/
md5sum debian-7.0.0-minimal-armhf-2013-05-05.tar.xz
7378ac1f20ca4857ac1994e22fd20277  debian-7.0.0-minimal-armhf-2013-05-05.tar.xz

Extract:

~/
tar xJf debian-7.0.0-minimal-armhf-2013-05-05.tar.xz

Ubuntu 13.04 (Raring)

UserPassword
ubuntutemppwd

Download:

~/
wget -c http://rcn-ee.net/deb/minfs/raring/ubuntu-13.04-minimal-armhf-2013-05-05.tar.xz

Verify:

~/
md5sum ubuntu-13.04-minimal-armhf-2013-05-05.tar.xz
952cf1f87c047653fb0f24818c8bfd26  ubuntu-13.04-minimal-armhf-2013-05-05.tar.xz

Extract:

~/
tar xJf ubuntu-13.04-minimal-armhf-2013-05-05.tar.xz

Setup microSD/SD card

For these instruction, we are assuming: DISK=/dev/mmcblk0, "lsblk" is very useful for determining the device id.

export DISK=/dev/mmcblk0

Erase microSD/SD card:

sudo dd if=/dev/zero of=${DISK} bs=1M count=16

Create Partition Layout:

sudo sfdisk --in-order --Linux --unit M ${DISK} <<-__EOF__
1,48,0xE,*
,,,-
__EOF__

Format Partitions:

for: DISK=/dev/mmcblk0
sudo mkfs.vfat -F 16 ${DISK}p1 -n boot
sudo mkfs.ext4 ${DISK}p2 -L rootfs

for: DISK=/dev/sdX
sudo mkfs.vfat -F 16 ${DISK}1 -n boot
sudo mkfs.ext4 ${DISK}2 -L rootfs

Mount Partitions:

On some systems, these partitions may be auto-mounted...

sudo mkdir -p /media/boot/
sudo mkdir -p /media/rootfs/
 
for: DISK=/dev/mmcblk0
sudo mount ${DISK}p1 /media/boot/
sudo mount ${DISK}p2 /media/rootfs/
 
for: DISK=/dev/sdX
sudo mount ${DISK}1 /media/boot/
sudo mount ${DISK}2 /media/rootfs/
Unknown macro: {wiki}

FAQ

No Ethernet:

  1. Check Power (aka use 5Volt DC Plug): The USB bus allows up to 100mA on initial connection and up to a max of 500mA can be requested by the end USB device. On the xM this is not enough to power the whole device and on the xM C there is an actual hardware switch to disable the smsc95xx usb hub/ethernet when powered by OTG (to prevent out of power crashes seen on the xM A/B with when users powered by OTG).
  2. Check Ethernet Cable/Plug: Is the Ethernet Cable actually plugged into the Beagle and Router?
  3. Check Modules: The smsc95xx kernel driver is usually built as an external module, double check that your kernel modules for this device are installed.
    debian@devel:~$ find /lib/modules/`uname -r`/kernel/ | grep smsc95xx
    /lib/modules/3.2.26-x14/kernel/drivers/net/usb/smsc95xx.ko
    
    debian@devel:~$ lsmod | grep smsc95xx
    smsc95xx               11302  0
    
  4. Reload smsc95xx kernel module (Checked all the above and the LAN LED's are still off)
    sudo rmmod smsc95xx
    sudo modprobe smsc95xx
    sudo /etc/init.d/networking restart
    
  • No labels