summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2025-12-08 13:17:27 -0600
committerTom Rini <[email protected]>2025-12-08 13:17:27 -0600
commit59202e5ae76ef3acb34c4236e43248f1cd3fc642 (patch)
tree30004ced6a059b2c25afb0aca8b049908c2212c3 /doc
parent8e12d6ccb3cfa84dd275a1b852b2a235de0162b0 (diff)
parent0e0a198a68be71148f5ec27ef86796174f91436f (diff)
Merge tag 'v2026.01-rc4' into next
Prepare v2026.01-rc4
Diffstat (limited to 'doc')
-rw-r--r--doc/board/samsung/exynos-mobile.rst45
-rw-r--r--doc/board/samsung/exynos-mobile/exynos7870.rst85
-rw-r--r--doc/board/samsung/index.rst1
-rw-r--r--doc/board/toradex/verdin-am62p.rst135
-rw-r--r--doc/develop/pytest/usage.rst16
-rw-r--r--doc/develop/release_cycle.rst2
-rw-r--r--doc/learn/index.rst1
-rw-r--r--doc/learn/logo.rst20
-rw-r--r--doc/sphinx/requirements.txt2
9 files changed, 229 insertions, 78 deletions
diff --git a/doc/board/samsung/exynos-mobile.rst b/doc/board/samsung/exynos-mobile.rst
new file mode 100644
index 00000000000..37718af1fea
--- /dev/null
+++ b/doc/board/samsung/exynos-mobile.rst
@@ -0,0 +1,45 @@
+.. SPDX-License-Identifier: GPL-2.0+
+.. sectionauthor:: Kaustabh Chakraborty <[email protected]>
+
+Samsung Exynos Generic ARMv8 Boards (for mobile devices)
+========================================================
+
+Overview
+--------
+This document describes how to build and run U-Boot for Samsung Exynos generic
+boards. Boards are expected to boot with a primary bootloader, such as S-BOOT or
+S-LK, which hands off control to U-Boot. Presently, only ARMv8 devices are
+supported.
+
+The U-Boot image is built with all device tree blobs packed in a single FIT
+image. During boot, it uses simple heuristics to detect the target board, and
+subsequently the appropriate FDT is selected.
+
+Installation
+------------
+Building
+^^^^^^^^
+If a cross-compiler is required, install it and set it up like so:
+
+.. prompt:: bash $
+
+ export CROSS_COMPILE=aarch64-linux-gnu-
+
+Then, run the following commands to build U-Boot:
+
+.. prompt:: bash $
+
+ make O=.output exynos-mobile_defconfig
+ make O=.output -j$(nproc)
+
+If successful, the U-Boot binary will be present in ``.output/u-boot.bin``.
+
+Preparation and Flashing
+^^^^^^^^^^^^^^^^^^^^^^^^
+Since U-Boot supports multiple boards, and devices have different requirements,
+this step will vary depending on your target.
+
+.. toctree::
+ :maxdepth: 1
+
+ exynos-mobile/exynos7870
diff --git a/doc/board/samsung/exynos-mobile/exynos7870.rst b/doc/board/samsung/exynos-mobile/exynos7870.rst
new file mode 100644
index 00000000000..bbd857580b8
--- /dev/null
+++ b/doc/board/samsung/exynos-mobile/exynos7870.rst
@@ -0,0 +1,85 @@
+.. SPDX-License-Identifier: GPL-2.0+
+.. sectionauthor:: Kaustabh Chakraborty <[email protected]>
+
+Samsung Exynos 7870 Boards
+==========================
+
+Preparation
+-----------
+Create the following device tree (named ``stub.dts``)
+
+.. code-block:: devicetree
+
+ /dts-v1/;
+
+ / {
+ compatible = "samsung,exynos7870";
+ #address-cells = <2>;
+ #size-cells = <1>;
+
+ model_info-chip = <7870>;
+ model_info-hw_rev = <0>;
+ model_info-hw_rev_end = <255>;
+
+ chosen {
+ };
+
+ memory@80000000 {
+ device_type = "memory";
+ reg = <0x0 0x80000000 0x0>;
+ };
+
+ memory@100000000 {
+ device_type = "memory";
+ reg = <0x1 0x00000000 0x0>;
+ };
+ };
+
+The chosen node and memory ranges are populated by S-BOOT. A certain device
+model may have multiple variants, with differing amounts of RAM and storage. The
+RAM capacity information is graciously provided by S-BOOT's device tree
+overlays.
+
+Compile it to a device tree blob, then pack it in the QCDT format [1]_ using
+``dtbTool-exynos`` [2]_ by issuing the following commands:
+
+.. prompt:: bash $
+
+ dtc -I dts -O dtb -o stub.dtb stub.dts
+ dtbTool-exynos -o stub-dt.img stub.dtb
+
+Finally, use ``mkbootimg`` by osm0sis [3]_ to generate the boot image:
+
+.. prompt:: bash $
+
+ mkbootimg -o u-boot.img \
+ --kernel .output/u-boot.bin \
+ --dt stub-dt.img
+
+Offsets are not provided to ``mkbootimg`` as S-BOOT ignores them.
+
+Flashing
+--------
+If flashing for the first time, it must be done via Samsung's Download (Odin)
+mode. Heimdall [4]_ can be used for flashing, like so:
+
+.. prompt:: bash $
+
+ heimdall flash --BOOT u-boot.img
+
+However, if U-Boot is already installed, you may also use its fastboot interface
+for flashing. Boot into the boot menu by holding the volume down key. Enable
+fastboot mode from there, connect the device to your host, then run:
+
+.. prompt:: bash $
+
+ fastboot flash boot u-boot.img
+
+To flash an OS image in internal storage, fastboot is a reliable option.
+
+References
+----------
+.. [1] https://wiki.postmarketos.org/wiki/QCDT
+.. [2] https://github.com/dsankouski/dtbtool-exynos
+.. [3] https://github.com/osm0sis/mkbootimg
+.. [4] https://git.sr.ht/~grimler/Heimdall
diff --git a/doc/board/samsung/index.rst b/doc/board/samsung/index.rst
index 1b92c9518a5..1fbe88130c0 100644
--- a/doc/board/samsung/index.rst
+++ b/doc/board/samsung/index.rst
@@ -8,4 +8,5 @@ Samsung
axy17lte
e850-96
+ exynos-mobile
n1
diff --git a/doc/board/toradex/verdin-am62p.rst b/doc/board/toradex/verdin-am62p.rst
index 2f3262b8d1e..cc60505a40c 100644
--- a/doc/board/toradex/verdin-am62p.rst
+++ b/doc/board/toradex/verdin-am62p.rst
@@ -125,72 +125,69 @@ one may also use the update U-Boot wrappers:
Boot
----
-Output:
-
-.. code-block:: console
-
-U-Boot SPL 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:46:57 +0100)
-SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
-Changed A53 CPU frequency to 1250000000Hz (U grade) in DT
-SPL initial stack usage: 17080 bytes
-Trying to boot from MMC1
-Authentication passed
-Authentication passed
-Authentication passed
-Loading Environment from nowhere... OK
-init_env from device 9 not supported!
-Authentication passed
-Authentication passed
-Starting ATF on ARM64 core...
-
-NOTICE: BL31: v2.12.0(release):v2.12.0-1106-g4301798db096
-NOTICE: BL31: Built : 10:57:58, May 9 2025
-I/TC:
-I/TC: OP-TEE version: 4.6.0-18-g76d920d354df (gcc version 12.3.1 20230626 (Arm GNU Toolchain 12.3.Rel1 (Build arm-12.35))) #4 Tue May 6 19:48:13 UTC 2025 aarch64
-I/TC: WARNING: This OP-TEE configuration might be insecure!
-I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
-I/TC: Primary CPU initializing
-I/TC: GIC redistributor base address not provided
-I/TC: Assuming default GIC group status and modifier
-I/TC: SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
-I/TC: Activated SA2UL device
-I/TC: Enabled firewalls for SA2UL TRNG device
-I/TC: SA2UL TRNG initialized
-I/TC: SA2UL Drivers initialized
-I/TC: HUK Initialized
-I/TC: Primary CPU switching to normal world boot
-
-U-Boot SPL 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:47:54 +0100)
-SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
-SPL initial stack usage: 1760 bytes
-HW CFG: 0x00
-Trying to boot from MMC1
-Authentication passed
-Authentication passed
-
-
-U-Boot 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:47:54 +0100)
-
-SoC: AM62PX SR1.0 HS-FS
-DRAM: 2 GiB
-Core: 147 devices, 31 uclasses, devicetree: separate
-MMC: mmc@fa10000: 0, mmc@fa00000: 1
-Loading Environment from MMC... Reading from MMC(0)... OK
-In: serial@2800000
-Out: serial@2800000
-Err: serial@2800000
-Model: Toradex 0099 Verdin AM62P Quad 2GB WB IT V1.0A
-Serial#: 15664919
-Carrier: Toradex Dahlia V1.1D, Serial# 11287149
-am65_cpsw_nuss ethernet@8000000: K3 CPSW: nuss_ver: 0x6BA01903 cpsw_ver: 0x6BA81903 ale_ver: 0x00290105 Ports:2
-Setting variant to wifi
-Net:
-Warning: ethernet@8000000port@1 MAC addresses don't match:
-Address in ROM is 58:a1:5f:b8:93:f9
-Address in environment is 00:14:2d:ef:07:17
-eth0: ethernet@8000000port@1 [PRIME]Could not get PHY for mdio@f00: addr 7
-am65_cpsw_nuss_port ethernet@8000000port@2: phy_connect() failed
-
-Hit any key to stop autoboot: 0
-Verdin AM62P #
-
+Output::
+
+ U-Boot SPL 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:46:57 +0100)
+ SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
+ Changed A53 CPU frequency to 1250000000Hz (U grade) in DT
+ SPL initial stack usage: 17080 bytes
+ Trying to boot from MMC1
+ Authentication passed
+ Authentication passed
+ Authentication passed
+ Loading Environment from nowhere... OK
+ init_env from device 9 not supported!
+ Authentication passed
+ Authentication passed
+ Starting ATF on ARM64 core...
+
+ NOTICE: BL31: v2.12.0(release):v2.12.0-1106-g4301798db096
+ NOTICE: BL31: Built : 10:57:58, May 9 2025
+ I/TC:
+ I/TC: OP-TEE version: 4.6.0-18-g76d920d354df (gcc version 12.3.1 20230626 (Arm GNU Toolchain 12.3.Rel1 (Build arm-12.35))) #4 Tue May 6 19:48:13 UTC 2025 aarch64
+ I/TC: WARNING: This OP-TEE configuration might be insecure!
+ I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
+ I/TC: Primary CPU initializing
+ I/TC: GIC redistributor base address not provided
+ I/TC: Assuming default GIC group status and modifier
+ I/TC: SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
+ I/TC: Activated SA2UL device
+ I/TC: Enabled firewalls for SA2UL TRNG device
+ I/TC: SA2UL TRNG initialized
+ I/TC: SA2UL Drivers initialized
+ I/TC: HUK Initialized
+ I/TC: Primary CPU switching to normal world boot
+
+ U-Boot SPL 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:47:54 +0100)
+ SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
+ SPL initial stack usage: 1760 bytes
+ HW CFG: 0x00
+ Trying to boot from MMC1
+ Authentication passed
+ Authentication passed
+
+
+ U-Boot 2025.04-00006-g51dc98d36470 (May 12 2025 - 15:47:54 +0100)
+
+ SoC: AM62PX SR1.0 HS-FS
+ DRAM: 2 GiB
+ Core: 147 devices, 31 uclasses, devicetree: separate
+ MMC: mmc@fa10000: 0, mmc@fa00000: 1
+ Loading Environment from MMC... Reading from MMC(0)... OK
+ In: serial@2800000
+ Out: serial@2800000
+ Err: serial@2800000
+ Model: Toradex 0099 Verdin AM62P Quad 2GB WB IT V1.0A
+ Serial#: 15664919
+ Carrier: Toradex Dahlia V1.1D, Serial# 11287149
+ am65_cpsw_nuss ethernet@8000000: K3 CPSW: nuss_ver: 0x6BA01903 cpsw_ver: 0x6BA81903 ale_ver: 0x00290105 Ports:2
+ Setting variant to wifi
+ Net:
+ Warning: ethernet@8000000port@1 MAC addresses don't match:
+ Address in ROM is 58:a1:5f:b8:93:f9
+ Address in environment is 00:14:2d:ef:07:17
+ eth0: ethernet@8000000port@1 [PRIME]Could not get PHY for mdio@f00: addr 7
+ am65_cpsw_nuss_port ethernet@8000000port@2: phy_connect() failed
+
+ Hit any key to stop autoboot: 0
+ Verdin AM62P #
diff --git a/doc/develop/pytest/usage.rst b/doc/develop/pytest/usage.rst
index 7335a39b963..df3821da20d 100644
--- a/doc/develop/pytest/usage.rst
+++ b/doc/develop/pytest/usage.rst
@@ -315,14 +315,16 @@ Environment variables
The following environment variables are set when running hook scripts:
-- ``UBOOT_BOARD_TYPE`` the board type being tested.
-- ``UBOOT_BOARD_IDENTITY`` the board identity being tested, or ``na`` if none
+- ``U_BOOT_BOARD_TYPE`` the board type being tested.
+- ``U_BOOT_BOARD_TYPE_EXTRA`` the 2nd board type being tested, if applicable.
+- ``U_BOOT_BOARD_IDENTITY`` the board identity being tested, or ``na`` if none
was specified.
-- ``UBOOT_SOURCE_DIR`` the U-Boot source directory.
-- ``UBOOT_TEST_PY_DIR`` the full path to ``test/py/`` in the source directory.
-- ``UBOOT_BUILD_DIR`` the U-Boot build directory.
-- ``UBOOT_RESULT_DIR`` the test result directory.
-- ``UBOOT_PERSISTENT_DATA_DIR`` the test persistent data directory.
+- ``U_BOOT_SOURCE_DIR`` the U-Boot source directory.
+- ``U_BOOT_TEST_PY_DIR`` the full path to ``test/py/`` in the source directory.
+- ``U_BOOT_BUILD_DIR`` the U-Boot build directory.
+- ``U_BOOT_BUILD_DIR_EXTRA`` the 2nd U-Boot build directory, if applicable.
+- ``U_BOOT_RESULT_DIR`` the test result directory.
+- ``U_BOOT_PERSISTENT_DATA_DIR`` the test persistent data directory.
u-boot-test-console
'''''''''''''''''''
diff --git a/doc/develop/release_cycle.rst b/doc/develop/release_cycle.rst
index 56cbfcb4b65..be6b09b250e 100644
--- a/doc/develop/release_cycle.rst
+++ b/doc/develop/release_cycle.rst
@@ -77,7 +77,7 @@ For the next scheduled release, release candidates were made on:
* U-Boot |next_ver|-rc3 was released on Mon 24 November 2025.
-.. * U-Boot |next_ver|-rc4 was released on Mon 08 December 2025.
+* U-Boot |next_ver|-rc4 was released on Mon 08 December 2025.
.. * U-Boot |next_ver|-rc5 was released on Tue 22 December 2025.
diff --git a/doc/learn/index.rst b/doc/learn/index.rst
index 8075c01d1df..5b139e3c9fd 100644
--- a/doc/learn/index.rst
+++ b/doc/learn/index.rst
@@ -6,4 +6,5 @@ Learn about U-Boot
.. toctree::
:maxdepth: 1
+ logo
talks
diff --git a/doc/learn/logo.rst b/doc/learn/logo.rst
new file mode 100644
index 00000000000..66d403e4cff
--- /dev/null
+++ b/doc/learn/logo.rst
@@ -0,0 +1,20 @@
+.. SPDX-License-Identifier: GPL-2.0-or-later
+
+U-Boot logo
+===========
+
+The project uses the logos below.
+
+Logo with text
+--------------
+
+.. image:: ../../tools/logos/u-boot_logo_with_text.svg
+ :width: 10em
+ :alt: U-Boot logo with text
+
+Logo without text
+-----------------
+
+.. image:: ../../tools/logos/u-boot_logo.svg
+ :width: 10em
+ :alt: U-Boot logo without text
diff --git a/doc/sphinx/requirements.txt b/doc/sphinx/requirements.txt
index 8572c15ef68..dd433e2bb15 100644
--- a/doc/sphinx/requirements.txt
+++ b/doc/sphinx/requirements.txt
@@ -24,4 +24,4 @@ sphinxcontrib-jquery==4.1
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==2.0.0
sphinxcontrib-serializinghtml==2.0.0
-urllib3==2.5.0
+urllib3==2.6.0