Sara Souza
7dd131b4c1
xtensa/esp32: Fixes support for HW flow control
2021-06-02 09:55:50 -05:00
Sara Souza
a54fe4ee1e
xtensa/esp32-s2: Add support for serial HW flow control.
2021-06-01 21:37:37 -05:00
Alan C. Assis
929a4a7278
Fix dangling whitespace at the end of line
2021-06-01 07:49:54 +02:00
Sara Souza
f1d653c08c
xtensa/esp32-s2: Adds support for serial driver, lowputc and termios.
2021-06-01 07:49:54 +02:00
Alan C. Assis
06795a221a
Clean ESP32S2 Xtensa files
2021-06-01 07:49:54 +02:00
Abdelatif Guettouche
fccd5fbdd2
esp32s2_allocateheap.c: Use the address of the ROM data from the ROM linker script.
2021-06-01 07:49:54 +02:00
Alan C. Assis
7767acd24a
Add initial ESP32S2 Xtensa support
2021-06-01 07:49:54 +02:00
Xiang Xiao
d7f96003cf
Don't include debug.h from public header file
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-06-01 06:42:02 +09:00
chenwen
1d1dd8512f
esp32&esp32c3/wifi: Support specific channel and bssid scan
2021-05-31 11:09:19 +01:00
Abdelatif Guettouche
45d01ae2a8
arch/xtensa/esp32_emac.c: Call phy_enable_interrupt correctly.
2021-05-28 20:46:27 -03:00
Abdelatif Guettouche
08aa9ce540
arch/xtensa/src/esp32/esp32_rt_timer: Fix typos and re-word some
...
comments.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-27 05:01:54 -07:00
Abdelatif Guettouche
0f3d94e8e8
arch/risc-v/src/esp32c3/esp32c3_rt_timer.h: Add section headers.
...
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-27 05:01:54 -07:00
Abdelatif Guettouche
f24a687f8e
arch/xtensa/src/esp32/esp32_rt_timer.h: Add section headers.
...
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-27 05:01:54 -07:00
Sara Souza
3144a5a272
xtensa: Fixes names of serial functions
2021-05-24 10:04:50 -05:00
Xiang Xiao
001e7c3e76
sched: Don't include nuttx/sched.h inside sched.h
...
But let nuttx/sched.h include sched.h instead to
avoid expose nuttx kernel API to userspace.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-05-24 12:11:53 +09:00
Alan C. Assis
1a84314f5d
xtensa: #ifdef SYMBOL is always true if SYMBOL defined as 0
2021-05-22 08:35:12 -05:00
jordi
ccc8c078f9
xtensa/esp32: Fix warning "is not defined"
...
Detected with "-Werror" flag
2021-05-19 20:03:03 +01:00
Chen Wen
e44ec9e48e
xtensa/esp32: Fix code nxstyle issue
2021-05-19 06:45:42 -03:00
chenwen
f7db743152
xtensa/esp32: Support auto-sleep
2021-05-19 06:45:42 -03:00
chenwen
f50160f0e1
xtensa/esp32: Support tick-less OS
2021-05-19 06:45:42 -03:00
Abdelatif Guettouche
65e9ff5a48
xtensa/esp32/esp32_start.c: Remove an old and unnecessary piece of code.
...
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-19 03:05:52 -05:00
Sara Souza
873293cc3f
xtensa/esp32: Applies REG_MASK to extract a field value
2021-05-05 01:30:03 -07:00
Sara Souza
50daf24242
esp32/esp32-c3: Adds two helpers to extract and include a field value
2021-05-05 01:30:03 -07:00
Sara Souza
cce42d5f74
xtensa/esp32: Reorganize the pins initialization and adds showprogress in __start
2021-05-05 01:30:03 -07:00
Sara Souza
afd6b26232
xtensa/esp32: Replace serialout/in and fixes the fifo counter issue
2021-05-05 01:30:03 -07:00
Abdelatif Guettouche
e24af207f8
esp32/hardware: Include files of the same level by their names only and
...
remove unnecessary includes.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-05 01:28:22 -07:00
Gustavo Henrique Nihei
f8a36f10c3
arch: Uniformize optimization flag setting across architectures
2021-04-29 19:17:16 -07:00
Alan C. Assis
0a0a034a3f
esp32: replace EPS32 typo with ESP32
2021-04-29 18:03:05 -03:00
Gustavo Henrique Nihei
91955be0e1
xtensa/esp32: Change ESP32_RT_TIMER_TASK_PRIORITY comment into help text
2021-04-27 20:45:28 -06:00
Gustavo Henrique Nihei
2b179c5ab3
xtensa/esp32: Add missing default value for CONFIG_ESP32_GPIO_IRQ
2021-04-27 20:45:28 -06:00
Gustavo Henrique Nihei
95a76adc90
xtensa/esp32: Uniformize Kconfig alignment and styling
2021-04-27 20:45:28 -06:00
Gustavo Henrique Nihei
03c8e2d5c7
xtensa/esp32: Remove inconsistent usage of comment command
2021-04-27 20:45:28 -06:00
Gustavo Henrique Nihei
4d3fa83d7a
xtensa/esp32: Remove redundant dependency
2021-04-27 20:45:28 -06:00
chenwen
666d718302
xtensa/esp32: Fix crash issue caused by null pointer operation
2021-04-27 11:00:16 +01:00
Sara Souza
0c440cfdfe
xtensa/esp32: Reorganize the timer logic for wireless use
2021-04-22 21:38:16 -05:00
Dong Heng
fecdd27df3
esp32 & esp32c3: Update Wi-Fi BT and Wi-Fi libraries to fix some issues
2021-04-22 07:34:06 -03:00
Sara Souza
f696364b6a
xtensa/esp32: Adds freerun wrapper
2021-04-21 16:37:39 -03:00
Masayuki Ishikawa
1b00e5d518
spinlock: Remove SP_SECTION
...
Summary:
- SP_SECTION was introduced to allocate spinlock in non-cachable
region mainly for Cortex-A to stabilize the NuttX SMP kernel
- However, all spinlocks are now allocated in cachable area and
works without any problems
- So SP_SECTION should be removed to simplify the kernel code
Impact:
- None
Testing:
- Build test only
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-04-20 22:41:44 -05:00
Masayuki Ishikawa
1a9e7efde5
smp: Remove CONFIG_SMP_IDLETHREAD_STACKSIZE
...
Summary:
- The CONFIG_SMP_IDLETHREAD_STACKSIZE was introduced to optimize
the idle stack size for other than CPU0
- However, there are no big differences between the idle stacks.
- This commit removes the config to simplify the kernel code
Impact:
- All SMP configurations
Testing:
- Tested with ostest with the following configs
- spresense:smp, spresense:rndis_smp
- esp32-devkitc:smp (QEMU), maix-bit:smp (QEMU)
- sabre-6quad:smp (QEMU), sabre-6quad:netnsh_smp (QEMU)
- raspberrypi-pico:smp, sim:smp (x86_64)
Signed-off-by: Masayuki Ishikawa <asayuki.Ishikawa@jp.sony.com>
2021-04-19 21:46:39 -05:00
Abdelatif Guettouche
c1b0ee436c
arch/xtensa/src/esp32/Kconfig: Make bank switching default to disabled.
...
This config is only useful when there is a > 4MB PSRAM and thus needs to
be selected by the user explicitly.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-04-19 07:48:35 -05:00
Xiang Xiao
2335b69120
arch: Allocate the space from the beginning in up_stack_frame
...
arch: Allocate the space from the beginning in up_stack_frame
and modify the affected portion:
1.Correct the stack dump and check
2.Allocate tls_info_s by up_stack_frame too
3.Move the stack fork allocation from arch to sched
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-16 12:41:41 +09:00
Xiang Xiao
8640d82ce0
arch: Rename g_intstackbase to g_intstacktop
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-16 12:41:41 +09:00
YAMAMOTO Takashi
3806803a7a
arch/xtensa/src/esp32/esp32_user.c: Implement L16SI emulation
...
I don't know why this was not necessary before.
Probably I was just lucky about the combination of configs.
Or maybe some of recent changes happened to make the compiler
to use the instruction.
```
400d38f0 <mm_givesemaphore>:
400d38f0: 004136 entry a1, 32
400d38f3: 228c beqz.n a2, 400d38f9 <mm_givesemaphore+0x9>
400d38f5: 0228 l32i.n a2, a2, 0
400d38f7: 52cc bnez.n a2, 400d3900 <mm_givesemaphore+0x10>
400d38f9: fea0b2 movi a11, 254
400d38fc: 000306 j 400d390c <mm_givesemaphore+0x1c>
400d38ff: 00 .byte 00
400d3900: 019232 l16si a3, a2, 2
400d3903: feebe5 call8 400d27c0 <getpid>
400d3906: 0813a7 beq a3, a10, 400d3912 <mm_givesemaphore+0x22>
400d3909: 05a1b2 movi a11, 0x105
400d390c: f241a1 l32r a10, 400d0210 <_stext+0x1f0>
400d390f: ff23e5 call8 400d2b4c <_assert>
400d3912: 1288 l32i.n a8, a2, 4
400d3914: 0828a6 blti a8, 2, 400d3920 <mm_givesemaphore+0x30>
400d3917: 880b addi.n a8, a8, -1
400d3919: 1289 s32i.n a8, a2, 4
400d391b: 000606 j 400d3937 <mm_givesemaphore+0x47>
400d391e: 00 .byte 00
400d391f: 00 .byte 00
400d3920: ffaf82 movi a8, -1
400d3923: 015282 s16i a8, a2, 2
400d3926: 00a082 movi a8, 0
400d3929: 016282 s32i a8, a2, 4
400d392c: 02ad mov.n a10, a2
400d392e: feb125 call8 400d2440 <sem_post>
400d3931: 19a1b2 movi a11, 0x119
400d3934: fd4a96 bltz a10, 400d390c <mm_givesemaphore+0x1c>
400d3937: f01d retw.n
400d3939: 000000 ill
```
2021-04-15 12:18:52 +01:00
YAMAMOTO Takashi
a28de1d681
arch/xtensa/src/esp32/esp32_user.c: Fix S16I/L16LU emulation
...
I misunderstood how imm8 is used to calculate the address.
2021-04-15 12:18:52 +01:00
YAMAMOTO Takashi
51490bad55
modlib: Implement sh_addralign handling
...
I've seen a module with 16 bytes .rodata alignment for xmm operations.
It was getting SEGV on sim/Linux because of the alignment issue.
The same module binary seems working fine after applying this patch.
Also, tested on sim/macOS and esp32 on qemu,
using a module with an artificially large alignment. (64 bytes)
2021-04-14 21:17:07 -05:00
Alan Carvalho
ac5fb7d701
esp32: Fix GPIO Pull-Up/Pull-Down using RTC GPIO
...
Some ESP32 GPIO pins (2, 4, 12, 13, 25, 27, 32) weren't accepting
pull-up/pull-down resistors. These pins are RTC GPIO pins and need
to have pull-up/pull-down configured in the RTC registers.
Co-authored-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-04-11 14:36:02 +01:00
Xiang Xiao
3f67c67aaf
arch: Fix the stack boundary calculation and check
...
All supported arch uses a push-down stack:
The stack grows toward lower addresses in memory. The stack pointer
register points to the lowest, valid working address (the "top" of
the stack). Items on the stack are referenced as positive(include zero)
word offsets from sp.
Which means that for stack in the [begin, begin + size):
1.The initial SP point to begin + size
2.push equals sub and then store
3.pop equals load and then add
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-10 08:39:54 -07:00
Xiang Xiao
0fdde5be26
arch/esp32: Fix error: Mixed case identifier found
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-10 12:00:06 +01:00
Gustavo Henrique Nihei
4d4250fcca
xtensa/esp32: Improve SPI polling to use the entire HW buffer
2021-04-08 23:36:28 -05:00
Matias N
ab206687bb
Replace wrong inclusion of sys/errno.h (toolchain provided) with errno.h
2021-04-07 21:27:06 -05:00