[PATCH] doc: usage: Add File System section and Ext4 documentation

Tony Dinh mibodhi at gmail.com
Fri Sep 12 06:49:25 CEST 2025


Create doc/usage/filesystems/ section.
Convert doc/README.ext4 to rST format and move it to the new section.
Update documentation to add configuration instruction for Ext4 Write
when using large partitions.

Note that this patch depends on this previous patch:
https://patchwork.ozlabs.org/project/uboot/patch/20250910215702.15576-1-mibodhi@gmail.com/

Signed-off-by: Tony Dinh <mibodhi at gmail.com>
---

 .../filesystems/ext4.rst}                     | 55 +++++++++++++++----
 doc/usage/index.rst                           |  8 +++
 2 files changed, 53 insertions(+), 10 deletions(-)
 rename doc/{README.ext4 => usage/filesystems/ext4.rst} (79%)

diff --git a/doc/README.ext4 b/doc/usage/filesystems/ext4.rst
similarity index 79%
rename from doc/README.ext4
rename to doc/usage/filesystems/ext4.rst
index ca9f19953d2..18e45045344 100644
--- a/doc/README.ext4
+++ b/doc/usage/filesystems/ext4.rst
@@ -1,9 +1,22 @@
+.. SPDX-License-Identifier: GPL-2.0+
+
+Ext4 File System
+================
+
+Overview
+--------
+
 U-Boot supports access of both ext2 and ext4 filesystems, either in read-only
 mode or in read-write mode.
 
+Configuration
+-------------
+
 First, to enable support for both ext4 (and, automatically, ext2 as well),
 but without selecting the corresponding commands, enable one of the following:
 
+::
+
   CONFIG_FS_EXT4	(for read-only)
   CONFIG_EXT4_WRITE	(for read-write)
 
@@ -20,22 +33,28 @@ or ext4-related commands:
 
 use one or both of:
 
-  CONFIG_CMD_EXT2
-  CONFIG_CMD_EXT4
+::
+
+	CONFIG_CMD_EXT2
+	CONFIG_CMD_EXT4
 
 Selecting either of the above automatically selects CONFIG_FS_EXT4 if it
 wasn't enabled already.
 
 In addition, to get the write access command "ext4write", enable:
 
-  CONFIG_CMD_EXT4_WRITE
+::
+
+	CONFIG_CMD_EXT4_WRITE
 
 which automatically selects CONFIG_EXT4_WRITE if it wasn't defined
 already.
 
 Also relevant are the generic filesystem commands, selected by:
 
-  CONFIG_CMD_FS_GENERIC
+::
+
+	CONFIG_CMD_FS_GENERIC
 
 This does not automatically enable EXT4 support for you, you still need
 to do that yourself.
@@ -44,6 +63,8 @@ Lastly, the current u-boot implementation for Ext4 write requires a lot
 of memory to run successfully. The following enable support for
 large Ext4 partitions:
 
+::
+
 	CONFIG_EXT4_MAX_JOURNAL_ENTRIES
 	CONFIG_SYS_MALLOC_LEN
 
@@ -51,10 +72,15 @@ The number of journal entries and dynamic memory allocation are proportional
 to the partition capacity. For example, an ext4 4TB HDD partition could
 require approximately 500 entries and more than 128 MB heap space.
 
+Examples
+--------
+
 Some sample commands to test ext4 support:
 
 1. Check that the commands can be seen in the output of U-Boot help:
 
+::
+
 	UBOOT #help
 	...
 	ext4load- load binary file from a Ext4 file system
@@ -65,6 +91,8 @@ Some sample commands to test ext4 support:
 
 2. To list the files in an ext4-formatted partition, run:
 
+::
+
 	ext4ls <interface> <dev[:part]> [directory]
 
 	For example:
@@ -72,6 +100,8 @@ Some sample commands to test ext4 support:
 
 3. To read and load a file from an ext4-formatted partition to RAM, run:
 
+::
+
 	ext4load <interface> <dev[:part]> [addr] [filename] [bytes]
 
 	For example:
@@ -79,16 +109,21 @@ Some sample commands to test ext4 support:
 
 4. To write a file to an ext4-formatted partition.
 
+::
+
 	a) First load a file to RAM at a particular address for example 0x30007fc0.
 	Now execute ext4write command:
 	ext4write <interface> <dev[:part]> [filename] [Address] [sizebytes]
 
 	For example:
-	UBOOT #ext4write mmc 2:2 /boot/uImage 0x30007fc0 6183120
-	(here 6183120 is the size of the file to be written)
+	UBOOT #ext4write mmc 2:2 /boot/uImage 0x30007fc0 0x5E58D0
+	(here 0x5E58D0 is the size of the file to be written,
+	which was output by the ext4load command)
 	Note: Absolute path is required for the file to be written
 
-References :
-	-- ext4 implementation in Linux Kernel
-	-- Uboot existing ext2 load and ls implementation
-	-- Journaling block device JBD2 implementation in linux Kernel
+References
+----------
+
+	* ext4 implementation in Linux Kernel
+	* Uboot existing ext2 load and ls implementation
+	* Journaling block device JBD2 implementation in linux Kernel
diff --git a/doc/usage/index.rst b/doc/usage/index.rst
index 3a48521d5d5..4b0533c8e69 100644
--- a/doc/usage/index.rst
+++ b/doc/usage/index.rst
@@ -147,3 +147,11 @@ Booting OS
 
    os/plan9
    os/vxworks
+
+File Systems
+------------
+
+.. toctree::
+   :maxdepth: 1
+
+   filesystems/ext4
-- 
2.47.3

base-commit: d5a4a71f3f8876a05f211af0af820180e4c81721
branch: master


More information about the U-Boot mailing list