summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual/classes.rst
diff options
context:
space:
mode:
authorEnrico Jörns <ejo@pengutronix.de>2025-01-19 23:10:05 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-01-29 10:41:59 +0000
commitdfab86d2f4bdc131529d7e1705fc4b095afa8b54 (patch)
treea9aab217c27b47f1339828e29412afff852e4cc5 /documentation/ref-manual/classes.rst
parent5a38f96a33d75a120dba4f2e6157189a140ccb38 (diff)
downloadpoky-dfab86d2f4bdc131529d7e1705fc4b095afa8b54.tar.gz
ref-manual: add documentation for the barebox class
This adds the initial documentation for the newly added barebox.bbclass to the Reference Manual's class list. It also adds the two most notable variables to the variable list. (From yocto-docs rev: cc8179122441cdc26ff62511dcd97f7bf9bf7e3d) Signed-off-by: Enrico Jörns <ejo@pengutronix.de> Reviewed-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual/classes.rst')
-rw-r--r--documentation/ref-manual/classes.rst37
1 files changed, 37 insertions, 0 deletions
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
index 22c4301a49..8ad77319ec 100644
--- a/documentation/ref-manual/classes.rst
+++ b/documentation/ref-manual/classes.rst
@@ -128,6 +128,43 @@ It's useful to have some idea of how the tasks defined by the
128- :ref:`ref-tasks-install` --- runs ``make install`` and 128- :ref:`ref-tasks-install` --- runs ``make install`` and
129 passes in ``${``\ :term:`D`\ ``}`` as ``DESTDIR``. 129 passes in ``${``\ :term:`D`\ ``}`` as ``DESTDIR``.
130 130
131.. _ref-classes-barebox:
132
133``barebox``
134===========
135
136The :ref:`ref-classes-barebox` class manages building the barebox bootloader.
137
138If a file named ``defconfig`` is included in the :term:`SRC_URI`, it will be
139copied to ``.config`` in the build directory and used as the barebox
140configuration.
141Instead of providing a ``defconfig`` file, you can set :term:`BAREBOX_CONFIG`
142to a defconfig provided by the barebox source tree.
143If neither ``defconfig`` nor :term:`BAREBOX_CONFIG` is specified, the class
144will raise an error.
145
146The :ref:`ref-classes-barebox` class supports config fragments and internally
147includes the :ref:`ref-classes-cml1` class to provide `Kconfig
148<https://docs.kernel.org/kbuild/kconfig-language.html>`__ support for
149barebox, enabling tasks such as :ref:`ref-tasks-menuconfig` and
150:ref:`ref-tasks-diffconfig`.
151
152The generated barebox binaries are deployed to
153:term:`DEPLOY_DIR_IMAGE` as well as installed to ``BAREBOX_INSTALL_PATH``
154(``/boot`` by default) making them part of the recipe’s base package.
155This setup supports both using the barebox binaries as independent artifacts
156and installing them into a rootfs.
157:term:`BAREBOX_BINARY` can be used to select a distinct binary to deploy and
158install.
159If ``barebox`` is set as the :term:`EFI_PROVIDER`, the class will leverage
160:oe_git:`conf/image-uefi.conf </openembedded-core/tree/meta/conf/image-uefi.conf>`
161to define the default installation paths and naming conventions.
162
163The compiled-in barebox environment can be extended by adding environment files
164to the ``BAREBOX_ENV_DIR``.
165The ``BAREBOX_FIRMWARE_DIR`` variable allows you to specify the firmware blob
166search directory, enabling loading of additional firmware like TF-A or OP-TEE.
167
131.. _ref-classes-base: 168.. _ref-classes-base:
132 169
133``base`` 170``base``