« Previous -
Version 14/26
(diff) -
Next » -
Current version
Thomas Tsou, 06/28/2011 10:29 pm
Updating Boot Files and Kernel Modules¶
Boot Files¶
There are two partitions on the E100 micro SD card, FAT and rootfs. The FAT partition contains essential boot information while other files (driver modules, application libraries, home directories, etc.) are located in the root file system, or rootfs. For details on the root file system, see Experimental_Images. The FAT partition includes the following files.
- MLO: The stage 1 boot loader that configures external memory and loads the second stage boot loader.
http://dl.dropbox.com/u/14618236/MLO
- U-Boot: The stage 2 boot loader that loads the Linux kernel.
http://dl.dropbox.com/u/14618236/u-boot.bin-for-2.6.38
- uImage: The Linux kernel
http://dl.dropbox.com/u/14618236/uImage-2.6.38-r0a-usrp-e1xx.bin
Updating Boot Files¶
The boot files can be updated from the device itself, or by using another host with a micro SD card reader.
Updating from the device¶
First make sure you can mount the FAT partition from Linux. You will need to add the line:
/dev/mmcblk0p1 /media/FAT auto defaults,sync,noauto 0 0
to /etc/fstab on the E100. Also make sure the directory /media/FAT exists. Then run:
# mount /media/FAT
These files are for use with the 2.6.35 kernel. Do not use them with the 2.6.38 kernel.
Using the files from this page, update your system by:
- Copy MLO to /media/FAT/MLO (Always copy the new MLO over the old one, if you remove MLO, you need to re-format the FAT partition and copy MLO on first)
- Copy u-boot.bin to /media/FAT/u-boot.bin
- Copy uImage to /media/FAT/uImage
- untar modules-2.6.35+.tar.gz file in /lib/modules on the root file system (use
tar -xzvf modules-2.6.35+.tar.gz). - Type
sync; reboot;to reboot the USRP. (The sync is being extra careful to make sure the files are written to the SD card) - Login and run
depmod -aand reboot again.
Updating from another host¶
Insert the SD card into a card reader. On most Linux distributions, two partitions should mount automatically as "FAT" and "rootfs". If not, the partitions need to be mounted manually. The FAT partition contains required boot contents, which includes the Linux kernel. The rootfs partition contains everything else - kernel modules, installed packages, user information, etc.
$ ls /media/ FAT rootfs
Install the MLO. Always copy a new MLO over the old one. If not performed properly, the partition will need to be reformatted.
$ cd /media/FAT $ cp <download location>/MLO MLO
Install the U-Boot image and Linux kernel
$ cp <download location>/u-boot.bin-for-2.6.38 u-boot.bin $ cp <download location>/uImage-2.6.38-r0a-usrp-e1xx.bin uImage
Unmount the partitions. Note that the umount may take up to a few minutes to sync before the SD card can be safely removed.
$ umount /media/FAT $ umount /media/rootfs
Linux Kernel Modules¶
The kernel modules include device drivers not compiled into the kernel or required during the boot process. The driver for the E100 interface to the FPGA is included with the modules. In most cases, the kernel modules will be included with root file system image, but the modules can also be added independently to an existing file sytem.
- Linux kernel modules: For images not compiled with the 2.6.38 modules
http://dl.dropbox.com/u/14618236/modules-2.6.38-r0a-usrp-e1xx.tgz