162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciif LEDS_CLASS_FLASH
462306a36Sopenharmony_ci
562306a36Sopenharmony_ciconfig LEDS_AAT1290
662306a36Sopenharmony_ci	tristate "LED support for the AAT1290"
762306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
862306a36Sopenharmony_ci	depends on GPIOLIB || COMPILE_TEST
962306a36Sopenharmony_ci	depends on OF
1062306a36Sopenharmony_ci	depends on PINCTRL
1162306a36Sopenharmony_ci	help
1262306a36Sopenharmony_ci	  This option enables support for the LEDs on the AAT1290.
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ciconfig LEDS_AS3645A
1562306a36Sopenharmony_ci	tristate "AS3645A and LM3555 LED flash controllers support"
1662306a36Sopenharmony_ci	depends on I2C
1762306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
1862306a36Sopenharmony_ci	help
1962306a36Sopenharmony_ci	  Enable LED flash class support for AS3645A LED flash
2062306a36Sopenharmony_ci	  controller. V4L2 flash API is provided as well if
2162306a36Sopenharmony_ci	  CONFIG_V4L2_FLASH_API is enabled.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciconfig LEDS_KTD2692
2462306a36Sopenharmony_ci	tristate "LED support for Kinetic KTD2692 flash LED controller"
2562306a36Sopenharmony_ci	depends on OF
2662306a36Sopenharmony_ci	depends on GPIOLIB || COMPILE_TEST
2762306a36Sopenharmony_ci	help
2862306a36Sopenharmony_ci	  This option enables support for Kinetic KTD2692 LED flash connected
2962306a36Sopenharmony_ci	  through ExpressWire interface.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci	  Say Y to enable this driver.
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ciconfig LEDS_LM3601X
3462306a36Sopenharmony_ci	tristate "LED support for LM3601x Chips"
3562306a36Sopenharmony_ci	depends on LEDS_CLASS && I2C
3662306a36Sopenharmony_ci	select REGMAP_I2C
3762306a36Sopenharmony_ci	help
3862306a36Sopenharmony_ci	  This option enables support for the TI LM3601x family
3962306a36Sopenharmony_ci	  of flash, torch and indicator classes.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ciconfig LEDS_MAX77693
4262306a36Sopenharmony_ci	tristate "LED support for MAX77693 Flash"
4362306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
4462306a36Sopenharmony_ci	depends on MFD_MAX77693
4562306a36Sopenharmony_ci	depends on OF
4662306a36Sopenharmony_ci	help
4762306a36Sopenharmony_ci	  This option enables support for the flash part of the MAX77693
4862306a36Sopenharmony_ci	  multifunction device. It has build in control for two leds in flash
4962306a36Sopenharmony_ci	  and torch mode.
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ciconfig LEDS_MT6360
5262306a36Sopenharmony_ci	tristate "LED Support for Mediatek MT6360 PMIC"
5362306a36Sopenharmony_ci	depends on LEDS_CLASS && OF
5462306a36Sopenharmony_ci	depends on LEDS_CLASS_FLASH || !LEDS_CLASS_FLASH
5562306a36Sopenharmony_ci	depends on LEDS_CLASS_MULTICOLOR || !LEDS_CLASS_MULTICOLOR
5662306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
5762306a36Sopenharmony_ci	depends on MFD_MT6360
5862306a36Sopenharmony_ci	help
5962306a36Sopenharmony_ci	  This option enables support for dual Flash LED drivers found on
6062306a36Sopenharmony_ci	  Mediatek MT6360 PMIC.
6162306a36Sopenharmony_ci	  Independent current sources supply for each flash LED support torch
6262306a36Sopenharmony_ci	  and strobe mode.
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ciconfig LEDS_MT6370_FLASH
6562306a36Sopenharmony_ci	tristate "Flash LED Support for MediaTek MT6370 PMIC"
6662306a36Sopenharmony_ci	depends on LEDS_CLASS
6762306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
6862306a36Sopenharmony_ci	depends on MFD_MT6370
6962306a36Sopenharmony_ci	help
7062306a36Sopenharmony_ci	  Support 2 channels and torch/strobe mode.
7162306a36Sopenharmony_ci	  Say Y here to enable support for
7262306a36Sopenharmony_ci	  MT6370_FLASH_LED device.
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci	  This driver can also be built as a module. If so, the module
7562306a36Sopenharmony_ci	  will be called "leds-mt6370-flash".
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ciconfig LEDS_QCOM_FLASH
7862306a36Sopenharmony_ci	tristate "LED support for flash module inside Qualcomm Technologies, Inc. PMIC"
7962306a36Sopenharmony_ci	depends on MFD_SPMI_PMIC || COMPILE_TEST
8062306a36Sopenharmony_ci	depends on LEDS_CLASS && OF
8162306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
8262306a36Sopenharmony_ci	select REGMAP
8362306a36Sopenharmony_ci	help
8462306a36Sopenharmony_ci	  This option enables support for the flash module found in Qualcomm
8562306a36Sopenharmony_ci	  Technologies, Inc. PMICs. The flash module can have 3 or 4 flash LED
8662306a36Sopenharmony_ci	  channels and each channel is programmable to support up to 1.5 A full
8762306a36Sopenharmony_ci	  scale current. It also supports connecting two channels' output together
8862306a36Sopenharmony_ci	  to supply one LED component to achieve current up to 2 A. In such case,
8962306a36Sopenharmony_ci	  the total LED current will be split symmetrically on each channel and
9062306a36Sopenharmony_ci	  they will be enabled/disabled at the same time.
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ci	  This driver can be built as a module, it will be called "leds-qcom-flash".
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ciconfig LEDS_RT4505
9562306a36Sopenharmony_ci	tristate "LED support for RT4505 flashlight controller"
9662306a36Sopenharmony_ci	depends on I2C && OF
9762306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
9862306a36Sopenharmony_ci	select REGMAP_I2C
9962306a36Sopenharmony_ci	help
10062306a36Sopenharmony_ci	  This option enables support for the RT4505 flash LED controller.
10162306a36Sopenharmony_ci	  RT4505 includes torch and flash functions with programmable current.
10262306a36Sopenharmony_ci	  And it's commonly used to compensate the illuminance for the camera
10362306a36Sopenharmony_ci	  inside the mobile product like as phones or tablets.
10462306a36Sopenharmony_ci
10562306a36Sopenharmony_ciconfig LEDS_RT8515
10662306a36Sopenharmony_ci	tristate "LED support for Richtek RT8515 flash/torch LED"
10762306a36Sopenharmony_ci	depends on GPIOLIB
10862306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
10962306a36Sopenharmony_ci	help
11062306a36Sopenharmony_ci	  This option enables support for the Richtek RT8515 flash
11162306a36Sopenharmony_ci	  and torch LEDs found on some mobile phones.
11262306a36Sopenharmony_ci
11362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module
11462306a36Sopenharmony_ci	  will be called leds-rt8515.
11562306a36Sopenharmony_ci
11662306a36Sopenharmony_ciconfig LEDS_SGM3140
11762306a36Sopenharmony_ci	tristate "LED support for the SGM3140"
11862306a36Sopenharmony_ci	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
11962306a36Sopenharmony_ci	help
12062306a36Sopenharmony_ci	  This option enables support for the SGM3140 500mA Buck/Boost Charge
12162306a36Sopenharmony_ci	  Pump LED Driver.
12262306a36Sopenharmony_ci
12362306a36Sopenharmony_ciendif # LEDS_CLASS_FLASH
124