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
Omar Chebib
7dd499d1f4
i2c: commands can now be re-used without deleting and creating new cmd links
...
It is now possible to call `i2c_master_cmd_begin()` on the same
`i2c_cmd_handle_t` parameter. Thus, no extra allocation will be performed.
Moreover, as commands contains pointers to data, these can be modified
between two calls to `i2c_master_cmd_begin()`. This becomes very handy
for framebuffers.
2021-06-09 17:03:39 +08:00
Omar Chebib
cfcbca1271
i2c: optimize space allocated for read or write buffers
...
Only a single command will be allocated now when a read or write is
prepared in the command list. The size of a command's buffer is not
limited to 255 bytes anymore.
2021-06-09 15:21:20 +08:00
Omar Chebib
e1f388f114
i2c: add i2c_cmd_link_create_static()
to create commands from a given buffer
...
Application can now provide a buffer in order to allocate commands link.
Fixed few unclear details in the documentation.
Added wrappers to simplify I2C transfers.
Closes https://github.com/espressif/esp-idf/issues/5108
2021-06-09 15:21:20 +08:00
morris
d4fe219c49
mcpwm: refactor driver
2021-06-09 12:27:01 +08:00
Michael (XIAO Xufeng)
aecf85e74b
Merge branch 'update_copyright_notice_driver_part_2' into 'master'
...
driver: update copyright notice, part 2
See merge request espressif/esp-idf!13650
2021-05-31 07:52:19 +00:00
Michael (XIAO Xufeng)
dd0c1c7d95
Merge branch 'bugfix/delete_i2c_cmd_mux_semaphore_more_cleanly' into 'master'
...
dreiver/i2c: delete i2c cmd_mux semaphore more cleanly
Closes IDFGH-5062
See merge request espressif/esp-idf!13399
2021-05-28 07:56:34 +00:00
laokaiyao
b807f2a666
driver/i2c: add notes to i2c deleteing function
2021-05-27 12:43:22 +08:00
Jan Brudný
6667c5dc2a
driver: update copyright notice
2021-05-24 01:53:34 +02:00
Michael (XIAO Xufeng)
2e4d3ad880
Merge branch 'feature/bringup_esp32s3beta_cmake_sdmmc' into 'master'
...
esp32s3: add sdmmc support
Closes IDF-1569
See merge request espressif/esp-idf!8304
2021-05-20 04:22:11 +00:00
Michael (XIAO Xufeng)
8409485b22
Merge branch 'doc/fix_misleading_of_mcpwm_capture_enable_doc' into 'master'
...
driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters
Closes IDFGH-3000
See merge request espressif/esp-idf!13497
2021-05-16 15:15:26 +00:00
Michael (XIAO Xufeng)
e941bc838c
Merge branch 'feature/lcd_driver' into 'master'
...
esp_lcd component panel driver
Closes IDF-2933 and IDF-2934
See merge request espressif/esp-idf!12813
2021-05-13 04:29:07 +00:00
laokaiyao
e66f25caf2
driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters
...
closes https://github.com/espressif/esp-idf/issues/5032
2021-05-13 12:23:19 +08:00
morris
270ed70f3e
gdma: support reset dma fifo at runtime
2021-05-12 17:10:37 +08:00
laokaiyao
48c848a895
driver/ledc: support invert channel output
2021-05-11 11:54:16 +08:00
Ivan Grokhotkov
2c8f413059
driver: sdmmc: add esp32s3 support
...
* Extend sdmmc_slot_config_t with GPIO pin numbers for all SD bus
signals. These new fields are available if SOC_SDMMC_USE_GPIO_MATRIX
is set.
* Add shorter "sd" and "wp" aliases for "gpio_sd" and "gpio_wp" field
names in sdmmc_slot_config_t.
* Deprecate sdmmc_host_pullup_en, prefer to enable this feature using
SDMMC_SLOT_FLAG_INTERNAL_PULLUP instead.
2021-05-10 23:21:27 +02:00
Ivan Grokhotkov
f67f7d6774
Merge branch 'bugfix/adc_channel_comment_typo' into 'master'
...
adc: fix typos in comments (Github PR)
Closes IDFGH-4774
See merge request espressif/esp-idf!13437
2021-05-06 11:49:58 +00:00
Ivan Grokhotkov
3717a318f6
Merge branch 'bugfix/gpio_isr_doc' into 'master'
...
gpio_isr_register(): Correct order of arguments in docs (Github PR)
Closes IDFGH-1780
See merge request espressif/esp-idf!13439
2021-05-06 11:49:34 +00:00
Alex Lisitsyn
ea6710ce98
soc/hal: add tinyusb support esp32s3
...
add usb hal/soc, usb_ll files and esp32s3 target for usb
move usb_hal.h into soc common folder
soc/hal: fix soc and periph for usb
tinyusb: fix tinyusb io header
hal: usb_ll fix pull up/down config for esp32s3
soc/hal: fix peripheral addresses
2021-05-06 16:20:54 +08:00
Martin Thierer
75e0c6aaf5
gpio_isr_register(): Correct order of arguments in docs
...
Make documentation order consistent with function signature.
Merges https://github.com/espressif/esp-idf/pull/3999
2021-05-05 15:56:26 +02:00
Christian Winkler
13abf1ed2e
Fix adc-channel typo
...
Merges https://github.com/espressif/esp-idf/pull/6577
2021-05-05 15:40:35 +02:00
Michael (XIAO Xufeng)
5997fcd45d
Merge branch 'feature/update_adc_programming_guide_on_c3' into 'master'
...
adc: update esp32c3 programming guide
Closes IDF-2333
See merge request espressif/esp-idf!12563
2021-04-23 12:52:07 +00:00
Armando
3177130256
adc: add adc programming guide on c3
2021-04-21 10:40:55 +08:00
Armando
85e29dace7
spi_slave_hd: add callback after data is loaded to the DMA for segment mode
2021-04-20 20:08:29 +08:00
Marius Vikhammer
826b976ba5
timer: add IRAM_ATTR to spinlock give/take API
...
Closes https://github.com/espressif/esp-idf/issues/6824
2021-04-15 09:50:06 +08:00
Michael (XIAO Xufeng)
1f29036ead
Merge branch 'feat/c3_driver_api_cleanup' into 'master'
...
driver: cleanup i2c, i2s on C3
Closes IDF-2759 and IDF-2760
See merge request espressif/esp-idf!12329
2021-04-13 09:00:11 +00:00
Michael (XIAO Xufeng)
f5f3c7143c
Merge branch 'feat/c3_driver_api_cleanup_gpio' into 'master'
...
gpio, rtcio: removed unsupported features on different targets
See merge request espressif/esp-idf!13103
2021-04-13 06:51:33 +00:00
Michael (XIAO Xufeng)
54fdaa5986
Merge branch 'docs/spi_max_transfer_sz_limit' into 'master'
...
spi_docs: Fixed the default value of max_transfer_sz.
See merge request espressif/esp-idf!13000
2021-04-13 06:51:11 +00:00
Michael (XIAO Xufeng)
6ab5b9cbf9
gpio, rtcio: removed unsupported features on different targets
2021-04-13 13:21:08 +08:00
Michael (XIAO Xufeng)
67941fc495
i2s: removed unsupported features on different targets
2021-04-12 15:51:54 +08:00
Michael (XIAO Xufeng)
82e4a2431a
i2c: removed unsupported features on different targets
2021-04-12 15:51:19 +08:00
Michael (XIAO Xufeng)
925dacd7fb
Merge branch 'bugfix/remove_HSPI_macro_on_c3' into 'master'
...
spi: remove HSPI macros on esp32c3 and esp32s3
Closes IDF-2535
See merge request espressif/esp-idf!12637
2021-04-08 09:33:18 +00:00
Armando
9b9ea71ff9
spi: remove HSPI macro on esp32c3 and esp32s3
2021-04-06 13:42:49 +08:00
Michael (XIAO Xufeng)
e89fabb963
spi_docs: Fixed the default value of max_transfer_sz.
2021-04-01 14:59:29 +08:00
Darian Leung
2f58060921
TWAI: FIFO overrun handling and errata workarounds
...
This commit adds handling for FIFO overruns and
adds workarounds for HW errats on the ESP32.
Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2021-03-30 14:17:31 +08:00
Armando
0e0baee25a
adc: add implementation of missed public API
...
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 12:04:46 +08:00
Armando
e9995fe165
adc: add pm_lock to adc driver on esp32c3
2021-03-26 12:04:46 +08:00
Armando
a5295af829
adc: update adc header files on c3
2021-03-26 12:04:46 +08:00
morris
f5ca47c0fc
mcpwm: rename macros related to soc capbility
2021-03-16 21:53:59 +08:00
Seon Rozenblum
dd2a8e330b
Added missing ESP32-S3 target for /rom/gpio.h include
...
I know this is being depreciated in 5, but we need it working for S3 in 4.x :)
Closes https://github.com/espressif/esp-idf/pull/6666
2021-03-08 17:54:16 +08:00
Cao Sen Miao
a8343bc470
esp_system: support gpio wakeup from deep sleep on esp32c3
2021-02-26 12:26:49 +08:00
morris
efa92cb204
rmt: support invert RMT signal by GPIO matrix
2021-02-25 12:42:23 +08:00
morris
7b37158ede
rmt: distinguish group and channel in HAL layer
2021-02-25 12:42:23 +08:00
Armando
889de9ebd9
spi: add enum for spi dma channels
2021-02-22 07:06:05 +00:00
Armando
db3bf8b544
spi: refactor spi_common dma allocator
2021-02-22 07:06:05 +00:00
Armando
c438ad5d72
spi: apply gdma allocator to SPI
2021-02-22 07:06:05 +00:00
Armando
2e670bf6af
spi: add dma channel auto-alloc feature on esp32
2021-02-22 07:06:05 +00:00
Armando
5427c18781
adc: apply gdma api to adc on esp32c3
2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng)
586dd7d7cd
spi: add explaination to the modes
2021-02-03 21:56:53 +08:00
Michael (XIAO Xufeng)
9ff04b2e79
Merge branch 'feature/musical_buzzer' into 'master'
...
RMT example: musical buzzer
See merge request espressif/esp-idf!10346
2021-01-28 01:04:24 +08:00
Michael (XIAO Xufeng)
c257daa950
wifi: run adc2 calibration on C3
2021-01-25 15:08:50 +08:00
Armando
d8a4b247b9
adc_digi: update_adc_api_for_5M_freq_limit
...
The ``adc_digi_config_t`` struct is modified on esp32c3: configuration
of clock divider factors are not provided anymore. The SARADC sampling
frequency is provided instead. In this way, we can handle the frequency
limit better.
2021-01-25 04:51:40 +00:00
Armando
02600309c8
adc: fix some regression issues
2021-01-25 04:51:40 +00:00
Cao Sen Miao
4e6e34e3ad
adc_i2s: solve the i2s_adc issue when using wifi
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
d7d1dee208
system: reset dma when soft reset
2021-01-25 04:51:40 +00:00
Armando
b38f4646de
adc_digi: add dma drivers
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
06f22fc4b0
Merge branch 'feature/new_restart_mode_driver_and_ut_for_spi_slave_hd' into 'master'
...
spi_slave_halfduplex: append mode driver
See merge request espressif/esp-idf!10845
2021-01-24 09:27:12 +08:00
Armando
0538dc2d93
spi_slave_hd: add DMA Append Mode feature
2021-01-21 18:53:53 +08:00
Angus Gratton
cfdd7f0f22
Merge branch 'feature/c3_crypto_gdma' into 'master'
...
AES/SHA: GDMA crypto driver
Closes IDF-2192 and IDF-2501
See merge request espressif/esp-idf!12014
2021-01-20 16:42:39 +08:00
Jiang Jiang Jian
26ae354dc5
Merge branch 'feature/support_esp32c3_lightsleep_master' into 'master'
...
support esp32c3 lightsleep for master
Closes IDF-2106
See merge request espressif/esp-idf!11975
2021-01-20 16:00:06 +08:00
Krzysztof Budzynski
08815671e0
Merge branch 'bugfix/adc_full_scale_voltages' into 'master'
...
docs: Update full-scale voltages for ESP32-S2 chip
Closes DOC-578
See merge request espressif/esp-idf!11214
2021-01-19 16:03:53 +08:00
Li Shuai
6d12fdd6e7
light sleep: add gpio configure workaround at slept status for esp32c3
2021-01-19 14:51:22 +08:00
Krzysztof
6df6123ff6
docs: Update full-scale voltages for ESP32-S2 chip
2021-01-19 14:47:17 +08:00
Marius Vikhammer
51169b0e0c
AES/SHA: use GDMA driver instead of LL
2021-01-19 11:02:51 +08:00
ninh
659d805411
esp_wifi: light sleep optimization
2021-01-18 15:31:03 +08:00
ninh
27aa6c289f
components/pm: Add slp gpio configure workaround
2021-01-15 15:34:45 +08:00
morris
467d44970e
rmt: support setting loop count at runtime
2021-01-14 21:26:04 +08:00
Michael (XIAO Xufeng)
ea996df725
Merge branch 'feature/rmt_support_user_context_in_translator' into 'master'
...
rmt: support user context in translator
Closes IDFGH-4135 and IDFGH-3237
See merge request espressif/esp-idf!10894
2021-01-14 19:26:26 +08:00
morris
95e712039c
rmt: add workaround to get user context in a graceful way
2021-01-14 11:01:41 +08:00
Nishanth Samala
21bb6f2334
rmt: support rmt user context in translator
...
Merges https://github.com/espressif/esp-idf/pull/6002
2021-01-14 10:51:25 +08:00
morris
e6d23a35ec
gdma: dynamic alloc DMA channels
2021-01-13 10:52:27 +08:00
Armando
2d37bfa126
driver: Add adc_digi single conversion mode
...
- add lock for single read and continuous read APIs
- update onetime read start singal delay for hardware limitation[*]
- move adc_caps to soc_caps.h
- update license dates
[*] There is a hardware limitation. If the APB clock frequency is high, the
step of this reg signal: ``onetime_start`` may not be captured by the
ADC digital controller (when its clock frequency is too slow). A rough
estimate for this step should be at least 3 ADC digital controller
clock cycle.
2020-12-23 09:53:24 +11:00
Angus Gratton
f09b8ae7a4
driver: Add esp32c3 ADC driver
...
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Angus Gratton
27a9cf861e
driver: Add esp32c3 drivers (except ADC/DAC) and update tests
...
Some ESP32-C3 drivers are still pending.
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Cao Sen Miao
d6f0b4af6f
adc_i2s: solve the i2s_adc issue when using wifi
2020-12-07 10:45:04 +08:00
Ivan Grokhotkov
d890a516a1
driver: add notes about GPIO36/39 issue (ECO 3.11) workaround
...
Closes IDFGH-1917
Closes https://github.com/espressif/esp-idf/issues/4117
2020-12-07 10:45:04 +08:00
Angus Gratton
5228d9f9ce
esp32c3: Apply one-liner/small changes for ESP32-C3
2020-12-01 10:58:50 +11:00
chaijie
a48b5246cc
ESP32: Fix xtal 32k not oscillate or oscillate too slowly issue
...
ESP32 in revision0 and revision1 uses touchpad to provide
current to oscillate xtal 32k. But revision2 and revision3
do not need to do that.
Note: touchpad can not work and toupad/ULP wakeup sources
are not available when toupad provides current to xtal 32k
2020-11-23 19:38:11 +08:00
Cao Sen Miao
6eee601cf6
i2c: Add supports on esp32s3
2020-11-12 11:32:45 +08:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
morris
1be923acb4
rmt: rename always_on to aware_dfs
2020-11-05 19:00:55 +08:00
morris
ff976867b3
rmt: split TX and RX in LL driver
...
Split TX and RX function in LL driver.
Channel number is encoded in driver layer.
Added channel signal list in periph.c
2020-11-05 19:00:55 +08:00
Michael (XIAO Xufeng)
9a394e1aa0
Merge branch 'feature/spi_bringup_esp32s3' into 'master'
...
spi: bringup on esp32s3
See merge request espressif/esp-idf!10107
2020-10-27 00:51:42 +08:00
Armando
f7e91ef6c1
spi: esp32s3 bringup for spi
2020-10-26 11:28:34 +08:00
morris
bb1369b922
dedicated gpio: add driver
2020-10-20 21:06:09 +08:00
morris
153e819e8a
pcnt: add rotary encoder example
2020-10-19 11:56:18 +08:00
Michael (XIAO Xufeng)
1966f00f0b
soc: updates caps usage
...
We should define caps as 1 if true. When use the caps macros, #if and
#if ! should be used instead of #ifdef/#ifndef.
2020-10-17 16:10:17 +08:00
Michael (XIAO Xufeng)
647dea9395
soc: combine xxx_caps.h into one soc_caps.h
...
During HAL layer refactoring and new chip bringup, we have several
caps.h for each part, to reduce the conflicts to minimum. But this is
The capabilities headers will be relataive stable once completely
written (maybe after the featues are supported by drivers).
Now ESP32 and ESP32-S2 drivers are relative stable, making it a good
time to combine all these caps.h into one soc_caps.h
This cleanup also move HAL config and pin config into separated files,
to make the responsibilities of these headers more clear. This is
helpful for the stabilities of soc_caps.h because we want to make it
public some day.
2020-10-17 16:10:15 +08:00
Michael (XIAO Xufeng)
ecca44df93
Merge branch 'bugfix/fix_adc-dma_reading_gap_for_esp32' into 'master'
...
bugfix(adc): missing ranges of ADC-DMA codes in ESP32
Closes DIG-53
See merge request espressif/esp-idf!10521
2020-10-16 23:02:35 +08:00
fuzhibo
9cd5e6f8c9
bugfix(adc): missing ranges of ADC codes in ESP32
2020-10-12 07:41:03 +00:00
Darian Leung
4c57f50fe4
TWAI: ISR runs when cache is disabled
...
This commit adds the feature where the TWAI ISR will continue to
run even if the cache is disabled. Whilst cache is disabled, any
received messages will go into the RX queue, and any pending TX
messages in the TX queue will be transmitted. This feature should
be enabled using the CONFIG_TWAI_ISR_IN_IRAM option.
2020-10-10 14:19:32 +08:00
Michael (XIAO Xufeng)
91af5eaf4f
Merge branch 'refactor/twai_hal_state' into 'master'
...
Refactor TWAI HAL to store state information
Closes IDF-1633
See merge request espressif/esp-idf!9789
2020-09-03 23:22:30 +08:00
Wu Bo Wen
658b56a690
doc/adc: modifications in the adc documentation and adc headers
2020-09-02 11:30:48 +00:00
Darian Leung
7398390049
TWAI: Track HW state in HAL
...
This commit refactors the TWAI HAL such that it
now tracks harwdare state instead of the driver
layer. Some HAL and LL cleanup was also done.
2020-09-02 13:03:41 +08:00
Michael (XIAO Xufeng)
2b323e7180
Merge branch 'bugfix/fix_dac_driver_ut' into 'master'
...
Driver(dac): fix DAC-DMA driver and unit test
Closes IDF-1407
See merge request espressif/esp-idf!8814
2020-08-31 00:05:34 +08:00
fuzhibo
0914dfbb6a
dfiver(dac): add dac dma driver and unit test
2020-08-26 06:23:24 +00:00
fuzhibo
bd92e95160
driver(adc): add adc-dma code for esp32
2020-08-26 03:54:02 +00:00
dongyou
97ae87df41
wifi, bt: move esp_phy_common_clock_disable into periph_ctrl and put it into IRAM
...
Replace periph_module_enable/disable by periph_wifi_bt_common_module_enable which are in IRAM.
AddIRAM_ATTR periph_ll_wifi_bt_module_enable_clk_clear_rstandIRAM_ATTR periph_ll_wifi_bt_module_disable_clk_set_rstto fit O0 optimization level.
Delete duplicated spinlock and counter.
2020-08-05 11:04:16 +08:00
Michael (XIAO Xufeng)
1aabab0160
Merge branch 'bugfix/i2c_const_function_signature' into 'master'
...
I2C: add const to signature of master_write function
Closes IDFGH-3324
See merge request espressif/esp-idf!9306
2020-07-27 16:31:20 +08:00
Michael (XIAO Xufeng)
f6dd63d03d
spi_slave_hd: new driver for spi slave in half duplex mode
2020-07-11 00:00:50 +08:00
Michael (XIAO Xufeng)
a50ea8ad55
spi: allow force pins being configured throug GPIO matrix
2020-07-11 00:00:47 +08:00
morris
a4d0033c03
esp_rom: extract common GPIO apis into esp_rom_gpio.h
2020-07-07 11:40:19 +08:00
Peter Schaefer
f08743e452
Added const for pointer in master_write method, so that a const array can be passed to this fcn.
...
Signed-off-by: wubowen <wubowen@espressif.com>
Merges https://github.com/espressif/esp-idf/pull/5307
explicitly convert a const ptr to non-const because we actually don't modify it.
2020-07-06 03:37:39 +00:00
fuzhibo
8d922847af
driver(adc): esp32s2 support API adc2_vref_to_gpio
2020-07-01 06:21:45 +00:00
Darian Leung
97721d469c
TWAI: Add ESP32-S2 support
...
This commit adds TWAI driver support for the
ESP32-S2. The following features were added:
- Expanded BRP support
- Expanded CLKOUT Divider Support
- Updated example READMEs
2020-06-30 16:56:03 +08:00
Michael (XIAO Xufeng)
0d725c14cc
Merge branch 'bugfix/fix_uart_read_write_different_in_buffer_type_issue' into 'master'
...
Bugfix(driver): fix uart_read_byte and uart_write_byte different in buffer type issue
Closes IDFGH-2418
See merge request espressif/esp-idf!8925
2020-06-15 15:55:53 +08:00
Angus Gratton
1c09cb6769
Merge branch 'bugfix/doc_macro_definitions' into 'master'
...
doc: Fix macro definitions for different targets
See merge request espressif/esp-idf!8999
2020-06-12 16:37:41 +08:00
Angus Gratton
8193b188e8
driver: Fix some doxygen warnings
2020-06-12 14:31:37 +10:00
chenjianqiang
c11621e64e
timer: add return task awoken for timer callback
2020-06-11 16:02:55 +08:00
houwenxiang
61e3259f22
Driver(UART): fix uart_read_byte and uart_write_byte different in buffer type issue.
2020-06-10 16:22:06 +08:00
fuzhibo
3cc2d0e9a4
Driver(adc): Disable the synchronization operation function of ADC1 and DAC
...
Closes IDF-1585
2020-06-01 16:23:47 +08:00
houwenxiang
b35d9002f3
driver(I2S): Fix i2s_comm_format_t configuration parameter does not match the TRM bug.
...
When I2S `i2s_comm_format_t` is set to `I2S_COMM_FORMAT_I2S_MSB`, the data should launch at first BCK. But not in fact, this MR fixed this issue.
For compatibility, several nwe parameters have been added, and the old parameters will be removed in the future.
closes https://github.com/espressif/esp-idf/issues/5065
closes https://github.com/espressif/esp-idf/issues/4957
closes https://github.com/espressif/esp-idf/issues/2978
closes https://github.com/espressif/esp-idf/issues/5136
Merges https://github.com/espressif/esp-idf/pull/4522
2020-05-18 19:55:30 +08:00
Michael (XIAO Xufeng)
9d98111652
Merge branch 'bugfix/spi_bus_lock_missing_semphrstatic' into 'master'
...
spi: fix config break and reduce overhead of the bus lock on SPI1
Closes IDFGH-3017
See merge request espressif/esp-idf!8221
2020-04-27 12:57:19 +08:00
morris
e0b9f7be6d
periph_clk_gating: add reference counter
2020-04-23 19:29:15 +08:00
michael
fdf983e0c4
spi: fix config break and reduce overhead of the bus lock on SPI1
...
The SPI bus lock on SPI1 introduces two side effects:
1. The device lock for the main flash requires the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` to be selected, however this
option is disabled by default in earlier IDF versions. Some developers
may find their project cannot be built by their old sdkconfig files.
2. Usually we don't need the lock on the SPI1 bus, due to it's
restrictions. However the overhead still exists in this case, the IRAM
cost for static version of semaphore functions, and the time cost when
getting and releasing the lock.
This commit:
1. Add a CONFIG_SPI_FLASH_BYPASS_MAIN_LOCK option, which will forbid the
space cost, as well as the initialization of the main bus lock.
2. When the option is not selected, the bus lock is used, the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` will be selected explicitly.
3. Revert default value of `CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION`
to `n`.
introduced in 49a48644e4
.
Closes https://github.com/espressif/esp-idf/issues/5046
2020-04-22 16:06:13 +08:00
dowster
7b02fdf45a
Fix typo with sigmadelta.h #ifdef
2020-04-17 22:52:00 -05:00
fuzhibo
406b8f423d
driver(adc): add adc initial code before app_main for esp32s2.
...
update phy v301
2020-04-04 10:15:30 +08:00
fuzhibo
baa7898e35
driver(adc/dac): fix adc dac driver for esp32s2
...
1. update register file about adc; 2. fix adc driver; 3. add UT for adc/dac;
See merge request espressif/esp-idf!7776
2020-04-01 12:41:51 +08:00
Alex Lisitsyn
3abdd2207d
freemodbus: fix long buffer failure
...
check master read write functions with array of registers)
fix master serial processing code and modbus controller to work with register array
modbus_master: add reading and writing of test value array (58 registers) to check failure is gone
remove parameter temporary buffer from modbus controller to allow more than 24 byte writes
driver: fix issue with TOUT feature
driver: fix uart_rx_timeout issue
driver: fix issue with rxfifo_tout_int_raw not triggered when received fifo_len = 120 byte and all bytes read out of fifo as result of rxfifo_full_int_raw
driver: add function uart_internal_set_always_rx_timeout() to always handle tout interrupt
examples: call uart_internal_set_always_rx_timeout() to handle tout interrupt correctly
examples: update examples to use tout feature
driver: reflect changes of uart_set_always_rx_timeout() function, change uart.c
driver: change conditions to trigger workaround for tout feature in uart.c
driver: change uart_set_always_rx_timeout()
freemodbus: fix tabs, remove commented code
driver: remove uart_ll_is_rx_idle()
2020-03-30 22:05:48 +08:00
Michael (XIAO Xufeng)
49a48644e4
spi: allow using esp_flash and spi_master driver on the same bus
2020-03-26 22:08:26 +08:00
Michael (XIAO Xufeng)
826cc7ecb6
Merge branch 'feature/bringup_723_cmake_rmt_driver_update' into 'master'
...
RMT new features in ESP32S2
Closes IDF-1286
See merge request espressif/esp-idf!7401
2020-03-26 10:24:18 +08:00
fuzhibo
340563f479
Driver(touch): fix touch sensor driver for esp32s2.
...
1.update touch sensor driver for esp32s2;
2.update unit test for touch sensor;
3.update register files about touch sensor;
2020-03-25 22:45:57 +08:00
morris
4fc16e2374
rmt: prefix caps name with SOC_
2020-03-25 17:14:00 +08:00
morris
0c17af3ea4
rmt: support tx loop count
2020-03-25 17:14:00 +08:00
morris
dc91aa9786
rmt: support tx in a group
2020-03-25 17:13:59 +08:00
morris
fa167eb0c5
rmt: test tx/rx ping-pong mode
2020-03-25 17:13:47 +08:00
morris
855b316045
rmt: better support rx demodulation
2020-03-25 13:19:03 +08:00
morris
c91565d538
rmt: update rmt ll APIs
2020-03-25 13:19:03 +08:00
chenjianqiang
ecbe0dad1b
driver/rmt: new features on esp32s2
...
1. add receive carrier remove function
2. add pingpong receive function
2020-03-25 13:19:03 +08:00
Angus Gratton
a9854f7085
Merge branch 'feature/rmt_clock_support_ref_tick' into 'master'
...
rmt: support ref tick && refactor unit test && re-enable unit test on ESP32-S2
Closes IDFGH-1715
See merge request espressif/esp-idf!7614
2020-03-06 15:03:52 +08:00
morris
0e4d82bc55
rmt: support REF_TICK as channel clock source
...
Closes https://github.com/espressif/esp-idf/pull/3952
2020-03-03 20:14:46 +08:00
xiongyu
b3ae9fa978
bugfix(i2s): Updated ESP32-S2 ADC DAC support
...
* Delete the relevant codes of ADC DAC of ESP32-S2.
2020-03-03 12:59:30 +08:00
xiongyu
faf898b659
bugfix(i2s): fix driver ut i2s
...
* Add test support for ESP32S2
* Add loop back test
* Support chip internal connection, no external wiring required.
* Delete the relevant codes of PDM of ESP32-S2 ll layer.
* fix dac dma mode issue
2020-03-03 11:58:53 +08:00
morris
580ce8fa4a
driver: clean pcnt.h i2s.h
2020-03-02 19:31:29 +08:00
xiongyu
4d5c950770
bugfix(pcnt): fix driver ut pcnt
...
* Let `[ignore] case` return to freedom
1) Because this test uses its own ISR, we need to release it with `esp_intr_free` instead of `pcnt_isr_service_uninstall`.
2) `pcnt_evt_queue` needs to be created before the interrupt is registered and needs to be released at the end of each case.
* Add test support for ESP32S2
* Support chip internal connection, no external wiring required.
2020-02-26 16:52:53 +08:00
Jakob Hasse
3bcc6b48af
I2C: i2c.h/i2c.c applied new code formatting
2020-02-26 15:12:03 +08:00
Jakob Hasse
d230d44e2d
I2C: const correctness, checking SDA/SCL GPIOs
...
* const correctness in i2c_slave_write_buffer()
* i2c_set_pin() additionally checks whether
SDA and SCL pins are the same number
2020-02-24 14:30:28 +08:00
Paul Abbott
b75e3de447
Bugfix(LEDC): Add missing ledc_set_pin declaration in led.h
...
Merges https://github.com/espressif/esp-idf/pull/4632
2020-02-19 16:02:33 +08:00
Krzysztof Budzynski
41bc06b9b9
Merge branch 'bugfix/docs_ledc' into 'master'
...
drivers: Remove high speed mode from LEDC docs for ESP32-S2, update headers to match
See merge request espressif/esp-idf!7532
2020-02-17 05:00:36 +08:00
Michael (XIAO Xufeng)
067f3d21c9
sdspi, vfs_fat: allow sharing SPI bus among devices, and mounting multiple SD cards
2020-02-12 15:16:08 +08:00
Angus Gratton
ea34f3bb27
drivers: Remove high speed mode from LEDC docs for ESP32-S2, update headers to match
2020-02-11 14:36:47 +11:00
Angus Gratton
11fac8637a
docs: Resolve doxygen & Sphinx warnings
2020-02-07 16:37:45 +11:00
Felipe Neves
429712c6eb
freertos: moved all xtensa specific files into a separated folder
2020-01-27 16:05:30 -03:00
morris
e30cd361a8
global: rename esp32s2beta to esp32s2
2020-01-22 12:14:38 +08:00
Ivan Grokhotkov
2c3e6481bb
Merge branch 'feature/ci_check_cpp_guards' into 'master'
...
ci: add job to check for C++ guards in header files
Closes IDF-288
See merge request espressif/esp-idf!7050
2020-01-21 17:18:23 +08:00