zhangyuan21
5c1b518314
nuttx/sched: move reprioritize process to public function
2022-11-22 15:29:00 +09:00
zhangyuan21
08f7152d9f
nuttx/sched: remove nxsched_remove_readytorun from up_block_task
...
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
add the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
zhangyuan21
e54b602208
nuttx/sched: remove nxsched_remove_blocked from up_unblock_task
...
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
delete the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
Tiago Medicci Serrano
d492a5b092
esp32s2/i2s: implement I2S receiver module
...
- Add ioctl method to enable allocating the apb buffer.
- Add RX methods to set data width, sample rate, channels and
for receiving data from the I2S peripheral.
- Update the i2schar defconfig to enable the I2S receiver.
- Add nxlooper defconfig to enable testing the RX interface.
- Add specific bindings on ESP32-S2 bringup to enable nxlooper
to work without the need of any specific codec.
2022-11-21 23:46:47 +08:00
Tiago Medicci Serrano
aa208bd52c
esp32/i2s: remove "esp32_" prefix from private functions
2022-11-15 17:01:47 -03:00
Tiago Medicci Serrano
3b5ab27893
esp32/i2s: implement I2S receiver module
...
- Add ioctl method to enable allocating the apb buffer.
- Add RX methods to set data width, sample rate, channels and
for receiving data from the I2S peripheral.
- Update the i2schar defconfig to enable the I2S receiver.
- Add nxlooper defconfig to enable testing the RX interface.
- Add specific bindings on ESP32 bringup to enable nxlooper
to work without the need of any specific codec.
2022-11-15 17:01:47 -03:00
Tiago Medicci Serrano
7ae4152f47
esp32[-s2]/i2s: fix gpio setting when slave mode is selected
2022-11-15 17:01:47 -03:00
Xiang Xiao
a8a25cb09f
arch: Remove xxx_sem[take|give] and call nxmuex_[lock|unlock] directly
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-14 09:34:04 +09:00
anjiahao
a4563b8744
Fix the coding style and typo issue
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-14 09:34:04 +09:00
anjiahao
d07792a343
Initialize global mutext/sem by NXMUTEX_INITIALIZER and SEM_INITIALIZER
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-14 09:34:04 +09:00
Lucas Saavedra Vaz
3f3b5ab75e
arch/xtensa: Add missing SENS registers to ESP32
2022-11-12 02:58:33 +08:00
Tiago Medicci Serrano
6317f6d597
esp32s2/i2s: use internal buffer to handle multiple audio formats
2022-11-07 13:46:44 +08:00
Tiago Medicci Serrano
d98df37f35
xtensa/esp32s2: add i2s_mclkfrequency to set master clock on I2S
2022-11-07 13:46:44 +08:00
Tiago Medicci Serrano
20d8a55181
esp32/i2s: replace nxsem when used as a lock to nxmutex
2022-11-05 00:37:00 +08:00
Tiago Medicci Serrano
9ecc345c02
esp32/i2s: use internal buffer to handle multiple audio formats
2022-11-05 00:37:00 +08:00
yinshengkai
85f727f232
tools: replace INCDIR to Makefile variable
...
In the past, header file paths were generated by the incdir command
Now they are generated by concatenating environment variables
In this way, when executing makefile, no shell command will be executed,
it will improve the speed of executing makfile
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-11-03 19:59:55 +08:00
Gustavo Henrique Nihei
f5c77933cb
arch: Fix linking of multiple preprocessed linker script files
...
Only the last item from the ARCHSCRIPT list was being suffixed with
".tmp".
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-11-02 09:15:27 +08:00
Xiang Xiao
b607f80cf3
arch: Remove the unnecessary nosanitize_address from backtrace source code
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-29 08:26:04 +02:00
Gustavo Henrique Nihei
2a20db7697
xtensa: Define COMMON_CTX_REGS for chips without FPU (e.g. ESP32-S2)
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-10-27 23:28:47 +08:00
Gustavo Henrique Nihei
facdd4f2b9
esp32[-s2/-s3/-c3]: Re-sort SPI Flash configs
...
- Reduce "SPI Flash configuration" menu dependency on SPI Flash driver
just to MTD-related configs.
- Move SPI Flash Mode and Frequency configs to SPI Flash configuration
menu.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-10-27 10:07:40 +08:00
Tiago Medicci Serrano
0bf7afad25
xtensa/esp32: add i2s_mclkfrequency to set master clock on I2S
2022-10-27 00:09:01 +08:00
Tiago Medicci Serrano
16b99ee013
xtensa/esp32s2: add initial support for I2S
...
Add initial support for the I2S peripheral on ESP32S2.
Add I2S character driver and generic I2S audio driver.
Include i2schar defconfig for ESP32-S2-Saola-1 board.
2022-10-22 15:18:35 +08:00
anjiahao
e1ca516488
use SEM_INITIALIZER inside of NXSEM_INITIALIZER
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-10-22 14:50:48 +08:00
anjiahao
5724c6b2e4
sem:remove sem default protocl
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-10-22 14:50:48 +08:00
Gustavo Henrique Nihei
ae8ea29379
xtensa: Save SCOMPARE1 on context switches
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-10-21 11:10:51 +08:00
Alan Carvalho de Assis
0e4c2fed93
esp32s2: Add DMA support to SPI
2022-10-20 10:11:26 +08:00
Alan Carvalho de Assis
a0a7375911
Fix esp32s2_spi.h offset
2022-10-20 10:11:26 +08:00
Lucas Saavedra Vaz
b0f96fc204
esp32/i2c: Add macros to conform with other peripherals and fix typos
...
Fix coding style
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-10-19 20:31:29 -03:00
Lucas Saavedra Vaz
cc04e2137a
esp32/i2s: Reduce MCLK multiple to support existing boards
2022-10-20 00:40:24 +08:00
Xiang Xiao
6b31918b42
Remove the unnecessary cast for main_t, NULL and argv
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-18 08:51:45 +02:00
Alan Carvalho de Assis
0e091b2486
esp32_qencoder: Fix small issues and typos reported by Tiago Medicci
2022-10-18 03:03:28 +08:00
anjiahao
dee38ce3e8
arch: Replace critical section with nxmutex in i2c/spi/1wire initialization
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-17 15:59:46 +09:00
anjiahao
d1d46335df
Replace nxsem API when used as a lock with nxmutex API
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-17 15:59:46 +09:00
Alan Carvalho de Assis
655faa33d4
ESP32: Add support to Quadrature Encoder
...
Reviewed-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-10-17 00:30:53 +02:00
Alan Carvalho de Assis
c297ecaa5d
esp32s2: Add missing ESP32S2 SPIRAM config
2022-10-13 01:41:47 +08:00
Gustavo Henrique Nihei
73678c4839
xtensa/esp32: Allow allocation of user data in SPI RAM
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-10-04 21:32:42 +02:00
Tiago Medicci Serrano
18c715ba92
xtensa/esp32: add initial support for I2S
...
Add initial support for the I2S peripheral on ESP32.
Add I2S character driver and generic I2S audio driver.
Include i2schar defconfig for ESP32-DevKitC board.
2022-09-30 17:23:17 -03:00
Xiang Xiao
e38248ee08
Return -EINVAL for the internal API
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-30 17:54:56 +02:00
Xiang Xiao
bdeaea3742
Remove the unnessary empty line after label
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-30 17:54:56 +02:00
chao an
6bc4baa4ca
arch/makefile: preprocess link script to make configure more flexibly
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-09-29 17:06:47 +08:00
yinshengkai
5c9b094d65
tools: Replace mkallsyms.sh with mkallsyms.py
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-09-29 08:33:04 +08:00
Xiang Xiao
40ef5bc6db
libc: Move queue.h from include to include/nuttx
...
to avoid the conflict with libuv's queue.h
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-26 08:04:58 +02:00
Xiang Xiao
70290b6e38
arch: Change the linker generated symbols from uint32_t to uint8_t *
...
and remove the duplicated declaration
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-24 21:26:56 +02:00
Xiang Xiao
3c1c29f2c4
arch: move non arm g_current_regs defintion to common place
...
to avoid the code duplicaiton
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-21 22:23:11 +02:00
chao an
f23a736c80
nxstyle: correct the file path
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-09-18 01:35:21 +08:00
ligd
e2df52390a
SMP: fix crash when switch to new task which is still running
...
Situation:
Assume we have 2 cpus, and busy run task0.
CPU0 CPU1
task0 -> task1 task2 -> task0
1. remove task0 form runninglist
2. take task1 as new tcb
3. add task0 to blocklist
4. clear spinlock
4.1 remove task2 form runninglist
4.2 take task0 as new tcb
4.3 add task2 to blocklist
4.4 use svc ISR swith to task0
4.5 crash
5. use svc ISR swith to task1
Fix:
Move clear spinlock to the end of svc ISR
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-09-17 17:37:47 +09:00
Xiang Xiao
a7b3217c37
boards/arch: Remove FAR from 32bit/64bit arch
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-16 10:22:12 +02:00
ligd
a3f9bd3786
backtrace: fix busy loop backtrace
...
Situation:
1. user call assert
2. crash in assert
3. crash happend, do backtrace
4. backtrace interrupt stack successful
5. busy loop backtrace user stack with CURRENT_REGS
Fix:
use rtcb->regs instead
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-09-10 12:48:11 +08:00
Victor Benso
2892f18f15
Fix some register's values, enable TWAI extended registers and add a missing prototype.
...
Also, replaced critical_sections with spinlocks.
2022-09-09 15:30:35 +08:00
Xiang Xiao
e17b678a16
compiler.h: Rename inline_function to always_inline_function
...
reserve inline_function macro for inline keyword
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-07 10:24:04 +02:00