JFFS2-Only Make-Script

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
ALexH
Image-Team
Beiträge: 146
Registriert: Dienstag 10. September 2002, 20:25

JFFS2-Only Make-Script

Beitrag von ALexH »

Für alle, die den Flash-Images-Teil nicht regelmäßig lesen: Von mir gibts ab sofort JFFS2-Only-Images und auch das zugehörige Make-Skript auf http://dboxjffs2.berlios.de zum herunterladen.

Da Make-Skript und Image eigentlich zwei unterschiedliche Dinge sind und hier auch in zwei unterschiedliche Forumsteile gehören, bitte Bemerkungen und Fehler des Make-Skriptes in diesen Thread schreiben. Bemerkungen und Fehler zum Image gehören weiterhin hier hinein.
stream2003
Interessierter
Interessierter
Beiträge: 51
Registriert: Dienstag 9. September 2003, 21:55

Beitrag von stream2003 »

hy,

@alexH, hab dein skript gerade mal laufen lassen. Das erstellte Image geflasht und so wie scheint, kommt die kiste nicht mal mehr bis zum loading kernel... . Hab hier mal die Logdatei:


-debug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: BMon V1.0 mID 01
debug: feID dd gtxID 0b
debug: fpID 5a dsID 01-99.92.25.07.00.00-a5
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: 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 #0032

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


U-Boot 0.4.0 (TuxBox) (Dec 7 2003 - 15:43:48)

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.
find_inode failed for name=var
load: Failed to find inode
FB: ready
LCD: ready
In: serial
Out: serial
Err: serial
Net: SCC ETHERNET
Scanning JFFS2 FS: done.
find_inode failed for name=boot
load: Failed to find inode
ready - can't find logo in flash - try network
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5

Retry count exceeded; starting again
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5


das wars dann.

mfg
torres
Einsteiger
Einsteiger
Beiträge: 159
Registriert: Freitag 12. September 2003, 11:53

Beitrag von torres »

stream2003 hat geschrieben: debug: Transmitting BOOTP request via broadcast
debug: Given up BOOTP/TFTP boot
boot net failed
http://www.dietmar-h.net/flashprob.html#boot_net_failed
trans
Interessierter
Interessierter
Beiträge: 64
Registriert: Montag 21. Januar 2002, 16:52

Beitrag von trans »

@stream2003

Ich denke mal das die Logos nicht in "" $DB/cdkflash/root/var/tuxbox/boot "" sind.

Mach mal 2 mal "STRG + C" an der console, dann sollte es weiterbooten.

mfg trans
ALexH
Image-Team
Beiträge: 146
Registriert: Dienstag 10. September 2002, 20:25

Beitrag von ALexH »

@stream2003:
So wie es aussieht, wurde die die u-boot im cvs nicht mit der geänderten u-boot überschrieben, d.h. die Box will übers Netz starten.

Gibt es denn bei Dir das Verzeichnis $DB/n_h_changed? Dort liegen nämlich die geänderten Dateien (u.a. die Datei dbox2.h.2x). Wenn es die Datei nicht gibt, dann ist irgend etwas falsch gelaufen.
stream2003
Interessierter
Interessierter
Beiträge: 51
Registriert: Dienstag 9. September 2003, 21:55

Beitrag von stream2003 »

hallo,

so hab jetzt STRG-C gedrueckt und dann kommt dies:

BOOTP broadcast 1

Abort
*** ERROR: `serverip' not set
can't find logo

Options:
1: console on ttyS0
2: console on fb0
3: console on null
Select option (1-3), other keys to stop autoboot: 0
..............................................................
Un-Protected 62 sectors
### FS (jffs2) loading 'vmlinuz' to 0x100000
Scanning JFFS2 FS: done.
find_inode failed for name=vmlinuz
load: Failed to find inode
### FS LOAD ERROR<0> for vmlinuz!
## Booting image at 00100000 ...
Bad Magic Number
=>

aber moment mal, ich habe an meiner Linuxkiste absolut nichts geändert! Vorgestern lief das Skript soweit, das die Box beim Loading kernel... hing, jetzt kommt sie da gar nicht erst hin.

Aber mal anders gefragt: Funktioniert das Skrip denn bei irgendjemand?? Bis zum lauffähigen IMAGE?
Und @alexH, dein aktuelles 2I Image funktioniert ja auch bei mir, wie hast du denn das erstellt? Genau so wie im Skript?

mfg
ALexH
Image-Team
Beiträge: 146
Registriert: Dienstag 10. September 2002, 20:25

Beitrag von ALexH »

@stream2003:
Hast Du Dir auch das neueste Skript heruntergeladen?
Ich erstelle selber das Image mit diesem Skript. Ich habe extra auf meinem Notebook Linux komplett neu installiert, das neueste Skript heruntergeladen und ein Image erzeugt. Das Ergebnis werde ich nacher noch testen und hochladen.

Mir fällt gerade nochwas ein: Welche mkfs.jffs2-Version verwendest denn Du? Ich hatte nämlich ähnliche Probleme, als ich eine falsch Version verwendete.

Edit:
Das auf dem Notebook erstellte Image ist jetzt online. Bei mir funktioniert auch dieses prima.
stream2003
Interessierter
Interessierter
Beiträge: 51
Registriert: Dienstag 9. September 2003, 21:55

Beitrag von stream2003 »

hy,

@alexH, ok hab gerade das mkfs.jffs2 updatet auf den aktuellsten Stand, und siehe da, das skript erstellt mir ein sauberes Image!

Danke an allen fuer die Tips und Hinweise! Einen schoenen 2 Advent Abend wuenscht stream2003

mfg
meduseld
Interessierter
Interessierter
Beiträge: 37
Registriert: Sonntag 13. Oktober 2002, 18:27

Beitrag von meduseld »

@AlexH:
In der aktuellen Fassung des Skripts steht Dein fest verdrahtetes
> cd /home/alex/... drin
Bitte ersetzt das gegen
> cd $DB/cdkflash/root/sbin/


Im Skript wird das DBOX-Verzeichnis ($DB) jedesmal gelöscht. Eigentlich nicht notwendig. Bis ich wieder eins hab, dauert's bei mir immer so 2 Stunden ;-)

P.S.: Das mit dem dreifachen busybox (telnetd/inetd) ist echt überflüssig. Ich hab keine Probleme, wenn ich die lösche...
ALexH
Image-Team
Beiträge: 146
Registriert: Dienstag 10. September 2002, 20:25

Beitrag von ALexH »

meduseld hat geschrieben: In der aktuellen Fassung des Skripts steht Dein fest verdrahtetes
> cd /home/alex/... drin
Bitte ersetzt das gegen
> cd $DB/cdkflash/root/sbin/
Ok, ist ersetzt, danke für den Hinweis.
meduseld hat geschrieben:Im Skript wird das DBOX-Verzeichnis ($DB) jedesmal gelöscht. Eigentlich nicht notwendig. Bis ich wieder eins hab, dauert's bei mir immer so 2 Stunden
Ich habe es halt so gelöst, weil ich so sicher gehen wollte, daß alles auf den aktuellen Stand ist. Wenn Du noch einen anderen Weg weißt, dann her damit.
meduseld hat geschrieben:P.S.: Das mit dem dreifachen busybox (telnetd/inetd) ist echt überflüssig. Ich hab keine Probleme, wenn ich die lösche...
Dafür brauchst Du ja nur vor dem Ausführen des Skriptes in zwei Zeilen den Kommentar löschen, damit das ausgeführt wird. Ich werde das demnächst auch nochmal testen.
stream2003 hat geschrieben:@alexH, ok hab gerade das mkfs.jffs2 updatet auf den aktuellsten Stand, und siehe da, das skript erstellt mir ein sauberes Image!

Danke an allen fuer die Tips und Hinweise! Einen schoenen 2 Advent Abend wuenscht stream2003
Freut mich, daß das jetzt endlich funktioniert. Ebenfalls an alle einen schönen zweiten Advent.
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

Hi..

Es wäre sauberer die Änderungen an den Dateien über "diffs" mit "patch file < file.diff" zu machen
statt die Dateien komplett zu tauschen..

Ansonsten habe ich mir für mein eigenes Script mal den Teil mit dem flfs entliehen.. ;)
Da habe ich bisher nur fertige benutzt.


Ach ja, ein Script in der Art für ein mixed Image hat nicht zufällig jemand?
Irgendwie scheitere ich immer an den Rechten für irgendwelche Dateien bzw. Sockets..


Gruß
DW
ALexH
Image-Team
Beiträge: 146
Registriert: Dienstag 10. September 2002, 20:25

Beitrag von ALexH »

Es wäre sauberer die Änderungen an den Dateien über "diffs" mit "patch file < file.diff" zu machen
statt die Dateien komplett zu tauschen..
Naja, ich weiß nicht, ich finde die bisherige Methode schon sauberer, denn wenn man das mit den diffs machen würde und im cvs eine Datei geändert wurde, dann kann es sein, daß das diff nicht richtig tut und sich jeder wundert, warum kein Image am Ende mehr rauskommt.
Ansonsten habe ich mir für mein eigenes Script mal den Teil mit dem flfs entliehen..
Da habe ich bisher nur fertige benutzt.
Freut mich, mein Script ist ja auch dafür gedacht, Änderungen fürs eigene zu entleihen oder auch eigene Änderungen dort hinein zu schreiben.
hrvill
Einsteiger
Einsteiger
Beiträge: 103
Registriert: Freitag 27. Juni 2003, 23:14

Beitrag von hrvill »

nur so als Anregung
Ich benutze in meinem script - bis auf lcdd weder diff noch Tausch der Dateien. Ich persönlich arbeite in scripten lieber mit sed bzw. ed.
Hat denke ich den Vorteil, daß wesentlich mehr im cvs geändert werden kann bis die scripte nicht mehr laufen.

Herbert
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

@dietmarw (und andere)

wie du mixed, sowie jffs2only, images mit configure + make erzeugst erfährst du hier.

Ohne jemand auf die Füße zu treten, oder jemandens Arbeit geringzuschätzen, finde ich es wäre besser den build-prozess so zu verbessern dass configure + make + minimale persönliche Anpassungen einen jffssonly/mixed image oder yadd baut. Oben genannte Beitrag ist ein Schritt in die Richtung. (Inzwischen habe ich erfahren dass eine kleine Änderung in dbox2.h in u-boot für 1x-Boxen erforderlich ist.)

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

Beitrag von dietmarw »

@Barf
schon richtig, aber bis solche änderungen evtl. im cvs eingeflossen sind
wäre mir ein script bei dem ich genau sehen kann was passiert lieber
als ein "patch datei austausch" von dem ich nicht genau weiß was er macht..

@hrvill
patch (diff) ist SEEEHR tolerant gegenüber änderungen im cvs
nur der auszutauschende code und die davor und dahinter liegenden zeilen müssen existieren
ähnlich wie sed, da muß der suchbegriff auch vorhanden sein ;)

@AlexH
ob patch (diff) fehlerfrei gearbeitet hat kann man sehr gut in der shell abfragen!
und wenn bei deiner methode im cvs etwas geändert wird und du es
nicht umgehend in deine gepatchten dateien übernimmst geht auch nix..
RiverSource
Neugieriger
Neugieriger
Beiträge: 3
Registriert: Mittwoch 10. Dezember 2003, 09:42

mkfs.jffs2 für cygwin?

Beitrag von RiverSource »

Hallo,

erst mal: gute Arbeit! Das Script läuft bei mir unter Linux wirklich gut und erzeugt auch ein hervorragendes Image (kein 16:9 flackern, wenig Probleme beim zappen usw.), wenn man mal von den CVS Problemen absieht (z.B. tuxtxt nach 8.12.). Box: Sagem 1xI Kabel Avia600 BMon 1.2.

Aber zur Sache: gibt es ein mkfs.jffs2(.exe) für Cygwin, das aktuell genug ist für dieses Script? Ich habe lange suchen müssen, um überhaupt welche zu finden, und das aktuelleste ist vom 26.8.2003. Oder gibt es eine Anleitung (Patch?), wie man die MTD-Tools unter cygwin kompilieren kann? Bei mir gibt es haufenweise Fehler von wegen fehlender includes etc. Da Kernel-includes benötigt werden, stelle ich mir den Portier-Vorgang nicht so ganz einfach vor.

mfg

RiverSource
Ryker
Image-Team
Beiträge: 554
Registriert: Montag 2. Juni 2003, 10:38

Beitrag von Ryker »

@AlexH:
Ich probiere gerade mal mit deinem mkheadall.sh-script ein jffs2-Image zu kompilieren.
Evtl sollte man auch noch auf http://dboxjffs2.berlios.de erwähnen, daß man den Python-Interpreter installiert haben muß. Und wer SuSE verwendet kann das fakeroot als rpm von
http://packman.links2linux.de/?action=086 downloaden.


Ryker