morris
37d8abda0b
gdma: add spin lock for gdma channel
...
... because we allow several control functions to be runable under ISR
context
2022-04-08 10:05:01 +08:00
Song Ruo Jing
e13bb580c7
Merge branch 'refactor/gpio_unit_test' into 'master'
...
gpio: Clean up unit tests and enable ci ut on some previously disabled test cases
Closes IDF-4620
See merge request espressif/esp-idf!17417
2022-04-01 18:38:19 +08:00
songruojing
8d84033b8c
gpio: Clean up unit tests and enable ci ut on some previously disabled test cases
...
Eliminate UT_T1_GPIO runner requirement by routing internally through gpio matrix and by setting gpio pins to GPIO_MODE_INPUT_OUTPUT mode for all interrupt related test cases.
2022-03-30 15:11:08 +08:00
morris
bf677182a6
sigmadelta: change gpio number from u8 to int
...
Fix the issue that macro compares unsigned to 0
2022-03-29 11:53:31 +08:00
morris
29e9b5b46a
hw_support: move periph_ctrl from driver to hw_support
2022-03-29 11:53:31 +08:00
Michael (XIAO Xufeng)
80904a5815
Merge branch 'bugfix/spi_free_crash_uninitialized' into 'master'
...
spi: fixed crash when calling spi_bus_free when not initialized
Closes IDFGH-7024
See merge request espressif/esp-idf!17573
2022-03-27 02:31:06 +08:00
Michael (XIAO Xufeng)
bee9b6b9eb
spi: fixed crash when calling spi_bus_free when not initialized
...
introduced in 49a48644e4
Closes: https://github.com/espressif/esp-idf/issues/8642
2022-03-25 01:52:10 +08:00
songruo
38090a0248
gpio: fix GPIO_IS_VALID_(OUTPUT_)GPIO macro
...
... which has the potential of doing bit shift by a negative amount
2022-03-24 21:36:03 +08:00
laokaiyao
f17edba20b
i2s: extract std/pdm/tdm modes
...
Type structures of these modes are defined. Driver and HAL layer are modified to fit these concepts.
2022-03-22 10:14:45 +08:00
Armando (Dou Yiwen)
36457b1346
Merge branch 'refactor/adc_unify_adc_unit' into 'master'
...
adc: adc single driver NG pre-step - unify adc_ll_num_t and adc_unit_t
See merge request espressif/esp-idf!17408
2022-03-18 20:29:36 +08:00
Armando
386363cafd
adc: unify adc_ll_num_t and adc_unit_t
2022-03-18 11:36:50 +08:00
morris
cd10ac50cb
Merge branch 'bugfix/temp_sensor_coexist_issue' into 'master'
...
temp_sensor: avoid coexistence of new and legacy driver
See merge request espressif/esp-idf!17395
2022-03-15 21:43:05 +08:00
morris
4dfbc9ee7b
rmt: remove deprecated functions
2022-03-09 10:58:14 +08:00
morris
21e29f285f
temp_sensor: avoid coexistence of new and legacy driver
2022-03-08 11:57:53 +08:00
Vamshi Gajjela
a9454c9776
Merge branch 'feature/sdmmc_erase_cmd_support' into 'master'
...
[sdmmc] Add erase command support
Closes IDFGH-5947 and IDFGH-5935
See merge request espressif/esp-idf!17054
2022-03-07 21:52:23 +08:00
Simon
4bf4a020a6
Merge branch 'refactor/abstract_temperature_sensor' into 'master'
...
temperature_sensor: Refactor temperature sensor to new APIs (follow rule of driverNG) and support esp32s3
Closes IDF-3665, IDF-3367, and IDF-1793
See merge request espressif/esp-idf!16787
2022-03-07 20:17:39 +08:00
Vamshi Gajjela
ffdbeee9f6
sdmmc: Add erase command-38. Support erase/trim/discard/sanitize
...
options.
Erase command (38) for SD cards allows option for erase/dicard/fule
operation at block level and for MMC cards supports option for
discard/trim at block level. When Sanitize is executed only the
portion of data that was unmapped by a Discard command shall be
removed by the Sanitize command.
Unit test cases added to verify ERASE feature in SD/SDSPI mode.
TRIM/DISCARD/SANITIZE tests for eMMC devices.
Closes https://github.com/espressif/esp-idf/pull/7635
Closes https://github.com/espressif/esp-idf/issues/7623
2022-03-05 16:02:01 +05:30
Ivan Grokhotkov
c8b43ee0c1
Merge branch 'bugfix/sdspi_example_esp32s3' into 'master'
...
examples: sdspi: re-enable for ESP32-S3, add Kconfig options for pins
Closes IDF-4641
See merge request espressif/esp-idf!17067
2022-03-04 18:42:53 +08:00
Cao Sen Miao
b248046bcb
Temperature_sensor: Create new temperature sensor API
2022-03-04 18:13:35 +08:00
Ivan Grokhotkov
6b8e4212be
driver: sdspi: set default DMA channel compatible with S3, C3 or later
2022-03-03 21:40:04 +01:00
morris
0d920a47f7
unit_test: migrate to use pulse_cnt driver
2022-03-03 22:38:32 +08:00
morris
04b3f8b210
pcnt: deprecated as legacy driver
2022-03-03 22:38:32 +08:00
morris
ec8defaa96
pulse_cnt: new driver for PCNT peripheral
2022-03-03 22:38:32 +08:00
laokaiyao
cf353c505a
i2c: support esp32h2
2022-02-23 15:19:37 +08:00
laokaiyao
7da023ceae
i2c: support esp32c2
2022-02-23 15:19:37 +08:00
Michael (XIAO Xufeng)
c1b30491dd
Merge branch 'feature/esp32c3_uart_add_wakeup_event' into 'master'
...
UART: add uart wakeup event for esp32c3 and esp32s3
Closes IDF-3416
See merge request espressif/esp-idf!14482
2022-02-04 17:23:29 +00:00
Song Ruo Jing
3821a09f83
Merge branch 'bugfix/ledc_consecutive_fade' into 'master'
...
ledc: Bugfixes for issues related to fade protection on ESP32
Closes IDFGH-4918 and IDFGH-5565
See merge request espressif/esp-idf!14568
2022-01-26 06:00:59 +00:00
laokaiyao
c4cfb654d2
uart: support light sleep on esp32s3
2022-01-25 17:43:02 +08:00
Chen Yi Qun
56e9920958
uart: add wakeup event for esp32c3
2022-01-25 17:43:02 +08:00
Omar Chebib
473974c8f6
UART & I2C: remove custom ISR registration function
...
Breaking change for v5.0: custom UART ISR and I2C ISR cannot be installed anymore.
2022-01-25 14:46:43 +08:00
songruojing
68e12f7092
ledc: Add ledc_fade_stop API to support stopping the fade operation.
...
Note that ESP32 cannot support this new feature.
2022-01-25 11:19:20 +08:00
songruojing
be2ab09832
ledc: Fix FADE_NO_WAIT mode concurrency problem.
...
Add test cases for fade concurrency issue and fade timing check.
Closes https://github.com/espressif/esp-idf/issues/6710
2022-01-25 11:19:10 +08:00
songruojing
e175086226
ledc: Simplify the procedure to perform a one-time duty update
...
Avoid adding one extra fade cycle when performing a one-time duty update.
Add some notes to ledc_get_duty and ledc_update_duty APIs, so that users
are aware of when the new duty will be effective.
Closes https://github.com/espressif/esp-idf/issues/7288
2022-01-24 19:36:13 +08:00
laokaiyao
cf049e15ed
esp8684: rename target to esp32c2
2022-01-19 11:08:57 +08:00
morris
a298e44b33
gptimer: added a section to describe the thread safety
2022-01-18 10:06:26 +08:00
morris
5deb83b12d
gptimer: new driver for previous timer group
2022-01-07 14:44:50 +08:00
morris
869bed1bb5
soc: don't expose unstable soc header files in public api
2022-01-06 23:10:22 +08:00
morris
8cdcb4e291
rmt: move RMT item definition from soc to driver
2022-01-06 21:43:12 +08:00
morris
090b4aa1f3
adc: make adc2_wifi share resource private
2022-01-04 13:59:24 +08:00
morris
1f06c1bd1b
Merge branch 'feature/fast_gpio_esp32c2' into 'master'
...
fast gpio support on esp32c2/esp8684
See merge request espressif/esp-idf!16531
2021-12-29 07:01:41 +00:00
morris
5624dffc52
Merge branch 'contrib/github_pr_8139' into 'master'
...
ledc.h - fix extern "C" to include ledc_cb_register() (GitHub PR)
Closes IDFGH-6484
See merge request espressif/esp-idf!16557
2021-12-28 03:50:22 +00:00
morris
f028107359
fast_gpio: support esp32c2/esp8684
2021-12-28 10:18:18 +08:00
Emil Muratov
d4de08182e
ledc.h - fix extern "C" to include ledc_cb_register()
2021-12-24 02:05:43 +03:00
laokaiyao
45ea21e8a0
doc: add application notes for i2s
2021-12-23 18:59:56 +08:00
Jakob Hasse
7572f75d6b
refactor (cxx)!: I2C C++ classes use strong value types now
...
Added host-based I2C C++ unit tests
BREAKING CHANGE: I2C C++ interface changes, raw values for
arguments are mostly not allowed anymore.
2021-12-17 14:05:52 +08:00
Armando
4dc0d6b2fe
adc: support adc dma driver on all chips
2021-12-16 00:19:15 +00:00
intern
467525f846
docs: fix typo in header files
2021-12-13 13:17:17 +08:00
Ivan Grokhotkov
c358aceb1b
Merge branch 'feature/soc_caps_build_sys' into 'master'
...
build-system: parse soc caps and integrate into kconfig
Closes IDF-2223
See merge request espressif/esp-idf!15305
2021-12-09 06:54:08 +00:00
Marius Vikhammer
c6d60615c6
build-system: include soc_caps defines into kconfig
...
Adds gen_soc_caps_kconfig.py which parses the soc caps (soc_caps.h) into
a format that can be included in kconfig.
2021-12-06 12:37:07 +08:00
laokaiyao
fa4e77eb44
i2s: deprecate confusing names
2021-11-24 13:21:13 +08:00
Omar Chebib
aa2ca7dd94
LEDC: improved support for ESP32-C3 and refactored divisor calculation
...
As ESP32C3 does not have support for REF_TICK source clock, it is now not
possible to select it anymore.
Auto cfg clock has been improved for all boards.
2021-11-11 12:21:15 +08:00
morris
490d3fee71
Merge branch 'refactor/make_peripheral_ctrl_as_private_api' into 'master'
...
global: make periph enable/disable APIs private
Closes IDF-3647
See merge request espressif/esp-idf!15632
2021-11-08 07:31:01 +00:00
Wang Fang
b86619fc61
Merge branch 'docs/add_a_note_to_mck_io_num' into 'master'
...
docs: add a note to mck_io_num: for esp32, only gpio0/gpio1/gpio3 can be set
Closes DOC-2218
See merge request espressif/esp-idf!15812
2021-11-08 05:14:41 +00:00
morris
16677b0d3c
global: make periph enable/disable APIs private
...
peripheral enable/disable usually should be managed by driver itself,
so make it as espressif private APIs, not recommended for user to use it
in application code.
However, if user want to re-write the driver or ports to other platform,
this is still possible by including the header in this way:
"esp_private/peripheral_ctrl.h"
2021-11-08 10:37:47 +08:00
Cao Sen Miao
a9f0a3531e
ESP8684: add driver esp_pm heap support
2021-11-06 17:33:44 +08:00
Wang Fang
21378f007f
docs: add a note to mck_io_num: for esp32, only gpio0/gpio1/gpio3 can be set
2021-11-04 19:38:51 +08:00
Jakob Hasse
1eb96cfc79
feat (driver)!: Added mocking for i2c.h
...
BREAKING CHANGE: removed ringbuf.h from public i2c.h
2021-11-02 14:16:31 +08:00
morris
e2275b1f63
gptimer: clean up hal and ll for driver-ng
2021-10-20 18:40:08 +08:00
SalimTerryLi
bd89dcc683
RMT: add loop_autostop driver support for esp32s3
2021-09-24 15:24:45 +08:00
Kevin (Lao Kaiyao)
a287f34f88
Merge branch 'bugfix/i2s_apll_fixed_clock' into 'master'
...
i2s: fix apll bug introduced in 'refactor/i2s_driver'
Closes IDFGH-5824
See merge request espressif/esp-idf!15109
2021-09-14 08:31:12 +00:00
SalimTerryLi
932d4d13f0
MCPWM/sync: expose API for configuring timer sync
...
removed example: mcpwm_basic_config
Closes https://github.com/espressif/esp-idf/issues/5429
Co-authored-by: wubowen <wubowen@espressif.com>
2021-09-09 17:33:37 +08:00
laokaiyao
dfbe76e988
i2s: fix return value when failed to register i2s
2021-09-09 10:33:15 +08:00
laokaiyao
c5afd7ce34
i2s: fix write failure on ESP32 in 32bit slave mode
2021-09-03 17:36:44 +08:00
laokaiyao
b26da6f115
driver/i2s: refactor for i2s driver layer
2021-09-02 14:33:36 +08:00
Michael (XIAO Xufeng)
375145ecdb
Merge branch 'feature/mcpwm_bldc_hall_example' into 'master'
...
mcpwm: bldc hall example
Closes IDF-3648
See merge request espressif/esp-idf!14578
2021-08-26 08:28:27 +00:00
Darian
72ba1866fb
twai: TWAI_ALERT_RX_DATA indicates that frames were received
...
Signed-off-by: Darian Leung <darian@espressif.com>
Closes https://github.com/espressif/esp-idf/pull/7386
Closes https://github.com/espressif/esp-idf/issues/7374
2021-08-25 19:57:10 +08:00
morris
0dbe872542
mcpwm: bldc hall example
2021-08-24 15:38:46 +08:00
morris
bb87fd8f08
Merge branch 'refactor/pcnt_driver_esp32s3' into 'master'
...
pcnt: soc update and hal refactor
See merge request espressif/esp-idf!14698
2021-08-20 04:23:15 +00:00
morris
71d475149d
lcd: update doc unit test and example to support 8-line spi
2021-08-19 16:40:22 +08:00
bizhuangyang
8143832041
spi_master:support octal mode for esp32s2 and esp32s3
...
Add support for 8-line spi for lcd on esp32s2 and esp32s3
Closes https://github.com/espressif/esp-idf/issues/6371
2021-08-19 16:40:22 +08:00
morris
3bcd9278fa
i2s: expose resource object to other component
2021-08-10 21:06:59 +08:00
morris
56760c9669
pcnt: refactor hal driver
2021-08-10 17:19:21 +08:00
Wang Fang
59aa60d52a
Merge branch 'docs/provide_apb_clock_frequency_in_api-reference_timers' into 'master'
...
docs: provide APB clock frequency in api-reference/timers
Closes DOC-1689
See merge request espressif/esp-idf!14593
2021-08-06 06:50:26 +00:00
Wang Fang
0ba73ee7e2
docs: provide APB clock frequency in api-reference/timers
2021-08-06 11:05:32 +08:00
SalimTerryLi
e5ddc12a08
MCPWM/capture: API workflow optimization
...
deprecate isr_register to introduce new callback based API, with framework managed interrupt routine
new HC-SR04 example
2021-08-05 19:12:58 +08:00
Michael (XIAO Xufeng)
947980ecac
Merge branch 'bugfix/uart_set_pin_use_iomux' into 'master'
...
uart: uart_set_pin function will now use IOMUX whenever possible
Closes IDF-3183
See merge request espressif/esp-idf!14318
2021-08-05 04:17:29 +00:00
Omar Chebib
779e7400b0
uart: uart_set_pin function will now use IOMUX whenever possible
...
By using IOMUX instead of GPIO Matrix for UART, it is now possible
on ESP32 boards to use the UART as a wake up source even if it is
not used as a console.
For other boards where this issue was not present, using IOMUX has
the advantage to be faster than using GPIO matrix, so a highest
baudrate can be used
2021-08-04 12:48:30 +08:00
laokaiyao
f863998e90
driver/i2s: support mclk
2021-08-04 10:20:03 +08:00
laokaiyao
3c57a6ac36
driver/i2s: refactor ll and hal
2021-08-04 10:20:03 +08:00
laokaiyao
d51b85989b
doc/i2s: update i2s programming guide on s3 & c3
2021-08-04 10:20:03 +08:00
laokaiyao
f7f8c9c11f
driver/i2s: support i2s on c3 and s3
...
1. Support i2s on esp32c3 and esp32s3
2. Refactor i2s_config_t to avoid breaking change
2. Fix a bug that receiving unavailable values from message queue when dma queue has been re-allocted
4. Support i2s unit test on esp32c3 and esp32s3
2021-08-04 10:20:03 +08:00
houwenxiang
2f1247e1c4
driver: support I2S on ESP32-S3 & ESP32-C3
...
1. refactor I2S driver.
2. support TDM mode for esp2s3 & esp32c3.
2021-08-04 10:20:03 +08:00
morris
5f318e902d
Merge branch 'bugfix/mcpwm-deadtime-preset-config' into 'master'
...
bugfix/mcpwm: fix deadtime module preset config (AHC, ALC, AH, AL)
Closes IDFGH-5600
See merge request espressif/esp-idf!14594
2021-08-03 04:22:20 +00:00
SalimTerryLi
32ca6ab65d
MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition
...
Closes https://github.com/espressif/esp-idf/issues/7321
2021-08-03 10:12:42 +08:00
Michael (XIAO Xufeng)
f26006a3bc
Merge branch 'feature/ledc_fade_callback' into 'master'
...
ledc: Add a callback for LEDC fade end
Closes IDF-2475 and IDF-3222
See merge request espressif/esp-idf!14302
2021-07-31 08:52:00 +00:00
SalimTerryLi
f4314af913
MCPWM: expose API to set timer resolution
...
Closes https://github.com/espressif/esp-idf/issues/1101
2021-07-30 18:52:17 +08:00
songruojing
9d098cc9bd
ledc: Add a callback for LEDC fade end
...
This commit adds a feature where users can register a callback that is
called when an LEDC fade completes.
2021-07-29 17:56:22 +08:00
morris
88c87bfe56
mcpwm: update hal and soc naming
2021-07-26 22:32:45 +08:00
Omar Chebib
a6e14c37b2
SPI: chip select can now be kept active if the bus has been acquired
...
The user can now request the chip select to remain active after the current
transfer. In order to do so, he MUST acquire the bus first with `spi_device_acquire_bus()`
function, else, an error is returned.
2021-07-21 10:39:45 +08:00
morris
d9819bc7ae
gdma: set transfer ability
2021-07-16 14:47:09 +08:00
morris
3176ba11d8
gdma: update DMA soc data for esp32-s3
2021-07-16 14:47:09 +08:00
Omar Chebib
2575c0d49f
i2c: fix I2C slave clock source selection
...
In I2C slave mode, clock source can now be changed, according to
the flags specified in `i2c_config_t` structure. Thus, ESP32-S2
can now act as an I2C slave, even with a 400KHz master clock.
2021-07-15 12:28:57 +08:00
morris
d9d4db43a1
Merge branch 'feature/dedic_gpio_esp32s3' into 'master'
...
Dedicated gpio driver on esp32s3
Closes IDF-3387
See merge request espressif/esp-idf!14196
2021-07-06 03:20:04 +00:00
Michael (XIAO Xufeng)
c6716dcb39
Merge branch 'feature/esp32c3_usbjtag_console_blocking' into 'master'
...
USB_serial_jtag controller: Add driver for supporting VFS on esp32c3(blocking implementation)
Closes IDF-3066 and IDF-3019
See merge request espressif/esp-idf!13414
2021-07-05 07:57:19 +00:00
Cao Sen Miao
3aa9ac2469
usb_serial_jtag: Add blocking driver to support vfs.
2021-07-05 11:22:38 +08:00
Michael (XIAO Xufeng)
5986b204c6
Merge branch 'feature/i2c_add_static_buffer_transfers' into 'master'
...
i2c: add `i2c_cmd_link_create_static()` to create commands from a given buffer
Closes IDFGH-3087
See merge request espressif/esp-idf!13013
2021-07-02 14:00:03 +00:00
Shu Chen
205cd469e9
esp32h2: update driver/hal/soc components to support esp32h2
2021-07-01 19:53:11 +08:00
morris
c8c3015018
dedic_gpio: support on esp32s3
2021-06-30 18:10:54 +08:00
Jakob Hasse
79b0256d63
[driver]: partial mocking of driver component
...
* added mocking of spi master and gpio
* mock registering in one function in
component.cmake
2021-06-24 10:10:29 +08:00
Michael (XIAO Xufeng)
591e4c4b31
sdio_slave: allow getting end of frame information
2021-06-17 09:40:08 +08:00