Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

1,036 views
Skip to first unread message

guitar...@gmail.com

unread,
Jul 5, 2014, 2:55:18 PM7/5/14
to beagl...@googlegroups.com
Hi folks,
                I am trying to boot the BBB using the tftpboot procedure and I used the yocto openembedded build . 
When I tried to transfer the image file using the tftp command in the uboot prompt , I get the following output.

link up on port 0, speed 100, full duplex
Using cpsw device
TFTP from server 192.168.43.130; our IP address is 192.168.43.10
Filename 'uImage'.
Load address: 0x80200000
Loading: T T T T T T T T T T T T T T T T T T T T 
Retry count exceeded; starting again
using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
MAC 90:59:af:62:d3:1b
HOST MAC de:ad:be:af:00:00
RNDIS ready
ERROR: The remote end did not respond in time.
at drivers/usb/gadget/ether.c:2388/usb_eth_init()

Any valuable suggestions or tips on this is helpful

Regards,
Gibson

William Hermans

unread,
Jul 7, 2014, 12:31:57 PM7/7/14
to beagl...@googlegroups.com
Gibson, which distro are you using on the tftp host, and which tftp server are you using ?

You also tested local to the host to make sure the file is actually getting out ?


--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

William Hermans

unread,
Jul 7, 2014, 12:34:37 PM7/7/14
to beagl...@googlegroups.com
Also very odd that this post did not show up on the groups until 2 days later. Unless this was a new user "thing".

Gerald Coley

unread,
Jul 7, 2014, 2:32:37 PM7/7/14
to beagl...@googlegroups.com
It is a non-member thing.

Gerald

robert.berger

unread,
Jul 7, 2014, 4:45:10 PM7/7/14
to beagl...@googlegroups.com
Hi,


On Saturday, July 5, 2014 9:55:18 PM UTC+3, Gibson Justian wrote:
TFTP from server 192.168.43.130; our IP address is 192.168.43.10
Filename 'uImage'.
Load address: 0x80200000
Loading: T T T T T T T T T T T T T T T T T T T T 
Retry count exceeded; starting again


Is your tftp server running on 192.168.43.130 and does it really export a file called uImage?

Assuming you are on a Linux host you could try:
tftp 192.168.43.130 69

Regards,

Robert

Gibson Justian

unread,
Jul 10, 2014, 3:08:50 PM7/10/14
to beagl...@googlegroups.com
Hi William,
         I am using Yocto 1.6 (daisy) and i could get the file out using the get command, but still having the same error!!!
I use the Debian as the host machine. I am very new to the tftp stuff so just want to get a hold on it and followed the steps from the internet. Tested with the local to get the file and it works perfectly fine. 


Regards,
Gibson

Alfredo Muniz

unread,
Jul 10, 2014, 3:28:59 PM7/10/14
to beagl...@googlegroups.com
On Sat, Jul 5, 2014 at 11:55 AM, <guitar...@gmail.com> wrote:
Any valuable suggestions or tips on this is helpful

Your bbb isn't connecting to the server or the file uImage doesn't exist on the server. Have you tried connecting to your server using tftp on your local machine? Make a file called test in your tftp folder and run the following commands in another folder

tftp 192.168.43.130
get test
quit

There shouldn't be any errors and you should get the file test in the folder you were in.

William Hermans

unread,
Jul 10, 2014, 8:31:08 PM7/10/14
to beagl...@googlegroups.com
Gibson,

Here is a blog post I made last year getting netboot working on the BBB using debian as the tftp server.
http://www.embeddedhobbyist.com/debian-tips/beaglebone-black/beaglebone-black-network-boot/

Scroll down to "Installing, and configuring TFTP" and see if you can remember if you've done all that. The rest of the article is not important.


--

Gibson Justian

unread,
Jul 10, 2014, 9:46:38 PM7/10/14
to beagl...@googlegroups.com
Hi William and Alfredo,

tftpboot problems

Observation with Yocto 1.6 :
             Below are the following observation after i executed the get uImage.
tftp 192.168.95.130
tftp> get uImage
Received 5076896 bytes in 1.1 seconds

Do I have to transfer the uImage or zImage? I do not find any zImage in the "/build/tmp/deploy/images/beaglebone$ "


Observation with the Debian image :

If I try the with the Debian image I get the  "Bad Linux ARM zImage magic" any clue on this ?


Regards,
Gibson

William Hermans

unread,
Jul 10, 2014, 10:47:08 PM7/10/14
to beagl...@googlegroups.com
Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.

So searching these groups for "John Syn" and uEnv.txt may yield working results for you. Sorry but I do not remember the post topic. Also, just as a FYI, I think you'll find Angstrom on the BBB to be a dead end.

John Syn

unread,
Jul 10, 2014, 11:17:18 PM7/10/14
to beagl...@googlegroups.com

From: William Hermans <yyr...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 7:46 PM
To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.
I have attached my uEnv.txt that works with the latest u-boot and Linux Kernel V3.15

Regards, 
John
uEnv.txt

John Syn

unread,
Jul 10, 2014, 11:21:00 PM7/10/14
to beagl...@googlegroups.com
From: William Hermans <yyr...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 7:46 PM
To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.
One more thing, make sure you update the am335x-boneblack.dtb file from the kernel you choose. If you don’t, you will get all kinds of issue like bad magic number, kernel just hangs, etc. 

Regards,
John

John Syn

unread,
Jul 10, 2014, 11:26:13 PM7/10/14
to beagl...@googlegroups.com
From: William Hermans <yyr...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 7:46 PM
To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.
BTW, I use a small SDCard with only a 100MB fat partition and I only have MLO, u-boot.img and uEnv.txt files present. Everything else gets loaded from my TFTP server and then I mount an NFS rootfs. This is great for development because I can make whatever changes I want on my “targetNFS” folder on my desktop and then just reboot my BBB. Very fast turnaround because I don’t have to program SDCards or flash eMMC. 

Regards,
John

John Syn

unread,
Jul 10, 2014, 11:38:03 PM7/10/14
to beagl...@googlegroups.com
From: William Hermans <yyr...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 7:46 PM
To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.
I attached a new copy of uEnv.txt because the previous copy included a kernel directive to print initcall_debug which adds a lot of noise to your dmesg. Also, you will notice that I haven’t enabled systemd and that is because on Linux Kernel V3.15, systemd doesn’t shutdown correctly. It disconnects the network before shutting down NFS so the shutdown stops because it cannot access the NFS server. On Linux Kernel V3.8, systemd cause kernel panic on sudo halt. 

Regards,
John
uEnv.txt

John Syn

unread,
Jul 10, 2014, 11:43:07 PM7/10/14
to beagl...@googlegroups.com
From: William Hermans <yyr...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 7:46 PM
To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Supposedly you're supposed to be able to tftp zImage's now days, I've only ever used uImage. Lately I've stopped using tftp, and only use NFS for the rootfs.

John Syn recently made a post on these groups saying zImage does work, and I've read the same a while back from somewhere else. But, I have not tried or tested it personally. Anyway John gave a supposedly working uEnv,txt setup, but again "supposedly" because I have not tried or tested it myself.
Try again. uEnv.txt without initcall_debug.

Regards, 
John
uEnv.txt

Gibson Justian

unread,
Jul 11, 2014, 1:31:59 AM7/11/14
to beagl...@googlegroups.com
Hi William and John ,
          Thanks for reply!!!
                The uEnv.txt that you have shared across uses the kernel_file=zImage and initrd_file=initrd.img but after the compilation of the yocto distro 1.6 instead of zImage I get the uImage. How to obtain the zImage ?and where can I find the initrd.img???

Regards,
Gibson

robert.berger

unread,
Jul 11, 2014, 2:15:48 AM7/11/14
to beagl...@googlegroups.com
Hi,


On Friday, July 11, 2014 8:31:59 AM UTC+3, Gibson Justian wrote:
Hi William and John ,
          Thanks for reply!!!
                The uEnv.txt that you have shared across uses the kernel_file=zImage and initrd_file=initrd.img but after the compilation of the yocto distro 1.6 instead of zImage I get the uImage. How to obtain the zImage ?and where can I find the initrd.img???

Regards,
Gibson

I am a bit confused what you are trying to do.

I assume you made a standard Yocto build for the beagle bone black. Do you want to load the kernel and flat device tree over tftp and the rootfs over nfs?

Yocto should spit our a uImage and a fdt. [1]

I am not sure networking and nfs support is compiled into the uImage.

This uEnv.txt [2] might help with the right kernel config

Do you still have the problem with loading over tftp?

Can you ping the machine which runs your tftp server from u-boot?

Can you manually load uImage from u-boot?

tftp 0x80300000 <full_path_to_u-boot_where_tftp_exports_it>

in my case:

tftp 0x80300000 beagle-bone-black/uImage


[1] http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-yocto-bsp/conf/machine/beaglebone.conf?id=c4f1f0f491f988901bfd6965f7d10f60cb94a76f
[2] https://github.com/RobertBerger/meta-mainline/blob/daisy-training-v3.14.x/beagle-bone-black-ml/recipes-bsp/u-boot/u-boot/tftp-nfs-uEnv-beagle-bone-black.txt
 



John Syn

unread,
Jul 11, 2014, 2:02:45 PM7/11/14
to beagl...@googlegroups.com

From: "robert.berger" <robert.ka...@gmail.com>
Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Date: Thursday, July 10, 2014 at 11:15 PM

To: "beagl...@googlegroups.com" <beagl...@googlegroups.com>
Subject: Re: [beagleboard] Transferring the image to the BBB via TFTP- using Yocto openembedded 1.6

Hi,

On Friday, July 11, 2014 8:31:59 AM UTC+3, Gibson Justian wrote:
Hi William and John ,
          Thanks for reply!!!
                The uEnv.txt that you have shared across uses the kernel_file=zImage and initrd_file=initrd.img but after the compilation of the yocto distro 1.6 instead of zImage I get the uImage. How to obtain the zImage ?and where can I find the initrd.img???
You can load uImage if you want, just change bootz to bootm in your uEnv.txt file.

Regards,
Gibson

I am a bit confused what you are trying to do.

I assume you made a standard Yocto build for the beagle bone black. Do you want to load the kernel and flat device tree over tftp and the rootfs over nfs?

Yocto should spit our a uImage and a fdt. [1]

I am not sure networking and nfs support is compiled into the uImage.
When building the Linux Kernel, you have to disable Initrd in the kernel config.

Regards,
John


This uEnv.txt [2] might help with the right kernel config

Do you still have the problem with loading over tftp?

Can you ping the machine which runs your tftp server from u-boot?

Can you manually load uImage from u-boot?

tftp 0x80300000 <full_path_to_u-boot_where_tftp_exports_it>

in my case:

tftp 0x80300000 beagle-bone-black/uImage


[1] http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-yocto-bsp/conf/machine/beaglebone.conf?id=c4f1f0f491f988901bfd6965f7d10f60cb94a76f
[2] https://github.com/RobertBerger/meta-mainline/blob/daisy-training-v3.14.x/beagle-bone-black-ml/recipes-bsp/u-boot/u-boot/tftp-nfs-uEnv-beagle-bone-black.txt
 



Gibson Justian

unread,
Jul 16, 2014, 5:53:59 AM7/16/14
to beagl...@googlegroups.com
Hi
         Thanks for your replies !!!

I did a tftpboot for BBB with the Yocto images

step-1 : I copied the uImage and uImage-am335x-boneblack.dtb in the /home/gibson/tftpboot


       U-Boot# setenv autoload no                                                              
U-Boot# setenv serverip 192.168.95.134                                                  
U-Boot# setenv ipaddr 192.168.95.130                                                    
U-Boot# tftp 0x80200000 uImage                                                          
link up on port 0, speed 100, full duplex                                               
Using cpsw device                                                                       
TFTP from server 192.168.95.134; our IP address is 192.168.95.130                       
Filename 'uImage'.                                                                      
Load address: 0x80200000                                                                
Loading: T T T T T T T T T T T T T T T T T T T T                                        
Retry count exceeded; starting again                                                    
using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in                                       
MAC 90:59:af:62:d3:1b                                                                   
HOST MAC de:ad:be:af:00:00                                                              
RNDIS ready                                                                             
ERROR: The remote end did not respond in time.                                          
at drivers/usb/gadget/ether.c:2388/usb_eth_init()
   
Any clue on this why the tftpboot is not working??

Thank for your suggestions!!!          
            

robert.berger

unread,
Jul 16, 2014, 10:26:27 AM7/16/14
to beagl...@googlegroups.com
Hi,


       U-Boot# setenv autoload no                                                              
U-Boot# setenv serverip 192.168.95.134                                                  
U-Boot# setenv ipaddr 192.168.95.130                                                    

try here:

ping ${serverip}

does this work?

Regards,

Robert
 

Gibson Justian

unread,
Jul 16, 2014, 10:34:02 AM7/16/14
to beagl...@googlegroups.com
I pinged the device as Robert suggested and the output obtained is posted below
ping failed; host 192.168.95.134 is not alive ,

Note :  I also have this info for mtdparts

U-Boot# mtdparts                                                                        
Device nand0 not found!

Is this is the one causing the  problem for booting?? If so any work around to  fix this ??


Regards,
Gibson



On Sunday, July 6, 2014 12:25:18 AM UTC+5:30, Gibson Justian wrote:

robert.berger

unread,
Jul 16, 2014, 10:37:20 AM7/16/14
to beagl...@googlegroups.com

If you get in u-boot a ping reply from your sever with
ping ${serverip}
networking should be OK and your problem is the tftp server setup.

The next thing to try would be if your tftp server works.


Is your tftp server running on 192.168.43.130 and does it really export a file called uImage?

Assuming you are on a Linux host like on 192.168.43.130 you could try:

tftp localhost 69
get uImage
quit

If your local tftp client is able to download uImage from your local tftp server and ping from u-boot above also works your problem is slowly getting interesting.

Then it would be nice if I could log on to your computer and have a look at it what happens?

Regards,

Robert

Gibson Justian

unread,
Jul 16, 2014, 10:42:25 AM7/16/14
to beagl...@googlegroups.com
Hi ,
Robert as you suggested, I tried and below is the output

tftp localhost 69
tftp> get uImage
Received 5076806 bytes in 1.6 seconds
tftp>




On Sunday, July 6, 2014 12:25:18 AM UTC+5:30, Gibson Justian wrote:

robert.berger

unread,
Jul 16, 2014, 10:42:50 AM7/16/14
to beagl...@googlegroups.com
Hi,


On Wednesday, July 16, 2014 5:34:02 PM UTC+3, Gibson Justian wrote:
I pinged the device as Robert suggested and the output obtained is posted below
ping failed; host 192.168.95.134 is not alive ,

You definitely have no network connectivity between your bone and your tftp server.

How is the physical connection between the bone and .134?

Can you try with another network cable without a switch?

Is .134 a real Linux machine or something virtual like Vmware?

Regards,

Robert

Gibson Justian

unread,
Jul 16, 2014, 10:44:59 AM7/16/14
to beagl...@googlegroups.com
Robert,
 I use a VMware on which I run Ubuntu 14.04

On Sunday, July 6, 2014 12:25:18 AM UTC+5:30, Gibson Justian wrote:

robert.berger

unread,
Jul 16, 2014, 10:53:32 AM7/16/14
to beagl...@googlegroups.com


On Wednesday, July 16, 2014 5:42:25 PM UTC+3, Gibson Justian wrote:
Hi ,
Robert as you suggested, I tried and below is the output

tftp localhost 69
tftp> get uImage
Received 5076806 bytes in 1.6 seconds
tftp>

OK cool, so this means your tftp server setup seems to be OK and we need to fix your networking setup.
I sent you an email to join on #beagle and maybe Skype as well.
 

robert.berger

unread,
Jul 16, 2014, 10:58:34 AM7/16/14
to beagl...@googlegroups.com
Hi,


On Wednesday, July 16, 2014 5:44:59 PM UTC+3, Gibson Justian wrote:
Robert,
 I use a VMware on which I run Ubuntu 14.04

in VMware do you have bridged networking configured for your Ubuntu guest?

If you go to a shell on your Ubuntu guest what do you see with

ifconfig

.134 anwhere?

Regards,

Robert
Reply all
Reply to author
Forward
0 new messages