bc10
bc10-router

tftpboot

To use u-boot-arm and USB-Ethernet adapter corresponding to OMAP3 EHCI, any OMAP 3 based device, which does not directly solder an Ethernet connector on its PCB such bc10, can apply tftpboot.

To use tftpboot, the system can boot without rewriting an uImage on a SD card. This is useful when the addition of drivers and modifications of kernel are frequently done, and it makes the developing process more efficient than before it is used.

To take advantage of the ease of renewing uImage, tftp server is generally configured at the machine which builds kernel.

Since kernel of bc10-router is built with Toolchain of arago-project, this article assumes that Ubuntu 10.04 is its build environment.

USB-Ethernet adapter

The list of USB-Ethernet adapters, which work with tftpboot, is located at the directory of u-boot-arm/drivers/usb/eith/asx.c. Specifically, these USB-Ethernet adapters have to work with u-boot, which can handle tftpboot. The contents of the list suggest VernderID: ProductID.

Code and Commands> As of January 2013, Buaffalo LUA-U2-ATX is widely available at Japanese market.
To check its VenderID and Product ID, use lsusb, its output is shown below.

Code and Commands>

Configuration of tftp server

Ubuntu 10.04 offers the several packages of tftp servers. This article uses atftpad.

Code and Commands> For the boot management, openbsd-inetd is installed together. However, once xinetd is installed, openbsd-inetd is removed, automatically.

Code and Commands> Edit tftp configuration file at xinetd.

Code and Commands> The contents of rftp configuration file are shown below.

Code and Commands> only_from should change to the specific network address that you are currently using.
server_args specifies the location, which stores kernel uImage.

Code and Commands> The location and name of the log file, which records the status of connections to tftp, is specified as /ver/log/atfpd.log. Then, the log file is created.

Code and Commands> Reboot xinetd.

Code and Commands> The configuration of tftp server is completed.

The name of kernel uImage, which tftp load, is uImage.beagle, and this image has to be stored at /var/lib/tftpboot. uImage is created by the way bc10-router/kernel update describes. Then, the image will be coped from kernel directory, which is shown below.

Code and Commands>

Configuration of bc10 tftpboot

Connect a USB-Ethernet adapter to the USB connector of bc10, directory or via a USB-Hub. Enable to input commands from the serial console, then boot bc10.

Start up u-boot. Input the key while loading kernel, then bc10 will shift to command line interface.

Code and Commands> Let this USB-Ethernet adapter be recognized, configure the network for tftp, and load uImage.
ipaddr indicates IP address that is set up at bc10.
serverip is IP address that tftp sercer.

Code and Commands> After tftpboot is executed, if uImage.geagle is read correctly, the log shown below displayed.

Code and Commands> When uImage is read into memory correctly, bootargs is configured.

Code and Commands> To execute bootm command, if it works correctly, the configuration is OK.

Code and Commands> If there are items that you like to set at startup u-boot, please modify the configuration appropriately, such as adding no_suspend_console to bootargs.

Revision History


Front page   New List of pages Search Recent changes   RSS of recent changes