xref: /openbmc/linux/arch/Kconfig (revision 9ac8d3fb)
1#
2# General architecture dependent options
3#
4
5config OPROFILE
6	tristate "OProfile system profiling (EXPERIMENTAL)"
7	depends on PROFILING
8	depends on HAVE_OPROFILE
9	help
10	  OProfile is a profiling system capable of profiling the
11	  whole system, include the kernel, kernel modules, libraries,
12	  and applications.
13
14	  If unsure, say N.
15
16config OPROFILE_IBS
17	bool "OProfile AMD IBS support (EXPERIMENTAL)"
18	default n
19	depends on OPROFILE && SMP && X86
20	help
21          Instruction-Based Sampling (IBS) is a new profiling
22          technique that provides rich, precise program performance
23          information. IBS is introduced by AMD Family10h processors
24          (AMD Opteron Quad-Core processor “Barcelona”) to overcome
25          the limitations of conventional performance counter
26          sampling.
27
28	  If unsure, say N.
29
30config HAVE_OPROFILE
31	bool
32
33config KPROBES
34	bool "Kprobes"
35	depends on KALLSYMS && MODULES
36	depends on HAVE_KPROBES
37	help
38	  Kprobes allows you to trap at almost any kernel address and
39	  execute a callback function.  register_kprobe() establishes
40	  a probepoint and specifies the callback.  Kprobes is useful
41	  for kernel debugging, non-intrusive instrumentation and testing.
42	  If in doubt, say "N".
43
44config HAVE_EFFICIENT_UNALIGNED_ACCESS
45	bool
46	help
47	  Some architectures are unable to perform unaligned accesses
48	  without the use of get_unaligned/put_unaligned. Others are
49	  unable to perform such accesses efficiently (e.g. trap on
50	  unaligned access and require fixing it up in the exception
51	  handler.)
52
53	  This symbol should be selected by an architecture if it can
54	  perform unaligned accesses efficiently to allow different
55	  code paths to be selected for these cases. Some network
56	  drivers, for example, could opt to not fix up alignment
57	  problems with received packets if doing so would not help
58	  much.
59
60	  See Documentation/unaligned-memory-access.txt for more
61	  information on the topic of unaligned memory accesses.
62
63config KRETPROBES
64	def_bool y
65	depends on KPROBES && HAVE_KRETPROBES
66
67config HAVE_IOREMAP_PROT
68	bool
69
70config HAVE_KPROBES
71	bool
72
73config HAVE_KRETPROBES
74	bool
75
76#
77# An arch should select this if it provides all these things:
78#
79#	task_pt_regs()		in asm/processor.h or asm/ptrace.h
80#	arch_has_single_step()	if there is hardware single-step support
81#	arch_has_block_step()	if there is hardware block-step support
82#	arch_ptrace()		and not #define __ARCH_SYS_PTRACE
83#	compat_arch_ptrace()	and #define __ARCH_WANT_COMPAT_SYS_PTRACE
84#	asm/syscall.h		supplying asm-generic/syscall.h interface
85#	linux/regset.h		user_regset interfaces
86#	CORE_DUMP_USE_REGSET	#define'd in linux/elf.h
87#	TIF_SYSCALL_TRACE	calls tracehook_report_syscall_{entry,exit}
88#	TIF_NOTIFY_RESUME	calls tracehook_notify_resume()
89#	signal delivery		calls tracehook_signal_handler()
90#
91config HAVE_ARCH_TRACEHOOK
92	bool
93
94config HAVE_DMA_ATTRS
95	bool
96
97config USE_GENERIC_SMP_HELPERS
98	bool
99
100config HAVE_CLK
101	bool
102	help
103	  The <linux/clk.h> calls support software clock gating and
104	  thus are a key power management tool on many systems.
105
106