|  | # ESP32 PWM LED configuration options | 
|  |  | 
|  | # Copyright (c) 2017 Vitor Massaru Iha <vitor@massaru.org> | 
|  | # SPDX-License-Identifier: Apache-2.0 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32 | 
|  | bool "ESP32 PWM LED driver" | 
|  | help | 
|  | This option enables the PWM LED driver for ESP32 family of | 
|  | processors. Say y if you wish to use PWM LED port on ESP32. | 
|  |  | 
|  | if PWM_LED_ESP32 | 
|  |  | 
|  | config PWM_LED_ESP32_DEV_NAME_0 | 
|  | string "ESP32 PWM LED Name" | 
|  | default "PWM_LED" | 
|  | help | 
|  | Specify the device name for the PWM driver. | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH | 
|  | bool "Set high speed channels" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH0 | 
|  | bool "Enable channel 0" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH0 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH0_GPIO | 
|  | int "GPIO number" | 
|  | default 13 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH0_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH0 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH1 | 
|  | bool "Enable channel 1" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH1 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH1_GPIO | 
|  | int "GPIO number" | 
|  | default 12 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH1_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH1 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH2 | 
|  | bool "Enable channel 2" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH2 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH2_GPIO | 
|  | int "GPIO number" | 
|  | default 14 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH2_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH2 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH3 | 
|  | bool "Enable channel 3" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH3 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH3_GPIO | 
|  | int "GPIO number" | 
|  | default 27 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH3_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH3 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH4 | 
|  | bool "Enable channel 4" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH4 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH4_GPIO | 
|  | int "GPIO number" | 
|  | default 26 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH4_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH4 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH5 | 
|  | bool "Enable channel 5" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH5 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH5_GPIO | 
|  | int "GPIO number" | 
|  | default 25 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH5_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH5 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH6 | 
|  | bool "Enable channel 6" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH6 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH6_GPIO | 
|  | int "GPIO number" | 
|  | default 33 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH6_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH6 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_CH7 | 
|  | bool "Enable channel 7" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_CH7 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH7_GPIO | 
|  | int "GPIO number" | 
|  | default 32 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_HS_CH7_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH7 | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_CH | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH | 
|  | bool "Set low speed channels" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH0 | 
|  | bool "Enable channel 0" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH0 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH0_GPIO | 
|  | int "GPIO number" | 
|  | default 6 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH0_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH0 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH1 | 
|  | bool "Enable channel 1" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH1 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH1_GPIO | 
|  | int "GPIO number" | 
|  | default 7 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH1_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH1 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH2 | 
|  | bool "Enable channel 2" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH2 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH2_GPIO | 
|  | int "GPIO number" | 
|  | default 8 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH2_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH2 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH3 | 
|  | bool "Enable channel 3" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH3 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH3_GPIO | 
|  | int "GPIO number" | 
|  | default 15 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH3_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH3 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH4 | 
|  | bool "Enable channel 4" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH4 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH4_GPIO | 
|  | int "GPIO number" | 
|  | default 16 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH4_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH4 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH5 | 
|  | bool "Enable channel 5" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH5 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH5_GPIO | 
|  | int "GPIO number" | 
|  | default 17 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH5_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH5 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH6 | 
|  | bool "Enable channel 6" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH6 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH6_GPIO | 
|  | int "GPIO number" | 
|  | default 19 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH6_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH6 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_CH7 | 
|  | bool "Enable channel 7" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_CH7 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH7_GPIO | 
|  | int "GPIO number" | 
|  | default 21 | 
|  | range 0 39 | 
|  | help | 
|  | GPIO number, allowed values: 0 - 19, 21 - 23, 25 - 27 and 32 - 39. | 
|  |  | 
|  | config PWM_LED_ESP32_LS_CH7_TIMER | 
|  | int "Set timer" | 
|  | default 0 | 
|  | range 0 3 | 
|  | help | 
|  | Timer source channel, allowed values: 0 - 4. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH7 | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_CH | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_TIMER | 
|  | bool "Set high speed timers" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_TIMER | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_TIMER0 | 
|  | bool "Set timer 0" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_TIMER0 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER0_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER0_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_TIMER0 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_TIMER1 | 
|  | bool "Set timer 1" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_TIMER1 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER1_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER1_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_TIMER1 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_TIMER2 | 
|  | bool "Set timer 2" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_TIMER2 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER2_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER2_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_TIMER2 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_HS_TIMER3 | 
|  | bool "Set timer 3" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_HS_TIMER3 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER3_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_HS_TIMER3_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_TIMER3 | 
|  |  | 
|  | endif # PWM_LED_ESP32_HS_TIMER | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_TIMER | 
|  | bool "Set low speed timers" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_TIMER | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_TIMER0 | 
|  | bool "Set timer 0" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_TIMER0 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER0_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER0_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_TIMER0 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_TIMER1 | 
|  | bool "Set timer 1" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_TIMER1 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER1_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER1_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_TIMER1 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_TIMER2 | 
|  | bool "Set timer 2" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_TIMER2 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER2_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER2_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_TIMER2 | 
|  |  | 
|  | menuconfig PWM_LED_ESP32_LS_TIMER3 | 
|  | bool "Set timer 3" | 
|  | default y | 
|  |  | 
|  | if PWM_LED_ESP32_LS_TIMER3 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER3_FREQ | 
|  | int "Set frequency" | 
|  | default 5000 | 
|  |  | 
|  | config PWM_LED_ESP32_LS_TIMER3_BIT_NUM | 
|  | int "Timer counter precision" | 
|  | default 10 | 
|  | range 10 15 | 
|  | help | 
|  | PWM timer precision, allowed values: 10 - 15. | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_TIMER3 | 
|  |  | 
|  | endif # PWM_LED_ESP32_LS_TIMER | 
|  |  | 
|  | endif # PWM_LED_ESP32 |