Commit Graph

2433 Commits

Author SHA1 Message Date
Chen Yudong
2e11919f70 fix(ci): change build-test-rules files folder 2023-09-20 19:17:06 +08:00
Planck (Lu Zeyu)
59f8008e22 feat(pcnt): replace periph_module func with new ll func 2023-09-20 15:06:04 +08:00
morris
6bb05cccdd feat(rmt): add driver support for esp32p4
including DMA feature
2023-09-19 12:54:14 +08:00
Chip Weinberger
a7436ac82c [Usb Serial JTAG] printing to console could sometimes skip bytes 2023-09-18 18:41:15 +08:00
Darian Leung
287bdc5e61 fix(test_apps): Trim builds of component test apps
Some component test apps do not use the "set(COMPONENTS main)" command in their
project level "CMakeLists.txt", thus leading to their builds pulling in all
ESP-IDF components.

This commit trims the build of multiple component test apps:

- Add "set(COMPONENTS main ...)" to project level "CMakeLists.txt"
- Add missing "PRIV_REQUIRES" in some "main" component "CMakeLists.txt"

Also removed repeated configuraiton options in legacy_i2c_driver/sdkconfig.ci.defaults
as they are already specified in legacy_i2c_driver/sdkconfig.defaults
2023-09-18 17:16:37 +08:00
morris
3234ee3f9e refactor(mcpwm): add RCC related LL functions 2023-09-15 13:33:01 +08:00
Planck (Lu Zeyu)
255d499884 fix(ll): fix cpp compile error
Merges https://github.com/espressif/esp-idf/pull/12093

fix(ll): remove FLAG_ATTR macro

Such kind of operator overload will not work because C++ thinks such overload is ambiguous and it still prefer the built-in one which accepts and returns integer. Manually force type conversion seems to be unavoidable.
2023-09-14 14:48:12 +08:00
morris
47e499de52 feat(mcpwm): clean up MCPWM ETM driver 2023-09-11 16:53:34 +08:00
Chen Jichang
7638235311 feat(mcpwm): MCPWM event comparator driver
In esp32p4, the MCPWM has a new feature, mainly ETM-oriented.
Each operator has two event comparators, can generate an event
when the count value of the timer that operator connects is equal
to the value of event comparator.
2023-09-11 16:53:34 +08:00
morris
3e5906aa1b Merge branch 'feature/modify_mcpwm_clock_pre_scale' into 'master'
feat(mcpwm): Set group clock prescale dynamically

See merge request espressif/esp-idf!25117
2023-09-09 08:30:56 +08:00
Chen Jichang
fc80d3e568 feat(mcpwm): Set group clock prescale dynamically
MCPWM group clock pre scale was originally fixed to 2, which is
inconvenient. Set group clock prescale dynamically. Now the maximum
resolution of the MCPWM timer is up to 160MHz(when the prescale set
to 1). And add a resulotion config for MCPWM capture.
2023-09-08 11:57:29 +08:00
C.S.M
61920d0360 Merge branch 'bugfix/i2c_probe_continue' into 'master'
fix(i2c_master): Fix I2C new master cannot continously probe

See merge request espressif/esp-idf!25761
2023-09-06 17:23:48 +08:00
morris
e8847a176f refactor(intr): add namespace for intr_cpu_id_t
previously the intr_types.h doesn't have a namespace,
it has the risk of introduing conflict in user's project.
2023-09-06 09:50:41 +08:00
Cao Sen Miao
c7740b4c2b fix(i2c_master): Fix I2C new master cannot continously probe 2023-09-05 12:27:18 +08:00
morris
3b0c0ae4d4 Merge branch 'feature/specify_rmt_intr_priority' into 'master'
feat(rmt): specify interrupt priority

Closes IDF-7955

See merge request espressif/esp-idf!25596
2023-09-02 11:38:46 +08:00
Planck (Lu Zeyu)
80fa5da9e8 feat(rmt): specify interrupt priority 2023-09-01 11:30:41 +08:00
Cao Sen Miao
6e3e923290 fix(i2c_master): Fix issue that i2c master probe device failed,
Closes https://github.com/espressif/esp-idf/issues/12159
2023-09-01 10:00:46 +08:00
Song Ruo Jing
91aab6bda0 Merge branch 'feature/add_uart_iram_safe_check' into 'master'
feat(uart): Add sdkconfig.ci.iram_safe test for UART driver

See merge request espressif/esp-idf!25618
2023-08-31 12:57:46 +08:00
Song Ruo Jing
767698b90d feat(uart): Add sdkconfig.ci.iram_safe test for UART driver 2023-08-30 11:30:03 +08:00
morris
47bb157cab refactor(twai): add reset and clock control to twai LL layer 2023-08-29 22:19:57 +08:00
Wan Lei
cff1631ac7 Merge branch 'fix/fixed_polling_api_lock_logic' into 'master'
fix(spi_master): fixed polling_start break common resouce when error

See merge request espressif/esp-idf!25593
2023-08-29 15:21:24 +08:00
wanlei
f7068bd937 fix(spi_master): fixed polling_start break common resouce when error 2023-08-28 18:18:38 +08:00
morris
4a45479336 refactor(lp_periph): move enable and reset control to LL driver 2023-08-28 05:17:56 +00:00
Armando (Dou Yiwen)
d4d6241db0 Merge branch 'feature/esp32p4_build_test' into 'master'
ci: enable ci build stage on esp32p4

Closes IDF-7524 and IDF-7525

See merge request espressif/esp-idf!25343
2023-08-25 13:35:20 +08:00
C.S.M
0bb8c13acd Merge branch 'bugfix/usb_serial_jtag_write_return_val' into 'master'
bugfix(usb_serial_jtag): Fix usb_serial_jtag wrong return value, vfs lose data randomly

Closes IDFGH-10925 and IDFGH-10069

See merge request espressif/esp-idf!25492
2023-08-25 05:19:40 +08:00
morris
641fdabbf0 Merge branch 'feature/default_clock_source_can_leave_empty' into 'master'
feat(mcpwm): default clock source setting can leave empty

See merge request espressif/esp-idf!25478
2023-08-24 20:22:47 +08:00
Armando
6f412393b6 change(ci): add todo to p4 build test enable 2023-08-24 12:51:19 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Cao Sen Miao
c92615308c fix(usb_serial_jtag): Fix usb_serial_jtag wrong return value, vfs lose data randomly,
Closes https://github.com/espressif/esp-idf/issues/12119,
Closes https://github.com/espressif/esp-idf/pull/11344,
Closes https://github.com/espressif/esp-idf/issues/9318
Closes https://github.com/espressif/esp-idf/issues/11192
2023-08-24 11:59:20 +08:00
wanlei
f62b025f93 fix(spi_master): polling_transmit forgot release bus lock when alloc DMA buffer failed
Close https://github.com/espressif/esp-idf/issues/11845
2023-08-24 02:09:08 +00:00
Chen Ji Chang
9db2ffd4fb Merge branch 'fix/pcnt_zero_input_init' into 'master'
feat(PCNT): Add new api of clear signal

See merge request espressif/esp-idf!25372
2023-08-23 20:15:59 +08:00
morris
fa58d2c6b0 feat(mcpwm): default clock source setting can leave empty 2023-08-23 18:36:02 +08:00
morris
54febcae0e fix(adc): invalid assertion on the adc_unit 2023-08-23 18:36:02 +08:00
morris
3b50c716d8 Merge branch 'feature/gptimer_ll_enable_reset' into 'master'
HW-Support: Add Atomic Code Block for Reset and Clock Control

See merge request espressif/esp-idf!25401
2023-08-23 15:11:42 +08:00
morris
329bc7e5e9 Merge branch 'feature/mcpwm_interrupt_priority' into 'master'
feat(MCPWM): Support set interrupt priority

Closes IDF-7952

See merge request espressif/esp-idf!25364
2023-08-23 13:43:24 +08:00
Chen Jichang
d7d87813ad fix(PCNT): Add zero input gpio enable flag
The default zero input gpio num is 0. Users need to set it additionally
when not use zero input signal. It may become a breaking change.
Add an enable flag to avoid it.
2023-08-23 12:08:15 +08:00
Chen Jichang
713324ff9d feat(MCPWM): Support set interrupt priority 2023-08-23 10:44:34 +08:00
morris
71cf16ec01 feat(gptimer): use RCC atomic block to enable/reset peripheral 2023-08-22 17:05:35 +08:00
wanlei
1b7430e0a1 fix(ci): add timeout for i2c legacy multi_board test 2023-08-22 02:12:26 +00:00
C.S.M
0ccfb126df Merge branch 'bugfix/fix_i2c_master_issue' into 'master'
fix(i2c_master): Fix some issues on new i2c_master

Closes IDF-8034

See merge request espressif/esp-idf!25320
2023-08-17 10:13:48 +08:00
Kevin (Lao Kaiyao)
f629c4b7e9 Merge branch 'feature/i2s_support_mclk_input' into 'master'
feat(i2s): supported external clock source input

Closes IDF-7889

See merge request espressif/esp-idf!24942
2023-08-16 19:07:22 +08:00
Cao Sen Miao
0f8e60368c fix(i2c_master): Add doc for internal pull-ups 2023-08-16 18:05:10 +08:00
Cao Sen Miao
317da3ffaf fix(i2c_master): Fix some static issue checked by coverity 2023-08-16 10:43:18 +08:00
Chen Ji Chang
b39fd79cb8 Merge branch 'feature/add_mcpwm_carrier_clk_source' into 'master'
feat(MCPWM): Add mcpwm carrier clk source

Closes IDF-8029

See merge request espressif/esp-idf!25342
2023-08-15 18:04:08 +08:00
Chen Jichang
97d5db32ae feat(MCPWM): Add mcpwm carrier clk source
The MCPWM carrier is part of the operator and can work independently
without the MCPWM timer being enabled. This commit add the MCPWM
carrier clk source.
2023-08-15 13:04:11 +08:00
Chen Jichang
eede3796c7 feat(pcnt): support set interrupt priority 2023-08-14 17:52:38 +08:00
laokaiyao
22bb5729a4 ci(i2s): add external clock input multi_dev test cases 2023-08-14 03:25:12 +00:00
laokaiyao
4b6d71447c feat(i2s): supported external clock source input 2023-08-14 03:25:12 +00:00
morris
26f438cf89 Merge branch 'feature/esp32p4_gpio_support' into 'master'
feat(gpio): add support for ESP32P4

Closes IDF-6509

See merge request espressif/esp-idf!24868
2023-08-11 11:49:51 +08:00
morris
84f9e5e8e5 Merge branch 'feature/esp32p4_pcnt_support' into 'master'
feat(pcnt): add support for ESP32P4

Closes IDF-7475

See merge request espressif/esp-idf!25149
2023-08-10 18:52:23 +08:00
Song Ruo Jing
be9afeac86 feat(gpio): add support for ESP32P4 2023-08-10 17:58:49 +08:00
C.S.M
96bf37ab78 Merge branch 'feature/i2c_master_new_driver' into 'master'
I2C: Add new i2c master impl APIs and i2c eeprom example

See merge request espressif/esp-idf!23592
2023-08-10 16:51:31 +08:00
Cao Sen Miao
4ef94fc0dc feat(i2c): Add new API and implementation for I2C driver 2023-08-10 11:55:54 +08:00
Armando
706d684418 feat(esp32p4): introduced new target esp32p4, supported hello_world 2023-08-09 19:33:25 +08:00
Chen Jichang
3fed3cf50e feat(pcnt): add support for ESP32P4 2023-08-09 14:41:22 +08:00
morris
bd8eaf7a38 Merge branch 'feature/esp32p4_mcpwm_support' into 'master'
feat(MCPWM): Add support for ESP32P4

Closes IDF-7493

See merge request espressif/esp-idf!25029
2023-08-09 11:00:00 +08:00
morris
3e31826719 Merge branch 'bugfix/gptimer_hal_placement_wrong_condition' into 'master'
fix(gptimer): hal function placement under wrong condition

Closes IDFGH-10809

See merge request espressif/esp-idf!25237
2023-08-08 22:15:55 +08:00
Chen Jichang
72f66b6d1d feat(mcpwm): add support for ESP32P4 2023-08-08 18:12:58 +08:00
Darian Leung
9ed58bf564 feat(driver): updated drivers to use CreateWithCaps() API
This commit simplifies various drivers by using the ...CreateWithCaps() API
when creating driver objects in internal RAM.
2023-08-08 04:26:42 +00:00
morris
a662ec0a8d fix(gptimer): hal function placement under wrong condition
timer_hal_capture_and_get_counter_value
should be placed in the IRAM for speed optimization
because the default ISR handler is placed in the IRAM.

Closes https://github.com/espressif/esp-idf/issues/12021
2023-08-08 04:26:02 +00:00
morris
27eec5bb6f Merge branch 'feature/twai_linker_file' into 'master'
feat(twai): Add twai linker.lf to control the placement of driver and hal

Closes IDF-7806

See merge request espressif/esp-idf!25126
2023-08-07 15:21:37 +08:00
Planck (Lu Zeyu)
7469f34948 feat(twai): Add twai linker.lf to control the placement of driver and hal
- Replace TWAI_ISR_ATTR flag with linker.lf
- Use the linker.lf to control the placement of the driver functions
2023-08-07 10:21:47 +08:00
Armando
de68029de9 change(header): modify p4 headers issues from check_header_py 2023-08-04 14:13:59 +02:00
morris
a296532715 Merge branch 'bugfix/temperature_get_value_negative' into 'master'
bugfix(temperature_sensor): Fix issue that get the value is negative

See merge request espressif/esp-idf!25165
2023-08-04 15:24:11 +08:00
morris
c32cabc7f8 feat(gptimer): support set interrupt priority
Related forum post: https://esp32.com/viewtopic.php?f=13&t=34959
2023-08-03 19:16:37 +08:00
Cao Sen Miao
4ccbec93e2 bugfix(temperature_sensor): Fix issue that get the value is negative 2023-08-03 11:16:42 +08:00
Darian
84eedefca2 Merge branch 'refactor/freertos_port_types_usage' into 'master'
FreeRTOS: Remove usage of portXXX_TYPE

See merge request espressif/esp-idf!25107
2023-08-01 19:57:32 +08:00
Darian Leung
6fc935e584 refactor(freertos): Refactor usage of portBASE_TYPE to BaseType_t
portBASE_TYPE is an internal macro defined by the porting layer. This commit
changes all references to BaseType_t which is the official type exposed by
FreeRTOS.
2023-07-31 17:10:34 +02:00
Lou Tianhao
34b269fb03 remove(pm/deep_sleep): enable CI test for esp32h2 deepsleep 2023-07-27 12:11:35 +08:00
morris
ed36b91517 Merge branch 'feature/mcpwm_trigger_driver' into 'master'
feature(MCPWM): Add MCPWM trigger driver

Closes IDF-3613

See merge request espressif/esp-idf!24829
2023-07-25 18:50:57 +08:00
Chen Jichang
5ab755915b feature(MCPWM): Add MCPWM trigger driver and test
Each MCPWM operator has two Trigger (named T0 and T1), and they can be
routed to GPIO fault signal or timer sync event.Generator can be set up
to perform different action on Trigger event.
This commit add a trigger driver and a test for the driver.
2023-07-25 14:44:41 +08:00
morris
57879e772d feat(gdma): support channel allocator on esp32p4
There's two GDMA groups on ESP32P4, one is connected to AHB bus,
and another one is connected AXI bus.
We now have two seperate APIs for allocating DMA channels,
depends on the bus type.
2023-07-19 18:18:07 +08:00
morris
ff4a1bb5cf Merge branch 'bugfix/fix_gpio_driver_calloc' into 'master'
fix(gpio): fix potential crash when processing gpio isr

Closes IDFGH-10644

See merge request espressif/esp-idf!24878
2023-07-19 15:09:02 +08:00
morris
b488cb70e7 Merge branch 'contrib/github_pr_11878' into 'master'
feat(mcpwm): Allow for pull up/down to be configurable on generators (GitHub PR)

Closes IDFGH-10647 and IDFGH-10646

See merge request espressif/esp-idf!24825
2023-07-19 15:01:27 +08:00
Song Ruo Jing
4ac2d436ea fix(gpio): fix potential crash when processing gpio isr
If CONFIG_SPIRAM_USE_MALLOC is enabled, and cache is disabled when GPIO ISR is triggered,
it would lead to Guru Meditation Error due to "Cache disabled but cached memory region accessed".

Closes https://github.com/espressif/esp-idf/issues/11876
2023-07-19 12:03:38 +08:00
morris
b589355a10 feat(mcpwm): support open drain output for generator IO
Closes https://github.com/espressif/esp-idf/issues/11877
2023-07-19 11:32:35 +08:00
Anne Brondijk
aa2c0a10c3 feat(mcpwm): Allow for pull up/down to be configurable on generators 2023-07-14 21:44:03 +02:00
wuzhenghui
797efb1dd3 ci: add pd_vddsdio in lightsleep UT tests
- Add pd_vddsdio in lightsleep UT tests to ensure proper functionality
2023-07-14 21:21:23 +08:00
morris
57651c5997 Merge branch 'bugfix/log-related-warnings' into 'master'
driver: fixed log related warnings in i2s and uart

See merge request espressif/esp-idf!24720
2023-07-13 18:09:56 +08:00
morris
6e9c386a27 Merge branch 'refactor/gpio_linker_file' into 'master'
refactor(gpio): Add gpio linker.lf to control the placement of driver and hal

Closes IDF-7805

See merge request espressif/esp-idf!24634
2023-07-13 17:17:50 +08:00
Zim Kalinowski
33e2985b95 driver: fixed log related warnings in i2s and uart 2023-07-12 15:50:06 +08:00
Sonika Rathi
571831b2ee UART: UART_SELECT_WRITE_NOTIF event added in UART driver
Closes https://github.com/espressif/esp-idf/issues/10986
2023-07-12 09:19:41 +02:00
Chen Jichang
cdd18fd232 refactor(gpio):add gpio linker.lf to control the placement of driver and hal
since the linker placement of the hal functions are controlled by the Kconfig in the driver component,
we should create the linker.lf in the driver component, not in the hal component.
2023-07-11 20:44:36 +08:00
morris
682e5ae450 Merge branch 'feature/esp_gdma_ops' into 'master'
feat(esp_gdma): add hal interface for common operations

Closes IDF-7809

See merge request espressif/esp-idf!24433
2023-07-11 10:40:42 +08:00
Song Ruo Jing
a9523b2cef Merge branch 'contrib/github_pr_11810' into 'master'
ledc.c: Fix frequency calculation. (GitHub PR)

Closes IDFGH-10569

See merge request espressif/esp-idf!24618
2023-07-11 10:32:58 +08:00
C.S.M
58e7cb600e Merge branch 'test/temperature_phy' into 'master'
temperature sensor: Add test for temperature sensor and phy

See merge request espressif/esp-idf!24317
2023-07-10 19:36:02 +08:00
morris
56a376c696 feat(esp_gdma): add hal interface for common operations
GDMA driver will be adapted to more DMA peripherals in the future.
This commit is to extract a minimal interface in the hal layer
2023-07-10 13:45:57 +08:00
IhorNehrutsa
909d8b6db5 fix(ledc): fix frequency calculation
ledc.c: Fix frequency calculation.
Round int instead of truncate.

Merges https://github.com/espressif/esp-idf/pull/11810
2023-07-10 11:45:09 +08:00
Song Ruo Jing
ea48030514 Merge branch 'refactor/rtcio_caps_responsibility' into 'master'
refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps

Closes IDF-7406

See merge request espressif/esp-idf!24522
2023-07-07 14:25:47 +08:00
Cao Sen Miao
53dee1abe0 feat(temperature_sensor_test): Add test for temperature sensor and phy 2023-07-07 10:15:07 +08:00
morris
81a641d437 feat(gptimer): add gptimer linker.lf to control the placement of driver and hal
since the linker placement of the hal functions are controlled by the Kconfig in the driver component,
we should create the linker.lf in the driver component, not in the hal component.
2023-07-05 12:09:00 +08:00
Song Ruo Jing
4985caa38f refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps 2023-07-05 11:47:51 +08:00
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
Sonika Rathi
cf7e743a9b Merge branch 'bugfix/wp_sdcard_polarity_support' into 'master'
Added support for write protection polarity for SDCard

Closes IDFGH-9892

See merge request espressif/esp-idf!24262
2023-06-29 14:59:22 +08:00
sonika.rathi
b8c3a3aeee Added support for write protection polarity for SDCard
Closes https://github.com/espressif/esp-idf/issues/11208
2023-06-28 13:20:36 +02:00
Chen Ji Chang
01d70a8ff7 Merge branch 'feature/use_esp_rom_delay_us_to_test_the_accuracy_of_gptimer' into 'master'
gptimer: replace vTaskDelay with esp_rom_delay_us in test_apps

Closes IDF-7308

See merge request espressif/esp-idf!24419
2023-06-28 16:15:31 +08:00
Chen Jichang
001a16ea6e refactor(driver/gptimer): replace vTaskDelay
with esp_rom_delay_us in test_apps

This commit replaces vTaskDelay with esp_rom_delay_us in the gptimer
driver. The former function can introduce millisecond jitter due to
OS task switching, while the latter has less jitter because of the
polling delay. Therefore this commit reduces the delta values for
various timer tests.

Changes made in this commit include:
- Replacing vTaskDelay with esp_rom_delay_us
- Adjusting delta values for various timer tests
2023-06-28 11:50:26 +08:00
Lou Tianhao
7fd74057a3 example: bringup light sleep example for esp32h2 2023-06-26 21:05:16 +08:00
Nebojsa Cvetkovic
9956bfac3e twai: twai_driver_install() returns error on interrupt allocation failure
This commit updates twai_driver_install() so that an error is returned when
esp_intr_alloc() fails, instead of aborting.

Closes https://github.com/espressif/esp-idf/pull/11494

[darian@espressif.com: Refactored object allocation and free procedures]
[darian@espressif.com: Updated commit message]
Signed-off-by: Darian Leung <darian@espressif.com>
2023-06-25 18:32:41 +08:00
laokaiyao
1b22591ea7 i2s: fixed i2s_ll compiling failure under C++ evironment
Closes: https://github.com/espressif/esp-idf/issues/11625
2023-06-23 11:41:43 +08:00