# SPDX-License-Identifier: GPL-2.0+
#
# (C) Copyright 2006
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# (C) Copyright 2001
# Erik Theisen, Wave 7 Optics, etheisen@mindspring.com.

#ccflags-y += -DDEBUG

obj-$(CONFIG_DM_PWM)		+= pwm-uclass.o

obj-$(CONFIG_PWM_ASPEED)	+= pwm-aspeed.o
obj-$(CONFIG_PWM_AT91)		+= pwm-at91.o
obj-$(CONFIG_PWM_CADENCE_TTC)	+= pwm-cadence-ttc.o
obj-$(CONFIG_PWM_CROS_EC)	+= cros_ec_pwm.o
obj-$(CONFIG_PWM_EXYNOS)	+= exynos_pwm.o
obj-$(CONFIG_PWM_IMX)		+= pwm-imx.o
obj-$(CONFIG_PWM_MESON)		+= pwm-meson.o
obj-$(CONFIG_PWM_MTK)		+= pwm-mtk.o
obj-$(CONFIG_PWM_ROCKCHIP)	+= rk_pwm.o
obj-$(CONFIG_PWM_SANDBOX)	+= sandbox_pwm.o
obj-$(CONFIG_PWM_SIFIVE)	+= pwm-sifive.o
obj-$(CONFIG_PWM_TEGRA)		+= tegra_pwm.o
obj-$(CONFIG_PWM_STM32)		+= pwm-stm32.o
obj-$(CONFIG_PWM_SUNXI)		+= sunxi_pwm.o
obj-$(CONFIG_PWM_TI_EHRPWM)	+= pwm-ti-ehrpwm.o
obj-$(CONFIG_PWM_TI_ECAP)	+= pwm-tiecap.o
