[PATCH v3 2/3] doc: usage: cmd: load: null-block-device
Vincent Jardin
vjardin at free.fr
Mon Jun 1 15:12:03 CEST 2026
Document the dispatch path added by the former commit
fs: dispatch null_dev_desc_ok filesystems before lookup
Add a null-block-device interfaces section that:
* lists the three fstypes that can benefit of it (semihosting, ubifs,
sandbox) and the CONFIG option that builds each
* explains the '-' convention for the unused <dev[:part]> field
Suggested-by: Simon Glass <sjg at chromium.org>
Signed-off-by: Vincent Jardin <vjardin at free.fr>
---
(no changes since v1)
doc/usage/cmd/load.rst | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/doc/usage/cmd/load.rst b/doc/usage/cmd/load.rst
index bfa45c6f36c..5d7abdd30f3 100644
--- a/doc/usage/cmd/load.rst
+++ b/doc/usage/cmd/load.rst
@@ -63,6 +63,43 @@ Example
16 bytes read in 1 ms (15.6 KiB/s)
=>
+Null-block-device interfaces
+----------------------------
+
+A few ``<interface>`` values do not name their block device. Their
+filesystem implementations call directly a back-end (JTAG
+debugger, UBI volume, host running U-Boot under sandbox, ...)
+and ignore the ``<dev[:part]>`` argument. The fstype info table marks
+these with the internal ``null_dev_desc_ok`` flag; the dispatcher in
+``fs_set_blk_dev()`` routes them by name before any block-device
+lookup is attempted, so ``load <iface> - <addr> <filename>`` works.
+
+semihosting
+ Read files from the host filesystem of an attached JTAG debugger
+ via using the ARM semihosting protocol. Useful with OpenOCD.
+ Built when ``CONFIG_SEMIHOSTING=y``.
+
+ubifs
+ Read files from a UBIFS volume that has already been attached
+ and mounted with the ``ubi part`` + ``ubifsmount`` commands.
+ Built when ``CONFIG_CMD_UBIFS=y``.
+
+sandbox
+ Read files from the host filesystem the sandbox binary is
+ running under. Built on a sandbox build (the sandbox fstype
+ is registered with name ``sandbox`` and ``null_dev_desc_ok =
+ true``).
+
+The ``<dev[:part]>`` argument is conventionally written as ``-`` for
+these interfaces, to make it visible at the call site that the field
+is unused. The filesystem layer never looks at it.
+
+Example::
+
+ => load semihosting - ${kernel_addr_r} kernel.itb
+ 9437184 bytes read in 412 ms (21.8 MiB/s)
+ =>
+
Configuration
-------------
--
2.43.0
More information about the U-Boot
mailing list