[PATCH v2] doc: Update coding style to recommend b4 for patch submission

Mattijs Korpershoek mkorpershoek at kernel.org
Tue Sep 30 12:00:34 CEST 2025


Hi Javier,

On Mon, Sep 29, 2025 at 14:58, Javier Tia <javier.tia at linaro.org> wrote:

> Replace references to patman with b4 as the recommended tool for
> preparing and sending patches. b4 is widely adopted in the Linux kernel
> community and U-Boot ships with configuration to simplify its use with
> the project mailing list.
>
> The updated guidelines describe how to prepare series with b4, handle
> cover letters and recipient lists, run style checks, and send patches
> safely. Instructions also highlight how to collect and apply review tags
> before resending.
>
> This change documents the preferred workflow for contributors and
> ensures consistency with common practices across related upstream
> communities.
>
> Signed-off-by: Javier Tia <javier.tia at linaro.org>

Thank you for doing this! This is great.

Reviewed-by: Mattijs Korpershoek <mkorpershoek at kernel.org>

> ---
> This small series updates U-Boot's contributor guidelines to sync with
> current best practices around Linux kernel patch submission. It should
> make contributing smoother for new developers.
>
> The first patch updates doc/develop/codingstyle.rst to recommend the b4
> tool instead of patman as the standard workflow for preparing and
> sending patches. The revised documentation explains how to create and
> manage series, run style checks, handle cover letters, discover mailing
> list recipients, and collect review tags. This reflects widespread
> adoption of b4 in the Linux kernel community and ensures U-Boot
> contributors follow consistent, upstream-friendly practices.
> ---
> Changes in v2:
>
> * Drop commit changing .b4-config
> * Link to v1: https://lore.kernel.org/r/20250929-b4-docs-v1-0-a56c1a1856c5@linaro.org
> ---
>  doc/develop/codingstyle.rst | 54 ++++++++++++++++++++++++++++++++++++++++-----
>  1 file changed, 48 insertions(+), 6 deletions(-)
>
> diff --git a/doc/develop/codingstyle.rst b/doc/develop/codingstyle.rst
> index bc18b2ebb7b0fc875a299b9e2e5c64c3d6a8e2b3..8ed6babe4556423fe30effc504615e07a841f21a 100644
> --- a/doc/develop/codingstyle.rst
> +++ b/doc/develop/codingstyle.rst
> @@ -23,13 +23,55 @@ The following rules apply:
>    <https://peps.python.org/pep-0008/>`_. Use `pylint
>    <https://github.com/pylint-dev/pylint>`_ for checking the code.
>  
> -* Use patman to send your patches (``tools/patman/patman -H`` for full
> -  instructions). With a few tags in your commits this will check your patches
> -  and take care of emailing them.
> +* Use the `b4 <https://git.kernel.org/pub/scm/utils/b4/b4.git/>`_ tool to prepare and
> +  send your patches. b4 has become the preferred tool to sending patches for many
> +  Linux kernel contributors, and U-Boot ships with a ready-to-use ``.b4-config`` that
> +  targets ``u-boot at lists.denx.de`` and integrates with ``scripts/get_maintainer.pl`` for
> +  recipient discovery.
>  
> -* If you don't use patman, make sure to run ``scripts/checkpatch.pl``. For
> -  more information, read :doc:`checkpatch`. Note that this should be done
> -  *before* posting on the mailing list!
> +  Start a topical series with ``b4 prep`` and keep the commits organised with
> +  ``git rebase -i``. ``b4 prep --edit-cover`` opens an editor for the cover
> +  letter, while ``b4 prep --auto-to-cc`` collects reviewers and maintainers from
> +  both the configuration file and ``scripts/get_maintainer.pl``.
> +
> +  .. code-block:: bash
> +
> +     b4 prep -n mmc-fixes
> +     git rebase -i origin/master
> +     b4 prep --edit-cover
> +     b4 prep --auto-to-cc
> +
> +  Run the style checks before sending. ``b4 prep --check`` wraps the existing
> +  tooling so you see the output from ``scripts/checkpatch.pl`` alongside b4's
> +  own validation. You can always invoke ``scripts/checkpatch.pl`` directly for
> +  additional runs.
> +
> +  .. code-block:: bash
> +
> +     b4 prep --check
> +
> +  When the series is ready, use ``b4 send``. Begin with ``--dry-run`` to review
> +  the generated emails and ``--reflect`` to copy yourself for records before
> +  dispatching to ``u-boot at lists.denx.de``.
> +
> +  .. code-block:: bash
> +
> +     b4 send --dry-run
> +     b4 send --reflect
> +     b4 send
> +
> +  After reviews arrive, collect Acked-by/Tested-by tags with ``b4 trailers -u``
> +  and fold them into your commits before resending the updated series.
> +
> +  .. code-block:: bash
> +
> +     b4 trailers -u
> +     git rebase -i origin/master
> +     b4 send
> +
> +* Run ``scripts/checkpatch.pl`` directly or via ``b4 prep --check`` so that all
> +  issues are resolved *before* posting on the mailing list. For more information,
> +  read :doc:`checkpatch`.
>  
>  * Source files originating from different projects (for example the MTD
>    subsystem or the hush shell code from the BusyBox project) may, after
>
> ---
> base-commit: 26efc940c865a04d345ac9d39f71746fc2821da6
> change-id: 20250929-b4-docs-60da5560f06a
>
> Best regards,
> -- 
> Javier Tia <javier.tia at linaro.org>


More information about the U-Boot mailing list