Song Ruo Jing
ad55230b0a
ledc: Add support for esp32h2; Refactor ledc driver clock source selection related code
...
LEDC examples and test cases are supported on ESP32H2.
Switch to use general clock IDs for ledc_clk_cfg_t enum values.
Deprecate LEDC_USE_RTC8M_CLK.
2023-01-30 19:19:34 +08:00
Song Ruo Jing
46f67092d0
ledc: Fix -Werror=maybe-uninitialized warning on glb_clk variable on specific kconfig options selected
...
Closes https://github.com/espressif/esp-idf/pull/9025
Closes https://github.com/espressif/esp-idf/issues/10322
2023-01-05 15:16:04 +08:00
Song Ruo Jing
662df0da3b
ledc: Channel configuration requires the ledc core clock on to be effective. Therefore, a clock source is selected for the core clock since the peripheral initialization. Additionally, correct the usage of channel para_up and duty_start bits.
2023-01-03 15:16:00 +08:00
wuzhenghui
aa20825659
soc_caps: rename ESP_PD_DOMAIN_RTC8M to ESP_PD_DOMAIN_FOSC
2022-12-27 21:31:21 +08:00
Song Ruo Jing
36cdf88a5b
Merge branch 'contrib/github_pr_10402' into 'master'
...
ledc: move callback to IRAM as it's called from an ISR (GitHub PR)
Closes IDFGH-8990
See merge request espressif/esp-idf!21711
2022-12-22 16:55:29 +08:00
Song Ruo Jing
1a6e1aba3d
ledc: Add check for whether the registered callback is in iram in ledc_cb_register
2022-12-22 14:38:58 +08:00
Song Ruo Jing
774197b7d3
ledc: Move ledc unit test to test_apps pytest framework
...
Add ledc_hal_set_duty_start and ledc_hal_set_duty_int_part to IRAM
Fix test_ledc.c minor issues
2022-12-21 12:04:42 +08:00
Song Ruo Jing
9402ab427b
ledc: Add basic support for esp32c6
2022-12-07 18:40:50 +08:00
Song Ruo Jing
be0fdfa176
soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock
2022-11-01 11:23:26 +08:00
Song Ruo Jing
0445c87459
ledc: Fix the usage of ledc_ls_timer_update and ledc_timer_rst
...
ledc_ls_timer_update is required only when CLK_DIV and DUTY_RES bits are changed.
Calling ledc_timer_rst while re-configure PWM frequency through ledc_set_freq can cause glitch in the signal
2022-08-19 19:07:46 +08:00
morris
d91c8759c0
driver: remove -Wno-format flag
2022-08-08 08:30:09 +00:00
jingli
7211b0a89a
esp_hw_support/sleep: fix cannot pd cpu and rc fast at the same time during light sleep
...
Since cpu retention dma use rc fast as clk source, so rc_fast_digi
will be enabled when we config to pd cpu. And cpu retention does not
need rc fast keep on during light sleep. So, if we use rc_fast_digi
to determine whether rc fast can be powered down, then cpu and and
rc fast cannot pd at the same time.
2022-07-28 11:10:58 +08:00
Michael (XIAO Xufeng)
d64c6f581d
ledc: cleanup the clock selection code
2022-04-14 08:15:14 +00:00
songruojing
534346f4bb
ledc: Provide support for esp32c2 and esp32h2
...
LEDC examples, unit test, and programming guide are all updated.
2022-04-14 08:15:14 +00:00
songruo
60bb5c913d
clk_tree: prework of introducing clk subsystem control
...
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +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
Ivan Grokhotkov
0fe3281713
driver: fix issues reported by PVS-Studio
...
https://www.viva64.com/en/b/0790/#ID88049D3FA2
https://www.viva64.com/en/b/0790/#IDE0890EE01C
Reported in https://github.com/espressif/esp-idf/issues/6440
2022-03-14 18:46:47 +01:00
morris
f38c13adea
Merge branch 'contrib/github_pr_8497' into 'master'
...
ledc: Do not drive output during init if the output is inverted (GitHub PR)
Closes IDFGH-6875
See merge request espressif/esp-idf!17433
2022-03-10 16:55:59 +08:00
Sudeep Mohanty
a9fda54d39
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
...
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Nonoo
062f6164ae
ledc: Do not drive output during init if the output is inverted
2022-03-04 08:39:57 +01:00
Darian Leung
57fd78f5ba
freertos: Remove legacy data types
...
This commit removes the usage of all legacy FreeRTOS data types that
are exposed via configENABLE_BACKWARD_COMPATIBILITY. Legacy types can
still be used by enabling CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY.
2022-02-09 23:05:45 +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
morris
e51474ef70
build: fix unused tag string
...
Closes https://github.com/espressif/esp-idf/issues/8250
2022-01-18 10:06:08 +08:00
Michael (XIAO Xufeng)
466f3a91cb
ledc: fixed check to s_ledc_fade_rec array
2022-01-06 03:28:05 +00:00
Omar Chebib
1e8a0909f6
LEDC: divisor calculation will now be rounded up when necessary
...
Closes https://github.com/espressif/esp-idf/issues/7722
2021-11-11 12:21:22 +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
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
morris
c2d5af17a2
dac: apply generic check macro
2021-08-26 14:01:24 +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
Michael (XIAO Xufeng)
dd47340d0e
Merge branch 'update_copyright_notice_driver_part_4' into 'master'
...
driver: update copyright notice, part 4
See merge request espressif/esp-idf!13652
2021-05-31 07:37:19 +00:00
Jan Brudný
690974e32f
driver: update copyright notice
2021-05-25 17:43:57 +02:00
bizhuangyang
31cdeb538d
ledc: apply general check macro
...
Standardize LEDC_CHECK() and LEDC_ARG_CHECK() in ledc.c to ESP_RETURN_ON_FALSE() in esp_check.h.
2021-05-13 16:57:16 +08:00
laokaiyao
48c848a895
driver/ledc: support invert channel output
2021-05-11 11:54:16 +08:00
Omar Chebib
cd79f3907d
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
...
When `DIS_USB_JTAG` eFuse is NOT burned (`False`), it is not possible
to set pins 18 and 19 as GPIOs. This commit solves this by manually
disabling USB JTAG when using pins 18 or 19.
The functions shall use `gpio_hal_iomux_func_sel` instead of
`PIN_FUNC_SELELECT`.
2021-04-08 14:01:18 +08:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +08: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
Angus Gratton
5228d9f9ce
esp32c3: Apply one-liner/small changes for ESP32-C3
2020-12-01 10:58:50 +11:00
morris
2917651478
esp_rom: extract common ets apis into esp_rom_sys.h
2020-07-27 15:27:01 +08:00
morris
a4d0033c03
esp_rom: extract common GPIO apis into esp_rom_gpio.h
2020-07-07 11:40:19 +08:00
morris
e30cd361a8
global: rename esp32s2beta to esp32s2
2020-01-22 12:14:38 +08:00
chenjianqiang
41fca84064
bugfix(ledc): fix crash when use one speed mode and enable ledc fade test case
2019-12-16 02:49:26 +00:00
chenjianqiang
857dec108d
feat(ledc): refactor ledc driver
...
1. add hal and low-level layer for ledc driver
2. support esp32s2beta ledc
2019-11-21 16:25:22 +08:00
houwenxiang
30b2e02088
bugfix(LEDC):fix ledc CI issue for esp32s2beta.
2019-11-14 12:20:29 +08:00
Angus Gratton
0a0bb09585
Merge 'master' into feature/esp32s2beta_update
2019-08-20 13:55:23 +10:00
Angus Gratton
6990a7cd54
Merge branch 'master' into feature/esp32s2beta_update
2019-08-19 15:03:43 +10:00
Angus Gratton
1dd2f3e07b
driver: ledc: Fix low/high speed parameter setting
...
Fix regression introduced in 2e8c85d8ff
2019-08-15 06:53:46 +00:00
Angus Gratton
04ae56806c
Merge branch 'master' into feature/esp32s2beta_update
2019-08-08 15:26:58 +10:00
kooho
2e8c85d8ff
driver(ledc): fixed ledc clock selection bug.
2019-08-06 16:11:18 +08:00