Ivan Grokhotkov
2b6c85e182
intr_alloc: don't call ESP_LOG from a critical section
...
Calling ESP_LOG from a critical section leads to abort() in 4.1, and
may also randomly abort() in earlier versions.
Closes FCS-268
2019-12-18 10:11:24 +01:00
Angus Gratton
438d513a95
Merge branch 'master' into feature/esp32s2beta_merge
2019-09-16 16:18:48 +10:00
Mahavir Jain
ebe53416ad
ipc: prevent code getting pulled in for unicore configuration
2019-08-28 12:47:08 +05:30
Angus Gratton
04ae56806c
Merge branch 'master' into feature/esp32s2beta_update
2019-08-08 15:26:58 +10:00
Anton Maklakov
afbaf74007
tools: Mass fixing of empty prototypes (for -Wstrict-prototypes)
2019-08-01 16:28:56 +07:00
suda-morris
cc98b9ef60
add rom for esp32s2beta
2019-06-11 13:06:32 +08:00
suda-morris
2f4c5c51f4
update esp32 component
2019-06-11 13:06:32 +08:00
Konstantin Kondrashov
399d2d2605
all: Using xxx_periph.h
...
Using xxx_periph.h in whole IDF instead of xxx_reg.h, xxx_struct.h, xxx_channel.h ... .
Cleaned up header files from unnecessary headers (releated to soc/... headers).
2019-06-03 14:15:08 +08:00
Sachin Parekh
db8041a67f
intr_alloc: port*_CRITICAL vanilla FreeRTOS compliance
...
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2019-05-13 16:39:19 +05:30
morris
f5b03c9ea3
misc adjustment of esp32 component
2019-04-03 19:57:46 +08:00
Christian Hoene
025deab4d2
esp32: esp_intr_alloc: Fixed issue with level 5 not being called
...
Closes https://github.com/espressif/esp-idf/issues/3039
Merges https://github.com/espressif/esp-idf/issues/3040
2019-03-01 17:11:51 +11:00
Anton Maklakov
ef84773689
intr: fix a type mismatch warning
2018-10-21 15:11:45 +08:00
kooho
bbca0e46ed
driver(interrupt): fix the issue that interrupt might be allocated and freed on different cores
...
closes https://github.com/espressif/esp-idf/issues/2211
2018-09-26 10:31:09 +08:00
Liu Zhi Fu
1c81e4be60
esp32: fix interrupt list insert issue
...
If the allocated interrupt list is not empty and the new item will be inserted
as the header of the list, insert_vector_desc() causes crash because pre is
null. This commit fix this issue.
2018-05-14 14:13:08 +08:00
Deomid Ryabkov
e3282a0cac
Add esp_intr_set_in_iram
...
A function to change "in IRAM" status for an existing interrupt handle, without going through free/allocate of the interrupt.
mOS HW timer implementation requires this to make HW timers safe to re-set from an IRAM ISR.
2017-12-08 05:46:34 +03:00
Jeroen Domburg
740f8a79f0
Add logic to make external RAM usable with malloc()
2017-09-28 17:17:50 +08:00
michael
73ba29e6df
refactor(intr): remove useless tags in the debug log.
2017-09-06 15:20:04 +08:00
michael
c82e51cf79
fix(intr): always assign the same intr to a same source, disable the source only when all the handlers disabled.
...
also document handlers sharing a same source.
TW#13454, https://github.com/nodemcu/nodemcu-firmware/issues/1874
Breaking change: handles assigned to a same source should have the same flag now.
2017-09-06 15:20:01 +08:00
Ivan Grokhotkov
d8b66e5088
soc: release interrupts which are not reserved by timers any more
2017-08-28 11:35:27 +08:00
Alexey Gerenkov
8d43859b6a
esp32: SEGGER SystemView Tracing Support
...
Implements support for system level traces compatible with SEGGER
SystemView tool on top of ESP32 application tracing module.
That kind of traces can help to analyse program's behaviour.
SystemView can show timeline of tasks/ISRs execution, context switches,
statistics related to the CPUs' load distribution etc.
Also this commit adds useful feature to ESP32 application tracing module:
- Trace data buffering is implemented to handle temporary peaks of events load
2017-06-27 20:52:43 +03:00
Tian Hao
09f7cf45dd
component/bt : fix interrupt number conflict
...
1. the typical problem is when push keyboard on serial tool, the bluetooth may stop.
2017-06-15 19:41:54 +08:00
Alexey Gerenkov
04acc88023
esp32: Fixes watchdog problem when printing core dump to uart
...
Also fixes generation of core dumps when flash cache is disabled
2017-02-01 18:39:28 +03:00
Ivan Grokhotkov
f7e2e456e4
intr_alloc: mark inline asm operand as earlyclobber
...
When compiling in release mode, compiler was choosing same register for
oldint and intmask variables, so INTENABLE was never modified.
This effectively broke disabling of non-IRAM interrupts during flash
operations, observed in the existing tests if task watchdog is enabled.
This change adds an extra constraint tells the compiler that output
operand should not be placed into the same register as an input one.
2017-01-18 18:31:06 +08:00
Jeroen Domburg
3168ad10e7
Core timer 2 is unusable for FreeRTOS ticks because it triggers a high-level interrupt. This commit deletes the option to select it.
2017-01-15 11:11:58 +08:00
Ivan Grokhotkov
a2e0c2432e
esp32: sanity check ISR handler address passed into esp_intr_alloc
...
Return ESP_ERR_INVALID_ARG if the handler is not in IRAM (or RTC fast memory)
2017-01-11 11:38:17 +08:00
Jeroen Domburg
11a994d5d8
Calling esp_intr_noniram_[en|dis]able twice is an error, so abort instead of doing an assert which disappears in non-debug mode
2017-01-09 12:04:21 +08:00
Deomid Ryabkov
1597f7a035
Add IRAM_ATTR to esp_intr_{enable,disable}
...
So it's safe to invoke from ISR
Signed-off-by: Jeroen Domburg <jeroen@espressif.com>
2016-12-19 18:49:28 +08:00
Jeroen Domburg
d5c57d1d10
Put ets_isr_* functions into IRAM. Original fns were in ROM so people may expect them to work when flash cache is out.
2016-12-13 13:24:01 +08:00
Jeroen Domburg
78161a1fe3
Replace non-multicore-aware rom funcs with multicore-aware funcs, ESP_LOG->ESP_EARLY_LOG fix, reserve ints used in wireless libs. Fixes WiFi crashing
2016-12-13 13:24:01 +08:00
Jeroen Domburg
2c34ab3374
Mark some interrupts that are now allocated dynamically as free, add int handle param documentation, add local ints test
2016-12-08 12:39:33 +08:00
Jeroen Domburg
9dc908d105
Add test for local interrupts, fix int disable code
2016-12-08 12:39:33 +08:00
Jeroen Domburg
ae8c37e0b6
Add disabling/enabling of shared interrupt, add testcase for interrupts
2016-12-08 12:39:33 +08:00
Jeroen Domburg
32fa94935d
Changes according to merge request
2016-12-08 12:39:33 +08:00
Jeroen Domburg
655fd2986a
Add interrupt allocation scheme / interrupt sharing. Also modifies drivers and examples. Also allows interrupts
...
to be marked specifically as having a handler that's all in IRAM.
2016-12-08 12:39:33 +08:00