Hy
I try to boot my BeagleBoard xM Rev.C from an NFS server which is running on an Ubuntu 10.04 host.
I am able to mount the NFS into an Angstrom Linux on the BeagleBoard so i think the NFS server should work just fine.
My bootargs in the file uEnv.txt are:
serverip=192.168.0.2
ipaddr=192.168.0.9
netmask=255.255.255.0
gatewayip=192.168.0.1
hostname=beagleboard
nfsdevice=usb0:off
usbethaddr=6E:58:95:1B:82:65
optargs=mem=99M@0x80000000 mem=384M@0x88000000
nfsargs=setenv bootargs console=tty02,115200n8 mpurate=1000 ${optargs} ip=dhcp nfsroot=192.168.0.2:/home/kli/rootfs root=/dev/nfs rw rootwait
uenvcmd=echo Initializing net ...; dcache off; usb start; echo Loading kernel ...; nfs ${loadaddr} 192.168.0.2:/home/kli/rootfs/boot/uImage ; echo Booting from nfs ...; run nfsargs; bootm ${loadaddr}
When i boot the BeagleBoard i get the log:
U-Boot SPL 2011.12-dirty (May 26 2012 - 14:13:36)
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 2011.12-dirty (Jun 13 2012 - 09:13:11)
OMAP3630/3730-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
No EEPROM on expansion board
Die ID #578600029ff80000015f26ad0f00c028
Net: Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot: 2
\0x08\0x08\0x08 1
\0x08\0x08\0x08 0
The user button is currently NOT pressed.
SD/MMC found on device 0
reading uEnv.txt
557 bytes read
Loaded environment from uEnv.txt
Importing environment from mmc ...
Running uenvcmd ...
Initializing net ...
Data (writethrough) Cache is OFF
(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
Loading kernel ...
Waiting for Ethernet connection...
done.
Using sms0 device
File transfer via NFS from server 192.168.0.2; our IP address is 192.168.0.9
Filename '/home/kli/rootfs/boot/uImage'.
Load addr
ess: 0x80200000
Loading: *\0x08################################
#################################
\0x09 #######################
##########################################
\0x09 ###############
##################################################
\0x09 ######
###########################################################
\0x09 #
############################################################
####
\0x09 ####################################################
#############
\0x09 ###########################################
######################
\0x09 ###################################
##############################
\0x09 ###########################
######################################
\0x09 ##################
###############################################
\0x09 #########
########################################################
\0x09 ###
############################################################
##
\0x09 ######################################################
###########
\0x09 #######################
done
Bytes transferred = 4439080 (43bc28 hex)
Booting from nfs ...
bootm - boot application image from memory
Usage:
bootm [addr [arg ...]]
- boot application image stored in memory
\0x09passing arguments 'arg ...'; when booting a Linux kernel,
\0x09'arg' can be the address of an initrd image
\0x09When booting a Linux kernel which requires a flat device-tree
\0x09a third argument is required which is the address of the
\0x09device-tree blob. To boot that kernel without an initrd image,
\0x09use a '-' for the second argument. If you do not pass a third
\0x09a bd_info struct will be passed instead
Sub-commands to do part of the bootm sequence. The sub-commands must be
issued in the order below (it's ok to not issue all sub-commands):
\0x09start [addr [arg ...]]
\0x09loados - load OS image
\0x09fdt - relocate flat device tree
\0x09cmdline - OS specific command line processing/setup
\0x09bdt - OS specific bd_t processing
\0x09prep - OS specific prep before relocation or go
\0x09go - start OS
Loading file "/boot/uImage" from mmc device 0:2 xxa2
** File not found /boot/uImage
Booting from nand ...
no devices available
## Booting kernel from Legacy Image at 80200000 ...
Image Name: Linux-3.2.18
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4439016 Bytes = 4.2 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ...
OK
Loading Kernel Image ...
OK
OK
Starting kernel ...
Uncompressing Linux...
done, booting the kernel.
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[
0.000000] Linux version 3.2.18 (kli@kli-laptop) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #8 Tue Jan 22 13:10:15 WET 2013
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: OMAP3 Beagle Board
[ 0.000000] Beagle expansionboard: none
[ 0.000000] Beagle second expansionboard: none
[ 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/600 MHz
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 118016
[ 0.000000] Kernel command line: console=ttyO2,115200n8 mem=99M@0x80000000 mem=384M@0x88000000
mpurate=auto buddy=none buddy2=none camera=none vram=12M omapfb.mode=dvi:640x480MR-16@60 omapdss.def_disp=dvi root=ubi0:rootfs ubi.mtd=4 rootfstype=ubifs
[ 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 2097152 bytes of page_cgroup
[ 0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[ 0.000000] Memory: 99MB 366MB = 465MB total
[ 0.000000] Memory: 460896k/460896k available, 33696k 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 - 0xf8000000 ( 376 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0751e1c (7464 kB)
[ 0.000000] .init : 0xc0752000 - 0xc0799000 ( 284 kB)
[ 0.000000] .data : 0xc079a000 - 0xc07f4990 ( 363 kB)
[ 0.000000] .bss : 0xc07f49b4 - 0xc08b19d4 ( 757 kB)
[ 0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS:410 nr_irqs:410 410
[ 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... 503.12 BogoMIPS (lpj=1966080)
[ 0.032897] pid_max: default: 32768 minimum: 301
[ 0.033172] Security Framework initialized
[ 0.033203] AppArmor: AppArmor initialized
[ 0.033416] Mount-cache hash table entries: 512
[ 0.033843] Initializing cgroup subsys cpuacct
[ 0.033905] Initializing cgroup subsys memory
[ 0.033935] Initializing cgroup subsys devices
[ 0.033966] Initializing cgroup subsys freezer
[ 0.033966] Initializing cgroup subsys blkio
[ 0.033996] Initializing cgroup subsys perf_event
[ 0.034088] CPU: Testing write buffer coherency: ok
[ 0.035186] devtmpfs: initialized
[ 0.038848] print_constraints: dummy:
[ 0.039093] NET: Registered protocol family 16
[ 0.039276] GPMC revision 5.0
[ 0.040679] OMAP GPIO hardware version 2.5
[ 0.041961] omap_mux_init: Add partition: #1: core, flags: 0
[ 0.043243] OMAP3 Beagle Rev: xM C
[ 0.046325] Reprogramming SDRC clock to 400000000 Hz
[ 0.046356] dpll3_m2_clk rate change failed: -22
[ 0.048278] Found NAND on CS0
[ 0.048309] Registering NAND on CS0
[ 0.048614] Unable to get DVI reset GPIO
[ 0.048767] hw-breakpoint: debug architecture 0x4 unsupported.
[ 0.052276] omap-mcbsp.2: alias fck already exists
[ 0.052459] omap-mcbsp.3: alias fck already exists
[ 0.053619] OMAP DMA hardware revision 5.0
[ 0.060333] bio: create slab <bio-0> at 0
[ 0.061584] SCSI subsystem initialized
[ 0.062713] usbcore: registered new interface driver usbfs
[ 0.062866] usbcore: registered new interface driver hub
[ 0.063049] usbcore: registered new device driver usb
[ 0.063751] omap_i2c omap_i2c.1: bus 1 rev1.4.0 at 2600 kHz
[ 0.066162] twl
4030: PIH (irq 7) chaining IRQs 368..375
[ 0.066284] twl4030: power (irq 373) chaining IRQs 376..383
[ 0.066741] twl4030: gpio (irq 368) chaining IRQs 384..401
[ 0.067108] _omap_mux_init_gpio: Could not set gpio192
[ 0.069885] print_constraints: VUSB1V5: 1500 mV normal standby
[ 0.070281] print_constraints: VUSB1V8: 1800 mV normal standby
[ 0.070648] print_constraints: VUSB3V1: 3100 mV normal standby
[ 0.072326] twl4030_usb twl4030_usb: Initialized TWL4030 USB module
[ 0.073089] print_constraints: VMMC1: 1850 <--> 3150 mV at 3150 mV normal standby
[ 0.073516] print_constraints: VDAC: 1800 mV normal standby
[ 0.073913] print_constraints: VAUX2_4030: 1800 mV normal
[ 0.074310] print_constraints: VDVI: 1800 mV normal standby
[ 0.074798] print_constraints: VSIM: 1800 <--> 3000 mV at 1800 mV normal standby
[ 0.075103] omap_i2c omap_i2c.2: bus 2 rev1.4.0 at 400 kHz
[ 0.085540] omap_i2c omap_i2c.3: bus 3 rev1.4.0 at 100 kHz
[ 0.086608] NetLabel: Initializing
[ 0.086639] NetLabel: domain hash size = 128
[ 0.086639] NetLabel: protocols = UNLABELED CIPSOv4
[ 0.086700] NetLabel: unlabeled traffic allowed by default
[ 0.086761] Switching to clocksource 32k_counter
[ 0.100799] AppArmor: AppArmor Filesystem Enabled
[ 0.113250] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 0.124206] musb-hdrc musb-hdrc: USB OTG mode controller at fa0ab000 using DMA, IRQ 92
[ 0.124572] NET: Registered protocol family 2
[ 0.124877] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.125793] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.126342] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.126617] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.126647] TCP reno registered
[ 0.126678] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.126678] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.127075] NET: Registered protocol family 1
[ 0.127502] RPC: Registered named UNIX socket transport module.
[ 0.127502] RPC: Registered udp transport module.
[ 0.127532] RPC: Registered tcp transport module.
[ 0.127532] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.127807] omap_dsp_init: 600000 bytes @ 9ee00000
[ 0.129455] audit: initializing netlink socket (disabled)
[ 0.129516] type=2000 audit(0.140:1): initialized
[ 0.353942] VFS: Disk quotas dquot_6.5.2
[ 0.354278] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.357727] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.357818] fuse init (API version 7.17)
[ 0.359863] Btrfs loaded
[ 0.359893] msgmni has been set to 900
[ 0.361602] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.361724] io scheduler noop registered
[ 0.361755] io scheduler deadline registered
[ 0.361785] io scheduler cfq registered (default)
[ 0.362701] OMAP DSS rev 2.0
[ 0.365325] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.366485] omap_uart.0: ttyO0 at MMIO 0x4806a000 (irq = 72) is a OMAP UART0
[ 0.366760] omap_uart.1: ttyO1 at MMIO 0x4806c000 (irq = 73) is a OMAP UART1
[ 0.367126] omap_uart.2: ttyO2 at MMIO 0x49020000 (irq = 74) is a OMAP UART2
[ 1.091796] console [ttyO2] enabled
[ 1.095855] omap_uart.3: ttyO3 at MMIO 0x49042000 (irq = 80) is a OMAP UART3
[ 1.103851] [drm] Initialized drm 1.1.0 20060810
[ 1.116424] brd: module loaded
[ 1.123779] loop: module loaded
[ 1.130249] twl4030_madc twl4030_madc: clk disabled, enabling
[ 1.138214] omap2-nand driver initializing
[ 1.142944] No NAND device found
[ 1.146514] No NAND device found
[ 1.150177] OneNAND driver initializing
[ 1.154846] usbcore: registered new interface driver cdc_ether
[ 1.161102] usbcore: registered new interface driver rndis_host
[ 1.167419] cdc_ncm: 04-Aug-2011
[ 1.170867] usbcore: registered new interface driver cdc_ncm
[ 1.177307] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 3.196411] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
[ 3.202667] ehci-omap e
hci-omap.0: new USB bus registered, assigned bus number 1
[ 3.210662] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
[ 3.227752] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
[ 3.233886] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 3.241119] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.248779] usb usb1: Product: OMAP-EHCI Host Controller
[ 3.254455] usb usb1: Manufacturer: Linux 3.2.18 ehci_hcd
[ 3.260223] usb usb1: SerialNumber: ehci-omap.0
[ 3.265747] hub 1-0:1.0: USB hub found
[ 3.269775] hub 1-0:1.0: 3 ports detected
[ 3.305816] Initializing USB Mass Storage driver...
[ 3.311035] usbcore: registered new interface driver usb-storage
[ 3.317443] USB Mass Storage support registered.
[ 3.322448] usbcore: registered new interface driver libusual
[ 3.328674] udc: OMAP UDC driver, version: 4 October 2004 (iso) (dma)
[ 3.335998] mousedev: PS/2 mouse device common for all mice
[ 3.344085] input: twl4030_pwrbutton as /devices/platform/omap/omap_i2c.1/i2c-1/1-0049/twl4030_pwrbutton/input/input0
[ 3.355957] i2c /dev entries driver
[ 3.360229] Linux media interface: v0.10
[ 3.364562] lirc_dev: IR Remote Control driver registered, major 249
[ 3.371429] Driver for 1-wire Dallas network protocol.
[ 3.377655] OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
[ 3.384735] twl4030_wdt twl4030_wdt: Failed to register misc device
[ 3.391418] twl4030_wdt: probe of twl4030_wdt failed with error -16
[ 3.399108] device-mapper: ioctl: 4.22.0-ioctl (2011-10-19) initialised: dm-devel@redhat.com
[ 3.408538] cpuidle: using governor ladder
[ 3.412811] cpuidle: using governor menu
[ 3.417022] sdhci: Secure Digital Host Controller Interface driver
[ 3.423553] sdhci: Copyright(c) Pierre Ossman
[ 3.602844] usb 1-2: new high-speed USB device number 2 using ehci-omap
[ 3.652587] omap_hsmmc: probe of omap_hsmmc.1 failed with error -16
[ 3.660919] usbcore: registered new interface driver usbhid
[ 3.666870] usbhid: USB HID core driver
[ 3.670867] oprofile: hardware counters not available
[ 3.676269] oprofile: using timer interrupt.
[ 3.681640] TCP cubic registered
[ 3.685821] NET: Registered protocol family 10
[ 3.692352] NET: Registered protocol family 17
[ 3.697265] Registering the dns_resolver key type
[ 3.702209] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 3.710296] ThumbEE CPU extension supported.
[ 3.714874] Registering SWP/SWPB emulation handler
[ 3.723785] sr_init: No PMIC hook to init smartreflex
[ 3.729339] smartreflex smartreflex.0: omap_sr_probe: SmartReflex driver initialized
[ 3.737609] smartreflex smartreflex.1: omap_sr_probe: SmartReflex driver initialized
[ 3.745849] SmartReflex Class3 initialized
[ 3.753784] clock: disabling unused clocks to save power
[ 3.760284] registered taskstats version 1
[ 3.764739] fbcvt: 640x480@60: CVT Name - .307M3-R
[ 3.780059] Console: switching to colour frame buffer device 80x30
[ 3.792755] regulator_init_complete: VDAC: incomplete constraints, leaving on
[ 3.800415] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 3.807922] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0)
[ 3.815460] Please append a correct "root=" boot option; here are the available partitions:
[ 3.824249] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 3.833038] [<c0012478>] (unwind_backtrace+0x0/0xec) from [<c0530b20>] (panic+0x54/0x18c)
[ 3.841674] [<c0530b20>] (panic+0x54/0x18c) from [<c0752d38>] (mount_block_root+0x1d0/0x210)
[ 3.850616] [<c0752d38>] (mount_block_root+0x1d0/0x210) from [<c0752ef0>] (prepare_namespace+0x88/0x1c4)
[ 3.860595] [<c0752ef0>] (prepare_namespace+0x88/0x1c4) from [<c075229c>] (kernel_init+0xfc/0x134)
[ 3.870056] [<c075229c>] (kernel_init+0xfc/0x134) from [<c000df38>] (kernel_thread_exit+0x0/0x8)
It would be really nice if one could help me to get the BeagleBoard booted from the NFS server
Thanks in advance
Wendelin