mirror of
https://github.com/espressif/esp-idf.git
synced 2026-04-29 11:55:00 +00:00
5cdc107a90
Fixes the custom bootloader README.md so that the example output matches what will actually be output by default in the custom bootloader. Signed-off-by: hasheddan <georgedanielmangum@gmail.com>
53 lines
1.8 KiB
Markdown
53 lines
1.8 KiB
Markdown
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S2 | ESP32-S3 |
|
||
| ----------------- | ----- | -------- | -------- | -------- | -------- |
|
||
|
||
# Bootloader override
|
||
|
||
(See the README.md file in the upper level for more information about bootloader examples.)
|
||
|
||
The purpose of this example is to show how to override the second stage bootloader from a regular project.
|
||
|
||
**NOTE**: Overriding the bootloader is not supported with `Makefile` build system, it is only available with `CMake`.
|
||
|
||
## How to use example
|
||
|
||
Simply compile it:
|
||
```
|
||
idf.py build
|
||
```
|
||
|
||
And flash it with the following commands:
|
||
```
|
||
idf.py flash
|
||
```
|
||
|
||
This custom bootloader does not do more than the older bootloader, it only prints an extra message on start up:
|
||
```
|
||
[boot] Custom bootloader message defined in the KConfig file.
|
||
```
|
||
|
||
## Organisation of this example
|
||
|
||
This project contains an application, in the `main` directory that represents a user program.
|
||
It also contains a `bootloader_components` directory that, as it name states, contains a component that will override the current bootloader implementation.
|
||
|
||
Below is a short explanation of files in the project folder.
|
||
|
||
```
|
||
├── CMakeLists.txt
|
||
├── main
|
||
│ ├── CMakeLists.txt
|
||
│ └── main.c User application
|
||
├── bootloader_components
|
||
│ └── main
|
||
│ ├── component.mk
|
||
│ ├── CMakeLists.txt
|
||
│ ├── ld/
|
||
│ │ └── ...
|
||
│ └── bootloader_start.c Implementation of the second stage bootloader
|
||
└── README.md This is the file you are currently reading
|
||
```
|
||
|
||
As stated in the `README.md` file in the upper level, when the bootloader components is named `main`, it overrides
|
||
the whole second stage bootloader code.
|