Unable to get IP with DHCP, Static IP doesn't work, TFTP times out

Hello

I’m just starting with beaglebone and I am trying to experiment with Uboot networking to get TFTP going.
When I get to UBoot prompt and run dhcp, it keeps broadcasting and once it hits 10th broadcast it restarts without getting an IP address:

`

link up on port 0, speed 100, full duplex
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5
BOOTP broadcast 6
BOOTP broadcast 7
BOOTP broadcast 8
BOOTP broadcast 9
BOOTP broadcast 10

Retry count exceeded; starting again
link up on port 0, speed 100, full duplex
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5
BOOTP broadcast 6
BOOTP broadcast 7
BOOTP broadcast 8
BOOTP broadcast 9
BOOTP broadcast 10

Retry count exceeded; starting again

`

here is output of printenv:

`
U-Boot# printenv
autoload=no
baudrate=115200
bootargs_defaults=setenv bootargs console=${console} ${optargs}
bootcmd=if mmc rescan; then echo SD/MMC found on device ${mmc_dev};if run loadb;
bootdelay=1
bootenv=uEnv.txt
bootfile=uImage
console=ttyO0,115200n8
ethact=cpsw
ethaddr=d4:94:a1:39:42:45
importbootenv=echo Importing environment from mmc …; env import -t $loadaddr e
ip_method=none
kloadaddr=0x80007fc0
loadaddr=0x82000000
loadbootenv=fatload mmc ${mmc_dev} ${loadaddr} ${bootenv}
mmc_args=run bootargs_defaults;setenv bootargs ${bootargs} root=${mmc_root} roo}
mmc_boot=run mmc_args; run mmc_load_uimage_ext4; bootm ${kloadaddr}
mmc_dev=0
mmc_load_uimage=fatload mmc ${mmc_dev}:1 ${kloadaddr} ${bootfile}
mmc_load_uimage_ext4=ext4load mmc ${mmc_dev}:2 ${kloadaddr} /boot/${bootfile}
mmc_root=/dev/mmcblk0p2 ro
mmc_root_fs_type=ext4 rootwait
nand_args=run bootargs_defaults;setenv bootargs ${bootargs} root=${nand_root} n}
nand_boot=echo Booting from nand …; run nand_args; nandecc hw 2; nand read.i }
nand_img_siz=0x500000
nand_root=ubi0:rootfs rw ubi.mtd=7,2048
nand_root_fs_type=ubifs rootwait=1
nand_src_addr=0x280000
net_args=run bootargs_defaults;setenv bootargs ${bootargs} root=/dev/nfs nfsroop
net_boot=echo Booting from network …; setenv autoload no; dhcp; tftp ${kloada}
netmask=255.255.254.0
nfsopts=nolock
nor_args=run bootargs_defaults;setenv bootargs ${bootargs} root={nor_root} root}
nor_boot=echo Booting from NOR …; run nor_args; cp.b ${0x08080000} ${kloadadd}
nor_img_siz=0x280000
nor_root=/dev/mtdblock3 rw
nor_root_fs_type=jffs2
nor_src_addr=0x08080000
rootpath=/export/rootfs
script_addr=0x81900000
spi_args=run bootargs_defaults;setenv bootargs ${bootargs} root=${spi_root} roo}
spi_boot=echo Booting from spi …; run spi_args; sf probe ${spi_bus_no}:0; sf }
spi_bus_no=0
spi_img_siz=0x380000
spi_root=/dev/mtdblock4 rw
spi_root_fs_type=jffs2
spi_src_addr=0x62000
static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
stderr=serial
stdin=serial
stdout=serial

Environment size: 2778/8188 bytes…
`

I even tried setting up static IP:

`

`

U-Boot# setenv ipaddr 192.168.168.236
U-Boot# ping 192.168.168.236
link up on port 0, speed 100, full duplex
Using cpsw device
ping failed; host 192.168.168.236 is not alive

`

`

As you can see I can’t even ping myself!!

This is the static IP address setting I am using:

192.168.168.236
Netmask:
255.255.254.0

I can’t even get to using TFTP with this! It fails to even get a network address!
The network is fine, it is not firewalled, MAC filtering is disabled, a random PC on the network immediately picks up an IP address.

Can someone please help me understand this and help me fix it?

Thanks

$serverip and ipaddr MUST be set in order to boot over tftp. These are settings that let uboot know where to get the kernel from. I have never had any luck personally setting ${ipaddr}=dhcp, but in the long run I boot via network to help ease several issues when developing things for the bbb, so dhcp would not work well for me. As i need to know the ip im connecting to via ssh anyhow . . .

Are you building your own U-boot?

On this website:
http://www.crashcourse.ca/wiki/index.php/U-Boot_on_the_BBB#BBB-specific_U-Boot_from_current_Git_tree

I did notice this note:
It appears that if you want to download the kernel via TFTP, you have to apply the “kloadaddr” patch from above.