Petro Karashchenko
0c28094059
arch/xtensa/esp32: fix crash in BLE startup
...
ROM symbols provided by linker are placeholders for addresses
and not a pure addresses, so we need to read data pointed by
ROM symbols instead of using those as pure addresses.
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-04-24 09:35:58 -07:00
chao an
b8780fe906
arch/arm: relax compiler check for workaround with "GCC 12.2"
...
1. relax compiler check for workaround with "GCC 12.2"
2. export GCCVER to environment
Signed-off-by: chao an <anchao@xiaomi.com>
2023-04-24 19:00:52 +03:00
Xiang Xiao
51dc67ad5f
fs: Add g_ prefix for all global file_operations instances
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-04-24 16:13:29 +02:00
YAMAMOTO Takashi
0066bf80d2
esp32: enable LIBC_ARCH_ATOMIC
...
fixes a build issue in https://github.com/apache/nuttx-apps/pull/1723
2023-04-24 10:12:57 +08:00
Lucas Saavedra Vaz
bdfe31e850
boards/xtensa/esp32: Add ESP32-PICO-KIT support
2023-04-22 01:23:13 +08:00
Dong Heng
45bba6e761
xtensa/esp32: ESP32 not use IMEM in user heap mode
2023-04-18 11:03:55 -03:00
Tiago Medicci Serrano
869aee6a78
xtensa/sigdeliver: fix signal deliver when task is running
...
The Inter-Processor Interrupt that pauses the other CPU generates
a level-1 interrupt which sets the PS.EXCM. This level-1 interrupt
is treated as an Exception and the bit PS.EXCM bit is automatically
reset on return from Exception. However, this is not the case here
because we are changing the execution to the signal trampoline.
Restoring the PS register with the PS.EXCM bit set would cause any
other exception to deviate execution to the DEC (double exception
vector), avoiding it to be treated correctly. According to the
xtensa ISA: "The process of taking an interrupt does not clear
the interrupt request. The process does set PS.EXCM to 1, which
disables level-1 interrupts in the interrupt handler. Typically,
the PS.EXCM is reset to 0 by the handler, after it has set up the
stack frame and masked the interrupt." Clean the saved PS.EXCM to
1) avoid an exception from being properly treated and 2) avoid
interrupts to be masked while delivering the signal.
2023-04-15 08:19:30 +09:00
chenwen@espressif.com
8df0a4d9ef
xtensa/esp32: Add support for universal mac addresses
...
Signed-off-by: chenwen@espressif.com <chenwen@espressif.com>
2023-04-13 09:43:30 -03:00
wangming9
a7fc26124d
arch/arm64: the arm64 perf interface supports pmu
...
Summary:
- Support arm64 pmu api, Currently only the cycle counter function is supported.
- Using ARM64 PMU hardware capability to implement perf interface, modify all
perf interface related code.
- Support for pmu init under smp.
Signed-off-by: wangming9 <wangming9@xiaomi.com>
2023-04-10 16:23:49 -03:00
Tiago Medicci Serrano
b6e92fa16d
esp32s3/wifi: call softAP callback when Wi-Fi driver TX is done
...
In one of the previous code revision, the '#ifdef' for calling the
softAP callback was thrown away.
2023-04-06 20:58:58 +03:00
Dong Heng
a51e102a41
xtensa/esp32: Make asprintf and lib_free corresponding
2023-04-06 20:57:19 +03:00
Tiago Medicci Serrano
00c3463426
arch/xtensa: Remove FAR qualifier for Xtensa-specific files
...
This PR intends to remove all references to the FAR qualifier from
Xtensa files. FAR is defined as nothing on both architectures.
2023-04-06 14:36:26 -03:00
Tiago Medicci Serrano
89b966a4f5
esp32/wifi: notify networking layer about the carrier status
2023-04-05 10:26:27 -03:00
Tiago Medicci Serrano
eb01b66978
esp32/wifi: fix typos, goto and macro definitions
2023-04-05 10:26:27 -03:00
Tiago Medicci Serrano
49d43a35b9
esp32/wifi: set Wi-Fi driver parameters only when needed
...
This commit fixes #7857 and #7193 by saving Wi-Fi parameters and
set them at once, avoiding unknown behaviors of the Wi-Fi driver.
This commit also enables setting the auth of the STA/softAP modes
while connecting to/providing the wireless network.
2023-04-05 10:26:27 -03:00
Alan Carvalho de Assis
c5145257fe
esp32: Add Ai-Thinker ESP32-A1S module
2023-03-28 20:58:36 +03:00
Lucas Saavedra Vaz
6227cd4fd4
boards/xtensa/esp32s2-kaluga-1: Add touch pad support
2023-03-26 12:59:37 -03:00
Dong Heng
663b4c4f34
xtensa/esp32: Tasks use PSRAM as stack can do SPI flash read/write/erase/map/unmap
2023-03-23 09:26:09 -03:00
Xiang Xiao
901cd599b1
arch: Remove MIN macro definition
...
use the definition from sys/param.h instead
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-03-22 17:26:37 -03:00
Petro Karashchenko
33a4a61cfb
arch/xtensa/esp32: Workaround -Wmaybe-uninitialized warning with "GCC 12.2"
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-03-21 21:59:30 -03:00
Gustavo Henrique Nihei
d4e6d9ab77
xtensa/esp32: Update bootloader patch to recent ESP-IDF version
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-20 21:14:00 +01:00
ligd
bb281eedfa
cache: add up_get_xcache_linesize() support
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2023-03-20 17:17:22 +08:00
Tiago Medicci Serrano
7b807a8540
esp32-esp32c3/wifi: remove naming inconsistencies
...
* Remove the 'COEXISTENCE' suffix from Wi-Fi's STA + SoftAP mode.
Coexistence usually refers to Wi-Fi + BLE, instead of Wi-Fi's
operation mode;
* Remove commented debug code;
* Remove outdate function descriptions;
2023-03-16 19:07:25 +01:00
Tiago Medicci Serrano
0ca7ede228
esp32s3/wifi: fix ability to connect to open networks
2023-03-16 19:07:25 +01:00
Tiago Medicci Serrano
8ac74e5540
esp32s3/wifi: fix driver parameter setting only when needed
2023-03-16 19:07:25 +01:00
Tiago Medicci Serrano
d4b11a960f
esp32s3/wifi: add support to softAP (softAP and softAP + STA mode)
2023-03-16 19:07:25 +01:00
zhangyuan21
12bb4f04f1
arch: fixed error in the calculation of nwords caused an out of bounds
...
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-03-13 16:12:11 +09:00
Tiago Medicci Serrano
40319b9c4c
esp32s3/wifi: move Wi-Fi-related build recipe to a separate file
2023-03-10 10:59:14 +02:00
Tiago Medicci Serrano
8f2cdc4e60
esp32s3/wifi: add support for Wi-Fi (Station mode)
...
1) Wi-Fi driver libs from Espressif ESP-IDF release/v5.0;
2) Station mode only;
3) WPA2-PSK and WPA3-SAE enabled;
Not yet supported (WIP):
- SoftAP mode;
- 802.11k, 802.11v and 802.11R;
- Power Save mode;
- BLE Coexistance;
2023-03-10 10:59:14 +02:00
Tiago Medicci Serrano
1fc73087da
esp32s3: add reset/shutdown handler to run registered callbacks
2023-03-10 10:59:14 +02:00
Gustavo Henrique Nihei
1f54c024da
espressif: Fix download of IDFboot binaries
...
It was broken after #8759 , which erroneously substituted with MCUboot
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-08 15:55:35 -03:00
Karel Kočí
62661600b2
treewide: add DOWNLOAD variable as unification of curl call
...
This is a followup to the commit
03b164f59c
.
2023-03-08 17:05:05 +08:00
Gustavo Henrique Nihei
312d6223d3
xtensa: Remove non-supported options from CPUs' specs
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-04 12:56:58 +08:00
Gustavo Henrique Nihei
bf9951f939
xtensa/esp32: Move attribution to CMN_ASRCS to common makefile
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-04 12:56:58 +08:00
Dong Heng
f47cb67da6
xtensa/common: Fix Xtensa interrupt stack context restore issue
2023-02-28 16:36:55 -03:00
Huang Qi
8a389a06e1
Don't download tarball if a local git repo found
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-02-27 23:55:23 +08:00
Xiang Xiao
2c5f653bfd
Remove the tail spaces from all files except Documentation
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-26 13:24:24 -08:00
Tiago Medicci Serrano
173212ebc9
esp32s3: Define syscall table to enable using ROM functions
2023-02-24 04:06:50 +08:00
Xiang Xiao
8b4ecac6c2
libc: Move math library from libs/libc/math to libs/libm/libm
...
to prepare the support of other implementation e.g.:
https://github.com/JuliaMath/openlibm
https://gitlab.com/gtd-gmbh/libmcs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-23 10:40:07 +02:00
Fotis Panagiotopoulos
85ceb7920e
Typo fixes.
2023-02-17 11:17:11 -03:00
Lucas Saavedra Vaz
1fb6dcec3b
arch/xtensa/esp32s2: Fix function header
2023-02-09 02:39:54 +08:00
Lucas Saavedra Vaz
b29198a62a
arch/xtensa/esp32s3: Add support for touch pad interrupts
2023-02-09 02:39:54 +08:00
Ville Juven
9ac3e841da
group_addrenv: Fix call to group_addrenv for targets that don't need it
2023-02-09 00:14:52 +08:00
Alan Carvalho de Assis
63a847ebca
esp32s3-devkit: Add support LED PWM initialization
2023-02-08 11:02:19 +08:00
Alan Carvalho de Assis
453d9688c7
esp32s3: Add support to PWM using LEDC
2023-02-08 11:02:19 +08:00
Alan Carvalho de Assis
94970f32d7
esp32s2-saola-1: Add initialization to LEDC PWM
2023-02-08 10:56:32 +08:00
Alan Carvalho de Assis
39729bb635
esp32s2: Add support to LEDC PWM
2023-02-08 10:56:32 +08:00
Lucas Saavedra Vaz
d7b66adbeb
arch/xtensa/esp32s3: Add support for RTC IRQs
2023-02-08 10:56:15 +08:00
Lucas Saavedra Vaz
21d9163aae
arch/xtensa/esp32s2: Add support for touch pad interrupts
2023-02-07 12:19:41 +08:00
Lucas Saavedra Vaz
247aad82f2
arch/xtensa/esp32s2: Fix touch function typo
2023-02-07 12:19:41 +08:00
Nathan Hartman
5f9cb6faf4
drivers/serial: Fix docstrings on UART interrupt handlers
2023-02-07 04:41:36 +08:00
Lucas Saavedra Vaz
1e3af48fff
arch/xtensa/esp32s2: Add support for RTC IRQs
2023-02-04 18:28:10 -03:00
chao an
4c8d244fae
sched/getpid: replace syscall getpid/tid/ppid() to kernel version
...
NuttX kernel should not use the syscall functions, especially after
enabling CONFIG_SCHED_INSTRUMENTATION_SYSCALL, all system functions
will be traced to backend, which will impact system performance.
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-02 10:33:01 +08:00
Gustavo Henrique Nihei
e6b204f438
nuttx: Use MIN/MAX definitions from "sys/param.h"
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-02-01 23:47:44 +08:00
zhuyanlin
96a70b908f
arch:xtena: modify timer interrupt level large to XCHAL_IRQ_LEVEL level.
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2023-02-01 14:04:44 +08:00
Lucas Saavedra Vaz
f07885541c
arch/xtensa/esp32: Propagate RTC IRQ status register to lower levels
2023-02-01 00:45:52 +08:00
Xiang Xiao
9f027208d4
fs: Add model field to geometry and mtd_geometry_s
...
the model is very useful to track the device info
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-31 11:50:28 -03:00
yinshengkai
3f97a87162
tools: add separate flags parameter for COMPILE/COMPILEXX
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-01-31 13:42:33 +08:00
zhangyuan21
e6d2f0623a
backtrace: use CURRENT_REGS when in interrupt context
...
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-01-29 02:48:00 -08:00
Alan Carvalho de Assis
e0cb643545
Update arch/xtensa/src/esp32s3/esp32s3_rng.c
...
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-27 13:16:35 +08:00
Alan Carvalho de Assis
2d635be05f
Update arch/xtensa/src/esp32s3/esp32s3_rng.c
...
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-27 13:16:35 +08:00
Alan Carvalho de Assis
b27351828a
esp32s3: Add RNG driver
...
Fix multiplier noticed by Tiago
Co-author: Tiago Medicci <tiago.medicci@espressif.com>
2023-01-27 13:16:35 +08:00
chao an
931a4f6969
arch/EXTRA_LIBS: link all staging library
...
Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-27 01:08:26 +02:00
Lucas Saavedra Vaz
eee4396b06
arch/xtensa/esp32: Add support for touch pad interruptions
2023-01-26 14:33:08 -03:00
Lucas Saavedra Vaz
c4aa37ee2f
arch/xtensa: Fix 'interruption' typos
2023-01-26 14:33:08 -03:00
Lucas Saavedra Vaz
07fd4b564d
arch/xtensa/esp32: Fix SENS_TOUCH_XPD_WAIT definition
2023-01-26 14:33:08 -03:00
zhuyanlin
3c6b844fcd
arch:xtensa:toolchain: add -Wno-atmoic-alignment flags for xcc
...
see a bug here:
https://bugs.llvm.org/show_bug.cgi?id=43603
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2023-01-26 17:11:54 +02:00
Petro Karashchenko
c4cf1eeb2b
arch/xtensa/esp32s2: switch from semaphore to mutex for exclusive access
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-26 10:24:05 +08:00
Petro Karashchenko
c415ce518f
arch/xtensa/esp32: style fixes in SPI driver
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-26 10:24:05 +08:00
Xiang Xiao
d7ee492fc4
board/arch: Remove FAR decorator
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-25 13:05:07 +02:00
Gustavo Henrique Nihei
e77e12e145
espressif: Stabilize MCUboot support on Espressif chips
...
MCUboot support is no longer behind EXPERIMENTAL for the following
chips:
- ESP32
- ESP32-S2
- ESP32-S3
- ESP32-C3
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-01-24 08:44:22 +09:00
Lucas Saavedra Vaz
39162ebafb
arch/xtensa/esp32: Add support for RTC IRQs
2023-01-21 12:27:35 +08:00
Alan Carvalho de Assis
2bdb7c0e8d
esp32s2: Add support to EFUSE
2023-01-20 15:41:13 +08:00
Alan Carvalho de Assis
adc5f52fcf
esp32s3: Add support to EFUSE
2023-01-20 15:40:46 +08:00
Max Kriegleder
57034f483d
esp32: fix lower half oneshot for usage with nxsched_oneshot_start
2023-01-20 15:39:47 +08:00
Xiang Xiao
fd64e38072
build: Add STACK_USAGE(-fstack-usage) to assist the stack analysis
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-19 10:35:20 -03:00
Gustavo Henrique Nihei
a4c9da9280
xtensa/esp32: Fix ESP32_SPIRAM_USER_HEAP under Protected mode
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-01-18 17:41:09 +08:00
Gustavo Henrique Nihei
e451b43798
xtensa/esp32: Improve Wi-Fi driver to support MM_KERNEL_HEAP
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-01-18 17:41:09 +08:00
Gustavo Henrique Nihei
705e29fb27
xtensa/esp32: Support allocation of userspace heap into External RAM
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-01-18 17:41:09 +08:00
Dong Heng
f35f32d4ee
xtensa/esp32: Fix SPI bugs
...
1. Fix SPI master/slave clock init/deinit error
2. Fix SPI slave RX process error
2023-01-18 12:23:08 +08:00
Xiang Xiao
f64da13e9b
libxx: Add CXX_STANDARD to select -std=c++??
...
and default to "c++17"
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-16 15:41:57 +02:00
Dong Heng
118222ba46
xtensa/esp32: Partition device supports encryption mode
2023-01-16 09:55:44 -03:00
Alan Carvalho de Assis
97402f9121
esp32: Fix QEnconder reset position and small typo
...
The PCNT RST bit needs to be set to zeroing the counter and then
this same bit needs to be cleared to returning counting.
2023-01-16 09:41:46 +08:00
ssssenai
077ad5b45f
arch: xtensa/esp32: Add esp32_himem_chardev.c
...
Summary:
- It is applicable to esp32 products and uses the himem part
of 8M psram by creating character devices.
Impact:
- None
Testing:
- Use esp32-wrover series products for more than 1000 functional verifications.
2023-01-14 14:07:46 +08:00
Lucas Saavedra Vaz
674b480198
arch/xtensa/esp32s2: Add initial support for touch pad polling
2023-01-12 22:23:42 +08:00
Lucas Saavedra Vaz
749d0dfe84
arch/xtensa/esp32s2: Add RTC GPIOs configuration functions
2023-01-12 22:23:42 +08:00
Lucas Saavedra Vaz
cdd0787b54
arch/xtensa/esp32: Fix typo and check PU/PD registers
2023-01-12 22:23:42 +08:00
Lucas Saavedra Vaz
3dad6b273e
arch/xtensa/esp32s2: Add missing SENS and RTCCNTL registers
2023-01-12 22:23:42 +08:00
Lucas Saavedra Vaz
2b7d8981e2
arch/xtensa/esp32s3: Add initial support for touch pad polling
2023-01-11 02:00:41 +08:00
Lucas Saavedra Vaz
24995f6918
arch/xtensa/esp32s3: Add RTC GPIOs configuration functions
2023-01-11 02:00:41 +08:00
Lucas Saavedra Vaz
c8dd4b068d
arch/xtensa/esp32s3: Add missing registers and definitions
2023-01-11 02:00:41 +08:00
Dong Heng
07342f7957
xtensa/esp32: SPI support to configure as R/W/RW mode
2023-01-11 01:54:36 +08:00
Dong Heng
67ccee2c4f
xtensa/esp32: ESP32 SPI Flash encryption supports 16-bytes align writing
2023-01-10 01:10:10 +08:00
chenwen@espressif.com
eed2cce3f2
xtensa/esp32: Optimize WLAN device buffer
2023-01-07 13:46:37 +08:00
chenwen@espressif.com
933d1a0a80
xtensa/esp32: Add Wi-Fi softap event
2023-01-06 12:25:36 -03:00
Dong Heng
f137a7b552
xtensa/esp32: Fix macro "CONFIG_NETDEV_IOCTL" control range error
2023-01-06 20:40:53 +08:00
Dong Heng
7097cfd000
xtensa/esp32: Add option to enable ETH PHY reset pin
2023-01-06 20:40:53 +08:00
anjiahao
c02fea36d8
arch:change tcbinfo regs num
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2023-01-05 23:36:12 +08:00
Xiang Xiao
779a610ca3
Remove the unnecessary NULL fields in global instance definition of file_operations
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-04 00:32:13 +02:00
Alan Carvalho de Assis
e3748be0e5
esp32s3: Clear the timer interrupt to avoid losing the next one
2022-12-28 09:45:29 +08:00