mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-02 01:26:32 +00:00

Simon Glass <sjg@chromium.org> says: When the SPL build-phase was first created it was designed to solve a particular problem (the need to init SDRAM so that U-Boot proper could be loaded). It has since expanded to become an important part of U-Boot, with three phases now present: TPL, VPL and SPL Due to this history, the term 'SPL' is used to mean both a particular phase (the one before U-Boot proper) and all the non-proper phases. This has become confusing. For a similar reason CONFIG_SPL_BUILD is set to 'y' for all 'SPL' phases, not just SPL. So code which can only be compiled for actual SPL, for example, must use something like this: #if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_TPL_BUILD) In Makefiles we have similar issues. SPL_ has been used as a variable which expands to either SPL_ or nothing, to chose between options like CONFIG_BLK and CONFIG_SPL_BLK. When TPL appeared, a new SPL_TPL variable was created which expanded to 'SPL_', 'TPL_' or nothing. Later it was updated to support 'VPL_' as well. This series starts a change in terminology and usage to resolve the above issues: - The word 'xPL' is used instead of 'SPL' to mean a non-proper build - A new CONFIG_XPL_BUILD define indicates that the current build is an 'xPL' build - The existing CONFIG_SPL_BUILD is changed to mean SPL; it is not now defined for TPL and VPL phases - The existing SPL_ Makefile variable is renamed to SPL_ - The existing SPL_TPL Makefile variable is renamed to PHASE_ It should be noted that xpl_phase() can generally be used instead of the above CONFIGs without a code-space or run-time penalty. This series does not attempt to convert all of U-Boot to use this new terminology but it makes a start. In particular, renaming spl.h and common/spl seems like a bridge too far at this point. The series is fully bisectable. It has also been checked to ensure there are no code-size changes on any commit.
111 lines
1.2 KiB
ReStructuredText
111 lines
1.2 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+
|
|
|
|
Develop U-Boot
|
|
==============
|
|
|
|
General
|
|
-------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
board_best_practices
|
|
codingstyle
|
|
designprinciples
|
|
docstyle
|
|
memory
|
|
patman
|
|
process
|
|
release_cycle
|
|
security
|
|
sending_patches
|
|
system_configuration
|
|
ide_integration
|
|
|
|
Implementation
|
|
--------------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
directories
|
|
bloblist
|
|
bootstd/index
|
|
ci_testing
|
|
commands
|
|
config_binding
|
|
cyclic
|
|
devicetree/index
|
|
distro
|
|
driver-model/index
|
|
environment
|
|
init
|
|
expo
|
|
cedit
|
|
event
|
|
global_data
|
|
logging
|
|
makefiles
|
|
menus
|
|
printf
|
|
smbios
|
|
spl
|
|
falcon
|
|
uefi/index
|
|
vbe
|
|
version
|
|
|
|
Debugging
|
|
---------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
crash_dumps
|
|
gdb
|
|
trace
|
|
|
|
Packaging
|
|
---------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
package/index
|
|
|
|
Testing
|
|
-------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
testing
|
|
py_testing
|
|
tests_writing
|
|
tests_sandbox
|
|
|
|
Refactoring
|
|
-----------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
checkpatch
|
|
coccinelle
|
|
qconfig
|
|
|
|
Code quality
|
|
------------
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
python_cq
|
|
|
|
Historical documentation
|
|
------------------------
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
historical/index
|