Rockyboard und Diskonchip - Fragen

08/04/2011 - 12:21 von manuel | Report spam
Hallo Gemeinde
am 31. Màrz habe ich in diesem Forum gefragt ob jemand Erfahrung
mit einem Rockyboard und Diskonchip hat.

Rockyboards sehen aus wie ISA Karten, sind aber komplette MiniRechner
die ihren Strom über den IDE Stromstecker eines normalen PC Netzteils
ziehen. 64MB Arbeitsspeicher und der DiskOnChip fasst 32MB. Darauf ist
ein mir unbekanntes System.
Das Rockyboard hat einen IDE und FDD Stecker.

GRML Small war die einzige Distribution die ich booten konnte. GRML hat
interne Tools mit dem man die LiveCDs remastern kann. Die habe ich dann
mit den mtd-utils bestückt und habe jetzt eine LiveCD mit Netzwerk :-)

Meine Aufgabe ist es mehrere Rockyboards, die verschiedene
Softwareversionen auf dem Diskonchip haben, auf den neusten Stand zu
bringen. Das heisst ein Image des neusten ziehen und auf die anderen
draufkopieren.

Die Fragen kommen am Schluss es Postings, zuerst schreibe ich mal was
ich gemacht habe:

LiveCD mit folgenden Modulen gestartet
-> diskonchip
-> nftl
-> jffs2

Wenn ich einen
# cat /proc/mtd mache kommt folgendes:
dev: size erasesize name
mtd0: 02000000 00004000 "DiskOnChip 2000 (NFTL Model)"
mtd1: 01fec000 00004000 " DiskOnChip BDTL partition"

# ls -la /dev/mtd* /dev/nftl*
crw- 1 root root 90, 0 Apr 7 22:32 /dev/mtd0
crw- 1 root root 90, 1 Apr 7 22:32 /dev/mtd0ro
crw- 1 root root 90, 2 Apr 7 22:32 /dev/mtd1
crw- 1 root root 90, 3 Apr 7 22:32 /dev/mtd1ro
brw- 1 root root 93, 0 Apr 8 17:54 /dev/nftla

Irgendwie stehe ich auf dem schlauch. Ich habe überhaupt keinen Schimmer
ob auf dem DOC ein MS-Dos oder sonstwas installiert ist.

Ich ging mal davon aus das es einen BlockDevice gibt den ich mounten
kann ..

Ich kann den Chip mit DD auslesen und ein Image erzeugen
# dd if=/dev/mtd0 | ssh benutzer@server dd of=/tmp/doctest.img
65536+0 records in
65536+0 records out
33554432 bytes (34 MB) copied, 125.378 s, 268 kB/s
65536+0 Datensàtze ein
65536+0 Datensàtze aus
33554432 Bytes (34 MB) kopiert, 111,689 s, 300 kB/s

Ich kann den Device /dev/nftla bzw das Image weder mit jffs
oder vfat mounten.

Ich habe mal einiges aus den mtd-utils ausprobiert

# ftl_check /dev/mtd0
Memory region info:
Region size = 32 mb Erase block size = 16 kb
No valid erase unit headers!
# ftl_check /dev/mtd1
Memory region info:
Region size = 32688 kb Erase block size = 16 kb
No valid erase unit headers!

flash_info /dev/mtd0
Device /dev/mtd0 has 0 erase regions
# flash_info /dev/mtd1
Device /dev/mtd1 has 0 erase regions

# docfdisk /dev/mtd1
Device size is 33472512 bytes. Erasesize is 16384 bytes.
Unable to find INFTL Media Header
# docfdisk /dev/nftla
ioctl(MEMGETINFO): Inappropriate ioctl for device

Was mich stutzig macht ist das fdisk folgendes ausgibt:
fdisk -l /dev/nftla
Disk /dev/nftla: 32 MB, 32800768 bytes
16 heads, 4 sectors/track, 1001 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/nftla doesn't contain a valid partition table

+-+
| Fragen |
+-+

Ich möchte jetzt den Inhalt von Rockyboard1 mit der neusten Version
auf das Rockyboard2 mit einer alten Version kopieren.

Reicht ein DD von und auf mtd0?

Sekundàr würde mich interessieren wie ich den DOC mounten kann um zu
schauen was da überhaupt drauf ist. Kann da mir jemand einen Tip geben?

Ja ich habe das Prinzip scheinbar noch nicht ganz verstanden und stehe
auf dem Schlauch :-/

Hat jemand noch die DOS Utilities von M-Sys die ich mir von irgendwoher
runterladen kann?

mit den besten Grüssen
Manuel
 

Lesen sie die antworten

#1 Sieghard Schicktanz
09/04/2011 - 01:51 | Warnen spam
Hallo manuel,

Du schriebst am Fri, 08 Apr 2011 12:21:57 +0200:

Rockyboards sehen aus wie ISA Karten, sind aber komplette MiniRechner
die ihren Strom über den IDE Stromstecker eines normalen PC Netzteils
ziehen. 64MB Arbeitsspeicher und der DiskOnChip fasst 32MB. Darauf ist



Scheinen schon recht historisch zu sein - IDE gibt's schon lange nicht
mehr, und ein "IDE[-]Stromstecker" ist an einem _normalen_ PC-Netzteil (man
beachte die Bindestriche im Deutschen!) auch schon lange nicht mehr zu
finden. Sind wohl irgendwelche taiwanesische/koreanische o.à. "Industrie"-
(Billig-) Boards?

Meine Aufgabe ist es mehrere Rockyboards, die verschiedene
Softwareversionen auf dem Diskonchip haben, auf den neusten Stand zu
bringen. Das heisst ein Image des neusten ziehen und auf die anderen
draufkopieren.



Also sozusagen "cp -a /dev/D-O-C Systemimage" auf Datentràger, Datentràger
umsetzen, "cp -a Systemimage /dev/D-O-C" auf anderes Board. Oder mit "dd"
statt "cp". Oder noch anders.

# cat /proc/mtd mache kommt folgendes:
dev: size erasesize name
mtd0: 02000000 00004000 "DiskOnChip 2000 (NFTL Model)"
mtd1: 01fec000 00004000 " DiskOnChip BDTL partition"



D.h. da ist eine Angabe zur Partitionierung zu finden, das Ding enthàlt
einen Bereich, der sich "BDTL" nennt, wohl ein Boot-Block, und einen
weiteren Bereich, der als/per "NFTL" (siehe Kernel-Quellen
Documentation/devices.txt, "93 block") ansprechbar ist.

crw- 1 root root 90, 0 Apr 7 22:32 /dev/mtd0
crw- 1 root root 90, 1 Apr 7 22:32 /dev/mtd0ro
crw- 1 root root 90, 2 Apr 7 22:32 /dev/mtd1
crw- 1 root root 90, 3 Apr 7 22:32 /dev/mtd1ro



Das sind dann die beiden Partitionen, die könntest Du direkt kopieren. Daß
die als "Character Devices" laufen, sollte dabei nicht stören. Sie sind so
aber wohl nicht mountbar.

brw- 1 root root 93, 0 Apr 8 17:54 /dev/nftla



Das ist das Block-Device für den mountbaren Teil mit einem Umfang von
2000000(Hex) Bytes entspr. 32MB. Interessanterweise ist der "BDTL"-Teil
fast genauso groß (1fec000(Hex) entspr. 32MB - 80KB) - ist wohl eher ein
64MB-Chip oder gleich _2_ 32MB-Chips, einmal System und einmal Daten.
Die könntest Du evtl. auch gleich "auf einen Rutsch" kopieren, wenn Du die
Kopiererei gleich auf das /dev/mtd loslàßt.

Irgendwie stehe ich auf dem schlauch. Ich habe überhaupt keinen Schimmer
ob auf dem DOC ein MS-Dos oder sonstwas installiert ist.



Was meinen denn die üblichen Utilities?

Ich ging mal davon aus das es einen BlockDevice gibt den ich mounten
kann ..



Sicher, steht doch in der Ausgabe: brw ... /dev/nftla
Dabei heißt das "b", es ist ein Block-Device und das "rw", daß es les- und
schreibbar ist (sein sollte, sich meldet).

Ich kann den Chip mit DD auslesen und ein Image erzeugen



Doch wohl eher, "dd", kleingeschrieben?

Ich kann den Device /dev/nftla bzw das Image weder mit jffs


das
oder vfat mounten.



Dann hat das wohl ein anderes Filesystem - evtl. sogar eins, das Linux
garnicht kennt. Oder geht ein "mount" _ohne_ Filesystem-Angabe?
Wenn nicht, gibt evtl. "file" auf /dev/mtd0 oder /dev/nftla angewandt was
Aufschlußreiches?

Ich habe mal einiges aus den mtd-utils ausprobiert

# ftl_check /dev/mtd0
Memory region info:
Region size = 32 mb Erase block size = 16 kb
No valid erase unit headers!
# ftl_check /dev/mtd1
Memory region info:
Region size = 32688 kb Erase block size = 16 kb
No valid erase unit headers!



Das ist die Aufteilung nach der internen Tabelle - da die offensichtlich
dekodierbar ist, scheint das ein MTD-konformes System zu sein, evtl. sogar
ein (uC)Linux.

Was mich stutzig macht ist das fdisk folgendes ausgibt:
fdisk -l /dev/nftla


...
Disk /dev/nftla doesn't contain a valid partition table



Das da? Klar - das _ist_ doch schon eine Partition. Partitionen -
ausgenommen die sog. "erweiterten" - pflegen eigentlich _keine_
Partitionstabelle mehr zu enthalten, sondern ein Dateisystem.
Vielleicht ist das ja eins der für uCLinux beliebten komprimierten
Dateisystem, etwa cramfs oder squashfs oder gar nur ein einfaches romfs.
Jedenfalls offenbar kein jffs(2) und kein vfat.

Ich möchte jetzt den Inhalt von Rockyboard1 mit der neusten Version
auf das Rockyboard2 mit einer alten Version kopieren.

Reicht ein DD von und auf mtd0?



EIn "dd" (klein) jeweils müßte tun. Zumindest, wenn Deine MTD-Utilities
eine Möglichkeit zum Löschen und Beschreiben der Chips beinhalten. Evtl.
müssen die auch vor dem Neubeschreiben explizit und separat gelöscht werden.

Sekundàr würde mich interessieren wie ich den DOC mounten kann um zu
schauen was da überhaupt drauf ist. Kann da mir jemand einen Tip geben?



Stehen oben.

Ja ich habe das Prinzip scheinbar noch nicht ganz verstanden und stehe
auf dem Schlauch :-/



Du bist nur zu sehr auf die bei Desktop-PCs gàngigen Vorgehensweisen fixiert
- das sind "embedded systems", da geht's oft etwas anders, sozusagen
"rustikaler", zu, einfach bedingt durch die wesentlich enger bemessenen
Resourcen.

Hat jemand noch die DOS Utilities von M-Sys die ich mir von irgendwoher
runterladen kann?



Die dürften Dir nix helfen, weil die Dinger offenbar kein Dos-Filesystem
enthalten - sonst hàttest Du das mounten können müssen.

(Weitergabe von Adressdaten, Telefonnummern u.à. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder àhnlichem)
Mit freundlichen Grüßen, S. Schicktanz

Ähnliche fragen