Commit Graph
42 Commits
Author SHA1 Message Date
Chen Ji Chang 1b0fb462b6 Merge branch 'feat/add_dedic_gpio_support_on_c61' into 'master'
feat(dedic_gpio): support dedic gpio on esp32c61

Closes IDF-9321

See merge request espressif/esp-idf!32688
2024-08-09 11:37:44 +08:00
Chen Jichang 2fafecdc2e feat(dedic_gpio): support dedic gpio on esp32c61 2024-08-08 14:00:19 +08:00
Chen Jichang e04d0aad20 feat(gptimer): add gptimer support on c61 2024-07-23 10:23:14 +08:00
Chen Ji Chang 53734aab16 Merge branch 'change/remove_mcpwm_on_c61' into 'master'
change(mcpwm,pcnt): remove mcpwm and pcnt on esp32c61

Closes IDF-9332 and IDF-9338

See merge request espressif/esp-idf!32136
2024-07-19 19:44:36 +08:00
Chen Jichang cde7750f0a ci(legacy_pcnt): re_enable legacy_pcnt test on c5 2024-07-18 21:54:31 +08:00
Chen Jichang 6b7da2901e change(pcnt): remove pcnt on esp32c61
pcnt is not supported on esp32c61
2024-07-18 21:52:39 +08:00
Chen Jichang 5e0c5e0ba5 change(mcpwm): remove mcpwm on esp32c61
mcpwm is not supported on esp32c61
2024-07-18 21:52:09 +08:00
Chen Jichang 38b1fe9b11 feat(glitch_filter): add support for esp32c5 2024-07-17 17:56:45 +08:00
Chen Jichang 9b94afdd38 feat(dedic_gpio): add support for esp32c5 2024-07-17 17:56:43 +08:00
Chen Jichang 5dea9413a8 feat(gptimer): add wiegand interface example
Closes https://github.com/espressif/esp-idf/issues/13892
2024-07-11 10:45:04 +08:00
Chen Jichang a717fecf94 feat(sdm): add support for esp32c5 2024-07-10 11:46:45 +08:00
Chen Jichang 70835b307b ci(mcpwm): re-enable mcpwm test on c5 2024-07-04 17:40:48 +08:00
Chen Ji Chang af9d107f24 Merge branch 'feat/add_cs_timing_parameters_in_spi_lcd' into 'master'
feat(spi_lcd): add spi cs timing parameters

Closes IDFGH-12003

See merge request espressif/esp-idf!31836
2024-07-03 11:35:00 +08:00
Chen Jichang f0e8b606b7 fix(spi_master): change MOSI pin default idle level to low 2024-07-03 11:12:44 +08:00
Chen Jichang cb771eaf1b ci(spi_lcd): re-enable spi_lcd test on p4 2024-07-03 11:12:44 +08:00
Chen Jichang 8d0990806c feat(spi_lcd): add spi cs timing parameters
Some lcd hardware drivers need different CS setup time. Add pretrans
and posttrans parameters to control the CS time.

Closes https://github.com/espressif/esp-idf/issues/13071
2024-07-02 10:55:34 +08:00
Chen Jichang 03e936041d refactor(pcnt): refactor the default isr 2024-06-28 12:12:50 +08:00
Chen Jichang d81546628a feat(pcnt): add support for step notify
PCNT can add watch of value increment that we call step notify.
This commit add a step notify driver and a test for the driver.

Closes https://github.com/espressif/esp-idf/issues/9604
Closes https://github.com/espressif/esp-idf/issues/12136
2024-06-24 15:50:47 +08:00
Chen Jichang 12d2eff381 fix(gptimer): re-enable test on P4
Remove timer_get_counter_time_sec in the ISR. Keep ISR as fast as
possible and not allow FPU usage.
2024-06-07 11:12:45 +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
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
Chen Jichang 5ea4df682e feat(esp_lcd): updated lvgl example to loading image from file system
which can help to reduce the firmware bin size
2023-09-06 14:53:24 +08: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
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
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
Chen Jichang 3fed3cf50e feat(pcnt): add support for ESP32P4 2023-08-09 14:41:22 +08:00
Chen Jichang 72f66b6d1d feat(mcpwm): add support for ESP32P4 2023-08-08 18:12:58 +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
Chen Jichang 304c7572a6 refactor(interrupt):put the interrupts definitions in soc/interrupts.h
Now the soc interrupts definitions are scattered around in the esp-idf
which are out of sync. Put interrupts definitions in soc/periph_defs.h
(!ESP32) or soc/soc.h(ESP32) together in soc/interrupts.h.
2023-07-17 19:31:56 +08:00
Chen Ji Chang 7ec38eb309 Merge branch 'bugfix/update_all_esp32xxx/rom/gpio.h_comments' into 'master'
gpio: Update the incorrect comments in rom/gpio.h

Closes IDFGH-10490

See merge request espressif/esp-idf!24487
2023-07-13 19:44:31 +08:00
Chen Jichang b9c22b126a bugfix(driver/gpio):update the incorrect comment
There are some register description errors in parts of rom/gpio.h
This commit update the incorrect comments in rom/gpio.h And now
esp_rom_gpio.h is recommend instead of rom/gpio.h. So this commit adds
macro SIG_GPIO_OUT_IDX in esp_rom_gpio_connect_out_signal
function and removes the reference to gpio.h in some source files.

Closes https://github.com/espressif/esp-idf/issues/11737
2023-07-13 10:52:50 +08: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
Chen Ji Chang 88d6e3e896 Merge branch 'docs/add_a_note_about_RMT_preipheral_in_the_programming_guide' into 'master'
rmt: add a note about binding channels to the same GPIO

Closes IDFGH-10524

See merge request espressif/esp-idf!24524
2023-07-03 23:29:42 +08:00
Chen Jichang 3f0b46da54 docs(rmt): add a note about binding channels to the same GPIO
Added a note about RX Channel and TX Channel initialization order when
bound RX and TX to the same gpio.

Closes https://github.com/espressif/esp-idf/issues/11768
2023-07-03 17:11:22 +08: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
Chen Jichang 5150c578fd ledc:add option to put LEDC function into IRAM
The caches are disabled when reading/writing/erasing flash.
All CPUs should always execute code and access data from internal RAM.
Add an IRAM option to enhance the performance of LEDC.

Closes https://github.com/espressif/esp-idf/issues/11554
2023-06-14 18:12:01 +08:00
Chen Jichang 6c9cf5c352 driver:Trim the build components
Trim the build components to decrease the load of Gitlab server.
2023-06-13 14:24:44 +08:00
Chen Jichang 6abdc9b76e esp_adc:Trim the build components
If we don't trim the build components, the build system will import all
components which will increase the load of Gitlab server.

Closes IDF-7459
2023-06-09 16:46:40 +08:00