config MTPROF
	bool "Enable MTK profiler/debugger tool"
	help
	  CONFIG_MTPROF define if mtk profiling tools should be built-in or
	  not. It includes workqueue debugger, signal debugger, bootprof, and
	  other misc tools. If you are not sure about whether to enable it or
	  not, please set n.

config BOOTPROF_THRESHOLD_MS
        int "the print threshold of kernel driver init duration"
        depends on MTK_ENG_BUILD
        default 30
        help
          BOOTPROF_THRESHOLD_MS(unit: millisec)is the threshold for
          bootprof log print out or not. If driver init duration is
          greater than threshold, bootprof log is print. Opposite is not.
          If you are not sure about whether to enable it or not,
          please do not set

if MTPROF

config MTK_SCHED_MONITOR
	bool "mtk scheduler monitor"
	default n
	help
	  MTK_SCHED_MONITOR is used to monitor ISR/SOFTIRQ/TASKLET/HRTIMER
	  /STIMER/RCU processing duration and IRQ disabled duration. Say Y
	  here to enable monitor. If you are not sure about whether to enable
	  it or not, please set n.

config MTK_WQ_DEBUG
	bool "mtk workqueue debug"
	help
	  CONFIG_MTK_WQ_DEBUG define if workqueue debugging should be
	  built-in or not. It will add logs to monitor work activation,
	  queue, and execution. Say Y to enable mtk workqueue debug, or
	  if you are not sure about this, please set n.

config MTK_IRQ_COUNT_TRACER
	bool "mtk irq count tracer"
	depends on MTK_SCHED_MONITOR
	help
	  Enable this to check the increment of irq counts in a period of
	  time. If the increment is above a threshold, a warning message
	  is printed for reference information. This feature is helpful
	  to catch the irq that triggered abnormally.

	  If unsure, say N.

config MTK_IRQ_OFF_TRACER
	bool "mtk irq off tracer"
	depends on MTK_SCHED_MONITOR
	select TRACE_IRQFLAGS
	help
	  Enable this to check the irq off time. If the time is above a
	  threshold, a warning message is printed for reference information.
	  This feature is helpful to catch the task that disable irq for a
	  long time.

	  If unsure, say N.

config MTK_PREEMPT_TRACER
	bool "mtk preempt off tracer"
	depends on MTK_SCHED_MONITOR
	select PREEMPT_TRACER
	help
	  Enable this to check the irq off time. If the time is above a
	  threshold, a warning message is printed for reference information.
	  This feature is helpful to catch the task that disable irq for a
	  long time.

	  If unsure, say N.

config MTK_IRQ_COUNT_TRACER
	bool "mtk irq count tracer"
	depends on MTK_SCHED_MONITOR
	help
	  Enable this to check the increment of irq counts in a period of
	  time. If the increment is above a threshold, a warning message
	  is printed for reference information. This feature is helpful
	  to catch the irq that triggered abnormally.

	  If unsure, say N.

config MTK_IRQ_OFF_TRACER
	bool "mtk irq off tracer"
	depends on MTK_SCHED_MONITOR
	select TRACE_IRQFLAGS
	help
	  Enable this to check the irq off time. If the time is above a
	  threshold, a warning message is printed for reference information.
	  This feature is helpful to catch the task that disable irq for a
	  long time.

	  If unsure, say N.

config MTK_PREEMPT_TRACER
	bool "mtk preempt off tracer"
	depends on MTK_SCHED_MONITOR
	select PREEMPT_TRACER
	help
	  Enable this to check the irq off time. If the time is above a
	  threshold, a warning message is printed for reference information.
	  This feature is helpful to catch the task that disable irq for a
	  long time.

	  If unsure, say N.

endif # MTPROF
