kernel_samsung_a53x/drivers/samsung/debug/Kconfig
2024-06-15 16:02:09 -03:00

383 lines
10 KiB
Text
Executable file

# drivers/samsung/debug/Kconfig
#
# Copyright (c) 2010-2020 Samsung Electronics Co., Ltd.
# http://www.samsung.com/
#
# Licensed under GPLv2
config SEC_DEBUG_BASE
tristate "Enable Samsung debug fundamentals"
depends on SEC_DEBUG
default y
help
Samsung Debug Base Driver
config SEC_DEBUG_BASE_BUILT_IN
bool "Samsung Debug Built-In Support"
depends on SEC_DEBUG
default y
help
Samsung Debug Base Driver (Built-In)
config SEC_DEBUG_AUTO_COMMENT
bool "Enable Samsung kernel fault auto comment"
depends on PRINTK
depends on SEC_DEBUG
default y
help
This option enables kernel fault auto comment feature.
This option also requires bootloader change that enables auto comment
extraction along with ramdump.
config SEC_DEBUG_MODE
tristate "Enable Samsung force upload mode support"
depends on SEC_DEBUG
default m
help
This option enables get force upload
This option call dbg_snapshot_scratch_clear
according to force_upload variables
config SEC_DEBUG_EXTRA_INFO
tristate "Enable Samsung reset reason extra info"
depends on SEC_DEBUG
default m
help
This option enables storing reset reason extra info
This option enables ap reset info bigdata
based on reset reason extra info
config SEC_DEBUG_EXTRA_INFO_BUILT_IN
bool "Enable Samsung reset reason extra info built in"
depends on SEC_DEBUG
default y
help
to support extra info built in
This option enables storing reset reason extra info
This option enables ap reset info bigdata
based on reset reason extra info
config SEC_DEBUG_HW_PARAM
tristate "Enable Samsung hw parameter driver"
depends on SEC_DEBUG
default m
help
This option enables storing HW parameter driver
This option gets some hardware dependent parameters
based on sec debug
config SEC_DEBUG_RESET_REASON
tristate "Enable Samsung reset reason driver"
depends on SEC_DEBUG
default m
help
This option enables reset reason driver
based on sec debug
config SEC_DEBUG_MEMTAB
bool "Enable member offset table"
depends on SEC_DEBUG
default y
help
This option enables sec_debug member offset table.
The table includes information of member required. And the bootloader
will search on the table with key name.
config SEC_DEBUG_SYSRQ_KMSG
bool "support storing last n lines of kmsg before sysrq trigger"
depends on SEC_DEBUG
default n
help
This option enables storing last n lines of kmsg before sysrq triggered.
It can be used for debugging purpose in case of sysrq triggered.
config SEC_DEBUG_PRINT_PCLR
bool "Add PC/LR to Panic message for die()"
depends on SEC_DEBUG
default y
help
This option enables PC and LR value present in panic message when the
kernel calls die(). It may be useful for upload screen and auto
comment.
config SEC_DEBUG_BUG_ON_SLUB_CORRUPTION
bool "Trigger a BUG when slub corruption is detected"
depends on SEC_DEBUG
default y
help
Select this option if the kernel should BUG when it encounters
slub corruption when they get checked for validity.
config SEC_DEBUG_AVOID_UNNECESSARY_TRAP
bool "avoid unnecessary trap"
depends on SEC_DEBUG
default y
help
This option helps to obtain normal log by avoiding unnessary trap again
after exception handling
config SEC_DEBUG_SPINBUG_PANIC
bool "Panic on spin bug"
depends on SEC_DEBUG && DEBUG_SPINLOCK
default y
help
This option enables the kernel to panic on "spin bug"
config SEC_DEBUG_WORKQUEUE_LOCKUP_PANIC
bool "Bug on workqueue lockup"
depends on SEC_DEBUG && WQ_WATCHDOG
default y
help
This option enables the kernel to panic on workqueue lockup
config SEC_DEBUG_EXCEPTION_STACK
bool "Preserve stack data when the exception happened"
depends on SEC_DEBUG
default y
help
If this is set, kernel can preserve the specific size of stack data
when an exception occurs from EL1. This can help to fiqure out the
stack data before the exception happened.
config SEC_DEBUG_ATOMIC_SLEEP_PANIC
bool "Panic (Reboot) On Atomic Sleep"
depends on SEC_DEBUG && !SAMSUNG_PRODUCT_SHIP
default y
help
Say Y here to enable the kernel to panic on "atomic sleep",
Say N if you want warning messages only.
config SEC_DEBUG_WATCHDOGD_FOOTPRINT
tristate "store watchdogd footprint"
depends on SEC_DEBUG
default m
help
If this config is set, store watchdogd footprint information.
config SEC_DEBUG_LOCKUP_INFO
bool "Gather softlockup/hardlockup information"
depends on SEC_DEBUG && SEC_DEBUG_HARDLOCKUP_INFO
default y
help
Gather softlockup/hardlockup information for auto analysis
config SEC_DEBUG_BAD_STACK_CAREFULLY
bool "Handle bad_stack more carefully"
depends on SEC_DEBUG
default n
help
This options prevent infinite abort loop about stack corruption.
config SEC_DEBUG_FPSIMD_CHECK_CONTEXT
bool "Detect for fpsimd has corruption"
depends on SEC_DEBUG
default n
help
If FPSIMD has corruption, use this feature for detect problem.
config SEC_DEBUG_FAIL_TO_FREEZE_PANIC
bool "Panic on fail to freeze tasks"
depends on SEC_DEBUG && !SAMSUNG_PRODUCT_SHIP
default y
help
This option enables the kernel to panic on fail to freeze tasks
config SEC_DEBUG_UNFROZEN_TASK
bool "Set unfrozen task information"
depends on SEC_DEBUG
default y
help
This option enables the kernel to set unfrozen task information
config SEC_DEBUG_FAULT_MSG_ADV
bool "Print fault message for all kernel fault"
depends on SEC_DEBUG
default y
help
This option enables the kernel to print fault message and print
physical fault address when synchronous external abort happen and
add esr argument for undef function.
config SEC_DEBUG_EMERG_WDT_CALLER
bool "Mark a caller for emergency watchdog caller"
depends on SEC_DEBUG
default y
help
This option enables the kernel to indicate a caller of emergency
watchdog caller.
config SEC_DEBUG_BAD_STACK_INFO
bool "Set bad stack informaion"
depends on SEC_DEBUG
default n
help
This option enables the kernel to save additional information when
kernel run into handle_bad_stack.
config SEC_DEBUG_DTASK
tristate "Support uninterruptible sleep task debugging"
depends on SEC_DEBUG
default m
help
This option enables getting information of task with TASK_UNINTERRUPTIBLE.
config SEC_DEBUG_PM_DEVICE_INFO
bool "Set suspend/shutdown device informaion"
depends on SEC_DEBUG
default y
help
This option enables the kernel to save a device information while the
device is suspending/shutting down.
config SEC_DEBUG_TASK_IN_STATE_INFO
bool "Set task information in important system state"
depends on SEC_DEBUG
default y
help
This option enables the kernel to save a task information while the
task enter in important system state.
config SEC_DEBUG_SOFTDOG_PWDT
tristate "Enable Soft Watchdog for Platform"
default m
depends on WATCHDOG
select SOFT_WATCHDOG
help
This option enables soft watchdog device and soft_panic.
config SEC_DEBUG_PANIC_ON_RCU_STALL
bool "Enable panic on rcu stall"
depends on SEC_DEBUG && !SAMSUNG_PRODUCT_SHIP
depends on TREE_RCU || PREEMPT_RCU
default y
help
This option enables the kernel to panic on "rcu stall"
config SEC_DEBUG_SCHED_INFO
tristate
select SEC_DEBUG_STACKTRACE
help
This option enables to print sched info of short duration.
This can be useful to analyze a task lockup.
config SEC_DEBUG_WQ_LOCKUP_INFO
tristate "Enable workqueue lockup info"
default m
depends on WQ_WATCHDOG
select SEC_DEBUG_SCHED_INFO
help
This option enables enhanced workqueue lockup info. Current information
for debugging workqueue lockup is not sufficent.
config SEC_DEBUG_SOFTDOG
tristate "Enable enhanced softdog info"
default y
depends on SEC_DEBUG && SOFT_WATCHDOG
select SEC_DEBUG_STACKTRACE
help
This option enables enhanced softdog info.
Select the option to show related task info.
config SEC_DEBUG_QSPIN_OWNER
bool "Enable owner cpu number on spinlock"
depends on SEC_DEBUG && QUEUED_SPINLOCKS
default y
help
This option enables spinlock owner information.
The CPU number of owner is written into lock value.
config SEC_DUMP_SINK
tristate "Enable to dump_sink"
depends on SEC_DEBUG
default n
help
This option enables dump sink.
config SEC_DEBUG_LOGBUF_IF
tristate "Enable sec debug logbuf interface driver"
depends on SEC_DEBUG
default n
help
This option will add procfs for sec debug log buffers.
config SEC_DEBUG_HANDLE_BAD_STACK
bool "Support handle bad stack debugging"
depends on SEC_DEBUG
default y
help
This option enables to stop cpu when the cpu enter
handle_bad_stack again.
config SEC_DEBUG_STACKTRACE
tristate
help
This option enables to print stack trace.
config SEC_DEBUG_HARDLOCKUP_INFO
tristate "Enable to hardlockup info"
depends on SEC_DEBUG && DEBUG_SNAPSHOT && EXYNOS_HARDLOCKUP_WATCHDOG
default m
help
This option enables hardlockup information.
Select the option to show debugging information when hardlockup is detected.
config SEC_DEBUG_EHLD_INFO
tristate "Enable to ehld info"
depends on SEC_DEBUG && DEBUG_SNAPSHOT && EXYNOS_HARDLOCKUP_WATCHDOG && EXYNOS_EHLD
default m
help
This option enables ehld information.
Select the option to show debugging information when hardlockup is detected.
config SEC_DEBUG_COREDUMP
tristate "Enable to include additional coredump info"
depends on SEC_DEBUG && DEBUG_SNAPSHOT && COREDUMP
default m
help
This option enables addtional coredump extra notes for sec debug.
Select the option to enable to add information to coredump and you
can parse with readelf or other tools.
config SEC_DEBUG_WATCHPOINT
tristate "Enable watchpoint debugging"
depends on SEC_DEBUG && !SAMSUNG_PRODUCT_SHIP
default n
help
This option enables programatic watchpoint debugging function"
config SEC_DEBUG_OBJECTS_FREE
bool "Enable debug objects when freeing activate objects"
depends on DEBUG_OBJECTS_FREE
default y
help
This option enalbles to debug when freeing activate objects.
config SEC_DEBUG_OBJECTS_FIXUP
bool "Enable debug objects fixup"
depends on DEBUG_OBJECTS_FREE
default y
help
This option enalbles to debug abnormal state transition of debug_object.
config SEC_DEBUG_OBJECTS_ADDITIONAL_INFO
bool "Add caller information"
depends on DEBUG_OBJECTS_FREE
default y
help
Add caller' information to debug_obj structure.
config SEC_DEBUG_SCHED_REPORT
tristate "Enable schded report for debugging"
depends on SEC_DEBUG && DEBUG_SNAPSHOT
default m
help
This option enables sched report for debugging.
Select the option to show sched information when stall issue is detected.
config SEC_DEBUG_DISABLE_DPRT
bool "Disable DPRT driver in sec debug"
default n
help
do not register procfs in DPRT driver