CDK (Yadd) für Booting mit Linux Suse 10.0 konfigurieren
CDK (Yadd) für Booting mit Linux Suse 10.0 konfigurieren
Bisher hatte ich immer Images gebaut und dann damit herum getsestet. Aber das ist mir auf Dauer zu langwierig geworden. Ich wollte jetzt mal von CDK booten und das mit Suse. Ich habe das mal versucht nach den Angaben wie hier beschrieben
http://wiki.tuxbox-cvs.sourceforge.net/CDK_booten
Das will aber irgendwie nicht so richtig laufen. Unter Windows war das ja mit dem Bootmanager relativ übersichtlich. Einstellungen machen, Start klicken, Box einschalten, fertig. Wie startet man aber die Box mit Yadd bzw. Cdkroot, welches ich mit Newmake erzeugt habe? Hat da jemand sowas wie eine Anleitung zur Hand, die auf Linux Suse 10.0 zugeschnitten ist? Danke Im Voraus!
http://wiki.tuxbox-cvs.sourceforge.net/CDK_booten
Das will aber irgendwie nicht so richtig laufen. Unter Windows war das ja mit dem Bootmanager relativ übersichtlich. Einstellungen machen, Start klicken, Box einschalten, fertig. Wie startet man aber die Box mit Yadd bzw. Cdkroot, welches ich mit Newmake erzeugt habe? Hat da jemand sowas wie eine Anleitung zur Hand, die auf Linux Suse 10.0 zugeschnitten ist? Danke Im Voraus!
-
- Foren-Moderator
- Beiträge: 1119
- Registriert: Sonntag 9. Juni 2002, 13:28
-
- Foren-Moderator
- Beiträge: 1119
- Registriert: Sonntag 9. Juni 2002, 13:28
-
- Erleuchteter
- Beiträge: 416
- Registriert: Mittwoch 17. Januar 2007, 16:47
Ich benutze SuSE 10.1 und anbei meine Konfigurationen.
dhcp richtig konfiguriert?
nfs richtig konfiguriert?
Carsten
dhcp richtig konfiguriert?
Code: Alles auswählen
option domain-name "xyz.dyndns.org";
option domain-name-servers 192.168.0.200, 192.168.0.200;
option routers 192.168.0.200;
option ntp-servers 192.168.0.200;
option lpr-servers 192.168.0.200;
option netbios-name-servers 192.168.0.200;
ddns-update-style none;
default-lease-time 14400;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.150 192.168.0.150;
default-lease-time 14400;
max-lease-time 172800;
}
host dbox1 {
option root-path "/home/carsten/project_dbox/dbox2/cdkroot";
next-server 192.168.0.1;
hardware ethernet AA:BB:CC:DD:EE:FF;
allow bootp;
fixed-address 192.168.0.151;
if exists vendor-class-identifier {
filename "kernel-cdk";
}
else {
filename "u-boot";
}
}
Code: Alles auswählen
/home/carsten/project_dbox/dbox2 dbox1(rw,no_root_squash,sync)
/home/carsten/project_dbox/dbox2/cdk dbox1(rw,no_root_squash,sync)
/home/carsten/project_dbox/dbox2/cdkflash dbox1(rw,no_root_squash,sync)
/home/carsten/project_dbox/dbox2/cdkroot dbox1(rw,no_root_squash,sync)
/home/carsten/project_dbox/dbox2/tftpboot dbox1(rw,no_root_squash,sync)
-
- Interessierter
- Beiträge: 64
- Registriert: Mittwoch 26. April 2006, 09:44
Danke erst mal für die Antworten. Dank dessen springt meine Box zumindest an. Allerdings nur bis zu einem gewissen Punkt:
Was könnte man da machen?
Code: Alles auswählen
5debug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: unknown demodulatordebug: BMon V1.0 mID 01
debug: feID 00 gtxID 0b
debug: fpID 5a dsID ######################
debug: HWrev X5 SWrev 0.81
debug: B/Ex/Fl(MB) 32/00/08
WATCHDOG reset enabled
dbox2:root> debug:
BOOTP/TFTP bootstrap loader (v0.3)
debug:
debug: Transmitting BOOTP request via broadcast
debug: Unknown RFC1048-tag debug: 3 debug: 4 debug: c0 debug: a8 debug: 28 debug
: 15 debug:
debug: Unknown RFC1048-tag debug: 11 debug: 17 debug: 2f debug: 68 debug: 6f deb
ug: 6d debug: 65 debug: 2f debug: 64 debug: 62 debug: 74 debug: 2f debug: 64 deb
ug: 62 debug: 6f debug: 78 debug: 32 debug: 2f debug: 63 debug: 64 debug: 6b deb
ug: 72 debug: 6f debug: 6f debug: 74 debug:
debug: Got BOOTP reply from Server IP 192.168.40.12, My IP 192.168.40.22
debug: Sending TFTP-request for file u-boot-yadd
will verify ELF image, start= 0x800000, size= 135620
verify sig: 262
boot net: boot file has no valid signature
Branching to 0x40000
U-Boot 1.1.4 (Tuxbox) (Feb 4 2007 - 22:01:37)
CPU: PPC823ZTnnA at 67.200 MHz: 2 kB I-Cache 1 kB D-Cache
*** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: DBOX2, Nokia, BMon V1.0
Watchdog enabled
I2C: ready
DRAM: 32 MB
FLASH: 8 MB
FB: ready
LCD: ready
In: serial
Out: serial
Err: serial
Net: SCC ETHERNET
BOOTP broadcast 1
Using SCC ETHERNET device
TFTP from server 192.168.40.12; our IP address is 192.168.40.22
Filename 'u-boot-yadd'.
Load address: 0x100000
Loading: Using SCC ETHERNET device
TFTP from server 192.168.40.12; our IP address is 192.168.40.22
Filename 'logo-lcd'.
Load address: 0x100000
Loading: ##
done
Bytes transferred = 7680 (1e00 hex)
BOOTP broadcast 1
Using SCC ETHERNET device
TFTP from server 192.168.40.12; our IP address is 192.168.40.22
Filename 'u-boot-yadd'.
Load address: 0x100000
Loading: Using SCC ETHERNET device
TFTP from server 192.168.40.12; our IP address is 192.168.40.22
Filename 'logo-fb'.
Load address: 0x100000
Loading: #########
done
Bytes transferred = 41999 (a40f hex)
Options:
1: Console on null
2: Console on ttyS0
3: Console on framebuffer
Select option (1-3), other keys to stop autoboot: 0
Using SCC ETHERNET device
TFTP from server 192.168.40.12; our IP address is 192.168.40.22
Filename 'kernel-yadd'.
Load address: 0x100000
Loading: #################################################################
#################################################################
###############################
done
Bytes transferred = 823665 (c9171 hex)
...............................................................
Un-Protected 63 sectors
## Booting image at 00100000 ...
Image Name: dbox2
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 823601 Bytes = 804.3 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Linux version 2.4.34-dbox2 (dixidix@linux) (gcc version 3.4.4) #16 So Feb 4 22:04:21
CET 2007
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0 root=/dev/nfs rw nfsroot=192.168.40.12:u-boot
-yadd/cdkroot/ ip=192.168.40.22:192.168.40.12:192.168.40.21:255.255.255.0:::off
Decrementer Frequency = 252000000/60
m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1)
m8xx_wdt: keep-alive trigger installed (PITC: 0x1000)
Console: colour dummy device 80x25
Calibrating delay loop... 66.96 BogoMIPS
Memory: 30456k available (1404k kernel code, 440k data, 68k init, 0k highmem)
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.
squashfs: version 3.0 (2006/03/15) Phillip Lougher
i2c-core.o: i2c core module version 2.6.1 (20010830)
i2c-dev.o: i2c /dev entries driver module version 2.6.1 (20010830)
CPM UART driver version 0.04
ttyS0 at 0x0280 is on SMC1 using BRGttyS1 at 0x0380 is on SMC2 using BRG2
pty: 256 Unix98 ptys configured
eth0: CPM ENET Version 0.2.dbox2 on SCC2, 00:50:9c:40:05:86
loop: loaded (max 8 devices)
D-Box 2 flash driver (size->0x800000 mem->0x10000000)
D-Box 2 flash memory: Found 2 x16 devices at 0x0 in 32-bit bank
Intel/Sharp Extended Query Table at 0x0035
cfi_cmdset_0001: Erase suspend on write enabled
Creating 6 MTD partitions on "D-Box 2 flash memory":
0x00000000-0x00020000 : "BR bootloader"
0x00020000-0x00040000 : "FLFS (U-Boot)"
0x00040000-0x006a0000 : "root (rootfs)"
0x006a0000-0x00800000 : "var (jffs2)"
0x00020000-0x00800000 : "Flash without bootloader"
0x00000000-0x00800000 : "Complete Flash"
Linux video capture interface: v1.00
mice: PS/2 mouse device common for all mice
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 4096)
IP-Config: Complete:
device=eth0, addr=192.168.40.22, mask=255.255.255.0, gw=192.168.40.21,
host=192.168.40.22, domain=, nis-domain=(none),
bootserver=192.168.40.12, rootserver=192.168.40.12, rootpath=
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 192.168.40.12
Looking up port of RPC 100005/1 on 192.168.40.12
Root-NFS: Server returned error -13 while mounting u-boot-yadd/cdkroot/
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or 02:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 02:00
<0>Rebooting in 180 seconds..
-
- Contributor
- Beiträge: 1833
- Registriert: Mittwoch 10. April 2002, 15:39
-
- Interessierter
- Beiträge: 66
- Registriert: Montag 2. Januar 2006, 11:42
Fehlt da nicht das Verzeichnis, das er als root auf der 192.168.40.12 mounten sollte bei rootpath? Ist lange her, dass ich das gemacht habe, aber ich kann mich noch gut daran erinnern, dass ich auch immer Probleme mit dem rootpath hatte. Ich glaube, bei mir ging's nur, wenn er "/dbox2" war, und das war evtl. sogar unabhängig von irgendwelchen rootpath angaben...???bootserver=192.168.40.12, rootserver=192.168.40.12, rootpath=
@Dietmar
Dann frage ich mich woher er das nimmt:
Ich wüsste nicht wo ich das so verdreht eingestellt haben soll???

@mhier
Vermute ja auch sowas, aber wo soll ich das denn einstellen?
Dann frage ich mich woher er das nimmt:
Code: Alles auswählen
Root-NFS: Server returned error -13 while mounting u-boot-yadd/cdkroot/


@mhier
Vermute ja auch sowas, aber wo soll ich das denn einstellen?
-
- Interessierter
- Beiträge: 66
- Registriert: Montag 2. Januar 2006, 11:42
Also in der /etc/exports steht alles so wie oben, nur auf meine Umgebung angepasst:
Mir ist da allerdings aufgefallen, dass in der u-boot.yadd.dbox2.h ein verdächtiger Eintrag zu finden ist. Demnach könnte es auch am u-boot selbst liegen. Müsste man das nicht ändern, wenn ja wie?
Code: Alles auswählen
/home/dixidix/dbox2 dbox(rw,no_root_squash,sync)
/home/dixidix/dbox2/cdk dbox(rw,no_root_squash,sync)
/home/dixidix/dbox2/cdkflash dbox(rw,no_root_squash,sync)
/home/dixidix/dbox2/cdkroot dbox(rw,no_root_squash,sync)
/home/dixidix/dbox2/tftpboot dbox(rw,no_root_squash,sync)
Code: Alles auswählen
#define CONFIG_BOOTCOMMAND \
"setenv bootargs console=$(console) root=/dev/nfs rw " \
"nfsroot=$(serverip):$(rootpath)/cdkroot/ " \
"ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname)::off; " \
"tftp \"kernel-yadd\"; protect off 10020000 107fffff; bootm"
-
- Interessierter
- Beiträge: 66
- Registriert: Montag 2. Januar 2006, 11:42
Genau das ging bei mir nicht. Ich musste dafür sorgen (z.B. durch symlink), dass auf meinem Boot-Server alles unter /dbox2 hing, ich glaube, der cdkroot muss da hin. Versuche also mal, in der exports "/home/dixidix/dbox2/cdkroot" durch "/dbox2" zu ersetzen und vorher einen entsprechenden Symlink zu erstellen. Ich kann mich in den Details irren, aber sehen kann man das aus der /var/log/messages vom Boot-Server. Dort steht, wenn die Dbox versucht, ein nicht-existierendes NFS-Share zu mounten. Poste bitte auch mal ein tail /var/log/messages unmittelbar nach einem Boot-Versuch der DBox.
Danke für den Hinweis. Hier ganz frisch die messages
Ist es das was Du meinst?
Code: Alles auswählen
Feb 7 03:22:22 linux dhcpd: BOOTREQUEST from 00:50:9c:40:05:86 via eth0
Feb 7 03:22:22 linux dhcpd: BOOTREPLY for 192.168.40.22 to dbox (00:50:9c:40:05:86) via eth0
Feb 7 03:22:24 linux dhcpd: BOOTREQUEST from 00:50:9c:40:05:86 via eth0
Feb 7 03:22:24 linux dhcpd: BOOTREPLY for 192.168.40.22 to dbox (00:50:9c:40:05:86) via eth0
Feb 7 03:22:25 linux dhcpd: BOOTREQUEST from 00:50:9c:40:05:86 via eth0
Feb 7 03:22:25 linux dhcpd: BOOTREPLY for 192.168.40.22 to dbox (00:50:9c:40:05:86) via eth0
Feb 7 03:22:41 linux rpc.mountd: bad path in mount request from 192.168.40.22: "u-boot-yadd/ cdkroot/"
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
hiess doch ein klein wenig anders

Code: Alles auswählen
/etc/dhcp3/dhcpd.conf
Ich glaube Du gehst von Debian aus. Ich benutze Suse. Von dhcp3.conf ist hier nichts zu finden. Nur /etc/dhcp.conf und die sieht so aus:
Code: Alles auswählen
option routers 192.168.40.21;
ddns-update-style none;
default-lease-time 14400;
subnet 192.168.40.0 netmask 255.255.255.0 {
range 192.168.40.1 192.168.40.255;
default-lease-time 14400;
max-lease-time 172800;
}
host dbox {
option root-path "/home/dixidix/dbox2/cdkroot";
next-server 192.168.40.12;
hardware ethernet 00:50:9C:40:05:86;
allow bootp;
fixed-address 192.168.40.22;
if exists vendor-class-identifier {
filename "kernel-yadd";
}
else {
filename "u-boot-yadd";
}
}
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
mach mal so (Pfade anpassen):
Code: Alles auswählen
...
if exists vendor-class-identifier {
filename "/home/harald/yadd/tftpboot/kernel-cdk";
option root-path "/home/harald/yadd/cdkroot";
} else {
filename "/home/harald/yadd/tftpboot/u-boot";
}
Jetzt tut sich was, aber mir scheint die Box bootet nicht von yadd sondern vom flash
Irgendwo ist da noch der Wurm drin... 
Code: Alles auswählen
udebug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: unknown demodulatordebug: BMon V1.0 mID 01
debug: feID 00 gtxID 0b
debug: fpID 5a dsID ####################
debug: HWrev X5 SWrev 0.81
debug: B/Ex/Fl(MB) 32/00/08
WATCHDOG reset enabled
dbox2:root> debug:
BOOTP/TFTP bootstrap loader (v0.3)
debug:
debug: Transmitting BOOTP request via broadcast
debug: Unknown RFC1048-tag debug: 3 debug: 4 debug: c0 debug: a8 debug: 28 debug
: 15 debug:
debug: Unknown RFC1048-tag debug: 11 debug: 17 debug: 2f debug: 68 debug: 6f deb
ug: 6d debug: 65 debug: 2f debug: 64 debug: 62 debug: 74 debug: 2f debug: 64 deb
ug: 62 debug: 6f debug: 78 debug: 32 debug: 2f debug: 63 debug: 64 debug: 6b deb
ug: 72 debug: 6f debug: 6f debug: 74 debug:
debug: Got BOOTP reply from Server IP 192.168.40.12, My IP 192.168.40.22
debug: Sending TFTP-request for file /home/dixidix/dbox2/tftpboot/u-boot-yadd
debug: TFTP error 0x1 (File not found)
debug:
TFTP failed, giving up...
boot net failed
Flash-FS bootstrap loader (v1.5)
Found Flash-FS superblock version 3.1
Found file /root/platform/nokia-dbox2/kernel/os in Flash-FS
debug: Got Block #0032
will verify ELF image, start= 0x800000, size= 158020
verify sig: 262
Branching to 0x40000
U-Boot 1.1.4 (Tuxbox) (Jan 26 2007 - 08:41:19)
CPU: PPC823ZTnnA at 67.200 MHz: 2 kB I-Cache 1 kB D-Cache
*** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: DBOX2, Nokia, BMon V1.0
Watchdog enabled
I2C: ready
DRAM: 32 MB
FLASH: 8 MB
Scanning JFFS2 FS: . done.
FB: ready
LCD: ready
In: serial
Out: serial
Err: serial
Net: SCC ETHERNET
Options:
1: Console on null
2: Console on ttyS0
3: Console on framebuffer
Select option (1-3), other keys to stop autoboot: 0
### FS (squashfs) loading 'vmlinuz' to 0x100000
### FS load complete: 669598 bytes loaded to 0x100000
...............................................................
Un-Protected 63 sectors
## Booting image at 00100000 ...
Image Name: dbox2
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 669534 Bytes = 653.8 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Linux version 2.4.34-dbox2 (dixidix@linux) (gcc version 3.4.4) #14 Fr Jan 26 08:42:3
8 CET 2007
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0 root=/dev/mtdblock2 rootfstype=squashfs
Decrementer Frequency = 252000000/60
m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1)
m8xx_wdt: keep-alive trigger installed (PITC: 0x1000)
Console: colour dummy device 80x25
Calibrating delay loop... 66.96 BogoMIPS
Memory: 30828k available (1144k kernel code, 336k data, 60k init, 0k highmem)
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.
squashfs: version 3.0 (2006/03/15) Phillip Lougher
i2c-core.o: i2c core module version 2.6.1 (20010830)
i2c-dev.o: i2c /dev entries driver module version 2.6.1 (20010830)
CPM UART driver version 0.04
ttyS0 at 0x0280 is on SMC1 using BRGttyS1 at 0x0380 is on SMC2 using BRG2
pty: 256 Unix98 ptys configured
eth0: CPM ENET Version 0.2.dbox2 on SCC2, 00:50:9c:40:05:86
loop: loaded (max 8 devices)
D-Box 2 flash driver (size->0x800000 mem->0x10000000)
D-Box 2 flash memory: Found 2 x16 devices at 0x0 in 32-bit bank
Intel/Sharp Extended Query Table at 0x0035
cfi_cmdset_0001: Erase suspend on write enabled
Creating 6 MTD partitions on "D-Box 2 flash memory":
0x00000000-0x00020000 : "BR bootloader"
0x00020000-0x00040000 : "FLFS (U-Boot)"
0x00040000-0x006c0000 : "root (squashfs)"
0x006c0000-0x00800000 : "var (jffs2)"
0x00020000-0x00800000 : "Flash without bootloader"
0x00000000-0x00800000 : "Complete Flash"
Linux video capture interface: v1.00
mice: PS/2 mouse device common for all mice
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
....

-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
wo liegt denn dein u-boot-yadd?Sending TFTP-request for file /home/dixidix/dbox2/tftpboot/u-boot-yadd
weiss das dein tftpserver?
hier mal meine zeile aus der inetd.conf
Code: Alles auswählen
tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd /home/harald/yadd/tftpboot
-
- Interessierter
- Beiträge: 66
- Registriert: Montag 2. Januar 2006, 11:42
Öhm, also die bootfiles (die per tftp geladen werden) müssen relativ zum Pfad in der inetd.conf angegeben werden (im Beispiel von Houdini: /home/harald/yadd/tftpboot), nicht absolut. So wie ich das gesehen habe, hat er die bootfiles auch laden können, das Problem lag erst danach beim Mounten des nfs-root. Die letzte von houdini vorgeschlagene Änderung würd ich also wieder rückgängig machen (oder den tftp-pfad in der inetd.conf auf / setzen, aber das ist eignentlich ein Sicherheitsproblem).
Dü müsstest mit dem root-path rumspielen. Dieser Zeile:
kann man entnehmen, dass die Dbox versucht, als root zu mounten. Sind die Leerzeichen da wirklich drin? Da liegt irgendwas im argen...
Dü müsstest mit dem root-path rumspielen. Dieser Zeile:
Code: Alles auswählen
Feb 7 03:22:41 linux rpc.mountd: bad path in mount request from 192.168.40.22: "u-boot-yadd/ cdkroot/"
Code: Alles auswählen
"u-boot-yadd/ cdkroot/"