Forum: Mikrocontroller und Digitale Elektronik NFS Boot Grasshopper


von Hemmes (Gast)


Lesenswert?

Hallo!

Möchte gerne mein Grasshopper über NFS booten. Dann spuckt die Konsole 
das aus und danach passiert gar nichts mehr.
1
File transfer via NFS from server 192.168.1.206; our IP address is 192.168.1.99
2
Filename '/home/avr32/grasshopper_buildroot/project_build_avr32/grasshopper/root/boot/uImage'.
3
Load address: 0x10400000
4
Loading: #################################################################
5
         #################################################################
6
         #################################################################
7
         ######################################################
8
done
9
Bytes transferred = 1271320 (136618 hex)
10
partition changed to nor0,2
11
## Booting image at 10400000 ...
12
   Image Name:   Linux-2.6.27.6.atmel.1
13
   Image Type:   AVR32 Linux Kernel Image (gzip compressed)
14
   Data Size:    1271256 Bytes =  1.2 MB
15
   Load Address: 10000000
16
   Entry Point:  90000000
17
   Verifying Checksum ... OK
18
   Uncompressing Kernel Image ... OK
19
20
Starting kernel at 90000000 (params at 13fa5008)...
21
22
Linux version 2.6.27.6.atmel.1 (avr32@avr32-desktop) (gcc version 4.2.2-atmel.1.1.3.buildroot.1) #1 Fri Jul 3 10:37:57 CEST 2009
23
CPU: AT32AP700x chip revision C
24
CPU: AP7 [01] core revision 0 (AVR32B arch revision 1)
25
CPU: MMU configuration: Shared TLB
26
CPU: features: dsp simd ocd perfctr java
27
CPU: Running at 140.000 MHz
28
Physical memory:
29
  10000000-13ffffff
30
Reserved memory:
31
  10000000-10187c77: Kernel code
32
  10187c78-10221707: Kernel data
33
Exception vectors start at 90013000
34
CPU: Paging enabled
35
Node 0: start_pfn = 0x10000, low = 0x14000
36
Node 0: mem_map starts at 90224000
37
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
38
Kernel command line: nfsroot=$(serverip):/home/avr32/grasshopper_buildroot/project_build_avr32/grasshopper/::$(serverip)::255.255.255.0::eth0:dhcp
39
PID hash table entries: 256 (order: 8, 1024 bytes)
40
avr32_comparator: irq 0, 140.000 MHz
41
console [ttyS0] enabled
42
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
43
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
44
Memory: 62724k/62784k available (1491k kernel code, 2752k reserved, 111k data, 76k init)
45
SLUB: Genslabs=10, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
46
Calibrating delay using timer specific routine.. 281.76 BogoMIPS (lpj=563536)
47
Mount-cache hash table entries: 512
48
net_namespace: 756 bytes
49
smc smc.0: Atmel Static Memory Controller at 0xfff03400
50
NET: Registered protocol family 16
51
Grasshopper: 2 PWMs
52
Grasshopper: 6 Leds
53
pdc pdc.0: Atmel Peripheral DMA Controller enabled
54
at32_eic at32_eic.0: External Interrupt Controller at 0xfff00100, IRQ 19
55
at32_eic at32_eic.0: Handling 4 external IRQs, starting with IRQ 64
56
AVR32 AP Power Management enabled
57
dw_dmac.0: DesignWare DMA Controller, 3 channels
58
NET: Registered protocol family 2
59
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
60
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
61
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
62
TCP: Hash tables configured (established 2048 bind 2048)
63
TCP reno registered
64
NET: Registered protocol family 1
65
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
66
msgmni has been set to 122
67
io scheduler noop registered
68
io scheduler cfq registered (default)
69
atmel_usart.0: ttyS0 at MMIO 0xffe01000 (irq = 7) is a ATMEL_SERIAL
70
MACB_mii_bus: probed
71
eth0: Atmel MACB at 0xfff01800 irq 25 (00:1f:e5:00:09:00)
72
eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:00, irq=-1)
73
physmap platform flash device: 00800000 at 00000000
74
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
75
 Amd/Fujitsu Extended Query Table at 0x0041
76
number of CFI chips: 1
77
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
78
RedBoot partition parsing not available
79
Using physmap partition information
80
Creating 3 MTD partitions on "physmap-flash.0":
81
0x00000000-0x00020000 : "u-boot"
82
0x00020000-0x00030000 : "env"
83
0x00030000-0x00800000 : "root"
84
at32ap700x_rtc at32ap700x_rtc.0: rtc core: registered at32ap700x_rtc as rtc0
85
at32ap700x_rtc at32ap700x_rtc.0: Atmel RTC for AT32AP700x at fff00080 irq 21
86
at32_wdt at32_wdt.0: AT32 WDT at 0xfff000b0, timeout 2 sec (nowayout=0)
87
atmel_mci atmel_mci.0: Atmel MCI controller at 0xfff02400 irq 28, 1 slots
88
Registered led device: pwm0
89
Registered led device: pwm1
90
Registered led device: led1:green
91
Registered led device: led2:green
92
Registered led device: led3:green
93
Registered led device: led4:green
94
Registered led device: led5:green
95
Registered led device: led8:green
96
TCP cubic registered
97
Initializing XFRM netlink socket
98
NET: Registered protocol family 10
99
IPv6 over IPv4 tunneling driver
100
NET: Registered protocol family 17
101
NET: Registered protocol family 15
102
RPC: Registered udp transport module.
103
RPC: Registered tcp transport module.
104
cpufreq: AT32AP CPU frequency driver
105
at32ap700x_rtc at32ap700x_rtc.0: setting system clock to 1970-01-01 00:00:00 UTC (0)
106
Root-NFS: No NFS server available, giving up.
107
VFS: Unable to mount root fs via NFS, trying floppy.
108
VFS: Cannot open root device "<NULL>" or unknown-block(2,0)
109
Please append a correct "root=" boot option; here are the available partitions:
110
1f00        128 mtdblock0 (driver?)
111
1f01         64 mtdblock1 (driver?)
112
1f02       8000 mtdblock2 (driver?)
113
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
Wird wohl was mit den Environmentvariablen des Bootloaders zu tun haben. 
Hat jemand eine Idee?

von Alejandro P. (ale500)


Lesenswert?

Kernel command line: 
nfsroot=$(serverip):/home/avr32/grasshopper_buildroot/project_build_avr3 
2/grasshopper/::$(serverip)::255.255.255.0::eth0:dhcp

$(serverip) muss vielleicht 192.168.1.206 sein, oder ?

von Hemmes (Gast)


Lesenswert?

Fehler ist behoben!

von Alejandro P. (ale500)


Lesenswert?

Und Was war ?

von Hemmes (Gast)


Lesenswert?

Ich habe in der UBoot-Konsole den Inhalt von "bootargs" nicht mit askenv 
und dann saveenv dauerhaft geändert, sondern mit

setenv bootargs root=nfs 
nfsroot=192.168.1.206:/home/avr32/grasshopper_buildroot/project_build_av 
r32/grasshopper/root 
ip=192.168.1.99:192.168.1.206::255.255.255.0::eth0:none

angepasst. Danach funktioniert es. Ich habe aber keine Ahnung, warum das 
so ist.

von Hemmes (Gast)


Lesenswert?

Und jetzt friert die Konsole an dieser Stelle ein:

IP-Config: Complete:
     device=eth0, addr=192.168.2.99, mask=255.255.255.0, 
gw=255.255.255.255,
     host=192.168.2.99, domain=, nis-domain=(none),
     bootserver=192.168.2.102, rootserver=192.168.2.102, rootpath=
Looking up port of RPC 100003/2 on 192.168.2.102
eth0: link up (100/Full)
Looking up port of RPC 100005/1 on 192.168.2.102
VFS: Mounted root (nfs filesystem).
Freeing init memory: 76K (90000000 - 90013000)

Hat jemand eine Idee, warum danach nichts mehr kommt. Eigentlich sollte 
jetzt zu sehen sein, dass die BusyBox geladen wurde und man wird 
aufgefordert sich einzuloggen.

von Werner B. (werner-b)


Lesenswert?

Für NFS musst du das "auto" für eth0 in /etc/network/interfaces 
deaktivieren.

d.h. einfach ein "#" vor die Zeile mit "auto eth0"

Siehe dazu: Beitrag "Re: NFS mit grasshopper / AVR32"
bzw. 
http://www.avrfreaks.net/wiki/index.php/Documentation:AVR32_Linux_Development/Filesystem_over_NFS_for_AVR32_Linux#Linux_freezes_at_startup_after_aquiring_address

von Hemmes (Gast)


Lesenswert?

Nein, das ist nicht die Lösung. Man muss die Zugriffsrechte im 
NFS-Ordner richtig setzen(nicht in /etc/exports sondern direkt unter 
porperties des rootfs ordners) und dann klappt es auch. ENDLICH!!!

@ Werner B.: Die Konfiguration des ehternet interfaces wurde schon 
korrekt abgeschlossen. Damit hat das nichts zu tun.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.