xref: /openbmc/linux/arch/Kconfig (revision d69d59f4)
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	select TRACING
10	select RING_BUFFER
11	help
12	  OProfile is a profiling system capable of profiling the
13	  whole system, include the kernel, kernel modules, libraries,
14	  and applications.
15
16	  If unsure, say N.
17
18config OPROFILE_IBS
19	bool "OProfile AMD IBS support (EXPERIMENTAL)"
20	default n
21	depends on OPROFILE && SMP && X86
22	help
23          Instruction-Based Sampling (IBS) is a new profiling
24          technique that provides rich, precise program performance
25          information. IBS is introduced by AMD Family10h processors
26          (AMD Opteron Quad-Core processor "Barcelona") to overcome
27          the limitations of conventional performance counter
28          sampling.
29
30	  If unsure, say N.
31
32config HAVE_OPROFILE
33	bool
34
35config KPROBES
36	bool "Kprobes"
37	depends on KALLSYMS && MODULES
38	depends on HAVE_KPROBES
39	help
40	  Kprobes allows you to trap at almost any kernel address and
41	  execute a callback function.  register_kprobe() establishes
42	  a probepoint and specifies the callback.  Kprobes is useful
43	  for kernel debugging, non-intrusive instrumentation and testing.
44	  If in doubt, say "N".
45
46config HAVE_EFFICIENT_UNALIGNED_ACCESS
47	bool
48	help
49	  Some architectures are unable to perform unaligned accesses
50	  without the use of get_unaligned/put_unaligned. Others are
51	  unable to perform such accesses efficiently (e.g. trap on
52	  unaligned access and require fixing it up in the exception
53	  handler.)
54
55	  This symbol should be selected by an architecture if it can
56	  perform unaligned accesses efficiently to allow different
57	  code paths to be selected for these cases. Some network
58	  drivers, for example, could opt to not fix up alignment
59	  problems with received packets if doing so would not help
60	  much.
61
62	  See Documentation/unaligned-memory-access.txt for more
63	  information on the topic of unaligned memory accesses.
64
65config KRETPROBES
66	def_bool y
67	depends on KPROBES && HAVE_KRETPROBES
68
69config HAVE_IOREMAP_PROT
70	bool
71
72config HAVE_KPROBES
73	bool
74
75config HAVE_KRETPROBES
76	bool
77
78#
79# An arch should select this if it provides all these things:
80#
81#	task_pt_regs()		in asm/processor.h or asm/ptrace.h
82#	arch_has_single_step()	if there is hardware single-step support
83#	arch_has_block_step()	if there is hardware block-step support
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