if ARCH_MSM

choice
	prompt "Qualcomm MSM SoC Type"
	default ARCH_MSM7X00A

config ARCH_MSM7X00A
	bool "MSM7x00A / MSM7x01A"
	select ARCH_MSM_ARM11
	select CPU_V6

config ARCH_MSM7225
        bool "Qualcomm MSM7225"
        select ARCH_MSM_ARM11
        select CPU_V6

config ARCH_MSM7227
	bool "Qualcomm MSM7227"
        select ARCH_MSM_ARM11
        select CPU_V6

config ARCH_MSM7X30
	bool "MSM7x30"
	select ARCH_MSM_SCORPION
	select CPU_V7

config ARCH_QSD8X50
	bool "QSD8x50"
	select ARCH_MSM_SCORPION
	select CPU_V7
	select VERIFY_PERMISSION_FAULT

endchoice

config ARCH_MSM_ARM11
	bool

config ARCH_MSM_SCORPION
	bool

config MSM_MDP22
	bool
	depends on ARCH_MSM7X00A
	default y

config MSM_MDP30
	bool
	depends on ARCH_MSM7225
	default y


config MSM_MDP302
	bool
	depends on ARCH_MSM7227
	default y

config MSM_MDP31
	bool
	depends on ARCH_QSD8X50 || ARCH_MSM7X30
	default y

config MSM_MDP40
	bool
	depends on ARCH_MSM7X30
	default y

config TURBO_MODE
	bool "Turbo mode"
	depends on ARCH_MSM7225 || ARCH_MSM7X00A
	default n
	help
	  This option is used to indicate hardware support for running the
	  memory bus at a higher speed.(only for 7X00A/7225)

config PERFLOCK
	depends on CPU_FREQ
	depends on ARCH_QSD8X50 || ARCH_MSM7X30 || ARCH_MSM7X00A || ARCH_MSM7227 || ARCH_MSM7225
	default n
	bool "HTC Performance Lock"

config PERFLOCK_BOOT_LOCK
	depends on PERFLOCK
	depends on ARCH_QSD8X50 || ARCH_MSM7X30 || ARCH_MSM7X00A || ARCH_MSM7227 || ARCH_MSM7225
	default n
	bool "Boot Time Performance Lock"

config PERFLOCK_SCREEN_POLICY
	depends on PERFLOCK
	depends on ARCH_QSD8X50 || ARCH_MSM7X00A || ARCH_MSM7227 || ARCH_MSM7225
	default n
	bool "Change Cpufreq Policy while Screen ON/OFF"

config PERFLOCK_SCREEN_ON_MIN
	depends on PERFLOCK_SCREEN_POLICY
	int "Minimum speed while screen on"
	default MSM_CPU_FREQ_ONDEMAND_MIN

config PERFLOCK_SCREEN_ON_MAX
	depends on PERFLOCK_SCREEN_POLICY
	int "Maximum speed while screen on"
	default MSM_CPU_FREQ_ONDEMAND_MAX

config PERFLOCK_SCREEN_OFF_MIN
	depends on PERFLOCK_SCREEN_POLICY
	int "Minimum speed while screen off"
	default MSM_CPU_FREQ_ONDEMAND_MIN

config PERFLOCK_SCREEN_OFF_MAX
	depends on PERFLOCK_SCREEN_POLICY
	int "Maximum speed while screen off"
	default MSM_CPU_FREQ_ONDEMAND_MIN

config MSM_AMSS_VERSION
	int
	default 6210 if MSM_AMSS_VERSION_6210
	default 6220 if MSM_AMSS_VERSION_6220
	default 6225 if MSM_AMSS_VERSION_6225
	default 6350 if MSM_AMSS_VERSION_6350
	default 6355 if MSM_AMSS_VERSION_6355
	default 1355 if MSM_AMSS_VERSION_1355
	default 4725 if MSM_AMSS_VERSION_4725
	default 4735 if MSM_AMSS_VERSION_4735
	default 4410 if MSM_AMSS_VERSION_4410
	default 3200 if MSM_AMSS_VERSION_3200
	default 1170 if MSM_AMSS_VERSION_1170
	default 1200 if MSM_AMSS_VERSION_1200
	default 1550 if MSM_AMSS_VERSION_1550
choice
	prompt "AMSS modem firmware version"

	default MSM_AMSS_VERSION_6225

	config MSM_AMSS_VERSION_6210
		bool "6.2.10"

	config MSM_AMSS_VERSION_6220
		bool "6.2.20"

	config MSM_AMSS_VERSION_6225
		bool "6.2.20 + New ADSP"

	config MSM_AMSS_VERSION_6350
		bool "6.3.50"

	config MSM_AMSS_VERSION_6355
		bool "6.3.55"

	config MSM_AMSS_VERSION_1355
		bool "1.3.55"

	config MSM_AMSS_VERSION_4725
		bool "4.7.25"

	config MSM_AMSS_VERSION_4735
		bool "4.7.25 + SBA 3001"

	config MSM_AMSS_VERSION_4410
		bool "4.4.10"

	config MSM_AMSS_VERSION_3200
		bool "3.2.00"

	config MSM_AMSS_VERSION_1170
		bool "1.1.70"

	config MSM_AMSS_VERSION_1200
		bool "1.2.00"

        config MSM_AMSS_VERSION_1550
                bool "1.5.50"
endchoice

config MSM_DEBUG_UART
	int
	default 1 if MSM_DEBUG_UART1
	default 2 if MSM_DEBUG_UART2
	default 3 if MSM_DEBUG_UART3

choice
	prompt "Debug UART"

	default MSM_DEBUG_UART_NONE

	config MSM_DEBUG_UART_NONE
		bool "None"

	config MSM_DEBUG_UART1
		bool "UART1"

	config MSM_DEBUG_UART2
		bool "UART2"

	config MSM_DEBUG_UART3
		bool "UART3"
endchoice

config ARCH_MSM7230
	bool "MSM7230"
	depends on ARCH_MSM7X30

config ARCH_MSM7630
	bool "MSM7630"
	depends on ARCH_MSM7X30

comment "MSM Board Type"

config MACH_HALIBUT
	depends on ARCH_MSM7X00A
	default n
	bool "Halibut Board (QCT SURF7201A)"
	help
	  Support for the Qualcomm SURF7201A eval board.

config MACH_TROUT
	depends on ARCH_MSM7X00A
	default n
	bool "Trout (HTC Dream, T-Mobile G1, Google ADP1)"
	help
	 Select this to support HTC Dream, T-Mobile G1, Google ADP1.

config MACH_SWORDFISH
	depends on ARCH_QSD8X50
	default n
	bool "Swordfish Board (QCT SURF8250)"
	help
	  Support for the Qualcomm SURF8250 eval board.

config MACH_SAPPHIRE
	depends on ARCH_MSM7X00A
	default n
	bool "Sapphire"
	help
	  Support for the HTC Sapphire device.

config MACH_HERO
	depends on ARCH_MSM7X00A
	default n
	bool "Hero"
	help
	  Support for the HTC Hero device.

config MACH_DESIREC
        depends on ARCH_MSM7X00A
        default n
        bool "Hero"
        help
          Support for the HTC DesireC device.

config MACH_HEROC
        depends on ARCH_MSM7X00A
        default n
        bool "Hero"
        help
          Support for the HTC HeroC device.


config MACH_ORCA
	depends on ARCH_QSD8X50
	default n
	bool "Orca"
	help
	  Select this to support the Orca device

config MACH_MAHIMAHI
	depends on ARCH_QSD8X50
	default n
	bool "Mahi-Mahi"
	help
	  Select this to support the Mahi-Mahi device

config MACH_BRAVO
	depends on ARCH_QSD8X50
	default n
	bool "Bravo"
	help
	  Select this to support the Bravo device

config MACH_HTCLEO
	depends on ARCH_QSD8X50
	default y
	bool "HTC Leo"
	help
	  Select this to support the HTC Leo device

config USING_BRAVOS_DSP
	depends on MACH_HTCLEO
	default n
	bool "Bravos DSP for Leo"
	help
	  Enable this if you use Bravos DSP on a Leo

config HTCLEO_BLINK_AT_BOOT
       depends on MACH_HTCLEO
       default n
       bool "Blink flash at boot"
       help
         Blink flash led during hardware init

config HTCLEO_BTN_BACKLIGHT_MANAGER
      depends on MACH_HTCLEO
      default y
      bool "Use button backlight manager"
      help
	Use kernel button backlight manager to turn on/off backlight

config MACH_PASSIONC
	depends on ARCH_QSD8X50
	default n
	bool "PassionC"
	help
	  Select this to support the PassionC device

config MACH_BRAVOC
	depends on ARCH_QSD8X50
	default n
	bool "BravoC"
	help
	  Select this to support the BravoC device

config MACH_INCREDIBLE
	depends on ARCH_QSD8X50
	default n
	bool "Incredible"
	help
	  Select this to support the Incredible device

config MACH_INCREDIBLEC
	depends on ARCH_QSD8X50
	default n
	bool "IncredibleC"
	help
	  Select this to support the IncredibleC device

config MACH_SUPERSONIC
	depends on ARCH_QSD8X50
	default n
	bool "Supersonic"
	help
	  Select this to support the Supersonic device

config MACH_BEE
	depends on ARCH_MSM7225
	default n
	bool "Bee"
	help
	  Support for Bee (PDA phone).

config MACH_BUZZ
        depends on ARCH_MSM7225
        default n
        bool "Buzz"
        help
          Support for Buzz (PDA phone).

config MACH_BUZZC
        depends on ARCH_MSM7225
        default n
        bool "Buzzc"
        help
          Support for Buzzc (PDA phone).

config MACH_PARADISE
	depends on ARCH_MSM7225
	default n
	bool "Paradise"
	help
	  Support for Paradise (PDA phone).

config MACH_BAHAMAS
	depends on ARCH_MSM7225
	default n
	bool "Bahamas"
	help
	  Support for Bahamas (PDA phone).

config MACH_LEGEND
	depends on ARCH_MSM7227
	default n
	bool "Legend"
	help
	  Support for Legend (PDA phone).

config MACH_LATTE
	depends on ARCH_MSM7227
	default n
	bool "Latte"
	help
	  Support for Latte (PDA phone).

config MACH_LIBERTY
	depends on ARCH_MSM7227
	default n
	bool "Liberty"
	help
	  Support for Liberty (PDA phone).

config MACH_VISION
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 VISION"
       help
         Support for the Qualcomm MSM7x30 Vision board.

config MACH_LEXIKON
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 LEXIKON"
       help
         Support for the Qualcomm MSM7x30 Lexikon board.

config MACH_SPEEDY
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 SPEEDY"
       help
         Support for the Qualcomm MSM7x30 Speedy board.

config MACH_MECHA
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 MECHA"
       help
         Support for the Qualcomm MSM7x30 Mecha board.

config MACH_BLITZC
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       depends on MACH_MECHA
       default n
       bool "MSM7x30 BLITZC"
       help
         Support for the Qualcomm MSM7x30 Blitz#C board.

config MACH_GLACIER
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 GLACIER"
       help
         Support for the Qualcomm MSM7x30 Glacier board.

config MACH_SPADE
       depends on ARCH_MSM7X30
       depends on !MSM_STACKED_MEMORY
       default n
       bool "MSM7x30 SPADE"
       help
         Support for the Qualcomm MSM7x30 Spade board.

config TROUT_BATTCHG
	depends on MACH_TROUT && POWER_SUPPLY
	default n
	bool "Trout battery / charger driver"

config HTC_BATTCHG
	depends on MSM_ONCRPCROUTER && POWER_SUPPLY
	default n
	bool "HTC battery / charger driver"

config HTC_BATTCHG_SMEM
	depends on HTC_BATTCHG
	default n
	bool "Read Battery Info via SMEM"

config HTC_PWRSINK
	depends on MSM_SMD
	default y
	bool "HTC Power Sink Driver"

config HTC_SLEEP_MODE_GPIO_DUMP
	default y
	bool "HTC Sleep Mode GPIO Dump"
	help
	   Support for dumping GPIO status when enter suspend.

config HTC_POWER_COLLAPSE_MAGIC
	default n
	bool "Check Power Collapse State"

config SMEM_RPC_SERVER_STATE
	default n
	bool "Set RPC Server State in SMEM"

config BUILD_OMA_DM
        bool "Build in OMA-DM fixes"
        default n
        help
          For OMA-DM we need to do some additional fixes.

config CACHE_FLUSH_RANGE_LIMIT
	hex "Cache flush range limit"
	default 0x40000
	help
	  When flushing a cache range larger then this (hex) limit, flush the
	  entire cache instead. Flushing a large range can be slower than
	  flushing, then refilling, the entire cache.

choice
	prompt "Default Timer"
	default MSM7X00A_USE_GP_TIMER

	config MSM7X00A_USE_GP_TIMER
		bool "GP Timer"
	help
	  Low resolution timer that allows power collapse from idle.

	config MSM7X00A_USE_DG_TIMER
		bool "DG Timer"
	help
	  High resolution timer.
endchoice

choice
	prompt "Suspend sleep mode"
	default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
	help
	  Allows overriding the sleep mode used. Leave at power
	  collapse suspend unless the arm9 image has problems.

	config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
		bool "Power collapse suspend"
	help
	  Lowest sleep state. Returns through reset vector.

	config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
		bool "Power collapse"
	help
	  Sleep state that returns through reset vector.

	config MSM7X00A_SLEEP_MODE_APPS_SLEEP
		bool "Apps Sleep"

	config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
		bool "Ramp down cpu clock and wait for interrupt"

	config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
		bool "Wait for interrupt"
endchoice

config MSM7X00A_SLEEP_MODE
	int
	default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
	default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
	default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
	default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
	default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT

choice
	prompt "Idle sleep mode"
	default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
	help
	  Allows overriding the sleep mode used from idle. Leave at power
	  collapse suspend unless the arm9 image has problems.

	config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
		bool "Power collapse suspend"
	help
	  Lowest sleep state. Returns through reset vector.

	config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
		bool "Power collapse"
	help
	  Sleep state that returns through reset vector.

	config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
		bool "Apps Sleep"

	config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
		bool "Ramp down cpu clock and wait for interrupt"

	config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
		bool "Wait for interrupt"
endchoice

config MSM7X00A_IDLE_SLEEP_MODE
	int
	default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
	default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
	default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
	default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
	default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT

config MSM7X00A_IDLE_SLEEP_MIN_TIME
	int "Minimum idle time before sleep"
	default 20000000
	help
	  Minimum idle time in nanoseconds before entering low power mode.

config MSM7X00A_IDLE_SPIN_TIME
	int "Idle spin time before cpu ramp down"
	default 80000
	help
	  Spin time in nanoseconds before ramping down cpu clock and entering
	  any low power state.

choice
	prompt "Suspend sleep limit"
	default MSM7X00A_SLEEP_NO_LIMIT
	help
	  Allows overriding the sleep limit used.

	config MSM7X00A_SLEEP_NO_LIMIT
		bool "No sleep limit"
	help
	  No limit sleep and tcxo shutdown.

	config MSM7X00A_SLEEP_LIMITED_SLEEP
		bool "Limited sleep"
	help
	  Do everything except tcxo off.

	config MSM7X00A_SLEEP_NEGATE_SLEEP
		bool "No sleep"
	help
	  Prevent arm9 enter sleep mode.
endchoice

config MSM7X00A_SLEEP_LIMIT
	int
	default 0 if MSM7X00A_SLEEP_NO_LIMIT
	default 1 if MSM7X00A_SLEEP_LIMITED_SLEEP
	default 2 if MSM7X00A_SLEEP_NEGATE_SLEEP

choice
    prompt "Idle sleep limit"
    default MSM7X00A_IDLE_SLEEP_NO_LIMIT
    help
      Allows overriding the idle sleep limit used.

    config MSM7X00A_IDLE_SLEEP_NO_LIMIT
        bool "No sleep limit"
    help
      No limit sleep and tcxo shutdown.

    config MSM7X00A_IDLE_SLEEP_LIMITED_SLEEP
        bool "Limited sleep"
    help
      Do everything except tcxo off.

    config MSM7X00A_IDLE_SLEEP_NEGATE_SLEEP
        bool "No sleep"
    help
      Prevent arm9 enter sleep mode.
endchoice

config MSM7X00A_IDLE_SLEEP_LIMIT
    int
    default 0 if MSM7X00A_IDLE_SLEEP_NO_LIMIT
    default 1 if MSM7X00A_IDLE_SLEEP_LIMITED_SLEEP
    default 2 if MSM7X00A_IDLE_SLEEP_NEGATE_SLEEP

menuconfig MSM_IDLE_STATS
	bool "Collect idle statistics"
	default y
	help
	  Collect idle statistics and export them in proc/msm_pm_stats.

if MSM_IDLE_STATS

config MSM_IDLE_STATS_FIRST_BUCKET
	int "First bucket time"
	default 62500
	help
	  Upper time limit in nanosconds of first bucket.

config MSM_IDLE_STATS_BUCKET_SHIFT
	int "Bucket shift"
	default 2

config MSM_IDLE_STATS_BUCKET_COUNT
	int "Bucket count"
	default 10

endif # MSM_IDLE_STATS

config MSM_FIQ_SUPPORT
	default y
	bool "Enable installation of an FIQ handler."

config MSM_SERIAL_DEBUGGER
	select MSM_FIQ_SUPPORT
	select KERNEL_DEBUGGER_CORE
	default n
	bool "FIQ Mode Serial Debugger"
	help
	  The FIQ serial debugger can accept commands even when the
	  kernel is unresponsive due to being stuck with interrupts
	  disabled.  Depends on the kernel debugger core in drivers/misc.

config MSM_SERIAL_DEBUGGER_NO_SLEEP
	depends on MSM_SERIAL_DEBUGGER
	default n
	bool "Keep serial debugger active"
	help
	  Enables the serial debugger at boot. Passing
	  msm_serial_debugger.no_sleep on the kernel commandline will
	  override this config option.

config MSM_SERIAL_DEBUGGER_WAKEUP_IRQ_ALWAYS_ON
	depends on MSM_SERIAL_DEBUGGER
	default n
	bool "Don't disable wakeup IRQ when debugger is active"
	help
	  Don't disable the wakeup irq when enabling the uart clock. This will
	  cause extra interrupts, but it makes the serial debugger usable with
	  radio builds that ignore the uart clock request in power collapse.

config MSM_SERIAL_DEBUGGER_CONSOLE
	depends on MSM_SERIAL_DEBUGGER
	default n
	bool "Console on FIQ Serial Debugger port"
	help
	  Enables a console so that printk messages are displayed on
	  the debugger serial port as the occur.

config MSM_SMD
	default y
	bool "MSM Shared Memory Driver (SMD)"
	help
	  Support for the shared memory interface between the apps
	  processor and the baseband processor.  Provides access to
	  the "shared heap", as well as virtual serial channels
	  used to communicate with various services on the baseband
	  processor.

config MSM_N_WAY_SMD
	depends on (MSM_SMD && (ARCH_QSD8X50 || ARCH_MSM7X30 || ARCH_MSM7227))
	default y
	bool "MSM N-WAY SMD support"
	help
	  Supports APPS-QDSP SMD communication along with
	  normal APPS-MODEM SMD communication.

config MSM_ONCRPCROUTER
	depends on MSM_SMD
	default y
	bool "MSM ONCRPC router support"
	help
	  Support for the MSM ONCRPC router for communication between
	  the ARM9 and ARM11

config MSM_RPCSERVERS
	depends on MSM_ONCRPCROUTER
	default y
	bool "Kernel side RPC server bundle"
	help
	  none

config MSM_RMT_STORAGE_SERVER
	depends on (ARCH_MSM && MSM_ONCRPCROUTER)
	default n
	bool "Remote Storage RPC server"
	help
	  Provide RPC mechanism for remote processors to access storage
	  device on apps processor.

config MSM_DALRPC
	bool "DAL RPC support"
	depends on (ARCH_QSD8X50 || ARCH_MSM7X30)
	default y
	help
	  Supports RPC calls to DAL devices on remote processor cores.

config MSM_DALRPC_TEST
	tristate "DAL RPC test module"
	depends on (MSM_DALRPC && DEBUG_FS)
	default m
	help
	  Exercises DAL RPC calls to QDSP6.

config MSM_CPU_FREQ_SCREEN
	bool
	default n
	depends on HAS_EARLYSUSPEND
	help
	  Simple cpufreq scaling based on screen ON/OFF.

if MSM_CPU_FREQ_SCREEN

config MSM_CPU_FREQ_SCREEN_OFF
	int "Screen off cpu frequency"
	default 245760

config MSM_CPU_FREQ_SCREEN_ON
	int "Screen on cpu frequency"
	default 384000

endif # MSM_CPU_FREQ_SCREEN

config MSM_CPU_FREQ_ONDEMAND_MAX
	int "Max"
	default 384000

config MSM_CPU_FREQ_ONDEMAND_MIN
	int "Min"
	default 245760

config MSM_HW3D
	tristate "MSM Hardware 3D Register Driver"
	depends on EARLYSUSPEND
	default y
	help
	  Provides access to registers needed by the userspace OpenGL|ES
	  library.

config MSM_HW3D_EARLYSUSPEND_ENABLED
        tristate "MSM Hardware 3D Driver support earlysuspend"
        depends on MSM_HW3D
        default y
        help
          Provide selection to support earlysuspend in HW3D or not.

if !ARCH_QSD8X50
config MSM_ADSP
	depends on MSM_AMSS_VERSION_6210 || MSM_AMSS_VERSION_6220 || MSM_AMSS_VERSION_6225 || \
		   MSM_AMSS_VERSION_6350
	tristate "MSM ADSP driver"
	default y
	help
	  Provides access to registers needed by the userspace aDSP library.

config MSM_ADSP_COMP
	depends on MSM_AMSS_VERSION_6355 || MSM_AMSS_VERSION_1355 || MSM_AMSS_VERSION_4725 || \
		   MSM_AMSS_VERSION_4735 || MSM_AMSS_VERSION_4410
	tristate "MSM ADSP support init info by RPC"
	default y
	help
	  Provides access to registers needed by the userspace aDSP library.
endif

config HTC_ACOUSTIC
        tristate "HTC acoustic driver"
        default y
        help
          The driver provide user space use shared memory allocate by using
          RPC code.

config HTC_ACOUSTIC_QSD
	tristate "HTC acoustic driver for QSD"
	depends on ARCH_QSD8X50
	default n
	help
	  Provides user space use shared memory allocate by using RPC code.
	  Provides headset amp, mic bias and speaker amp control.

config MSM_ADSP_REPORT_EVENTS
	bool "Report modem events from the DSP"
	default y
	depends on (MSM_ADSP || MSM7KV2_AUDIO)
	help
	  Normally, only messages from the aDSP are reported to userspace.
	  With this option, we report events from the aDSP as well.

config MSM7KV2_AUDIO
        bool "MSM7K v2 audio"
        depends on (ARCH_MSM7X30 && ANDROID_PMEM)
        default y
        help
          Enables QDSP5V2-based audio drivers for audio playbacks and
          voice call.

config MSM_CLOCK_CTRL_DEBUG
	bool "Enable debugfs interface for clock control"
	default n
	depends on DEBUG_FS
	help
	  When this option is enabled, the clock rate control interface
	  is exported through debugfs. Use this at your own risk!

config WIFI_CONTROL_FUNC
	bool "Enable WiFi control function abstraction"
	help
	  Enables Power/Reset/Carddetect function abstraction

config WIFI_MEM_PREALLOC
	depends on WIFI_CONTROL_FUNC
	bool "Preallocate memory for WiFi buffers"
	help
	  Preallocates memory buffers for WiFi driver

config WIFI_NVS_PROC_CREATE
	bool "Store nvs data into /proc/calibration"
	help
	  store nvs data into /proc/calibration

config MMC_SUPPORT_EXTERNEL_DRIVER
	bool "support external mmc driver"
	help
	  Use external mmc driver for specific sdcc controller

config MMC_BUSCLK_PWRSAVE
	bool "disable SD/MMC clocks in idle mode"
	default n
	help
	  Clocks are disabled after 1 second of inactivity.

config VIRTUAL_KPANIC_PARTITION
	bool "Create virtual kpanic partition"
	default n
	help
	  Creates a virtual mtd partition named 'kpanic', stealing space from
	  the specified mtd partition label.
	  *** DO NOT USE IF YOU ARE USING OTA/RECOVERY ***

config QSD_AUDIO
	bool "QSD audio"
	depends on (ARCH_QSD8X50)
	default y
	help
	  Provides PCM, MP3, and AAC audio playback.

config QSD_AUDIO_CALLREC
	bool "Call recording support [avs333]"
	depends on QSD_AUDIO
	default n

config VIRTUAL_KPANIC_PSIZE
	depends on VIRTUAL_KPANIC_PARTITION
	int "Default kpanic partition size"
	default 1048576
	help
	  Sets the size of the virtual kpanic paritition to create.

config QSD_HTC_FM
	bool "QSD HTC FM"
	depends on QSD_AUDIO
	default y
	help
	  HTC FM driver for QSD

config ARCH_MSM_FLASHLIGHT
        bool "Flashlight Driver"
        depends on ARCH_MSM
        help
          The flashlight driver is for MSM series.

config VIRTUAL_KPANIC_SRC
	depends on VIRTUAL_KPANIC_PARTITION
	string "Partition to steal from"
	default "cache"
	help
	  Sets the partition to steal from to make the virtual one.

config MICROP_COMMON
	tristate "MICROP COMMON Driver"
	depends on I2C
	help
	  HTC Microp-P support.

config HTC_HEADSET_MGR
	tristate "HTC headset manager driver"
	default n
	help
	  Provides support of HTC headset manager.

config HTC_HEADSET_H2W
	tristate "HTC 2 Wire headset driver"
	depends on HTC_HEADSET_MGR
	default n
	help
	  Provides support of HTC 2 Wire headset.

config HTC_HEADSET_GPIO
	tristate "HTC GPIO headset detection driver"
	depends on HTC_HEADSET_MGR
	default n
	help
	  Provides support of HTC GPIO headset detection.

config HTC_HEADSET_MICROP
	tristate "HTC Micro-P headset detection driver"
	depends on HTC_HEADSET_MGR && MICROP_COMMON
	default n
	help
	  Provides support of HTC Micro-P headset detection.

config HTC_HEADSET_PMIC
	tristate "HTC PMIC headset detection driver"
	depends on HTC_HEADSET_MGR
	default n
	help
	  Provides support of HTC PMIC headset detection.

config BUILD_CIQ
        bool "Build in CIQ fixes"
        default n
        help
          For CIQ we need to do some additional fixes.

endif

config SMD_OFFSET_TCXO_STAT
	depends on MSM_SMD
	hex "SMD offset of total TCXO-off time"
	default 0x0
	help
          TCXO off time is in tick of sleep clock, 1/32768.

config AXI_SCREEN_POLICY
        depends on ARCH_QSD8X50 || ARCH_MSM7X00A || ARCH_MSM7227 || ARCH_MSM7225
	depends on HAS_EARLYSUSPEND
	bool "Use higher AXI bus while screen ON"
	default n
	help
		Simple AXI scaling based on screen ON/OFF and PWRC.

config MSM_NPA
	bool "Node Power Architecture(NPA) support"
	default y if ARCH_MSM7X30
	help
	  Enable support for Node Power Architecture for aggressive
	  resource power management. NPA provides an interface for resources
	  to export their parameters and clients to request a value. The
	  resources have additional facility to aggreate requests, calculate
	  the resultant value, apply the value and notify the clients of
	  change in state.

config MSM_NPA_LOG
	bool "Node Power Architecture(NPA) logging support"
	depends on MSM_NPA
	default y
	help
	  Enable logging support for NPA.

config MSM_NPA_DEBUG
	bool "Node Power Architecture(NPA) debug support"
	depends on MSM_NPA
	default n
	help
	  Exports functions that can debug or reset NPA internal
	  data structures.

config MSM_NPA_REMOTE
	bool "Node Power Architecture(NPA) remoting"
	depends on MSM_NPA
	default n
	help
	  Enables Linux NPA clients to talk to NPA nodes across
	  processor boundary.

config MSM_NPA_REMOTE_ONCRPC
	bool "Enables NPA remoting through ONCRPC protocol."
	depends on MSM_NPA && MSM_ONCRPCROUTER
	select MSM_NPA_REMOTE
	default n
	help
	  Enables Linux NPA clients to talk to NPA nodes in the modem
	  using ONCRPC communication protocol.

config MSM_NPA_SYSTEM_BUS
	bool "NPA-managed System Bus (AXI) rates through PM_QOS."
	depends on MSM_NPA_REMOTE
	default n
	help
	  PM_QOS System Bus rate requests are interpreted as 'Flow IDs' and
	  are routed through the NPA framework.

config MSM_SSBI
	tristate "SSBI support"
	depends on ARCH_MSM7X30
	default y
	help
	  Enable support for SSBI bus. This is required for communicatinig with
	  Qualcomm PMICs and Audio codecs.

config PHYS_OFFSET
       hex
       depends on MACH_HTCLEO
       default "0x11800000" if MACH_HTCLEO

config HTCLEO_CPU_VOLT
        bool
        default y if HTCLEO_NO_UNDERVOLT

choice
	prompt "The minimum amount of voltage feeds into the CPU is"

	default HTCLEO_NO_UNDERVOLT

	config HTCLEO_UNDERVOLT_1000
		bool "1000 mV"

	config HTCLEO_UNDERVOLT_925
		bool "925 mV"

	config HTCLEO_UNDERVOLT_800
		bool "800 mV - does not work on every device"

	config HTCLEO_NO_UNDERVOLT
		bool "DEFAULT - 1050mV"

endchoice
		
config HTCLEO_OVERCLOCK
  bool "Support overclock to 1.190GHz"
	default n
  help
		add overclock ability to 1.190GHz.
config HTCLEO_EXOVERCLOCK
  bool "Support overclock to 1.536GHz"
	depends on HTCLEO_OVERCLOCK
	default n
  help
		add overclock ability to 1.536GHz.


config HTC_FB_CONSOLE
	bool "Boot console for HTC phones (needs a font which has width <= 8)"
	default n

config HTC_FB_CONSOLE_DELAY
	bool "Wait some time after each message is printed"
	default n
	depends on HTC_FB_CONSOLE

config HTC_FB_CONSOLE_BOOT
	bool "Use console only during boot"
	default n
	depends on HTC_FB_CONSOLE

config VERY_EARLY_CONSOLE
	bool "Support for very early consoles"
	default n
	help
		Add support to initialize consoles very early. For this to have
		effect, the driver must support this and the consoles should
		be initialized in the board file as soon as possible.

config HTCLEO_ENABLE_MULTI_TOUCH
	bool "Support for multitouch"
	default y
	depends on MACH_HTCLEO
	help
		Add multitouch support for touchscreen

choice
	prompt "HTCLEO Keymapping"
	default HTCLEO_KEYMAP_ANDROID

	config HTCLEO_KEYMAP_ANDROID
		bool "Keymapping for Android"
	help
		Optimized for the default Android GUI

	config HTCLEO_KEYMAP_DPAD
		bool "Alternative Keymapping"
	help
		Useful in GUIs not designed for touch-only use as this enables
		four direction keys, alt key and enter key. Assumes landscape orientation.
endchoice

choice
	prompt "HTCLEO Backlight API type"
	default HTCLEO_BACKLIGHT_LED

	config HTCLEO_BACKLIGHT_LED
		bool "Backlight control via LED API"
	help
		Needed by Google Android

	config HTCLEO_BACKLIGHT
	select BACKLIGHT_LCD_SUPPORT
		bool "Standard backlight API"
	help
		Works in standard Linux distros. Tested in GNOME.
endchoice
