Commit Graph

656 Commits

Author SHA1 Message Date
Eren Terzioglu
4033018a72 xtensa/esp32s3: Add XTWDT support 2023-11-14 19:42:33 -03:00
Eren Terzioglu
d92a7011fd xtensa/esp32s3: Add RWDT support 2023-11-13 21:04:30 -03:00
halyssonJr
e1274d1c42 fix backlight GPIO, add backlight control, and add LVGL defconfig 2023-11-11 20:04:51 -08:00
chenwen@espressif.com
b6e09955dd xtensa/esp32s3: Support multiple PHY init data bin
1. If CONFIG_ESP32S3_PHY_INIT_DATA_IN_PARTITION and CONFIG_ESP32S3_SUPPORT_MULTIPLE_PHY_INIT_DATA are enabled,
PHY initialization data (PHY initialization data is used for RF calibration) will be loaded from a partition.

2. The corresponding PHY init data type can be automatically switched according to the country code,
China's PHY init data bin is used by default, country code can be modified through the wapi command: wapi country <ifname> <country code>.

Signed-off-by: chenwen@espressif.com <chenwen@espressif.com>
2023-11-10 15:55:14 -03:00
chenwen@espressif.com
cc10c54f6c xtensa/esp32s3: Support partition and OTA device
Signed-off-by: chenwen@espressif.com <chenwen@espressif.com>
2023-11-10 15:55:14 -03:00
Tiago Medicci Serrano
18718316dc esp32/ble: enable the BLE interrupt during a SPI flash operation
This commit sets the BLE's interrupt as a IRAM-enabled interrupt,
which enables it to run during a SPI flash operation. This enables
us to create a cache to off-load semaphores and message queues
operations and treat them when the SPI flash operation is finished.
By doing that, we avoid packet losses during a SPI flash operation.
2023-11-10 09:11:35 +08:00
Tiago Medicci Serrano
b25793ebac esp32/spiflash: Make it similar to ESP32-S3 by removing cache state 2023-11-10 09:11:35 +08:00
Tiago Medicci Serrano
57b8fc9954 esp32/irq: Allow IRAM ISRs to run during SPI flash operation
This commit provides an interface to register ISRs that run from
IRAM and keeps track of the non-IRAM interrupts. It enables, for
instance, to avoid disabling all the interrupts during a SPI flash
operation: IRAM-enabled ISRs are, then, able to run during these
operations.

It also makes the code look more similar to the ESP32-S3 SPI flash
implementation by creating a common `esp32_spiflash_init` that is
responsible to create the SPI flash operation tasks. The function
intended to initialize the SPI flash partions was, then, renamed to
`board_spiflash_init`.
2023-11-10 09:11:35 +08:00
Eren Terzioglu
9997a858e2 xtensa/esp32s2: Add SPI slave support 2023-11-10 00:34:39 +08:00
Eren Terzioglu
77df430f30 xtensa/esp32s2: Add rtc heap support 2023-11-09 23:58:30 +08:00
Dong Heng
c655870b22 boards/esp32s3: Link stack checking function and data to SRAM when enable flash or PSRAM driver
During PSRAM initialization and flash operations, the Cache needs to be disabled.
So all data and code for the aforementioned scope is required to be placed in Internal RAM.
2023-11-09 13:27:31 +01:00
chenwen@espressif.com
5239d01dba xtensa/esp32s3: Disable psram as task stack
1. Disable psram as task stack to avoid system blocking.
2. Add some function comments.
2023-11-08 16:25:57 -03:00
chenwen@espressif.com
8d94c1b3cb xtensa/esp32s3: Support malloc from external RAM and internal RAM
Enables the allocation of the entire Userspace heap into SPI RAM and reserving the Internal RAM exclusively for the Kernel heap.
2023-11-08 16:25:57 -03:00
simbit18
8fa6a29503 Fix Kconfig style
Remove extra TABs
Remove spaces from Kconfig
Add comments
2023-11-08 22:58:26 +08:00
Tiago Medicci Serrano
59107e5573 esp32s3: Fix issue regarding IRAM-enabled ISRs by fixing the linker
After https://github.com/apache/nuttx/pull/11007/ was merged, the
path for some files changed, requiring the linker to be fixed to
make it run from the internal memory once again.
2023-11-06 18:41:34 -03:00
dongjiuzhu1
4068f11129 binfmt/elf: Select ARCH_USE_TEXT_HEAP if ARCH_HAVE_TEXT_HEAP
Using up_textheap_memalign to allocate memory if arch support textheap
for loading section.

The default system heap does not support execution permissions,
so up_textheap_memalign allocation is required.

this patch can fix issue about #11043

update esp32 elf config:
remove -CONFIG_ARCH_USE_TEXT_HEAP=y becuase ARCH_CHIP_ESP32 select
ARCH_HAVE_TEXT_HEAP

Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2023-10-27 15:42:02 +09:00
raiden00pl
56529d2944 Documentation: migrate the rest boards
- migrated /README are removed from /boards

- there are a lot of READMEs that should be further converted to rst.
  At the moment they are moved to Documentation/platforms and included in rst files
2023-10-26 18:13:34 -03:00
chao an
3cadf6642a kernel: replace all usleep to nxsig_usleep in kernel space
syscall cannot be called from kernel space

Signed-off-by: chao an <anchao@xiaomi.com>
2023-10-25 15:46:03 +08:00
Tiago Medicci Serrano
0616796185 esp32-devkitc/ble: Enable SMP for BLE defconfig
This defconfig also pins the HCI TX thread to the same core of the
BLE task.
2023-10-24 22:41:44 +08:00
Alan Carvalho de Assis
95800a7f54 boards: Rename shiftgame to brickmatch
This patch will rename the shiftgame to brickmatch and will add
support to initialize brickmatch automatically on esp32-devkitc.
2023-10-24 13:54:32 +08:00
Alan Carvalho de Assis
41a6adf93f esp32: Add support to gesture and APA102 as LCD 2023-10-24 13:54:32 +08:00
halyssonJr
48a878fd06 Adding initial support to board esp32-2432S028, is a board with SD Card, RGB LED, output for speak and display LCD
Signed-off-by: halyssonJr <halysson1007@gmail.com>
2023-10-22 00:57:36 +08:00
Alan Carvalho de Assis
b95fd6a573 esp32: Add wifishare board config and documentation
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2023-10-20 09:46:21 +08:00
Dong Heng
1cb17b8a6a boards/esp32s3-box: Support hardware version 3
config/lvgl: For old ESP32-S3-BOX board
config/lvgl-3: For new ESP32-S3-BOX-3 board
2023-10-17 17:32:32 +08:00
Marco Casaroli
0f56d3428b feat(esp32s3-eye): lcd defconfig 2023-10-12 16:57:04 -04:00
Marco Casaroli
e5b4b58f96 feat(esp32s3-eye): i2c defconfig 2023-10-12 16:57:04 -04:00
Marco Casaroli
effab1bd61 feat(esp32s3-eye): SPI and LCD
LCD is connected to SPI2 and uses DC signalling.
2023-10-12 16:57:04 -04:00
Marco Casaroli
20b5d2b84c fix(esp32s3-eye): unexpose backlight GPIO
This IO is not exposed in any headers and it is only used for LCD.

So we don't expose it as gpio device.
2023-10-12 16:57:04 -04:00
Marco Casaroli
b7bc0e542c fix(esp32s3-eye): spiflash declaration 2023-10-12 16:57:04 -04:00
Marco Casaroli
09ee163d37 feat(esp32s3-eye): I2C 2023-10-12 16:57:04 -04:00
Marco Casaroli
e99966ec70 chore(esp32s3_board_i2c): suppress warning
If only I2C1 is configured but not I2C0, gcc is giving a warning,
so we suppress it.
2023-10-12 16:57:04 -04:00
Marco Casaroli
ef739161b7 feat(esp32s3-eye): gpio defconfig
Add a defconfig for exposing the gpio and buttons in the
esp32s3-eye board.
2023-10-12 01:39:28 +08:00
Marco Casaroli
8611003c98 feat(esp32s3-eye): buttons
This adds button support for the esp32-s3-eye board
2023-10-12 01:39:28 +08:00
Marco Casaroli
5fb2535354 feat(esp32s3-eye): gpio
This adds the gpio driver and configuration to the esp32-s3-eye
board.
2023-10-12 01:39:28 +08:00
Marco Casaroli
79e5d88f97 feat(esp32s3-eye): wireless
Enable wifi and ble on board_bringup as we do with the DevkitC
2023-10-11 18:30:07 +08:00
Tiago Medicci Serrano
a71a3258b7 esp32s3/ble: enable the BLE interrupt during a SPI flash operation
This commit sets the BLE's interrupt as a IRAM-enabled interrupt,
which enables it to run during a SPI flash operation. This enables
us to create a cache to off-load semaphores and message queues
operations and treat them when the SPI flash operation is finished.
By doing that, we avoid packet losses during a SPI flash operation.
2023-10-05 11:25:43 +08:00
Tiago Medicci Serrano
0ddb64555a esp32s3/irq: Allow IRAM ISRs to run during SPI flash operation
This commit provides an interface to register ISRs that run from
IRAM and keeps track of the non-IRAM interrupts. It enables, for
instance, to avoid disabling all the interrupts during a SPI flash
operation: IRAM-enabled ISRs are, then, able to run during these
operations.
2023-10-05 11:25:43 +08:00
Eren Terzioglu
ded321a515 xtensa/esp32s2: Add support to TWAI/CANBus controller 2023-09-28 09:35:08 +08:00
Dong Heng
c805b8f3c1 boards/esp32s3-box: Add ESP32-S3-BOX development board basic BSP
1. bringup
2. reset
3. board button
4. board SPI
5. board touchscreen
6. board LCD
2023-09-25 12:51:43 +08:00
TaiJu Wu
707dd12090 fix: disable esp32s3-devkit/ksta_softap spinlock
Link time happened error when CI/CD test.
ref: https://github.com/apache/nuttx-apps/pull/2076

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2023-09-21 10:34:59 -04:00
Dong Heng
6ac28d5526 xtensa/esp32s3: LCD controller driver 2023-09-19 11:38:05 +08:00
Xiang Xiao
8dbe86084e Remove FAR from source code under 32bit arch and board
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-09-16 19:12:13 +03:00
chenwen@espressif.com
827c2df889 xtensa/esp32s3: Fix octal lines mode SPIRAM blocking issue
Signed-off-by: chenwen@espressif.com <chenwen@espressif.com>
2023-09-15 20:40:52 +03:00
Tomáš Pilný
103270be1d esp32/rmt: Improve comments in ESP32's RMT peripheral 2023-09-12 17:44:42 +08:00
Tomáš Pilný
b5a1dd2eec boards/esp32-devkitc: Renamed wifi_smp_rmt to rmt
Removed wifi_smp_rmt config for ESP32

Replaced RMT defconfig with generated file
2023-09-12 17:44:42 +08:00
Tiago Medicci Serrano
1f1c793fd5 boards/esp32s3-devkit: Add board GPIO support
The board-level GPIO support is different from the already existing
button and LEDC support because it enable us to register the GPIO
pins as devices in `/dev/gpioX`. Some applications are able to use
this interface to read and write the GPIO pins.

Documentation was added regarding its usage. Please check
`Documentation/platforms/xtensa/esp32s3/boards/esp32s3-devkit/index.rst`
2023-09-12 16:22:15 +08:00
Eren Terzioglu
cf395cf3fb xtensa/esp32: Add twai defconfigs to esp32 2023-09-07 16:59:44 -03:00
Eren Terzioglu
a26996fb3b xtensa/esp32s3: Add support to TWAI/CANBus controller 2023-09-08 01:49:43 +08:00
Tiago Medicci Serrano
c92b3a90ac esp32s3-devkit: Provide audio support for ESP32-S3-DevKitC-1
Provide initial support for audio through the I2S peripheral to the
CS4344 audio codec on ESP32-S3-DevKitC-1 board.

Please check documentation for usage examples.
2023-09-05 13:33:05 +08:00
Alan Carvalho de Assis
c27c33e9a9 Run refresh.sh to update all board configs 2023-09-02 14:45:44 +08:00