config DRM_NOUVEAU
	tristate "Nouveau (nVidia) cards"
	depends on DRM && PCI
        select FW_LOADER
	select DRM_KMS_HELPER
	select DRM_TTM
	select FB_CFB_FILLRECT
	select FB_CFB_COPYAREA
	select FB_CFB_IMAGEBLIT
	select FB
	select FRAMEBUFFER_CONSOLE if !EXPERT
	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL && INPUT
	select ACPI_WMI if ACPI
	select MXM_WMI if ACPI
	help
	  Choose this option for open-source nVidia support.

config DRM_NOUVEAU_BACKLIGHT
	bool "Support for backlight control"
	depends on DRM_NOUVEAU
	default y
	help
	  Say Y here if you want to control the backlight of your display
	  (e.g. a laptop panel).

config DRM_NOUVEAU_DEBUG
	bool "Build in Nouveau's debugfs support"
	depends on DRM_NOUVEAU && DEBUG_FS
	default y
	help
	  Say Y here if you want Nouveau to output debugging information
	  via debugfs.

menu "I2C encoder or helper chips"
     depends on DRM && DRM_KMS_HELPER && I2C

config DRM_I2C_CH7006
	tristate "Chrontel ch7006 TV encoder"
	default m if DRM_NOUVEAU
	help
	  Support for Chrontel ch7006 and similar TV encoders, found
	  on some nVidia video cards.

	  This driver is currently only useful if you're also using
	  the nouveau driver.

config DRM_I2C_SIL164
	tristate "Silicon Image sil164 TMDS transmitter"
	default m if DRM_NOUVEAU
	help
	  Support for sil164 and similar single-link (or dual-link
	  when used in pairs) TMDS transmitters, used in some nVidia
	  video cards.

endmenu
