Skip to content

Commit

Permalink
doc: esp32: Update the building instruction
Browse files Browse the repository at this point in the history
Cover the sysbuild directions for application build.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
  • Loading branch information
Marek Matej committed Mar 13, 2023
1 parent ad8f2df commit eab746c
Show file tree
Hide file tree
Showing 14 changed files with 855 additions and 0 deletions.
61 changes: 61 additions & 0 deletions boards/riscv/esp32c3_devkitm/doc/index.rst
Expand Up @@ -52,6 +52,67 @@ below to retrieve those files.
Building & Flashing
-------------------

The board is using the MCUboot bootloader as the default 2nd stage bootloader.
Therefore, the bootloader must be build and flashed at least once.

Users has two options while building their applications:

Sysbuild
========

The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the EPS32 SoC.

To build the sample application using sysbuild use the command:

.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: esp32c3_devkitm
:goals: build
:west-args: --sysbuild
:compact:

By default, the ESP32 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images, for ex.
the ULP coprocessor images.

Build directory structure created by Sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:

.. code-block::
build/
├── hello_world
│   └── zephyr
│   ├── zephyr.elf
│   └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::

With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time we clean the build or use pristine build.

For more information about the system build please read the :ref:`sysbuild` documentation.

Manual build
============

During application development, we would like to build & flash as quickly possible.
For that reason, we can still prepare our images one at a time using traditional build.

The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.

.. note::

Remember that bootloader (MCUboot) needs to be flash at least once.

Build and flash applications as usual (see :ref:`build_an_application` and
:ref:`application_run` for more details).

Expand Down
61 changes: 61 additions & 0 deletions boards/riscv/icev_wireless/doc/index.rst
Expand Up @@ -98,6 +98,67 @@ incredibly easy 🎉 following the steps below.
Building and Flashing
=====================

The board is using the MCUboot bootloader as the default 2nd stage bootloader.
Therefore, the bootloader must be build and flashed at least once.

Users has two options while building their applications:

Sysbuild
========

The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the EPS32 SoC.

To build the sample application using sysbuild use the command:

.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: icev_wireless
:goals: build
:west-args: --sysbuild
:compact:

By default, the ESP32 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images, for ex.
the ULP coprocessor images.

Build directory structure created by Sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:

.. code-block::
build/
├── hello_world
│   └── zephyr
│   ├── zephyr.elf
│   └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::

With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time we clean the build or use pristine build.

For more information about the system build please read the :ref:`sysbuild` documentation.

Manual build
============

During application development, we would like to build & flash as quickly possible.
For that reason, we can still prepare our images one at a time using traditional build.

The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.

.. note::

Remember that bootloader (MCUboot) needs to be flash at least once.

For the :code:`Hello, world!` application, follow the instructions below.

.. zephyr-app-commands::
Expand Down
61 changes: 61 additions & 0 deletions boards/riscv/stamp_c3/doc/index.rst
Expand Up @@ -56,6 +56,67 @@ below to retrieve those files.
Building & Flashing
-------------------

The board is using the MCUboot bootloader as the default 2nd stage bootloader.
Therefore, the bootloader must be build and flashed at least once.

Users has two options while building their applications:

Sysbuild
========

The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the EPS32 SoC.

To build the sample application using sysbuild use the command:

.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: stamp_c3
:goals: build
:west-args: --sysbuild
:compact:

By default, the ESP32 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images, for ex.
the ULP coprocessor images.

Build directory structure created by Sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:

.. code-block::
build/
├── hello_world
│   └── zephyr
│   ├── zephyr.elf
│   └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::

With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time we clean the build or use pristine build.

For more information about the system build please read the :ref:`sysbuild` documentation.

Manual build
============

During application development, we would like to build & flash as quickly possible.
For that reason, we can still prepare our images one at a time using traditional build.

The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.

.. note::

Remember that bootloader (MCUboot) needs to be flash at least once.

Build and flash applications as usual (see :ref:`build_an_application` and
:ref:`application_run` for more details).

Expand Down
61 changes: 61 additions & 0 deletions boards/riscv/xiao_esp32c3/doc/index.rst
Expand Up @@ -80,6 +80,67 @@ below to retrieve those files.
Building & Flashing
-------------------

The board is using the MCUboot bootloader as the default 2nd stage bootloader.
Therefore, the bootloader must be build and flashed at least once.

Users has two options while building their applications:

Sysbuild
========

The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the EPS32 SoC.

To build the sample application using sysbuild use the command:

.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: xiao_esp32c3
:goals: build
:west-args: --sysbuild
:compact:

By default, the ESP32 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images, for ex.
the ULP coprocessor images.

Build directory structure created by Sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:

.. code-block::
build/
├── hello_world
│   └── zephyr
│   ├── zephyr.elf
│   └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::

With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time we clean the build or use pristine build.

For more information about the system build please read the :ref:`sysbuild` documentation.

Manual build
============

During application development, we would like to build & flash as quickly possible.
For that reason, we can still prepare our images one at a time using traditional build.

The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.

.. note::

Remember that bootloader (MCUboot) needs to be flash at least once.

For the :code:`Hello, world!` application, follow the instructions below.

.. zephyr-app-commands::
Expand Down
61 changes: 61 additions & 0 deletions boards/xtensa/esp32/doc/index.rst
Expand Up @@ -61,6 +61,67 @@ below to retrieve those files.
Building & Flashing
-------------------

The board is using the MCUboot bootloader as the default 2nd stage bootloader.
Therefore, the bootloader must be build and flashed at least once.

Users has two options while building their applications:

Sysbuild
========

The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the EPS32 SoC.

To build the sample application using sysbuild use the command:

.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: esp32
:goals: build
:west-args: --sysbuild
:compact:

By default, the ESP32 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images, for ex.
the ULP coprocessor images.

Build directory structure created by Sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:

.. code-block::
build/
├── hello_world
│   └── zephyr
│   ├── zephyr.elf
│   └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::

With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time we clean the build or use pristine build.

For more information about the system build please read the :ref:`sysbuild` documentation.

Manual build
============

During application development, we would like to build & flash as quickly possible.
For that reason, we can still prepare our images one at a time using traditional build.

The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.

.. note::

Remember that bootloader (MCUboot) needs to be flash at least once.

Build and flash applications as usual (see :ref:`build_an_application` and
:ref:`application_run` for more details).

Expand Down

0 comments on commit eab746c

Please sign in to comment.