boards/*/esp32: Add instructions on how to use the configs with QEMU.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
This commit is contained in:
Abdelatif Guettouche 2021-02-20 21:24:35 +01:00 committed by Xiang Xiao
parent 86fd6843c3
commit 10fca18b55
4 changed files with 46 additions and 3 deletions

View File

@ -49,7 +49,7 @@ partition table, these are then presented as Github assets and can be downloaded
from: https://github.com/espressif/esp-nuttx-bootloader/releases from: https://github.com/espressif/esp-nuttx-bootloader/releases
Download bootloader-esp32c3.bin and partition-table-esp32c3.bin and place them Download bootloader-esp32c3.bin and partition-table-esp32c3.bin and place them
in a folder, the path to this folder will be used later to program them. This in a folder, the path to this folder will be used later to program them. This
can be: "../esp-bins/esp32c3/" can be: "../esp-bins"
Buttons and LEDs Buttons and LEDs
================ ================
@ -111,8 +111,8 @@ included in the build process.
The esptool.py command to flash all the binaries is `esptool.py --chip esp32c3 The esptool.py command to flash all the binaries is `esptool.py --chip esp32c3
--port /dev/ttyUSBXX --baud 921600 write_flash 0x0 bootloader.bin 0x8000 partition-table.bin 0x10000 nuttx.bin` --port /dev/ttyUSBXX --baud 921600 write_flash 0x0 bootloader.bin 0x8000 partition-table.bin 0x10000 nuttx.bin`
However, this is also included in the build process and we can use build and flash with: However, this is also included in the build process and we can use build and flash with:
`make download ESPTOOL_PORT=/dev/ttyUSBXX ESPTOOL_BINDIR=../esp-bins/esp32c3` `make download ESPTOOL_PORT=/dev/ttyUSBXX ESPTOOL_BINDIR=../esp-bins`
The "../esp-bins/esp32c3" path is the path to the folder containing the bootloader and the The "../esp-bins" path is the path to the folder containing the bootloader and the
partition table for the ESP32-C3 as explained above. partition table for the ESP32-C3 as explained above.
Note that this step is required only one time. Once the bootloader and partition Note that this step is required only one time. Once the bootloader and partition
table are flashed, we don't need to flash them again. So subsequent builds table are flashed, we don't need to flash them again. So subsequent builds

View File

@ -858,6 +858,20 @@ NOTES:
Where x in the watchdog instance. Where x in the watchdog instance.
Using QEMU:
==========
First follow the instructions at https://github.com/espressif/qemu/wiki to build QEMU.
Enable the ESP32_QEMU_IMAGE config found in "Board Selection -> ESP32 binary image for QEMU".
Download the bootloader and the partition table from https://github.com/espressif/esp-nuttx-bootloader/releases
and place them in a directory, say ../esp-bins.
Build and generate the QEMU image: `make ESPTOOL_BINDIR=../esp-bins`
A new image "esp32_qemu_image.bin" will be created. It can be run as:
~/PATH_TO_QEMU/qemu/build/xtensa-softmmu/qemu-system-xtensa -nographic \
-machine esp32 \
-drive file=esp32_qemu_image.bin,if=mtd,format=raw
Things to Do Things to Do
============ ============

View File

@ -67,3 +67,17 @@ Espressif has an offcial Ethernet development board:
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-ethernet-kit.html https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-ethernet-kit.html
Using QEMU:
==========
First follow the instructions at https://github.com/espressif/qemu/wiki to build QEMU.
Enable the ESP32_QEMU_IMAGE config found in "Board Selection -> ESP32 binary image for QEMU".
Download the bootloader and the partition table from https://github.com/espressif/esp-nuttx-bootloader/releases
and place them in a directory, say ../esp-bins.
Build and generate the QEMU image: `make ESPTOOL_BINDIR=../esp-bins`
A new image "esp32_qemu_image.bin" will be created. It can be run as:
~/PATH_TO_QEMU/qemu/build/xtensa-softmmu/qemu-system-xtensa -nographic \
-machine esp32 \
-drive file=esp32_qemu_image.bin,if=mtd,format=raw

View File

@ -77,3 +77,18 @@ Configurations
nsh> gpio -w 14 /dev/gpint3 nsh> gpio -w 14 /dev/gpint3
The pin is configured to as a rising edge interrupt, so after issuing the The pin is configured to as a rising edge interrupt, so after issuing the
above command, connect it to 3.3V. above command, connect it to 3.3V.
Using QEMU:
==========
First follow the instructions at https://github.com/espressif/qemu/wiki to build QEMU.
Enable the ESP32_QEMU_IMAGE config found in "Board Selection -> ESP32 binary image for QEMU".
Download the bootloader and the partition table from https://github.com/espressif/esp-nuttx-bootloader/releases
and place them in a directory, say ../esp-bins.
Build and generate the QEMU image: `make ESPTOOL_BINDIR=../esp-bins`
A new image "esp32_qemu_image.bin" will be created. It can be run as:
~/PATH_TO_QEMU/qemu/build/xtensa-softmmu/qemu-system-xtensa -nographic \
-machine esp32 \
-drive file=esp32_qemu_image.bin,if=mtd,format=raw