diff --git a/drivers/pwm/pwm_led_esp32.c b/drivers/pwm/pwm_led_esp32.c index 4c1804ca2371..ab787bb52ef2 100644 --- a/drivers/pwm/pwm_led_esp32.c +++ b/drivers/pwm/pwm_led_esp32.c @@ -22,6 +22,17 @@ #include LOG_MODULE_REGISTER(pwm_ledc_esp32, CONFIG_PWM_LOG_LEVEL); +#if SOC_LEDC_SUPPORT_APB_CLOCK +#define CLOCK_SOURCE LEDC_APB_CLK +#elif SOC_LEDC_SUPPORT_PLL_DIV_CLOCK +#define CLOCK_SOURCE LEDC_SCLK +#if defined(CONFIG_SOC_SERIES_ESP32C2) +#define SCLK_CLK_FREQ MHZ(60) +#elif defined(CONFIG_SOC_SERIES_ESP32C6) +#define SCLK_CLK_FREQ MHZ(80) +#endif +#endif + struct pwm_ledc_esp32_data { ledc_hal_context_t hal; struct k_sem cmd_sem; @@ -350,12 +361,6 @@ static const struct pwm_driver_api pwm_led_esp32_api = { PINCTRL_DT_INST_DEFINE(0); -#if SOC_LEDC_SUPPORT_APB_CLOCK - #define CLOCK_SOURCE LEDC_APB_CLK -#elif SOC_LEDC_SUPPORT_PLL_DIV_CLOCK - #define CLOCK_SOURCE LEDC_SCLK -#endif - #define CHANNEL_CONFIG(node_id) \ { \ .idx = DT_REG_ADDR(node_id), \