1/* 2 * SPDX-License-Identifier: Apache-2.0 3 * 4 * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd. 5 */ 6 7#include <zephyr/dt-bindings/pwm/pwm.h> 8#include <zephyr/dt-bindings/gpio/gpio.h> 9#include <zephyr/dt-bindings/gpio/espressif-esp32-gpio.h> 10 11/ { 12 zephyr,user { 13 /* GPIO input pins order must match PWM pinctrl config */ 14 gpios = <&gpio0 2 ESP32_GPIO_PIN_OUT_EN>, 15 <&gpio0 3 ESP32_GPIO_PIN_OUT_EN>, 16 <&gpio0 4 ESP32_GPIO_PIN_OUT_EN>, 17 <&gpio0 5 ESP32_GPIO_PIN_OUT_EN>; 18 19 pwms = <&ledc0 0 160000 PWM_POLARITY_NORMAL>, 20 <&ledc0 5 80000 PWM_POLARITY_INVERTED>, 21 <&ledc0 9 1000000 PWM_POLARITY_NORMAL>, 22 <&ledc0 10 1000000 PWM_POLARITY_INVERTED>; 23 }; 24}; 25 26&pinctrl { 27 ledc0_default: ledc0_default { 28 group1 { 29 pinmux = <LEDC_CH0_GPIO2>, 30 <LEDC_CH5_GPIO3>, 31 <LEDC_CH9_GPIO4>, 32 <LEDC_CH10_GPIO5>; 33 input-enable; 34 }; 35 }; 36}; 37 38&ledc0 { 39 pinctrl-0 = <&ledc0_default>; 40 pinctrl-names = "default"; 41 status = "okay"; 42 #address-cells = <1>; 43 #size-cells = <0>; 44 45 channel0@0 { 46 reg = <0x0>; 47 timer = <0>; 48 }; 49 50 channel5@5 { 51 reg = <0x5>; 52 timer = <1>; 53 }; 54 55 /* HS channel */ 56 channel9@9 { 57 reg = <0x9>; 58 timer = <0>; 59 }; 60 61 /* share same timer with ch9 */ 62 channel10@a { 63 reg = <0xa>; 64 timer = <0>; 65 }; 66}; 67