Flashtargets in Makefile umgeschrieben

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

grob angerissen..

-checkout head
-checkout newmake (solange nicht gemerged)
-autogen
-configure ... ...
-make flash-all-all-all (oder halt nur das was man will)

fertisch..

edit: für die änderungen gibt es scripte (selber definierbar) die, sollten sie existieren, ausgeführt werden.
z.b.
root-local.sh
root-jffs2-local.sh
var-neutrino-local.sh
usw.
JtG-Riker
Image-Team
Beiträge: 1015
Registriert: Freitag 7. Februar 2003, 18:37

Beitrag von JtG-Riker »

Hm barf, schreib doch mal genau wie man das nun auscheckt, wenn ich HEAD auschecke und auf newmake update dann wird der rest vom head weggelöscht, wenn ich newmake woanders hin auschecke und nach head kopiere gehts auch nicht.

Irgendwie ist das falsch eingerichtet, wenn man newmake auscheckt sollte der rest vom HEAD mitkommen, und nur deine geänderten dateien newmake sein.


Gruß Riker
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

So ein Zufall. Das Problem hatte ich vor zwei Stunden. Guckst du hier:

http://forum.tuxbox.org/forum/viewtopic.php?t=40032

Dietmarw war so nett.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Da klappt noch was nicht. Hier die Schritte die ich gemacht habe:

Code: Alles auswählen

export CVS_RSH=ssh
cvs -d anoncvs@82.149.243.100:/cvs/tuxbox -z3 co "$CVSDATE" .

cvs -d anoncvs@82.149.243.100:/cvs/tuxbox -z3 up -r newmake cdk/root/etc/Makefile.am cdk/Makefile.am cdk/configure.ac cdk/acinclude.m4 cdk/doc cdk/Patches/busybox.config.m4 cdk/Patches/dbox2-flash.c.m4 cdk/root/Makefile.am cdk/root/Makefile.inc cdk/root/etc/init.d/Makefile.am cdk/root/etc/init.d/rcS.m4 cdk/root/share/udhcpc/Makefile.am cdk/backwards_compat.mk apps/tuxbox/plugins/configure.ac apps/tuxbox/tools/configure.ac apps/tuxbox/tools/misc/Makefile.am

cd cdk
./autogen.sh
./configure --enable-maintainer-mode --prefix=$HOME/dbox2 --with-cvsdir=$HOME/tuxbox-cvs --enable-flash-rules           
make flash-all-all-all
Das läuft eine ganze Weile, dann das:

Code: Alles auswählen

make[2]: Leaving directory `/home/dbox/tuxbox-cvs/apps/dvb/config'
make[1]: Leaving directory `/home/dbox/tuxbox-cvs/apps/dvb/config'
make -C /home/dbox/tuxbox-cvs/apps/tuxbox/tools/camd install prefix=/home/dbox/dbox2/cdkflash/root
make[1]: Entering directory `/home/dbox/tuxbox-cvs/apps/tuxbox/tools/camd'
make[2]: Entering directory `/home/dbox/tuxbox-cvs/apps/tuxbox/tools/camd'
test -z "/home/dbox/dbox2/cdkflash/root/bin" || mkdir -p -- "/home/dbox/dbox2/cdkflash/root/bin"
  /usr/bin/install -c -p 'camd2' '/home/dbox/dbox2/cdkflash/root/bin/camd2'
make[2]: Für das Ziel »install-data-am« ist nichts zu tun.
make[2]: Leaving directory `/home/dbox/tuxbox-cvs/apps/tuxbox/tools/camd'
make[1]: Leaving directory `/home/dbox/tuxbox-cvs/apps/tuxbox/tools/camd'
[ -x root-local.sh ] && sh root-local.sh /home/dbox/dbox2/cdkflash /home/dbox/tuxbox-cvs/cdk || true
echo "version=0200`date +%Y%m%d%H%M`"   > /home/dbox/dbox2/cdkflash/root/.version
echo "creator=`id -un`"                 >> /home/dbox/dbox2/cdkflash/root/.version
echo "imagename=newmake-image"          >> /home/dbox/dbox2/cdkflash/root/.version
echo "homepage=http://www.tuxbox.org"   >> /home/dbox/dbox2/cdkflash/root/.version
( rm -rf busybox-1.01 || /bin/true ) && bunzip2 -cd Archive/busybox-1.01.tar.bz2 | TAPE=- tar -x && ( cd busybox-1.01; patch -p1 < ../Patches/busybox.diff )
bunzip2: Can't open input file Archive/busybox-1.01.tar.bz2: No such file or directory.
/bin/sh: line 0: cd: busybox-1.01: Datei oder Verzeichnis nicht gefunden
/bin/sh: ../Patches/busybox.diff: Datei oder Verzeichnis nicht gefunden
make: *** [/home/dbox/dbox2/cdkflash/root/bin/busybox] Fehler 1
Busybox wird nicht gebaut. Ist auch tatsächlich nicht vorhanden.
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

hast das file mal händisch geladen und nach archive kopiert? busybox-1.01.tar.bz2

http://dietmarw.trale.de/Archive
evtl. fehlt da noch ne abhängigkeit..


edit: für configure noch "--with-logosdir=/deinedirfürlogos"

und hier "--enable-flash-rules" ist scheinbar auch ein fehler?
"--enable-flashrules"
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

JtG-Riker hat geschrieben:...Irgendwie ist das falsch eingerichtet, wenn man newmake auscheckt sollte der rest vom HEAD mitkommen, und nur deine geänderten dateien newmake sein...
so hätte ich das auch erwartet, wäre schön wenn man das hinbekäme,
aber dafür kenne ich mich zuwenig mit dem cvs aus..
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

hast das file mal händisch geladen und nach archive kopiert? busybox-1.01.tar.bz2
Nein, da ich es auch nicht mehr hatte. Hatte gründlich aufgeräumt. "make all" hat geholfen. Gab aber dann ein weiteres Problem.
und hier "--enable-flash-rules" ist scheinbar auch ein fehler?
"--enable-flashrules"
Verdammt. Danke, hätte ich lange gesucht und es wahrscheinlich übersehen. Vielleicht war es das.

Ich probier es gerade noch einmal. Das Problem, daß benötigte Archive nicht runtergeladen werden, wenn man auf ein jungfräuliches CDK "make flash-all-all-all" losläßt, besteht weiterhin. Das neue Target heißt, wenn ich das richtig gelesen habe, "make everything". Das teste ich gerade und dann seh ich weiter.
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Beitrag von racker »

Irgendwie ist das falsch eingerichtet, wenn man newmake auscheckt sollte der rest vom HEAD mitkommen, und nur deine geänderten dateien newmake sein.
Dafür ist normalerweise der Parameter -f zuständig:
Wenn für den Branch "newmake" kein File gefunden wird, wird die aktuelle Headversion genommen.

Code: Alles auswählen

cvs -d anoncvs@82.149.243.100:/cvs/tuxbox -z3 co -f -r newmake "$CVSDATE" . 
Allerdings werden dann bei mir einige Variablen nicht initialisiert z.B. KERNELVERSION bzw. VERSION_linux24.
Muss man wohl noch rules-make aktualisieren bzw. das tag entfernen.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Also irgendwie läuft das noch nicht rund. Um den Fehler einzukreisen, hab ich nochmal komplett aufgeräumt. Danach nach der alten Methode das CVS komplett neu ausgecheckt und mit "make all" das ganze kompiliert. Das Ergebnis läßt sich über das Netzwerk booten und sieht soweit gut aus. Damit ist mal sichergestellt, daß alles nötige jetzt in meinem CDK vorhanden ist. Wenn ich jetzt die neuen Makerules nutzen will, muß ich vorher "make clean" oder "make clean-generic" oder "make distclean-generic" machen? Andere Targets wären noch z.B. "distclean" oder "distclean-am". Ich will jetzt einfach die gleiche Ausgangsbasis haben, wie alle anderen, die bisher erfolgreicher waren als ich.

Aus meiner leicht ironischen Aufzählung diverser "clean"-Targets kann man ersehen, daß ich sehr dafür bin, daß das Makefile aufgeräumt wird. Wer da zum ersten Mal reinguckt, blickt gar nicht durch.
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

also bei mir läuft es in einem "leeren verzeichnis" durch,
nur die archive werden dazugelinkt..
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

Ooops, Monate lang passiert nix, plötzlich eine Menge Interesse! Ich werde versuchen alle Frage zu beantworten.

Auschecken: Ich habe gerade in Branch newmake eine Datei cdk/newmake.files eingechecked, mit dem z.Z aktuelle Dateinamen in newmake. Dann kann mann also folgendes (vom Würzel des CVS-Baums) machen

Code: Alles auswählen

cvs co -P  .                                                             # Head auschecken
cvs co -r newmake cvs/newmake.files                 # Diese Datei vom newmake auschecken
cvs co -r newmake `cat cvs/newmake.files`        # und den Inhalt der Datei auschecken
zukünftige Updates können als

Code: Alles auswählen

cvs up -dP 
gemacht werden (es sei denn, neue Dateien in newmake zugekommen sind...) Der -f Option (danke racker) klingt auch sehr nützlich. (Verbesserungvorschläge gerne willkommen.)

Dokumentation: Es gibt diese Datei, (was auch nicht besonderes gut ist... )

da es keine rm .deps/blabla nicht mehr gibt, wie mache ich die änderungen wirksam
Grundsätzlich soll

Code: Alles auswählen

rm .deps/blabla; make blabla
mit

Code: Alles auswählen

make blabla
ersetzt werde. Wie ich in einem frühere Beitrag geschriben habe, die .deps-files verstümmelt make.
an welcher stelle des erstellprozesses kann ich meine manuellen änderungen, patches einspielen.
Wie dietmarw andeutete, es gibt ein Mechanismus wo ein Regel mit Target $@ ein Skript namens $@-local.sh mit bestimmte Parameter aufruft. Ich muss noch eine vernünfige Beschreibung dazu schreiben. :oops: (Intressanterweise besteht YADI von Shellskripts die Makefiles aufrufen, bei newmake ist es eine Makefile die Shellskripts aufruft...)

--enable-flashrules (SO wird es geschrieben!) ist default: Mann muss es also nicht explizit angeben, Mann kann also (in unterschied zu HEAD) in einem Rutsch YADD und images bauen.
Irgendwie ist das falsch eingerichtet, wenn man newmake auscheckt sollte der rest vom HEAD mitkommen, und nur deine geänderten dateien newmake sein.
Klingt nachvollziehbar. Es kann so sein dass es mit dem -f-Option geht. Sonst muss mann JEDE von den tausende Dateien zu Branch newmake zufügen (möglichwerweis machbar), und danach, jedesmal eine Änderung stattfinden, diese Änderung einmergen. DAS ist nicht machbar. CVS ist nicht das Gelbe von Ei... :cry:
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

racker hat geschrieben:

Code: Alles auswählen

cvs -d anoncvs@82.149.243.100:/cvs/tuxbox -z3 co -f -r newmake "$CVSDATE" . 
also das produziert bei mir nur "cvs checkout: nothing known about..."
.
.
cvs checkout: nothing known about `hostapps/win32/tuxvision/render/resource.h'
cvs checkout: Updating hostapps/win32/tuxvision/tuxvision
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AUTHORS.TXT'
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AXHelper.lib'
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AX_HELPER.H'
.
.
usw..
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

racker hat geschrieben: Allerdings werden dann bei mir einige Variablen nicht initialisiert z.B. KERNELVERSION bzw. VERSION_linux24.
Das Problem ist grundsätzlich mit "branched Development". Es wird in HEAD weiterarbeitet, und ich muss manuell alle diese Änderungen rein-mergen. Vielleicht bin ich nicht immer up-to-date :oops:

Hinweise über Fehlern und Inkonsistenzen werden gerne entgegengenommen. Es ist ja natürlich auch möglich, dass Leute mit CVS-Zugang solche einfach fixen...

(Die, die so oft das Branching loben, sollen sich darüber vielleicht ein Bisschen nachdenken...)
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

wolgade hat geschrieben:Das neue Target heißt, wenn ich das richtig gelesen habe, "make everything".
Also, "make everything" ist selten wirklich sinnvoll, nur für Developer (des Makefiles!) und. möglicherweiese, für dietmarw. Es macht (fast) alle Targets die das Makefile kennt, inklusive libraries und Programme die normalerweise nicht benötigt wird.

Sinnvolle Target sind, z.B. flash-neutrino-jffs2-2x, flash-enigma-squashfs-1x, yadd-neutrino, yadd-all.

Cleantargets: Das HEAD-Makefile ist hier der blanke Horror: das Einzige was funktioniert ist "make distclean": Löscht absolut alles. Um sicher zu sein, dass alles für ein Image neukompiliert wirt, muss mann also den Kompiler neu bauen! ZZuper!

Das newmake-Makefile ist etwas besser, aber nicht perfekt. Grundsätzlich gibt es weniger bedarf zu "cleanen", weil Targets werden durchgesucht, und mann verlässt sich nicht auf .deps-Files. "make mostlyclean" löscht alles zum YADD und Images, aber nicht due Entwicklungsumgebung. "make flashclean" löscht alles image-relatiertes.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

So, nun bin ich einen Schritt weiter. Mir fehlt mkcramfs. Meiner Suse 9.3 leider auch. Weiß da jemand Rat?
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

mkcramfs scheint es nur noch auf dem Schwarzmarkt zu geben. Nachdem Selberkompilieren des Tarballs von Sourceforge an fehlender zlib.h scheiterte, habe ich jetzt "make flash-neutrino-squashfs-all" gemacht. Nun läuft es durch, aber checkimage bemeckert bad-magics. Mal sehen, was nun wieder ist.
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

habs mal in die Archive kopiert..

http://dietmarw2.trale.de/Archive/
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

habs mal in die Archive kopiert..
... aber erst vor wenigen Minuten. :D

Da hatte ich nämlich gerade geguckt.
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Beitrag von racker »

Barf hat geschrieben:Das Problem ist grundsätzlich mit "branched Development". Es wird in HEAD weiterarbeitet, und ich muss manuell alle diese Änderungen rein-mergen. Vielleicht bin ich nicht immer up-to-date

Hinweise über Fehlern und Inkonsistenzen werden gerne entgegengenommen. Es ist ja natürlich auch möglich, dass Leute mit CVS-Zugang solche einfach fixen...
Das sollte kein Vorwurf sein, ich verstehe die Zeitproblematik nur zu gut :wink:

Die Frage ist ob man die Tags für nicht benötigte Files entfernt.
Z.B gehört nach deiner aktuellen Liste rules-make nicht zu newmake - hat aber einen tag .
Wenn nur die notwendigen Files getaggt sind würde das checkout besser klappen
(s.o. mein Beispiel) und Unstimmigkeiten leichter auffallen.

Ungefragt würde ich in "deinem" branch nicht "rumferkeln" :)
racker
Einsteiger
Einsteiger
Beiträge: 369
Registriert: Samstag 29. Mai 2004, 01:50

Beitrag von racker »

dietmarw hat geschrieben:
racker hat geschrieben:

Code: Alles auswählen

cvs -d anoncvs@82.149.243.100:/cvs/tuxbox -z3 co -f -r newmake "$CVSDATE" . 
also das produziert bei mir nur "cvs checkout: nothing known about..."
.
.
cvs checkout: nothing known about `hostapps/win32/tuxvision/render/resource.h'
cvs checkout: Updating hostapps/win32/tuxvision/tuxvision
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AUTHORS.TXT'
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AXHelper.lib'
cvs checkout: nothing known about `hostapps/win32/tuxvision/tuxvision/AX_HELPER.H'
.
.
usw..
Mit folgendem Befehl hat es bei mir geklappt ohne Fehlermeldungen:

Code: Alles auswählen

cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -f -r newmake -P .
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Nachdem ich nun mkcramfs hatte, hab ich das ganze nochmal gemacht:

make mostlyclean
make flash-neutrino-all-all

Im Ergebnis habe ich jetzt sechs Dateien:

neutrino-cramfs.img1x
neutrino-jffs2.img1x
neutrino-squashfs.img1x_bad
neutrino-cramfs.img2x
neutrino-jffs2.img2x_bad
neutrino-squashfs.img2x_bad

Alle Images erstellt, dreimal "bad magics". Nachdem ich die Boardsuche bemüht habe, weiß ich aber, daß die nichts mit dem Makefile zu tun haben.

Fazit: "newmake" funktioniert. Das Erstellen meines ersten eigenen Images wäre mit der alten Methode sehr viel schmerzhafter gewesen. Fakeroot wird nicht gebraucht.

Vielen Dank an alle, die mir geholfen haben, besonders an Dietmarw und Barf.
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

die jffs2 images mit der bad endung funktionieren trotzdem ;)
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Das jffs2-Image läuft, das cramfs-Image jedoch nicht. Squashfs habe ich wegen der bad magics nicht probiert. Hier mal das Bootlog des cramfs-Images:

Code: Alles auswählen

xdebug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: BMon V1.2  mID 01
debug: feID 7a    gtxID 0b
debug: fpID 5a     dsID 01-4a.3a.81.07.00.00-92
debug: HWrev 09  FPrev 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: Given up BOOTP/TFTP boot
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 #0032debug: Got Block #0004debug: Got Block #0008debug: Got Block #0012debug: Got Block #0016debug: Got Block #0020debug: Got Block #0024debug: Got Block #0028debug: Got Block #0032

will verify ELF image, start= 0x800000, size= 152900
verify sig: 262
Branching to 0x40000


U-Boot 1.1.4 (Tuxbox) (Jan 12 2006 - 23:03:22)

CPU:   PPC823ZTnnB2 at 67.100 MHz: 2 kB I-Cache 1 kB D-Cache
Board: DBOX2, Nokia, BMon V1.2
       Watchdog enabled
I2C:   ready
DRAM:  32 MB
FLASH:  8 MB
Scanning JFFS2 FS:   .  | / - \  done.
find_inode failed for name=boot.conf
load: Failed to find inode
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:  1  0 
### FS (cramfs) loading 'vmlinuz' to 0x100000
### FS load complete: 655165 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:    655101 Bytes = 639.7 kB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
Linux version 2.4.32-dbox2 (dbox@arthur) (gcc version 3.4.4) #4 Do Jan 12 23:05:48 CET 2006
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=cramfs
Decrementer Frequency = 251625000/60
m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1)
m8xx_wdt: keep-alive trigger installed (PITC: 0x2580)
Warning: real time clock seems stuck!
Console: colour dummy device 80x25
Calibrating delay loop... 66.76 BogoMIPS
Memory: 30860k available (1112k 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 2.2-r2 (released 2005/09/08) (C) 2002-2005 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:44:7e:04
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 (cramfs)"
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)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Cannot open root device "mtdblock2" or 1f:02
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 1f:02
 <0>Rebooting in 180 seconds..
Das jffs2-Image läuft wie gesagt, das Bootlog sieht aber trotzdem merkwürdig aus:

Code: Alles auswählen

xdebug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: BMon V1.2  mID 01
debug: feID 7a    gtxID 0b
debug: fpID 5a     dsID 01-4a.3a.81.07.00.00-92
debug: HWrev 09  FPrev 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: Given up BOOTP/TFTP boot
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 #0032debug: Got Block #0004debug: Got Block #0008debug: Got Block #0012debug: Got Block #0016debug: Got Block #0020debug: Got Block #0024debug: Got Block #0028debug: Got Block #0032

will verify ELF image, start= 0x800000, size= 148768
verify sig: 262
Branching to 0x40000


U-Boot 1.1.4 (Tuxbox) (Jan 12 2006 - 23:14:00)

CPU:   PPC823ZTnnB2 at 67.100 MHz: 2 kB I-Cache 1 kB D-Cache
Board: DBOX2, Nokia, BMon V1.2
       Watchdog enabled
I2C:   ready
DRAM:  32 MB
FLASH:  8 MB
*** Warning - bad CRC, using default environment

FB:    ready
LCD:   ready
In:    serial
Out:   serial
Err:   serial
Net:   SCC ETHERNET
Scanning JFFS2 FS:   .  | / - \ | / - .  \ | / - \ | / .  - \ | / .  - \ .  .  | .  / - .  \ | / - \ | /  done.

Options:
  1: Console on null
  2: Console on ttyS0
  3: Console on framebuffer
Select option (1-3), other keys to stop autoboot:  1  0 
...............................................................
Un-Protected 63 sectors
### FS (jffs2) loading 'vmlinuz' to 0x100000
### FS load complete: 655346 bytes loaded to 0x100000
## Booting image at 00100000 ...
   Image Name:   dbox2
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    655282 Bytes = 639.9 kB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
Linux version 2.4.32-dbox2 (dbox@arthur) (gcc version 3.4.4) #6 Do Jan 12 23:14:22 CET 2006
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/mtdblock2 rw console=ttyS0
Decrementer Frequency = 251625000/60
m8xx_wdt: active wdt found (SWTC: 0xFFFF, SWP: 0x1)
m8xx_wdt: keep-alive trigger installed (PITC: 0x2580)
Console: colour dummy device 80x25
Calibrating delay loop... 66.76 BogoMIPS
Memory: 30860k available (1112k 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 2.2-r2 (released 2005/09/08) (C) 2002-2005 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:44:7e:04
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 5 MTD partitions on "D-Box 2 flash memory":
0x00000000-0x00020000 : "BR bootloader"
0x00020000-0x00040000 : "FLFS (U-Boot)"
0x00040000-0x00800000 : "root (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)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (jffs2 filesystem).
Mounted devfs on /dev
Freeing unused kernel memory: 60k init
init started:  BusyBox v1.01 (2006.01.12-22:03+0000) multi-call bStarting pid 11, console /dev/console: '/etc/init.d/rcS'
Using /lib/modules/2.4.32-dbox2/misc/event.o
(ab hier uninteressant)
"*** Warning - bad CRC, using default environment" kannte ich bis jetzt noch nicht.
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

ich habe gerade für ein Paar Stunden das Gleiche entdeckt. Bin dran.