Cant boot kernel from TFTP

Hi all,

i have beagleboard xM and using ti-sdk-beagleboard-06.00.00.00

I’m able to boot from SD/MMC card. However cant boot from TFTP with the same image. It just hangs after Uncompressing Linux… done, booting the kernel.

Do you have any idea? What’s wrong with it? Why it works with SD/MMC and not working from RAM? You can see logs below.

PS : Do not care about filesystem mount failure.

U-Boot SPL 2012.04.01 (Jan 11 2014 - 05:04:29)
Texas Instruments Revision detection unimplemented
OMAP SD/MMC: 0
reading u-boot.img
reading u-boot.img

U-Boot 2012.04.01 (Jan 11 2014 - 05:04:29)

OMAP36XX/37XX-GP ES1.2, CPU-OPP2, L3-165MHz, Max CPU Clock 1 Ghz
OMAP3 Beagle board + LPDDR/NAND
I2C: ready
DRAM: 512 MiB
NAND: 0 MiB
MMC: OMAP SD/MMC: 0
*** Warning - readenv() failed, using default environment

In: serial
Out: serial
Err: serial
Beagle xM Rev C
No EEPROM on expansion board
Die ID #26a600029ff80000016842c81402800e
Net: Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot: 0
gpio: pin 173 (gpio 173) value is 0
gpio: pin 4 (gpio 4) value is 0
SD/MMC found on device 0
reading uEnv.txt

** Unable to read “uEnv.txt” from mmc 0:1 **
reading uImage

3413096 bytes read
Booting from mmc …

Booting kernel from Legacy Image at 80007fc0 …

Image Name: Linux-3.3.7
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3413032 Bytes = 3.3 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum … OK
XIP Kernel Image … OK
OK

Starting kernel …

Uncompressing Linux… done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.3.7 (bugraaydogar@ubuntu) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #1 Sat Jan 11 05:40:07 PST 2014
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: OMAP3 Beagle Board
[ 0.000000] Reserving 12582912 bytes SDRAM for VRAM
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] OMAP3630 ES1.2 (l2cache iva sgx neon isp 192mhz_clk )
[ 0.000000] Clocking rate (Crystal/Core/MPU): 26.0/400/800 MHz
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 126720
[ 0.000000] Kernel command line: console=ttyO2,115200n8 mpurate=auto buddy=none camera=none vram=12M omapfb.mode=dvi:640x480MR-16@60 omapdss.def_disp=dvi root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] allocated 1048576 bytes of page_cgroup
[ 0.le=memory’ option if you don’t want memory cgroups
[ 0.000000] Memory: 499MB = 499MB total
[ 0.000000] Memory: 498404k/498404k available, 25884k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc061770c (6206 kB)
[ 0.000000] .init : 0xc0618000 - 0xc064e000 ( 216 kB)
[ 0.000000] .data : 0xc064e000 - 0xc069e800 ( 322 kB)
[ 0.000000] .bss : 0xc069e824 - 0xc06d8034 ( 231 kB)
[ 0.000000] NR_IRQS:474
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 4.0) with 96 interrupts
[ 0.000000] Total of 96 interrupts on 1 active controller
[ 0.000000] OMAP clockevent source: GPTIMER12 at 32768 Hz
[ 0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 131071999ms
[ 0.000000] Console: colour dummy device 80x30
[ 0.000122] Calibrating delay loop… 651.20 BogoMIPS (lpj=2543616)
[ 0.038330] pid_max: default: 32768 minimum: 301
[ 0.038482] Mount-cache hash table entries: 512
[ 0.038787] Initializing cgroup subsys cpuacct
[ 0.038787] Initializing cgroup subsys memory
[ 0.038818] Initializing cgroup subsys devices
[ 0.038848] Initializing cgroup subsys freezer
[ 0.038848] Initializing cgroup subsys blkio
[ 0.038848] Initializing cgroup subsys perf_event
[ 0.038940] CPU: Testing write buffer coherency: ok
[ 0.039123] Setting up static identity map for 0x80461c08 - 0x80461c60
[ 0.039703] devtmpfs: initialized
[ 0.041046] omap_hwmod: usbtll_fck: missing clockdomain for usbtll_fck.
[ 0.073089] print_constraints: dummy:
[ 0.073303] NET: Registered protocol family 16
[ 0.073455] GPMC revision 5.0
[ 0.074554] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
[ 0.074615] OMAP GPIO hardware version 2.5
[ 0.074707] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
[ 0.074859] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
[ 0.075012] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
[ 0.075164] gpiochip_add: registered GPIOs 128 to 159 on device: gpio
[ 0.075286] gpiochip_add: registered GPIOs 160 to 191 on device: gpio
[ 0.075714] omap_mux_init: Add partition: #1: core, flags: 0
[ 0.076629] OMAP3 Beagle Rev: xM C
[ 0.078277] Reprogramming SDRC clock to 400000000 Hz
[ 0.078308] dpll3_m2_clk rate change failed: -22
[ 0.079803] usbhs_omap: alias fck already exists
[ 0.079864] Found NAND on CS0
[ 0.079895] Registering NAND on CS0
[ 0.080291] hw-breakpoint: debug architecture 0x4 unsupported.
[ 0.082916] omap-mcbsp.2: alias fck already exists
[ 0.083038] omap-mcbsp.3: alias fck already exists
[ 0.083984] OMAP DMA hardware revision 5.0
[ 0.090423] bio: create slab at 0
[ 0.091247] SCSI subsystem initialized
[ 0.092468] usbcore: registered new interface driver usbfs
[ 0.092590] usbcore: registered new interface driver hub
[ 0.092712] usbcore: registered new device driver usb
[ 0.093261] omap_i2c omap_i2c.1: bus 1 rev1.4.0 at 2600 kHz
[ 0.095458] twl4030: PIH (irq 7) chaining IRQs 368…375
[ 0.095550] twl4030: power (irq 373) chaining IRQs 376…383
[ 0.096008] twl4030: gpio (irq 368) chaining IRQs 384…401
[ 0.096252] gpiochip_add: registered GPIOs 192 to 211 on device: twl4030
[ 0.098144] print_constraints: VUSB1V5: 15080] print_constraints: VUSB1V8: 1800 mV normal standby
[ 0.098785] print_constraints: VUSB3V1: 3100 mV normal standby
[ 0.100189] twl4030_usb twl4030_usb: Initialized TWL4030 USB module
[ 0.100708] print_constraints: VMMC1: 1850 <–> 3150 mV at 3150 mV normal standby
[ 0.101104] print_constraints: VDAC: 1800 mV normal standby
[ 0.101501] print_constraints: VDVI: 1800 mV normal standby
[ 0.101959] print_constraints: VSIM: 1800 <–> 3000 mV at 1800 mV normal standby
[ 0.102294] omap_i2c omap_i2c.3: bus 3 rev1.4.0 at 100 kHz
[ 0.102966] omap-iommu omap-iommu.0: isp registered
[ 0.103088] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.103607] Bluetooth: Core ver 2.16
[ 0.103668] NET: Registered protocol family 31
[ 0.103668] Bluetooth: HCI device and connection manager initialized
[ 0.103698] Bluetooth: HCI socket layer initialized
[ 0.103698] Bluetooth: L2CAP socket layer initialized
[ 0.103729] Bluetooth: SCO socket layer initialized
[ 0.103942] Switching to clocksource 32k_counter
[ 0.113281] usbhs_omap usbhs_omap: xclk60mhsp1_ck set parentfailed error:-22
[ 0.113281] usbhs_omap usbhs_omap: xclk60mhsp2_ck set parentfailed error:-22
[ 0.113677] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 0.123016] musb-hdrc musb-hdrc: USB OTG mode controller at fa0ab000 using DMA, IRQ 92
[ 0.123321] NET: Registered protocol family 2
[ 0.123504] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.123809] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.124084] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.124237] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.124267] TCP reno registered
[ 0.124267] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.124298] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.124481] NET: Registered protocol family 1
[ 0.124786] RPC: Registered named UNIX socket transport module.
[ 0.124786] RPC: Registered udp transport module.
[ 0.124816] RPC: Registered tcp transport module.
[ 0.124816] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.127685] VFS: Disk quotas dquot_6.5.2
[ 0.127746] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.128204] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.128448] nfs4filelayout_init: NFSv4 File Layout Driver Registering…
[ 0.128479] JFFS2 version 2.2. (NAND) (SUMMARY) �© 2001-2006 Red Hat, Inc.
[ 0.128967] msgmni has been set to 973
[ 0.130096] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.130187] io scheduler noop registered
[ 0.130187] io scheduler deadline registered
[ 0.130249] io scheduler cfq registered (default)
[ 0.130859] OMAP DSS rev 2.0
[ 0.132507] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.133605] omap_uart.0: ttyO0 at MMIO 0x4806a000 (irq = 72) is a OMAP UART0
[ 0.134063] omap_uart.1: ttyO1 at MMIO 0x4806c000 (irq = 73) is a OMAP UART1
[ 0.134368] omap_uart.2: ttyO2 at MMIO 0x49020000 (irq = 74) is a OMAP UART2
[ 0.894989] console [ttyO2] enabled
[ 0.898986] omap_uart.3: ttyO3 at MMIO 0x49042000 (irq = 80) is a OMAP UART3
[ 0.913177] brd: module loaded
[ 0.919830] loop: module loaded
[ 0.924835] No NAND device found
[ 0.928405] No NAND device found
[ 0.932647] usbcore: registered new interface driver catc
[ 0.938323] usbcore: registered new interface driver kaweth
[ 0.944213] pegasus: v0.6.14 (2006/09/27), Pegasus/Pegasus II USB Ethernet driver
[ 0.952117] usbcore: registered new interface driver pegasus
[ 0.958129] usbcore: registered new interface driver rtl8150
[ 0.964141] usbcore: registered new interface driver asix
[ 0.969818] usbcore: registered new interface driver cdc_ether
[ 0.975982] usbcore: registered new interface driver dm9601
[ 0.981903] usbcore: registered new interface driver smsc95xx
[ 0.988006] usbcore: registered new interface driver gl620a
[ 0.993896] usbcore: registered new interface driver net1080
[ 0.999877] usbcore: registered new interface driver plusb
[ 1.005676] usbcore: registered new interface driver rndis_host
[ 1.011932] usbcore: registered new interface driver cdc_subset
[ 1.018218] usbcore: registered new interface driver zaurus
[ 1.024047] usbcore: registered new interface driver MOSCHIP usb-ethernet driver
[ 1.032135] ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
[ 1.039093] _regulator_get: ehci-omap.0 supply hsusb0 not found, using dummy regulator
[ 1.047454] _regulator_get: ehci-omap.0 supply hsusb1 not found, using dummy regulator
[ 3.065093] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
[ 3.071350] ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
[ 3.079254] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
[ 3.096435] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
[ 3.102508] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 3.109680] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.117309] usb usb1: Product: OMAP-EHCI Host Controller
[ 3.122924] usb usb1: Manufacturer: Linux 3.3.7 ehci_hcd
[ 3.128570] usb usb1: SerialNumber: ehci-omap.0
[ 3.133819] hub 1-0:1.0: USB hub found
[ 3.137817] hub 1-0:1.0: 3 ports detected
[ 3.166687] Initializing USB Mass Storage driver…
[ 3.171844] usbcore: registered new interface driver usb-storage
[ 3.178222] USB Mass Storage support registered.
[ 3.183380] mousedev: PS/2 mouse device common for all mice
[ 3.190704] input: twl4030_pwrbutton as /devices/platform/omap/omap_i2c.1/i2c-1/1-0049/twl4030_pwrbutton/input/input0
[ 3.202239] i2c /dev entries driver
[ 3.206237] Linux media interface: v0.10
[ 3.210388] Linux video capture interface: v2.00
[ 3.215850] OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
[ 3.222259] Bluetooth: HCI UART driver ver 2.2
[ 3.226898] Bluetooth: HCI H4 protocol initialized
[ 3.231994] Bluetooth: HCI BCSP protocol initialized
[ 3.237243] Bluetooth: HCILL protocol initialized
[ 3.242126] Bluetooth: HCIATH3K protocol initialized
[ 3.247436] usbcore: registered new interface driver btusb
[ 3.253448] cpuidle: using governor ladder
[ 3.257690] cpuidle: using governor menu
[ 3.482788] usbcore: registered new interface driver usbhid
[ 3.488708] usbhid: USB HID core driver
[ 3.492828] usb 1-2: new high-speed USB device number 2 using ehci-omap
[ 3.500183] usbcore: registered new interface driver snd-usb-audio
[ 3.507385] OMAP3 Beagle/Devkit8000 SoC init
[ 3.599822] asoc: twl4030-hifi <-> omap-mcbsp-dai.1 mapping ok
[ 3.608795] ALSA device list:
[ 3.612030] #0: omap3beagle
[ 3.615112] oprofile: hardware counters not available
[ 3.620483] oprofile: using timer interrupt.
[ 3.625122] TCP cubic registered
[ 3.628601] NET: Registered protocol family 17
[ 3.633270] NET: Registered protocol family 15
[ 3.638000] lib80211: common routines for IEEE802.11 drivers
[ 3.644012] Registering the dns_resolver key type
[ 3.648956] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 3.657043] ThumbEE CPU extension supported.
[ 3.665191] sr_init: No PMIC hook to init smartreflex
[ 3.670715] smartreflex smartreflex.0: omap_sr_probe: SmartReflex driver initialized
[ 3.678985] smartreflex smartreflex.1: omap_sr_probe: SmartReflex driver initialized
[ 3.687225] SmartReflex Class3 initialized
[ 3.695098] clock: disabling unused clocks to save power
[ 3.701599] registered taskstats version 1
[ 3.706573] fbcvt: 640x480@60: CVT Name - .307M3-R
[ 3.718750] Console: switching to colour frame buffer device 80x30
[ 3.731201] usb 1-2: New USB device found, idVendor=0424, idProduct=9514
[ 3.738311] usb 1-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.746795] regulator_init_complete: VDAC: incomplete constraints, leaving on
[ 3.756866] input: gpio-keys as /devices/platform/gpio-keys/input/input1
[ 3.764190] hub 1-2:1.0: USB hub found
[ 3.768615] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 3.775512] hub 1-2:1.0: 5 ports detected
[ 3.785980] Waiting for root device /dev/mmcblk0p2…
[ 3.914459] mmc0: host does not support reading read-only switch. assuming write-enable.
[ 3.925476] mmc0: new high speed SDHC card at address aaaa
[ 3.931640] mmcblk0: mmc0:aaaa SU04G 3.69 GiB
[ 3.938446] mmcblk0: p1 p2
[ 4.003875] EXT3-fs (mmcblk0p2): error: couldn’t mount because of unsupported optional features (240)
[ 4.013702] List of all partitions:
[ 4.017456] b300 3872256 mmcblk0 driver: mmcblk
[ 4.023101] b301 72261 mmcblk0p1 00000000-0000-0000-0000-000000000000
[ 4.031036] b302 3799040 mmcblk0p2 00000000-0000-0000-0000-000000000000
[ 4.038940] No filesystem could mount root, tried:
[ 4.043914] Unable to handle kernel paging request at virtual address 00303030
[ 4.051727] pgd = c0004000
[ 4.054534] [00303030] *pgd=00000000
[ 4.058380] Internal error: Oops: 5 [#1]
[ 4.062438] Modules linked in:
[ 4.065643] CPU: 0 Not tainted (3.3.7 #1)
[ 4.070159] PC is at mount_block_root+0x19c/0x210
[ 4.075073] LR is at mount_block_root+0x17c/0x210
[ 4.079956] pc : [] lr : [] psr: 60000013
[ 4.079956] sp : dec2bf60 ip : 00000000 fp : 00000000
[ 4.091888] r10: c055f395 r9 : 00000000 r8 : 00008000
[ 4.097320] r7 : c0ada1db r6 : c064259c r5 : dec40005 r4 : 00303030
[ 4.104125] r3 : 00000001 r2 : dec2bf54 r1 : c055f36d r0 : 00000039
[ 4.110900] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 4.118499] Control: 10c5387d Table: 80004019 DAC: 00000015
[ 4.124481] Process swapper (pid: 1, stack limit = 0xdec2a2f0)
[ 4.130554] Stack: (0xdec2bf60 to 0xdec2c000)
[ 4.135070] bf60: 00000000 c00b9d14 de8a653c 00000000 de810d88 dec2bf88 00006000 00000000
[ 4.143585] bf80: 00006180 c00bae54 00000002 c06425ad c000e208 00000013 00000000 00000000
[ 4.152099] bfa0: 00000000 c0618e20 00000019 00000000 c0669280 000000b3 c069e8a0 c06425ad
[ 4.160614] bfc0: c000e208 c0618f9c fffffffe de8a6b00 00000000 c064da30 c064da30 c0618888
[ 4.169128] bfe0: 00000000 00000000 00000000 00000000 c0618788 c000e208 7fd7fdbf afffb7ee
[ 4.177642] [] (mount_block_root+0x19c/0x210) from [] (mount_root+0xec/0x10c)
[ 4.186889] [] (mount_root+0xec/0x10c) from [] (prepare_namespace+0x15c/0x1bc)
[ 4.196197] [] (prepare_namespace+0x15c/0x1bc) from [] (kernel_init+0x100/0x130)
[ 4.205718] [] (kernel_init+0x100/0x130) from [] (kernel_thread_exit+0x0/0x8)
[ 4.214965] Code: e1a00004 ebefe096 e2800001 e0844000 (e5d43000)
[ 4.221740] —[ end trace beb57108c548aa87 ]—
[ 4.226745] Kernel panic - not syncing: Attempted to kill init!

U-Boot SPL 2012.04.01 (Jan 11 2014 - 05:04:29)
Texas Instruments Revision detection unimplemented
OMAP SD/MMC: 0
timed out in wait_for_bb: I2C_STAT=1000
reading u-boot.img
reading u-boot.img

U-Boot 2012.04.01 (Jan 11 2014 - 05:04:29)

OMAP36XX/37XX-GP ES1.2, CPU-OPP2, L3-165MHz, Max CPU Clock 1 Ghz
OMAP3 Beagle board + LPDDR/NAND
I2C: ready
DRAM: 512 MiB
NAND: 0 MiB
MMC: OMAP SD/MMC: 0
*** Warning - readenv() failed, using default environment

In: serial
Out: serial
Err: serial
Beagle xM Rev C
No EEPROM on expansion board
Die ID #26a600029ff80000016842c81402800e
Net: Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot: 0
OMAP3 beagleboard.org # usb start
(Re)start USB…
USB: Register 1313 NbrPorts 3
USB EHCI 1.00
scanning bus for devices… 3 USB Device(s) found
scanning bus for storage devices… 0 Storage Device(s) found
scanning bus for ethernet devices… 1 Ethernet Device(s) found
OMAP3 beagleboard.org # setenv serverip 192.168.2.4
OMAP3 beagleboard.org # setenv ipaddr 192.168.2.24
OMAP3 beagleboard.org # tftp 0x80007FC0 uImage
Waiting for Ethernet connection… done.
Using sms0 device
TFTP from server 192.168.2.4; our IP address is 192.168.2.24
Filename ‘uImage’.
Load address: 0x80007fc0
Loading: T #################################################################

Sorry guys,

I have found the reason. It just doesnt read uEnv.txt when i try to boot from TFTP. After setting bootargs value it booted from RAM.

Have a nice weeekend.