config FB_MSM
	tristate "MSM Frame Buffer support"
	depends on FB && ARCH_MSM
	select FB_BACKLIGHT if FB_MSM_BACKLIGHT
	select NEW_LEDS
	select LEDS_CLASS
	select FB_CFB_FILLRECT
	select FB_CFB_COPYAREA
	select FB_CFB_IMAGEBLIT
	---help---
	  Support for MSM Framebuffer.

if FB_MSM

config FB_MSM_BACKLIGHT
	bool "Support for backlight control"
	default y
	---help---
	  Say Y here if you want to control the backlight of your display.

config FB_MSM_LOGO
	bool "MSM Frame Buffer Logo"
	---help---
	  Show /logo.rle during boot.

config FB_MSM_LCDC_HW
	bool
	default n

choice
	prompt "MDP HW version"
	default FB_MSM_MDP22

config FB_MSM_MDP22
	bool "MDP HW ver2.2"
	---help---
	  Support for MSM MDP HW revision 2.2
	  Say Y here if this is msm7201 variant platform.

config FB_MSM_MDP30
	select FB_MSM_LCDC_HW
	bool "MDP HW ver3.0"
	---help---
	  Support for MSM MDP HW revision 3.0
	  Say Y here if this is msm7x25 variant platform.

config FB_MSM_MDP31
	select FB_MSM_LCDC_HW
	bool "MDP HW ver3.1"
	---help---
	  Support for MSM MDP HW revision 3.1
	  Say Y here if this is msm8x50 variant platform.

config FB_MSM_MDP40
	select FB_MSM_LCDC_HW
	bool "MDP HW ver4.0"
	---help---
	  Support for MSM MDP HW revision 4.0
	  Say Y here if this is msm7x30 variant platform.
endchoice


config FB_MSM_EBI2
	bool
	default n

config FB_MSM_MDDI
	bool
	default n

config FB_MSM_LCDC
	bool
	default n

config FB_MSM_OVERLAY
	depends on FB_MSM_MDP40
	bool "MDP4 overlay support"
	default n

config FB_MSM_EXTMDDI
	bool
	default n

config FB_MSM_TVOUT
	bool
	default n

config FB_MSM_MDDI_TOSHIBA_COMMON
	bool
	select FB_MSM_MDDI
	default n

config FB_MSM_MDDI_TOSHIBA_COMMON_VGA
	bool
	select FB_MSM_MDDI_TOSHIBA_COMMON
	default n

config FB_MSM_MDDI_AUTO_DETECT
	bool
	select FB_MSM_MDDI
	default n

config FB_MSM_LCDC_PANEL
	bool
	select FB_MSM_LCDC
	default n

config FB_MSM_LCDC_PRISM_WVGA
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_GORDON_VGA
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_TOSHIBA_WVGA_PT
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_SHARP_WVGA_PT
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_GRAPEFRUIT_VGA
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_ST1_WXGA
	bool
	select FB_MSM_LCDC_PANEL
	default n

config FB_MSM_LCDC_ST15_WXGA
        bool
        select FB_MSM_LCDC_PANEL
        default n

config FB_MSM_LCDC_WXGA
	bool
	select FB_MSM_LCDC_PANEL
	default n

choice
	prompt "LCD Panel"
	default FB_MSM_MDDI_AUTO_DETECT

config FB_MSM_LCDC_PRISM_WVGA_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC Prism WVGA Panel"
	select FB_MSM_LCDC_PRISM_WVGA
	---help---
	  Support for LCDC Prism WVGA (800x480) panel

config FB_MSM_LCDC_GORDON_VGA_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC Gordon VGA Panel"
	select FB_MSM_LCDC_GORDON_VGA
	---help---
	  Support for LCDC Gordon VGA (480x640) panel

config FB_MSM_LCDC_TOSHIBA_WVGA_PT_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC Toshiba WVGA PT Panel"
	select FB_MSM_LCDC_TOSHIBA_WVGA_PT
	---help---
	  Support for LCDC Toshiba WVGA PT (480x800) panel

config FB_MSM_LCDC_SHARP_WVGA_PT_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC Sharp WVGA PT Panel"
	select FB_MSM_LCDC_SHARP_WVGA_PT
	---help---
	  Support for LCDC Sharp WVGA PT (480x800) panel

config FB_MSM_LCDC_GRAPEFRUIT_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC Grapefruit VGA Panel"
	select FB_MSM_LCDC_GRAPEFRUIT_VGA
	---help---
	  Support for Grapefruit VGA (1024x600) panel

config FB_MSM_LCDC_ST1_PANEL
	depends on FB_MSM_LCDC_HW
	bool "LCDC ST1 WXGA Panel"
	select FB_MSM_LCDC_ST1_WXGA
	---help---
	  Support for ST1 WXGA (1280x720) panel

config FB_MSM_LCDC_ST15_PANEL
        depends on FB_MSM_LCDC_HW
        bool "LCDC ST1.5 Panel"
        select FB_MSM_LCDC_ST15_WXGA
        ---help---
          Support for ST1.5 WXGA (1366x768) panel

config FB_MSM_TRY_MDDI_CATCH_LCDC_PRISM
	depends on FB_MSM_LCDC_HW
	bool "MDDI Panel Auto Detect + LCDC Prism WVGA"
	select FB_MSM_MDDI_AUTO_DETECT
	select FB_MSM_LCDC_PRISM_WVGA
	select FB_MSM_LCDC_GORDON_VGA
	select FB_MSM_LCDC_TOSHIBA_WVGA_PT
	select FB_MSM_LCDC_SHARP_WVGA_PT
	select FB_MSM_LCDC_WXGA
	select FB_MSM_LCDC_GRAPEFRUIT_VGA
	select FB_MSM_LCDC_ST1_WXGA
        select FB_MSM_LCDC_ST15_WXGA
	---help---
	  Support for MDDI panel auto detect.
	  If it can't find any MDDI panel, it will load LCDC Prism WVGA panel.

config FB_MSM_MDDI_PANEL_AUTO_DETECT
	bool "MDDI Panel Auto Detect"
	select FB_MSM_MDDI_AUTO_DETECT
	---help---
	  Support for MDDI panel auto detect

config FB_MSM_MDDI_PRISM_WVGA
	bool "MDDI Prism WVGA Panel"
	select FB_MSM_MDDI
	---help---
	  Support for MDDI Prism WVGA (800x480) panel

config FB_MSM_MDDI_TOSHIBA_WVGA_PORTRAIT
	bool "MDDI Toshiba WVGA Portrait Panel"
	select FB_MSM_MDDI_TOSHIBA_COMMON
	---help---
	  Support for MDDI Toshiba WVGA (480x800) panel

config FB_MSM_MDDI_TOSHIBA_VGA
	bool "MDDI Toshiba VGA Panel"
	select FB_MSM_MDDI_TOSHIBA_COMMON_VGA
	---help---
	  Support for MDDI Toshiba VGA (480x640) and QCIF (176x220) panel

config FB_MSM_MDDI_TOSHIBA_WVGA
	bool "MDDI Toshiba WVGA panel"
	select FB_MSM_MDDI_TOSHIBA_COMMON
	---help---
	  Support for MDDI Toshiba (800x480) WVGA panel

config FB_MSM_MDDI_SHARP_QVGA_128x128
	bool "MDDI Sharp QVGA Dual Panel"
	select FB_MSM_MDDI
	---help---
	  Support for MDDI Sharp QVGA (240x320) and 128x128 dual panel

config FB_MSM_EBI2_TMD_QVGA_EPSON_QCIF
	bool "EBI2 TMD QVGA Epson QCIF Dual Panel"
	select FB_MSM_EBI2
	---help---
	  Support for EBI2 TMD QVGA (240x320) and Epson QCIF (176x220) panel

config FB_MSM_PANEL_NONE
	bool "NONE"
	---help---
	  This will disable LCD panel
endchoice

choice
	prompt "Secondary LCD Panel"
	depends on  FB_MSM_MDP31
	default FB_MSM_SECONDARY_PANEL_NONE

config FB_MSM_LCDC_EXTERNAL_WXGA
	depends on FB_MSM_MDP31
	bool "External WXGA on LCDC"
	select FB_MSM_LCDC_PANEL
	---help---
	  Support for external WXGA display (1280x720)

config FB_MSM_HDMI_SII_EXTERNAL_720P
	depends on FB_MSM_MDP31
	bool "External SiI9022 HDMI 720P"
	select FB_MSM_LCDC_PANEL
	---help---
	  Support for external HDMI 720p display (1280x720p)
	  Using SiI9022 chipset

config FB_MSM_SECONDARY_PANEL_NONE
	bool "NONE"
	---help---
	  No secondary panel
endchoice

config FB_MSM_TVOUT_NTSC
	bool
	select FB_MSM_TVOUT
	default n

config FB_MSM_TVOUT_PAL
	bool
	select FB_MSM_TVOUT
	default n

choice
	depends on  (FB_MSM_MDP22 || FB_MSM_MDP31)
	prompt "TVOut Region"
	default FB_MSM_TVOUT_NTSC_M

config FB_MSM_TVOUT_NTSC_M
	bool "NTSC M"
	select FB_MSM_TVOUT_NTSC
	---help---
	  Support for NTSC M region (North American and Korea)

config FB_MSM_TVOUT_NTSC_J
	select FB_MSM_TVOUT_NTSC
	bool "NTSC J"
	---help---
	  Support for NTSC J region (Japan)

config FB_MSM_TVOUT_PAL_BDGHIN
	select FB_MSM_TVOUT_PAL
	bool "PAL BDGHIN"
	---help---
	  Support for PAL BDGHIN region (Non-argentina PAL-N)

config FB_MSM_TVOUT_PAL_M
	select FB_MSM_TVOUT_PAL
	bool "PAL M"
	---help---
	  Support for PAL M region

config FB_MSM_TVOUT_PAL_N
	select FB_MSM_TVOUT_PAL
	bool "PAL N"
	---help---
	  Support for PAL N region (Argentina PAL-N)

config FB_MSM_TVOUT_NONE
	bool "NONE"
	---help---
	  This will disable TV Out functionality.
endchoice

config FB_MSM_TVOUT_SVIDEO
	bool "TVOut on S-video"
	depends on FB_MSM_TVOUT
	default n
	---help---
	  Selects whether the TVOut signal uses S-video.
	  Choose n for composite output.

choice
	depends on  FB_MSM_MDP22
	prompt "External MDDI"
	default FB_MSM_EXTMDDI_SVGA

config FB_MSM_EXTMDDI_SVGA
	bool "External MDDI SVGA"
	select FB_MSM_MDDI
	select FB_MSM_EXTMDDI
	---help---
	  Support for MSM SVGA (800x600) external MDDI panel

config FB_MSM_EXTMDDI_NONE
	bool "NONE"
	---help---
	  This will disable External MDDI functionality.
endchoice

endif
