[PATCH v3 3/5] doc: document read/write commands
Rasmus Villemoes
rasmus.villemoes at prevas.dk
Thu Mar 2 09:12:23 CET 2023
The read and write commands are, deliberately, implemented in the same
file, so that they stay feature-compatible (e.g. if someone implements
support for "read the full partition, however large that is", that
same syntax should also work for write). In order to ensure the
documentation for both are similarly kept in sync, and to avoid
duplication, document them both in read.rst, and add a stub write.rst
referring to read.rst.
Signed-off-by: Rasmus Villemoes <rasmus.villemoes at prevas.dk>
---
doc/usage/cmd/read.rst | 44 +++++++++++++++++++++++++++++++++++++++++
doc/usage/cmd/write.rst | 6 ++++++
doc/usage/index.rst | 2 ++
3 files changed, 52 insertions(+)
create mode 100644 doc/usage/cmd/read.rst
create mode 100644 doc/usage/cmd/write.rst
diff --git a/doc/usage/cmd/read.rst b/doc/usage/cmd/read.rst
new file mode 100644
index 0000000000..840846728f
--- /dev/null
+++ b/doc/usage/cmd/read.rst
@@ -0,0 +1,44 @@
+.. SPDX-License-Identifier: GPL-2.0-or-later:
+
+read and write commands
+=======================
+
+Synopsis
+--------
+
+::
+
+ read <interface> <dev[:part|#partname]> <addr> <blk#> <cnt>
+ write <interface> <dev[:part|#partname]> <addr> <blk#> <cnt>
+
+The read and write commands can be used for raw access to data in
+block devices (or partitions therein), i.e. without going through a
+file system.
+
+read
+----
+
+The block device is specified using the <interface> (e.g. "mmc") and
+<dev> parameters. If the block device has a partition table, one can
+optionally specify a partition number (using the :part syntax) or
+partition name (using the #partname syntax). The command then reads
+the <cnt> blocks of data starting at block number <blk#> of the given
+device/partition to the memory address <addr>.
+
+write
+-----
+
+The write command is completely equivalent to the read command, except
+of course that the transfer direction is reversed.
+
+Examples
+--------
+
+ # Read 2 MiB from partition 3 of mmc device 2 to $loadaddr
+ read mmc 2.3 $loadaddr 0 0x1000
+
+ # Read 16 MiB from the partition named 'kernel' of mmc device 1 to $loadaddr
+ read mmc 1#kernel $loadaddr 0 0x8000
+
+ # Write to the third sector of the partition named 'bootdata' of mmc device 0
+ write mmc 0#bootdata $loadaddr 2 1
diff --git a/doc/usage/cmd/write.rst b/doc/usage/cmd/write.rst
new file mode 100644
index 0000000000..06ad77e359
--- /dev/null
+++ b/doc/usage/cmd/write.rst
@@ -0,0 +1,6 @@
+.. SPDX-License-Identifier: GPL-2.0-or-later:
+
+write command
+=============
+
+See :doc:`cmd/read`.
diff --git a/doc/usage/index.rst b/doc/usage/index.rst
index 840c20c934..7d55beace4 100644
--- a/doc/usage/index.rst
+++ b/doc/usage/index.rst
@@ -71,6 +71,7 @@ Shell commands
cmd/printenv
cmd/pstore
cmd/qfw
+ cmd/read
cmd/reset
cmd/rng
cmd/sbi
@@ -91,6 +92,7 @@ Shell commands
cmd/ut
cmd/wdt
cmd/wget
+ cmd/write
cmd/xxd
Booting OS
--
2.37.2
More information about the U-Boot
mailing list