odonovan_dan wrote:
> Hi
>
> Does anyone know where I might find documentation for the various
> ts-utils binaries at
> ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7200-linux/binaries/ts-utils/ ?
I wrote a few of these utilities, so I can tell you how to use the ones
I wrote. I'm not sure if somebody else has written documentation for
them in one of the manuals.
> I'm particularly interested in the mtd* utils, but I haven't a clue
> what exactly they do or how to use them and I'm afraid of the damage I
> could do with those tools if I didn't use them correctly.
'mtdcopy' will copy a file between the local filesystem and an MTD
partition. If you give 3 arguments (source file, partition number, and
block number) it will copy the source file to the partition number
starting at the given block number as offset. (Typically you will give
'0' for block number; I can't remember why the option to specify an
offset was provided.) If you give 4 arguments (partition number, block
number, byte count, and destination file) it will copy the specified
number of bytes of data from the partition number specified, starting at
the block number (again, typically '0').
The mtdcopy utility is mainly intended for copying a kernel or initrd
image from flash (to back it up) or to flash (to overwrite the existing).
'mtderase' takes one argument - the partition number - and will erase
all the blocks on that partition.
'mtdinfo' takes one argument - the name of a file in /dev/mtd
corresponding to the partition you want info about, and it just spits
out all the information about that partition - block (erase) sizes, oob
info, etc.
'mtdoob' takes 3 arguments (partition number, block number, sector) and
dumps the out of band data for those sectors in a format similar to hexdump.
As the names suggest, all the mtd* utilities use the mtd layer of the
kernel (as opposed to bypassing the layer and talking directly to the
flash). One practical implication of this is that if your mtd layer
doesn't permit you to erase bad blocks you won't be able to with these
utilities. (Typically this is the case, as normally you don't want to
try to erase a bad block. However, occasionally a block - or multiple
blocks - will be erroneously marked bad, in which case you will want to
erase them. This requires you to edit the source and compile a special
kernel which allows such erasures.)
> Thanks,
> -Dan
______ Best Regards,
|__ __/ Michael Schmidt
|| Software Engineer
||echnologic Systems (EmbeddedARM.com)
|| (480) 16525 East Laser Drive
|/ 837-5200 Fountain Hills, AZ 85268
http://oz.embeddedarm.com/~michael
------------------------------------
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|