config MACH_LGE
	bool "Machine LGE"
	help
	  Support for machine LGE.


menu "LGE Board Selection"

config MACH_MSM8996_TF10
        bool "MSM8996 TF10"
        depends on ARCH_MSM8996
        select MACH_LGE
        select LGE_DDR_SECTION_SIZE_CHANGE
        select LGE_MSM8996_ISB_WA
        select LGE_MSM8996_NOP_WA
        select LGE_MSM8996_FLUSH_WA
        select LGE_POWER_ONOFF_LOCKUP_DEBUG
        select LGE_DM_VERITY_RECOVERY
        help
          Support for the Qualcomm MSM8996 TF10 device.

config MACH_MSM8996_TF10_KR
        bool "MSM8996 TF10_KR"
        depends on ARCH_MSM8996
        select MACH_LGE
        help
          Support for the Qualcomm MSM8996 TF10_KR device.

config MACH_MSM8996_TF10_LAO_COM
        bool "MSM8996 TF10_LAO_COM"
        depends on ARCH_MSM8996
        select MACH_LGE
        help
          Support for the Qualcomm MSM8996 TF10_LAO_COM device.

config LGE_TARGET_DEVICE
	string  "Target Device Name"
	depends on MACH_LGE

config LGE_TARGET_PRODUCT
	string "Target Product Name"
	depends on MACH_LGE
endmenu


menu "LGE Specific Patches"

config LGE_HANDLE_PANIC
	tristate "Support LGE Crash Handler"
	default n
	depends on MACH_LGE
	help
	  LGE Crash Handler

config LGE_MSM8996_ISB_WA
	bool "Support ISB workaround for prevent MSM8996 timing issue"
	default n
	depends on MACH_MSM8996_LUCYE || MACH_MSM8996_FALCON || MACH_MSM8996_TF10
	help
		MSM8996 has timing issue sometimes.
		This feature prevents timing issue as inserting isb().

config LGE_MSM8996_NOP_WA
	bool "Support NOP workaround for prevent MSM8996 timing issue"
	default n
	depends on MACH_MSM8996_LUCYE || MACH_MSM8996_FALCON || MACH_MSM8996_TF10
	help
		MSM8996 has timing issue sometimes.
		This feature prevents timing issue as inserting nop().

config LGE_MSM8996_FLUSH_WA
	bool "Support flush workaround for prevent MSM8996 timing issue"
	default n
	depends on MACH_MSM8996_LUCYE || MACH_MSM8996_FALCON || MACH_MSM8996_TF10
	help
		MSM8996 has timing issue sometimes.
		This feature prevents timing issue as inserting flush.

config LGE_BOOT_LOCKUP_DETECT
	bool "Support to detect lockup during powering on"
	default n
	depends on LGE_HANDLE_PANIC
	help
	  For detecting lockup in boot , use simple detector which
	  raise crash when expired some period after boot.

config LGE_REBOOT_LOCKUP_DETECT
	bool "Support to detect lockup during powering off"
	default n
	depends on LGE_HANDLE_PANIC
	help
	  For detecting lockup in reboot or shutdown, use simple
	  detector which raise crash when expired some period after
	  reboot like system call.

config LGE_POWER_ONOFF_LOCKUP_DEBUG
	bool "Support to debug lockup during powering off"
	default n
	depends on LGE_HANDLE_PANIC
	help
	  For debugging lockup in reboot or shutdown, use simple
	  detector which raise crash when expired some period after
	  reboot like system call.


config LGE_BOOTLOADER_LOG
	tristate "Support LGE bootloader log"
	default n
	depends on MACH_LGE
	help
	  LGE bootloader log

config LGE_EARJACK_DEBUGGER
	bool "Earjack UART debugger support"
	default n
	depends on MACH_LGE
	help
	  Support earjack type UART debugger cable

config LGE_USB_DEBUGGER
	bool "USB UART debugger support"
	default n
	depends on LGE_PM_LGE_POWER_CLASS_CABLE_DETECT
	help
	  Support USB type UART debugger cable

config LGE_BOOTLOADER_TIME_CHECKER
    tristate "Supprt bootloader(LK, SBL) time"
    default n
    depends on MACH_LGE
    help
      Check LK, SBL booting time at
      sys/module/lge_bootloader_time_checker/parameters/lk_time
      sys/module/lge_bootloader_time_checker/parameters/sbl_time

config LGE_PM_DEBUG
        tristate "Support LGE PM Debug Feature"
        default n
        depends on MACH_LGE
        help
	  LGE PM Debug Feature

config LGE_PM_CABLE_DETECTION
	tristate "Support LGE PM Cable Detection"
	default n
	depends on MACH_LGE
	help
	  LGE PM Cable Detection

config LGE_PM_SMPL_COUNTER
	tristate "Support LGE SMPL COUNTER feature"
	default n
	depends on MACH_LGE
	help
	  Say y to enable smpl_cnt module, that count when
	  booted by SMPL

config LGE_PM_CHARGING_CONTROLLER
	tristate "LGE Charging controller"
	default n
	depends on MACH_LGE
	help
	  enable the LGE Charging controller

config LGE_PM_CHARGING_SCENARIO
	tristate "Support LGE PM Charging Scenario"
	default n
	depends on MACH_LGE
	help
	  LGE PM Charging Scenario

config LGE_PM_UNIFIED_NODE
	bool "enable LGE PM Unified sysfs node"
	default n
	depends on MACH_LGE
	help
	  Support LGE PM Unified sysfs node

config LGE_PM_PSEUDO_BATTERY
	tristate "Support pseudo battery mode"
	depends on MACH_LGE
	default n
	help
	  Say Y here to enable pseudo mode setting

config LGE_DEFAULT_HARD_RESET
	bool "LGE default hard reset"
	default n
	depends on MACH_LGE
	help
		This make hard reset when rebooting. reboot reason is
		deliveried by QPNP_PON_SOFT_RB_SPARE[2:7] register.

config LGE_ACC_NT
	tristate "Support NT accessory"
	depends on MACH_LGE
	default n
	help
	  Say Y here to enable pseudo mode setting

config PRE_SELF_DIAGNOSIS
	tristate "Support LGE self diagnosis for factory"
	default n
	depends on MACH_LGE
	help
	  LGE self diagnosis

config LGE_PANEL_MAKER_ID_SUPPORT
	tristate "Support pseudo battery mode"
	depends on MACH_LGE
	default n
	help
	  Say Y here to enable Panel Maker ID feature setting

config LGE_QSDL_SUPPORT
	tristate "Support for Quality Statistics Data Logging"
	default n
	depends on MACH_LGE
	help
	  QSDL is a feature which notify infomation for quality statistics
	  data logging of device.

config LGE_DM_VERITY_RECOVERY
	tristate "Support dm verity corrupt recovery"
	default n
	depends on MACH_LGE
	help
	  Sometimes, dm-bufio has invalid data. If data is corrupted,
	  try to recover data.

config LGE_PKM
    tristate "Support PKM driver with QSEE"
	depends on MACH_LGE
	default n
	help
	   Say Y here to enable Periodic Kernel Monitoring driver for LG IMA

config LGE_PM_DEBUG
        tristate "Support LGE PM Debug Feature"
        default n
        depends on MACH_LGE
        help
          LGE PM Debug Feature

config LGE_ONE_BINARY
        tristate "Support LGE One binary"
	default n
	depends on MACH_LGE
	help
	  LGE One Binary
endmenu

menu "LGE QFPROM Values"

config LGE_QFPROM_INTERFACE
	bool "Support qfprom interface"
	default n
	depends on MACH_LGE
	help
	  LGE QFPROM DRIVER.
endmenu

source "drivers/soc/qcom/lge/power/Kconfig"
source "drivers/soc/qcom/lge/hpue/Kconfig"
