esp-idf/components/driver/include/driver
Michael (XIAO Xufeng) 3387d751d9 spi: fix the crash when callbacks are not in the IRAM
Introduced in 9c23b8e5 and 4f87a62f. To get higher speed, menuconfig
options are added to put ISR and other functions into the IRAM.  The
interrupt flag ESP_INTR_FLAG_IRAM is also mistakenly set when the ISR is
put into the IRAM. However callbacks, which are wrote by the user, are
called in the master and slave ISR. The user may not be aware of that
these callbacks are not disabled during flash operations. Any cache miss
during flash operation will cause panic.

Essentially IRAM functions and intrrupt flag ESP_INTR_FLAG_IRAM are
different, the latter means not disabling the ISR during flash
operations.  New bus_config flag intr_flags is offered to help set the
interrupt attribute, including priority level, SHARED, IRAM (not
disabled during flash operations).  It introduced a small BREAK to
IDFv3.1 (but the same as IDFv3.0) that the user has to manually set IRAM
flag now (therefore he's aware of the IRAM thing) to void the ISR being
disabled during flash operations.
2018-12-05 10:25:57 +08:00
..
adc2_wifi_internal.h feat(adc2): append adc2 support and api and the lock with WIFI module 2017-10-26 14:35:29 +08:00
adc.h driver(adc): add descriptions for the issue that starting ADC can trigger interrupt of GPIO36 and GPIO39. 2018-05-11 17:08:58 +08:00
dac.h feat(rtc): open adc*(dac)_pad_get_io_num functions to public. 2017-10-24 12:06:14 +08:00
gpio.h driver(gpio) : Fixed the gpio related bug for release v3.1. 2018-07-18 15:36:57 +08:00
i2c.h driver(i2c): enable I2C master hardware filter by default for release/v3.1 2018-11-28 17:38:50 +08:00
i2s.h fix i2s mix result and error code 2018-05-17 10:59:04 +08:00
ledc.h bugfix(ledc): fix bugs reported from unit-test and github. 2018-07-24 13:22:50 +08:00
mcpwm.h feature: add Motor Control PWM(mcpwm) driver 2017-05-12 15:47:59 +08:00
pcnt.h Add some comments in pcnt.h. 2018-07-24 10:46:50 +08:00
periph_ctrl.h refactor(spi): move pin information into soc folder 2018-06-14 11:29:15 +08:00
rmt.h driver(rmt):Add API supports sending uint8_t type data. 2018-05-22 01:55:44 +00:00
rtc_cntl.h driver/rtc: add support for attaching handlers to RTC_CNTL interrupts 2017-07-10 17:21:49 +08:00
rtc_io.h soc: Fix check_long_hold_gpio and move def to soc 2018-06-26 12:47:55 +05:00
sdio_slave.h fix(sdio_slave): improve sdio slave for high speed and 4 bit mode 2018-08-01 15:23:24 +08:00
sdmmc_defs.h sdmmc: enable host auto_stop only for certain commands 2018-07-19 10:23:58 +03:00
sdmmc_host.h sdmmc, sdspi: fix initializers to be C++-compatible, add test 2018-04-23 14:35:13 +08:00
sdmmc_types.h sdmmc: add SDIO support 2018-04-11 11:07:13 +08:00
sdspi_host.h sdmmc, sdspi: fix initializers to be C++-compatible, add test 2018-04-23 14:35:13 +08:00
sigmadelta.h Updated sigma delta API documenation and example 2017-09-25 21:31:09 +02:00
spi_common.h spi: fix the crash when callbacks are not in the IRAM 2018-12-05 10:25:57 +08:00
spi_master.h spi: fix the crash when callbacks are not in the IRAM 2018-12-05 10:25:57 +08:00
spi_slave.h spi: fix the crash when callbacks are not in the IRAM 2018-12-05 10:25:57 +08:00
timer.h docs: fix description of timer_get_alarm_value() 2018-03-19 11:56:57 +08:00
touch_pad.h Merge branch 'bugfix/add_mutex_for_some_touchpad_apis_v3.1' into 'release/v3.1' 2018-08-10 12:18:33 +08:00
uart_select.h Allow VFS file descriptors in select() 2018-05-18 08:06:33 +02:00
uart.h revise the explain of a parameter(brk_len) in uart driver file 2018-05-14 19:47:16 +08:00