]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - drivers/pwm/Kconfig
pwm: Add support for Azoteq IQS620A PWM generator
[mirror_ubuntu-jammy-kernel.git] / drivers / pwm / Kconfig
index 30190beeb6e9c18e81344dff8573de520da2fab8..c13d146cdde535c3f7b3e33caef62d09cd145c66 100644 (file)
@@ -33,6 +33,15 @@ config PWM_SYSFS
        bool
        default y if SYSFS
 
+config PWM_DEBUG
+       bool "PWM lowlevel drivers additional checks and debug messages"
+       depends on DEBUG_KERNEL
+       help
+         This option enables some additional checks to help lowlevel driver
+         authors to get their callbacks implemented correctly.
+         It is expected to introduce some runtime overhead and diagnostic
+         output to the kernel log, so only enable while working on a driver.
+
 config PWM_AB8500
        tristate "AB8500 PWM support"
        depends on AB8500_CORE && ARCH_U8500
@@ -44,7 +53,8 @@ config PWM_AB8500
 
 config PWM_ATMEL
        tristate "Atmel PWM support"
-       depends on ARCH_AT91 && OF
+       depends on OF
+       depends on ARCH_AT91 || COMPILE_TEST
        help
          Generic PWM framework driver for Atmel SoC.
 
@@ -100,7 +110,7 @@ config PWM_BCM_KONA
 
 config PWM_BCM2835
        tristate "BCM2835 PWM support"
-       depends on ARCH_BCM2835 || ARCH_BRCMSTB
+       depends on ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST
        help
          PWM framework driver for BCM2835 controller (Raspberry Pi)
 
@@ -109,7 +119,7 @@ config PWM_BCM2835
 
 config PWM_BERLIN
        tristate "Marvell Berlin PWM support"
-       depends on ARCH_BERLIN
+       depends on ARCH_BERLIN || COMPILE_TEST
        help
          PWM framework driver for Marvell Berlin SoCs.
 
@@ -118,7 +128,7 @@ config PWM_BERLIN
 
 config PWM_BRCMSTB
        tristate "Broadcom STB PWM support"
-       depends on ARCH_BRCMSTB || BMIPS_GENERIC
+       depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
        help
          Generic PWM framework driver for the Broadcom Set-top-Box
          SoCs (BCM7xxx).
@@ -152,7 +162,7 @@ config PWM_CROS_EC
 
 config PWM_EP93XX
        tristate "Cirrus Logic EP93xx PWM support"
-       depends on ARCH_EP93XX
+       depends on ARCH_EP93XX || COMPILE_TEST
        help
          Generic PWM framework driver for Cirrus Logic EP93xx.
 
@@ -195,7 +205,7 @@ config PWM_IMG
 
 config PWM_IMX1
        tristate "i.MX1 PWM support"
-       depends on ARCH_MXC
+       depends on ARCH_MXC || COMPILE_TEST
        help
          Generic PWM framework driver for i.MX1 and i.MX21
 
@@ -204,7 +214,7 @@ config PWM_IMX1
 
 config PWM_IMX27
        tristate "i.MX27 PWM support"
-       depends on ARCH_MXC
+       depends on ARCH_MXC || COMPILE_TEST
        help
          Generic PWM framework driver for i.MX27 and later i.MX SoCs.
 
@@ -222,9 +232,21 @@ config PWM_IMX_TPM
          To compile this driver as a module, choose M here: the module
          will be called pwm-imx-tpm.
 
+config PWM_IQS620A
+       tristate "Azoteq IQS620A PWM support"
+       depends on MFD_IQS62X || COMPILE_TEST
+       help
+         Generic PWM framework driver for the Azoteq IQS620A multi-function
+         sensor.
+
+         To compile this driver as a module, choose M here: the module will
+         be called pwm-iqs620a.
+
 config PWM_JZ4740
        tristate "Ingenic JZ47xx PWM support"
        depends on MACH_INGENIC
+       depends on COMMON_CLK
+       select MFD_SYSCON
        help
          Generic PWM framework driver for Ingenic JZ47xx based
          machines.
@@ -244,7 +266,7 @@ config PWM_LP3943
 
 config PWM_LPC18XX_SCT
        tristate "LPC18xx/43xx PWM/SCT support"
-       depends on ARCH_LPC18XX
+       depends on ARCH_LPC18XX || COMPILE_TEST
        help
          Generic PWM framework driver for NXP LPC18xx PWM/SCT which
          supports 16 channels.
@@ -256,7 +278,7 @@ config PWM_LPC18XX_SCT
 
 config PWM_LPC32XX
        tristate "LPC32XX PWM support"
-       depends on ARCH_LPC32XX
+       depends on ARCH_LPC32XX || COMPILE_TEST
        help
          Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
          PWM controllers.
@@ -289,7 +311,8 @@ config PWM_LPSS_PLATFORM
 
 config PWM_MESON
        tristate "Amlogic Meson PWM driver"
-       depends on ARCH_MESON
+       depends on ARCH_MESON || COMPILE_TEST
+       depends on COMMON_CLK
        help
          The platform driver for Amlogic Meson PWM controller.
 
@@ -318,7 +341,8 @@ config PWM_MEDIATEK
 
 config PWM_MXS
        tristate "Freescale MXS PWM support"
-       depends on ARCH_MXS && OF
+       depends on OF
+       depends on ARCH_MXS || COMPILE_TEST
        select STMP_DEVICE
        help
          Generic PWM framework driver for Freescale MXS.
@@ -357,7 +381,7 @@ config PWM_PUV3
 
 config PWM_PXA
        tristate "PXA PWM support"
-       depends on ARCH_PXA
+       depends on ARCH_PXA || COMPILE_TEST
        help
          Generic PWM framework driver for PXA.
 
@@ -388,14 +412,14 @@ config PWM_RENESAS_TPU
 
 config PWM_ROCKCHIP
        tristate "Rockchip PWM support"
-       depends on ARCH_ROCKCHIP
+       depends on ARCH_ROCKCHIP || COMPILE_TEST
        help
          Generic PWM framework driver for the PWM controller found on
          Rockchip SoCs.
 
 config PWM_SAMSUNG
        tristate "Samsung PWM support"
-       depends on PLAT_SAMSUNG || ARCH_EXYNOS
+       depends on PLAT_SAMSUNG || ARCH_EXYNOS || COMPILE_TEST
        help
          Generic PWM framework driver for Samsung.
 
@@ -415,7 +439,7 @@ config PWM_SIFIVE
 
 config PWM_SPEAR
        tristate "STMicroelectronics SPEAr PWM support"
-       depends on PLAT_SPEAR
+       depends on PLAT_SPEAR || COMPILE_TEST
        depends on OF
        help
          Generic PWM framework driver for the PWM controller on ST
@@ -437,7 +461,7 @@ config PWM_SPRD
 
 config PWM_STI
        tristate "STiH4xx PWM support"
-       depends on ARCH_STI
+       depends on ARCH_STI || COMPILE_TEST
        depends on OF
        help
          Generic PWM framework driver for STiH4xx SoCs.
@@ -447,7 +471,7 @@ config PWM_STI
 
 config PWM_STM32
        tristate "STMicroelectronics STM32 PWM"
-       depends on MFD_STM32_TIMERS
+       depends on MFD_STM32_TIMERS || COMPILE_TEST
        help
          Generic PWM framework driver for STM32 SoCs.
 
@@ -483,7 +507,7 @@ config PWM_SUN4I
 
 config PWM_TEGRA
        tristate "NVIDIA Tegra PWM support"
-       depends on ARCH_TEGRA
+       depends on ARCH_TEGRA || COMPILE_TEST
        help
          Generic PWM framework driver for the PWFM controller found on NVIDIA
          Tegra SoCs.
@@ -493,7 +517,7 @@ config PWM_TEGRA
 
 config PWM_TIECAP
        tristate "ECAP PWM support"
-       depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3
+       depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
        help
          PWM driver support for the ECAP APWM controller found on TI SOCs
 
@@ -502,7 +526,7 @@ config PWM_TIECAP
 
 config PWM_TIEHRPWM
        tristate "EHRPWM PWM support"
-       depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_K3
+       depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_K3 || COMPILE_TEST
        help
          PWM driver support for the EHRPWM controller found on TI SOCs
 
@@ -529,7 +553,7 @@ config PWM_TWL_LED
 
 config PWM_VT8500
        tristate "vt8500 PWM support"
-       depends on ARCH_VT8500
+       depends on ARCH_VT8500 || COMPILE_TEST
        help
          Generic PWM framework driver for vt8500.
 
@@ -538,7 +562,7 @@ config PWM_VT8500
 
 config PWM_ZX
        tristate "ZTE ZX PWM support"
-       depends on ARCH_ZX
+       depends on ARCH_ZX || COMPILE_TEST
        help
          Generic PWM framework driver for ZTE ZX family SoCs.