esp-idf/components/driver
Darian Leung 72becf31e4 twai: Add errata workaround for listen only mode
This commit adds a workaround for the TWAI listen only mode errata which is
present on the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3. twai_get_status_info()
has also been updated to account for the fact that TEC/REC are frozen in
listen only mode.

Errata Description:

When the TWAI controller is put into listen only mode, it should not influence
the TWAI bus in any way (i.e., should never send a dominant bit). However,
on the targets listed above, the TWAI controller will send dominant bits in an
error frame (i.e., active error frame), even if the controller is set to listen
only mode.

Workaround:

We can force the TWAI controller into the error passive state on startup (by
setting the REC to >= 128). Since the TEC/REC are frozen in listen only mode,
the TWAI controller will remain error passive and only send recessive bits
(i.e., passive error frames), thus will not influence the TWAI bus.

Closes https://github.com/espressif/esp-idf/issues/9157
2023-02-23 12:50:06 +08:00
..
dac driver: pack peripherals 2023-02-02 18:19:58 +08:00
deprecated rmt: fix rmt buffer allocation issue 2023-02-14 14:05:12 +08:00
gpio gpio: h2 support input hysteresis filter 2023-02-20 19:34:48 +08:00
gptimer gptimer: unify clock setting with clk_tree API 2023-02-08 16:30:47 +08:00
i2c driver: pack peripherals 2023-02-02 18:19:58 +08:00
i2s i2s: support bytes_read / bytes_written to be NULL 2023-02-22 02:44:53 +00:00
include/esp_private rmt: expose private API to get channel ID 2023-02-16 11:37:25 +08:00
ledc clk_tree: Add basic clock support for esp32h2 2023-02-20 17:15:02 +08:00
mcpwm mcpwm: modify wrong config name 2023-02-14 11:12:08 +08:00
pcnt driver: pack peripherals 2023-02-02 18:19:58 +08:00
rmt rmt: expose private API to get channel ID 2023-02-16 11:37:25 +08:00
sdio_slave driver: pack peripherals 2023-02-02 18:19:58 +08:00
sdmmc driver: pack peripherals 2023-02-02 18:19:58 +08:00
sigma_delta driver: pack peripherals 2023-02-02 18:19:58 +08:00
spi esp_hw_support: move driver/intr_types.h to esp_hw_support to make it available to all g1+ components 2023-02-15 19:52:06 +08:00
temperature_sensor driver: pack peripherals 2023-02-02 18:19:58 +08:00
test esp32h2: add build test 2023-01-17 10:29:04 +08:00
test_apps Merge branch 'feature/h2_gpio_hysteresis_support' into 'master' 2023-02-21 17:27:56 +08:00
touch_sensor driver: pack peripherals 2023-02-02 18:19:58 +08:00
twai twai: Add errata workaround for listen only mode 2023-02-23 12:50:06 +08:00
uart uart: Fix two TX concurrency issues 2023-02-08 14:24:43 +08:00
usb_serial_jtag driver: pack peripherals 2023-02-02 18:19:58 +08:00
.build-test-rules.yml rmt: expose private API to get channel ID 2023-02-16 11:37:25 +08:00
CMakeLists.txt driver: pack peripherals 2023-02-02 18:19:58 +08:00
Kconfig twai: Add errata workaround for listen only mode 2023-02-23 12:50:06 +08:00
linker.lf sdm: correct concept duty to density 2023-01-06 17:01:48 +08:00
sdkconfig.rename mcpwm: rename MCPWM_ISR_IN_IRAM to MCPWM_ISR_IRAM_SAFE 2022-06-02 15:01:18 +08:00