mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-13 00:03:26 +09:00
![Simon Glass](/assets/img/avatar_default.png)
Comparing a hex dump on the U-Boot command line with the contents of a file on the host system is fairly easy and convenient to do manually if it is small. But the format used hexdump by default differs from that shown by U-Boot. Add a note about how to make them the same. (For large dumps, writing the data to the network with tftpput, or to a USB stick with ext4save is easiest.) Signed-off-by: Simon Glass <sjg@chromium.org>
107 lines
3.8 KiB
ReStructuredText
107 lines
3.8 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+:
|
|
|
|
md command
|
|
==========
|
|
|
|
Synopis
|
|
-------
|
|
|
|
::
|
|
|
|
md <address>[<data_size>] [<length>]
|
|
|
|
Description
|
|
-----------
|
|
|
|
The md command is used to dump the contents of memory. It uses a standard
|
|
format that includes the address, hex data and ASCII display. It supports
|
|
various data sizes and uses the endianness of the target.
|
|
|
|
The specified data_size and length become the defaults for future memory
|
|
commands commands.
|
|
|
|
address
|
|
start address to display
|
|
|
|
data_size
|
|
size of each value to display (defaults to .l):
|
|
|
|
========= ===================
|
|
data_size Output size
|
|
========= ===================
|
|
.b byte
|
|
.w word (16 bits)
|
|
.l long (32 bits)
|
|
.q quadword (64 bits)
|
|
========= ===================
|
|
|
|
length
|
|
number of values to dump. Defaults to 40 (0d64). Note that this is not
|
|
the same as the number of bytes, unless .b is used.
|
|
|
|
Note that the format of 'md.b' can be emulated from linux with::
|
|
|
|
# This works but requires using sed to get the extra spaces
|
|
# <addr> is the address, <f> is the filename
|
|
xxd -o <addr> -g1 <f> |sed 's/ / /' >bad
|
|
|
|
# This uses a single tool but the offset always starts at 0
|
|
# <f> is the filename
|
|
hexdump -v -e '"%08.8_ax: " 16/1 "%02x " " "' -e '16/1 "%_p" "\n" ' <f>
|
|
|
|
|
|
Example
|
|
-------
|
|
|
|
::
|
|
|
|
=> md 10000
|
|
00010000: 00010000 00000000 f0f30f00 00005596 .............U..
|
|
00010010: 10011010 00000000 10011010 00000000 ................
|
|
00010020: 10011050 00000000 b96d4cd8 00007fff P........Lm.....
|
|
00010030: 00000000 00000000 f0f30f18 00005596 .............U..
|
|
00010040: 10011040 00000000 10011040 00000000 @.......@.......
|
|
00010050: b96d4cd8 00007fff 10011020 00000000 .Lm..... .......
|
|
00010060: 00000003 000000c3 00000000 00000000 ................
|
|
00010070: 00000000 00000000 f0e892f3 00005596 .............U..
|
|
00010080: 00000000 000000a1 00000000 00000000 ................
|
|
00010090: 00000000 00000000 f0e38aa6 00005596 .............U..
|
|
000100a0: 00000000 000000a6 00000022 00000000 ........".......
|
|
000100b0: 00000001 00000000 f0e38aa1 00005596 .............U..
|
|
000100c0: 00000000 000000be 00000000 00000000 ................
|
|
000100d0: 00000000 00000000 00000000 00000000 ................
|
|
000100e0: 00000000 00000000 00000000 00000000 ................
|
|
000100f0: 00000000 00000000 00000000 00000000 ................
|
|
=> md.b 10000
|
|
00010000: 00 00 01 00 00 00 00 00 00 0f f3 f0 96 55 00 00 .............U..
|
|
00010010: 10 10 01 10 00 00 00 00 10 10 01 10 00 00 00 00 ................
|
|
00010020: 50 10 01 10 00 00 00 00 d8 4c 6d b9 ff 7f 00 00 P........Lm.....
|
|
00010030: 00 00 00 00 00 00 00 00 18 0f f3 f0 96 55 00 00 .............U..
|
|
=> md.b 10000 10
|
|
00010000: 00 00 01 00 00 00 00 00 00 0f f3 f0 96 55 00 00 .............U..
|
|
=>
|
|
00010010: 10 10 01 10 00 00 00 00 10 10 01 10 00 00 00 00 ................
|
|
=>
|
|
00010020: 50 10 01 10 00 00 00 00 d8 4c 6d b9 ff 7f 00 00 P........Lm.....
|
|
=>
|
|
=> md.q 10000
|
|
00010000: 0000000000010000 00005596f0f30f00 .............U..
|
|
00010010: 0000000010011010 0000000010011010 ................
|
|
00010020: 0000000010011050 00007fffb96d4cd8 P........Lm.....
|
|
00010030: 0000000000000000 00005596f0f30f18 .............U..
|
|
00010040: 0000000010011040 0000000010011040 @.......@.......
|
|
00010050: 00007fffb96d4cd8 0000000010011020 .Lm..... .......
|
|
00010060: 000000c300000003 0000000000000000 ................
|
|
00010070: 0000000000000000 00005596f0e892f3 .............U..
|
|
|
|
The empty commands cause a 'repeat', so that md shows the next available data
|
|
in the same format as before.
|
|
|
|
|
|
Return value
|
|
------------
|
|
|
|
The return value $? is always 0 (true).
|
|
|
|
|