[New Board] ESP32S3-8048s043
Summary
The PR aims to add support to a new board: ESP32S3-8048S043 (aka: Yellow Cheap Board). This hardware version has an LCD with a 4.3-inch display. This initial support covers the minimal features (touchscreen, SPI, button, and I2C).
Impact
None.
Testing
All tests were conducted using the NSH and configured according to the desired feature.
@halyssonJr please fix the Documentation error:
Documentation/platforms/xtensa/esp32s3/boards/esp32s3-8048S043/index.rst:90:Title underline too short.
@halyssonJr please fix the error: https://github.com/apache/nuttx/actions/runs/15766167307/job/44442952375?pr=16558 https://github.com/apache/nuttx/actions/runs/15766167355/job/44443008404?pr=16558
@halyssonJr you need to normalize the board profiles:
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/gpio/defconfig
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/i2c/defconfig
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/nsh/defconfig
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/sdmmc/defconfig
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/spi/defconfig
You can use these commands:
$ ./tools/refresh.sh --silent esp32s3-8048S043:gpio
$ ./tools/refresh.sh --silent esp32s3-8048S043:i2c
...
To avoid passing all board profiles to a single board I modified the refresh script: https://github.com/apache/nuttx/pull/16563
Next time you just could use:
$ ./tools/refresh.sh --silent board:esp32s3-8048S043
please fix ci error: https://github.com/apache/nuttx/actions/runs/15784597491/job/44498208708?pr=16558
still not fix all problem:
< # CONFIG_ARCH_LEDS is not set
Saving the new configuration file
HEAD detached at pull/16558/merge
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: boards/xtensa/esp32s3/esp32s3-8048S043/configs/nsh/defconfig
@xiaoxiang781216 , I opened another PR(https://github.com/apache/nuttx/pull/16571) to fix this issue:
input/gt9xx.c: In function 'gt9xx_i2c_read':
Error: input/gt9xx.c:199:9: error: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
199 | iinfo("reg=0x%x, buflen=%ld\n", reg, buflen);
| ^~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~
| |
| size_t {aka unsigned int}
input/gt9xx.c:199:29: note: format string is defined here
199 | iinfo("reg=0x%x, buflen=%ld\n", reg, buflen);
| ~~^
| |
| long int
| %d
input/gt9xx.c: In function 'gt9xx_read':
Error: input/gt9xx.c:485:9: error: format '%ld' expects argument of type 'long int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
485 | iinfo("buflen=%ld\n", buflen);
| ^~~~~~~~~~~~~~ ~~~~~~
| |
| size_t {aka unsigned int}
input/gt9xx.c:485:19: note: format string is defined here
485 | iinfo("buflen=%ld\n", buflen);
| ~~^
| |
| long int
| %d
Error: input/gt9xx.c:488:12: error: format '%ld' expects argument of type 'long int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
488 | ierr("Buffer should be at least %ld bytes, got %ld bytes\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
489 | outlen, buflen);
| ~~~~~~
| |
| size_t {aka unsigned int}
input/gt9xx.c:488:41: note: format string is defined here
488 | ierr("Buffer should be at least %ld bytes, got %ld bytes\n",
| ~~^
| |
| long int
| %d
Error: input/gt9xx.c:488:12: error: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
488 | ierr("Buffer should be at least %ld bytes, got %ld bytes\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
489 | outlen, buflen);
| ~~~~~~
| |
| size_t {aka unsigned int}
input/gt9xx.c:488:56: note: format string is defined here
488 | ierr("Buffer should be at least %ld bytes, got %ld bytes\n",
| ~~^
| |
| long int
| %d
cc1: all warnings being treated as errors
make[1]: *** [Makefile:109: gt9xx.o] Error 1
make[1]: Target 'libdrivers.a' not remade because of errors.
@halyssonJr would have been nice to have the commits named
boards/xtensa/esp32s3: add new esp32s3-8048S043 board Documentation: add esp32s3-8048S043 board
and add commit messages which explain the change
@jerpelea, I definitely should have done that; next time, I will pay attention to this. Thanks.