# SPDX-License-Identifier: GPL-2.0
config FB_OLPC_DCON
	tristate "One Laptop Per Child Display CONtroller support"
	depends on OLPC && FB
	depends on I2C
	depends on (GPIO_CS5535 || GPIO_CS5535=n)
	select BACKLIGHT_CLASS_DEVICE
	help
	  In order to support very low power operation, the XO laptop uses a
	  secondary Display CONtroller, or DCON.  This secondary controller
	  is present in the video pipeline between the primary display
	  controller (integrate into the processor or chipset) and the LCD
	  panel.  It allows the main processor/display controller to be
	  completely powered off while still retaining an image on the display.
	  This controller is only available on OLPC platforms.  Unless you have
	  one of these platforms, you will want to say 'N'.

config FB_OLPC_DCON_1
	bool "OLPC XO-1 DCON support"
	depends on FB_OLPC_DCON && GPIO_CS5535
	default y
	help
	  Enable support for the DCON in XO-1 model laptops.  The kernel
	  communicates with the DCON using model-specific code.  If you
	  have an XO-1 (or if you're unsure what model you have), you should
	  say 'Y'.

config FB_OLPC_DCON_1_5
	bool "OLPC XO-1.5 DCON support"
	depends on FB_OLPC_DCON && ACPI
	default y
	help
	  Enable support for the DCON in XO-1.5 model laptops.  The kernel
	  communicates with the DCON using model-specific code.  If you
	  have an XO-1.5 (or if you're unsure what model you have), you
	  should say 'Y'.
