mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 06:31:31 +00:00
Pull request for documentation tag doc-2021-04-rc1
* document man-page base command * move README.fdt-overlays to HTML documentation * add synopsis for pstore command -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEbcT5xx8ppvoGt20zxIHbvCwFGsQFAmACvkwACgkQxIHbvCwF GsTuBw/6At+ERBeu9vXS6CjqOI/EFvj8VC7pwgCjfxFJ+ef6CMDkY/yMAcUtQog3 B4OuYa3P8wEpxA9W/yq2F27Qw0s72XmZq5K4lRe3LqVfkteL3VurtGOo1yzIBjox 0H5/vCMAY/qE2Rc8NXOmD8n5Yza2nVMIPjVy13Gy7Q7F/UV67DdC1eHvRLyt2a6d 0sal8sCH3Aprs8pp9frJHEfAl5NbYOcK/9i0KOiGMn4sH/2Fm7EMt2jzgkZv40Hm xGoDOa5BFtQaFlfnYOz8QOnhxJRfKjPk+4lHz3L25h/yIhntJB2ot96+QuA9qs48 mHF8k8drhtPevm386klE08spcYeO8kFFjTxzOdWXBa0+SxhHK+dNl8iAXmCGXBLp ZO/HnWFzPATGjU5qd3Est7k8pWI/CUteAl+XQc5CARMKtx9vejerdQj8Jbtqxi03 tv3jpKXhc6UAaNxivp1v5CZeav2vUsf6hXmeOYg23GJevtHHAkMxquWtDtma6eZT 2BXJPv/AfU9Ac6zbTKZ83kitp4WYab5Z7XFhy/sNgyhm6/MIlptFWxfDBn9zb12s 0ejXykUhNuqnfIPENPHqceXG0E/GnyQRYZbxhdBotwww22jbqxj7Y8vmUNJFVdw8 tabkkR6nbg7L6PVTVRFo3gaPnw7I5cxeEpJxmk8lFB0tpUu4UIc= =Ymuj -----END PGP SIGNATURE----- Merge tag 'doc-2021-04-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for documentation tag doc-2021-04-rc1 * document man-page base command * move README.fdt-overlays to HTML documentation * add synopsis for pstore command
This commit is contained in:
commit
b5b0237d02
7 changed files with 183 additions and 125 deletions
|
@ -1,114 +0,0 @@
|
||||||
U-Boot FDT Overlay usage
|
|
||||||
=============================================
|
|
||||||
|
|
||||||
Overlays Syntax
|
|
||||||
---------------
|
|
||||||
|
|
||||||
Overlays require slightly different syntax compared to traditional overlays.
|
|
||||||
Please refer to dt-object-internal.txt in the dtc sources for information
|
|
||||||
regarding the internal format of overlays:
|
|
||||||
https://git.kernel.org/pub/scm/utils/dtc/dtc.git/tree/Documentation/dt-object-internal.txt
|
|
||||||
|
|
||||||
Building Overlays
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
In a nutshell overlays provides a means to manipulate a symbol a previous dtb
|
|
||||||
or overlay has defined. It requires both the base and all the overlays
|
|
||||||
to be compiled with the -@ command line switch so that symbol information is
|
|
||||||
included.
|
|
||||||
|
|
||||||
Note support for -@ option can only be found in dtc version 1.4.4 or newer.
|
|
||||||
Only version 4.14 or higher of the Linux kernel includes a built in version
|
|
||||||
of dtc that meets this requirement.
|
|
||||||
|
|
||||||
Building an overlay follows the same process as building a traditional dtb.
|
|
||||||
|
|
||||||
For example:
|
|
||||||
|
|
||||||
base.dts
|
|
||||||
--------
|
|
||||||
|
|
||||||
/dts-v1/;
|
|
||||||
/ {
|
|
||||||
foo: foonode {
|
|
||||||
foo-property;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
$ dtc -@ -I dts -O dtb -o base.dtb base.dts
|
|
||||||
|
|
||||||
bar.dts
|
|
||||||
-------
|
|
||||||
|
|
||||||
/dts-v1/;
|
|
||||||
/plugin/;
|
|
||||||
/ {
|
|
||||||
fragment@1 {
|
|
||||||
target = <&foo>;
|
|
||||||
__overlay__ {
|
|
||||||
overlay-1-property;
|
|
||||||
bar: barnode {
|
|
||||||
bar-property;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
$ dtc -@ -I dts -O dtb -o bar.dtb bar.dts
|
|
||||||
|
|
||||||
Ways to Utilize Overlays in U-boot
|
|
||||||
----------------------------------
|
|
||||||
|
|
||||||
There are two ways to apply overlays in U-boot.
|
|
||||||
1. Include and define overlays within a FIT image and have overlays
|
|
||||||
automatically applied.
|
|
||||||
|
|
||||||
2. Manually load and apply overlays
|
|
||||||
|
|
||||||
The remainder of this document will discuss using overlays via the manual
|
|
||||||
approach. For information on using overlays as part of a FIT image please see:
|
|
||||||
doc/uImage.FIT/overlay-fdt-boot.txt
|
|
||||||
|
|
||||||
Manually Loading and Applying Overlays
|
|
||||||
--------------------------------------
|
|
||||||
|
|
||||||
1. Figure out where to place both the base device tree blob and the
|
|
||||||
overlay. Make sure you have enough space to grow the base tree without
|
|
||||||
overlapping anything.
|
|
||||||
|
|
||||||
=> setenv fdtaddr 0x87f00000
|
|
||||||
=> setenv fdtovaddr 0x87fc0000
|
|
||||||
|
|
||||||
2. Load the base blob and overlay blobs
|
|
||||||
|
|
||||||
=> load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/base.dtb
|
|
||||||
=> load ${devtype} ${bootpart} ${fdtovaddr} ${bootdir}/overlay.dtb
|
|
||||||
|
|
||||||
3. Set it as the working fdt tree.
|
|
||||||
|
|
||||||
=> fdtaddr $fdtaddr
|
|
||||||
|
|
||||||
4. Grow it enough so it can 'fit' all the applied overlays
|
|
||||||
|
|
||||||
=> fdt resize 8192
|
|
||||||
|
|
||||||
5. You are now ready to apply the overlay.
|
|
||||||
|
|
||||||
=> fdt apply $fdtovaddr
|
|
||||||
|
|
||||||
6. Boot system like you would do with a traditional dtb.
|
|
||||||
|
|
||||||
For bootm:
|
|
||||||
|
|
||||||
=> bootm ${kerneladdr} - ${fdtaddr}
|
|
||||||
|
|
||||||
For bootz:
|
|
||||||
|
|
||||||
=> bootz ${kerneladdr} - ${fdtaddr}
|
|
||||||
|
|
||||||
Please note that in case of an error, both the base and overlays are going
|
|
||||||
to be invalidated, so keep copies to avoid reloading.
|
|
||||||
|
|
||||||
Pantelis Antoniou
|
|
||||||
pantelis.antoniou@konsulko.com
|
|
||||||
11/7/2017
|
|
|
@ -134,7 +134,7 @@ B4860QDS Default Settings
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
Switch Settings
|
Switch Settings
|
||||||
---------------
|
^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
@ -167,7 +167,7 @@ B4420QDS Default Settings
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
Switch Settings
|
Switch Settings
|
||||||
---------------
|
^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ of running Linux.
|
||||||
|
|
||||||
Mainline support
|
Mainline support
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
The support for following drivers are already enabled:
|
The support for following drivers are already enabled:
|
||||||
|
|
||||||
1. SiFive UART Driver.
|
1. SiFive UART Driver.
|
||||||
|
@ -24,7 +25,7 @@ Booting from MMC using FSBL
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
Building
|
Building
|
||||||
--------
|
~~~~~~~~
|
||||||
|
|
||||||
1. Add the RISC-V toolchain to your PATH.
|
1. Add the RISC-V toolchain to your PATH.
|
||||||
2. Setup ARCH & cross compilation environment variable:
|
2. Setup ARCH & cross compilation environment variable:
|
||||||
|
@ -37,7 +38,7 @@ Building
|
||||||
4. make
|
4. make
|
||||||
|
|
||||||
Flashing
|
Flashing
|
||||||
--------
|
~~~~~~~~
|
||||||
|
|
||||||
The current U-Boot port is supported in S-mode only and loaded from DRAM.
|
The current U-Boot port is supported in S-mode only and loaded from DRAM.
|
||||||
|
|
||||||
|
@ -63,11 +64,12 @@ copied to the first partition of the sdcard.
|
||||||
sudo dd if=<prior_stage_firmware_binary> of=/dev/disk2s1 bs=1024
|
sudo dd if=<prior_stage_firmware_binary> of=/dev/disk2s1 bs=1024
|
||||||
|
|
||||||
Booting
|
Booting
|
||||||
-------
|
~~~~~~~
|
||||||
|
|
||||||
Once you plugin the sdcard and power up, you should see the U-Boot prompt.
|
Once you plugin the sdcard and power up, you should see the U-Boot prompt.
|
||||||
|
|
||||||
Sample boot log from HiFive Unleashed board
|
Sample boot log from HiFive Unleashed board
|
||||||
-------------------------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
@ -417,7 +419,7 @@ Booting from MMC using U-Boot SPL
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
Building
|
Building
|
||||||
--------
|
~~~~~~~~
|
||||||
|
|
||||||
Before building U-Boot SPL, OpenSBI must be built first. OpenSBI can be
|
Before building U-Boot SPL, OpenSBI must be built first. OpenSBI can be
|
||||||
cloned and built for FU540 as below:
|
cloned and built for FU540 as below:
|
||||||
|
@ -441,7 +443,7 @@ This will generate spl/u-boot-spl.bin and FIT image (u-boot.itb)
|
||||||
|
|
||||||
|
|
||||||
Flashing
|
Flashing
|
||||||
--------
|
~~~~~~~~
|
||||||
|
|
||||||
ZSBL loads the U-Boot SPL (u-boot-spl.bin) from a partition with GUID type
|
ZSBL loads the U-Boot SPL (u-boot-spl.bin) from a partition with GUID type
|
||||||
5B193300-FC78-40CD-8002-E86C45580B47
|
5B193300-FC78-40CD-8002-E86C45580B47
|
||||||
|
@ -471,11 +473,12 @@ Program the SD card
|
||||||
sudo dd if=u-boot.itb of=/dev/sda seek=2082
|
sudo dd if=u-boot.itb of=/dev/sda seek=2082
|
||||||
|
|
||||||
Booting
|
Booting
|
||||||
-------
|
~~~~~~~
|
||||||
|
|
||||||
Once you plugin the sdcard and power up, you should see the U-Boot prompt.
|
Once you plugin the sdcard and power up, you should see the U-Boot prompt.
|
||||||
|
|
||||||
Sample boot log from HiFive Unleashed board
|
Sample boot log from HiFive Unleashed board
|
||||||
-------------------------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
|
23
doc/usage/base.rst
Normal file
23
doc/usage/base.rst
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
.. SPDX-License-Identifier: GPL-2.0+
|
||||||
|
|
||||||
|
base command
|
||||||
|
============
|
||||||
|
|
||||||
|
Synopsis
|
||||||
|
--------
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
base [address]
|
||||||
|
|
||||||
|
Description
|
||||||
|
-----------
|
||||||
|
|
||||||
|
The *base* command sets or displays the address offset used by the memory
|
||||||
|
commands *cmp, cp, md, mdc, mm, ms, mw, mwc*.
|
||||||
|
|
||||||
|
All other commands ignore the address defined by *base*.
|
||||||
|
|
||||||
|
address
|
||||||
|
new base address as hexadecimal number. If no value is provided, the current
|
||||||
|
value is displayed.
|
134
doc/usage/fdt_overlays.rst
Normal file
134
doc/usage/fdt_overlays.rst
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
.. SPDX-License-Identifier: GPL-2.0+
|
||||||
|
.. Copyright (c) 2017, Pantelis Antoniou <pantelis.antoniou@konsulko.com>
|
||||||
|
|
||||||
|
Device Tree Overlays
|
||||||
|
====================
|
||||||
|
|
||||||
|
Overlay Syntax
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Device-tree overlays require a slightly different syntax compared to traditional
|
||||||
|
device-trees. Please refer to dt-object-internal.txt in the device-tree compiler
|
||||||
|
sources for information regarding the internal format of overlays:
|
||||||
|
https://git.kernel.org/pub/scm/utils/dtc/dtc.git/tree/Documentation/dt-object-internal.txt
|
||||||
|
|
||||||
|
Building Overlays
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
In a nutshell overlays provides a means to manipulate a symbol a previous
|
||||||
|
device-tree or device-tree overlay has defined. It requires both the base
|
||||||
|
device-tree and all the overlays to be compiled with the *-@* command line
|
||||||
|
switch of the device-tree compiler so that symbol information is included.
|
||||||
|
|
||||||
|
Note
|
||||||
|
Support for *-@* option can only be found in dtc version 1.4.4 or newer.
|
||||||
|
Only version 4.14 or higher of the Linux kernel includes a built in version
|
||||||
|
of dtc that meets this requirement.
|
||||||
|
|
||||||
|
Building a binary device-tree overlay follows the same process as building a
|
||||||
|
traditional binary device-tree. For example:
|
||||||
|
|
||||||
|
**base.dts**
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
/ {
|
||||||
|
foo: foonode {
|
||||||
|
foo-property;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
$ dtc -@ -I dts -O dtb -o base.dtb base.dts
|
||||||
|
|
||||||
|
**overlay.dts**
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
/plugin/;
|
||||||
|
/ {
|
||||||
|
fragment@1 {
|
||||||
|
target = <&foo>;
|
||||||
|
__overlay__ {
|
||||||
|
overlay-1-property;
|
||||||
|
bar: barnode {
|
||||||
|
bar-property;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
$ dtc -@ -I dts -O dtb -o overlay.dtbo overlay.dts
|
||||||
|
|
||||||
|
Ways to Utilize Overlays in U-Boot
|
||||||
|
----------------------------------
|
||||||
|
|
||||||
|
There are two ways to apply overlays in U-Boot.
|
||||||
|
|
||||||
|
* Include and define overlays within a FIT image and have overlays
|
||||||
|
automatically applied.
|
||||||
|
|
||||||
|
* Manually load and apply overlays
|
||||||
|
|
||||||
|
The remainder of this document will discuss using overlays via the manual
|
||||||
|
approach. For information on using overlays as part of a FIT image please see:
|
||||||
|
doc/uImage.FIT/overlay-fdt-boot.txt
|
||||||
|
|
||||||
|
Manually Loading and Applying Overlays
|
||||||
|
--------------------------------------
|
||||||
|
|
||||||
|
1. Figure out where to place both the base device tree blob and the
|
||||||
|
overlay. Make sure you have enough space to grow the base tree without
|
||||||
|
overlapping anything.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> setenv fdtaddr 0x87f00000
|
||||||
|
=> setenv fdtovaddr 0x87fc0000
|
||||||
|
|
||||||
|
2. Load the base binary device-tree and the binary device-tree overlay.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/base.dtb
|
||||||
|
=> load ${devtype} ${bootpart} ${fdtovaddr} ${bootdir}/overlay.dtbo
|
||||||
|
|
||||||
|
3. Set the base binary device-tree as the working fdt tree.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> fdtaddr $fdtaddr
|
||||||
|
|
||||||
|
4. Grow it enough so it can encompass all applied overlays
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> fdt resize 8192
|
||||||
|
|
||||||
|
5. You are now ready to apply the overlay.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> fdt apply $fdtovaddr
|
||||||
|
|
||||||
|
6. Boot system like you would do with a traditional dtb.
|
||||||
|
|
||||||
|
For bootm:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> bootm ${kerneladdr} - ${fdtaddr}
|
||||||
|
|
||||||
|
For bootz:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
=> bootz ${kerneladdr} - ${fdtaddr}
|
||||||
|
|
||||||
|
Please note that in case of an error, both the base and overlays are going
|
||||||
|
to be invalidated, so keep copies to avoid reloading.
|
|
@ -2,7 +2,9 @@ Use U-Boot
|
||||||
==========
|
==========
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
fdt_overlays
|
||||||
netconsole
|
netconsole
|
||||||
|
|
||||||
Shell commands
|
Shell commands
|
||||||
|
@ -11,6 +13,7 @@ Shell commands
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
base
|
||||||
bootefi
|
bootefi
|
||||||
bootmenu
|
bootmenu
|
||||||
button
|
button
|
||||||
|
|
|
@ -1,8 +1,17 @@
|
||||||
.. SPDX-License-Identifier: GPL-2.0+
|
.. SPDX-License-Identifier: GPL-2.0+
|
||||||
|
|
||||||
PStore command
|
pstore command
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
Synopsis
|
||||||
|
--------
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
pstore set <addr> <len> [record-size] [console-size] [ftrace-size] [pmsg_size] [ecc-size]
|
||||||
|
pstore display [record-type] [nb]
|
||||||
|
pstore save <interface> <dev[:part]> <directory-path>
|
||||||
|
|
||||||
Design
|
Design
|
||||||
------
|
------
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue