[BTC-dev] Recipe: TFTP on 'Pogo' for Less-Miserable Kernel Dev Work (with minor corrections)

Stanislav Datskovskiy stas at loper-os.org
Tue Feb 24 16:49:56 UTC 2015

Hash: SHA512

If you have a Gentoo box,

1) emerge atftp
2) edit /etc/conf.d/atftp and set TFTPD_ROOT="/your/tftp/directory"
3) /etc/init.d/atftp start
4) copy the file you intend to boot as a kernel on Pogo to this dir

If you have something other than a Gentoo box, obtain a similar recipe
for your system from, e.g., OpenWRT enthusiasts.

Let's test by hand first:

If you DO NOT have the serial port soldered, use the instructions found at:
to setup up an IP console for u-boot.

Interrupt the u-boot warmup on your Pogo.
Now, a test with a NetBSD kernel:


Pogov4> tftp 0x800000 netbsd.ub Using egiga0 device TFTP from server
[censored]; our IP address is [censored] Filename 'netbsd.ub'.
Load address: 0x800000 Loading: ###[snipped]######          ####
5.5 MiB/s done Bytes transferred = 12462144 (be2840 hex)

Pogov4> bootm 0x800000 ## Booting kernel from Legacy Image at 00800000  ...
Image Name:   NetBSD/sheevaplug 7.99.4    Created:      2015-02-21  22:42:41
UTC    Image Type:   ARM NetBSD Kernel Image (uncompressed)    Data Size:
12462080 Bytes = 11.9 MiB    Load Address: 00008000    Entry Point:  00008000
Verifying Checksum ... OK    Loading Kernel Image ... OK ## Transferring
control to NetBSD stage-2 loader (at address 00008000) ... NetBSD/evbarm
(sheevaplug) booting ... Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005,     2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013,
2014, 2015     The NetBSD Foundation, Inc.  All rights reserved. Copyright
(c) 1982, 1986, 1989, 1991, 1993     The Regents of the University of
California.  All rights reserved.



To make this the default behaviour of your Pogo, boot up a working Linux and:

fw_setenv "ipaddr='your.pogo.ip.addr'"
fw_setenv "serverip='your.tftp.server.ip'"
fw_setenv "boot_tftp='tftp 0x800000 yourfilename; bootm 0x800000'"
fw_setenv "bootcmd='run boot_tftp'"
Version: GnuPG v2.0.19 (GNU/Linux)


More information about the BTC-dev mailing list