xref: /linux/drivers/hwtracing/intel_th/Kconfig (revision 5281c656d9742acd056d099cc14c482a99628456)
1 # SPDX-License-Identifier: GPL-2.0-only
2 config INTEL_TH
3 	tristate "Intel(R) Trace Hub controller"
4 	depends on HAS_DMA && HAS_IOMEM
5 	help
6 	  Intel(R) Trace Hub (TH) is a set of hardware blocks (subdevices) that
7 	  produce, switch and output trace data from multiple hardware and
8 	  software sources over several types of trace output ports encoded
9 	  in System Trace Protocol (MIPI STPv2) and is intended to perform
10 	  full system debugging.
11 
12 	  This option enables intel_th bus and common code used by TH
13 	  subdevices to interact with each other and hardware and for
14 	  platform glue layers to drive Intel TH devices.
15 
16 	  Say Y here to enable Intel(R) Trace Hub controller support.
17 
18 if INTEL_TH
19 
20 config INTEL_TH_PCI
21 	tristate "Intel(R) Trace Hub PCI controller"
22 	depends on PCI
23 	help
24 	  Intel(R) Trace Hub may exist as a PCI device. This option enables
25 	  support glue layer for PCI-based Intel TH.
26 
27 	  Say Y here to enable PCI Intel TH support.
28 
29 config INTEL_TH_ACPI
30 	tristate "Intel(R) Trace Hub ACPI controller"
31 	depends on ACPI
32 	help
33 	  Intel(R) Trace Hub may exist as an ACPI device. This option enables
34 	  support glue layer for ACPI-based Intel TH. This typically implies
35 	  'host debugger' mode, that is, the trace configuration and capture
36 	  is handled by an external debug host and corresponding controls will
37 	  not be available on the target.
38 
39 	  Say Y here to enable ACPI Intel TH support.
40 
41 config INTEL_TH_GTH
42 	tristate "Intel(R) Trace Hub Global Trace Hub"
43 	help
44 	  Global Trace Hub (GTH) is the central component of the
45 	  Intel TH infrastructure and acts as a switch for source
46 	  and output devices. This driver is required for other
47 	  Intel TH subdevices to initialize.
48 
49 	  Say Y here to enable GTH subdevice of Intel(R) Trace Hub.
50 
51 config INTEL_TH_STH
52 	tristate "Intel(R) Trace Hub Software Trace Hub support"
53 	depends on STM
54 	help
55 	  Software Trace Hub (STH) enables trace data from software
56 	  trace sources to be sent out via Intel(R) Trace Hub. It
57 	  uses stm class device to interface with its sources.
58 
59 	  Say Y here to enable STH subdevice of Intel(R) Trace Hub.
60 
61 config INTEL_TH_MSU
62 	tristate "Intel(R) Trace Hub Memory Storage Unit"
63 	depends on MMU
64 	help
65 	  Memory Storage Unit (MSU) trace output device enables
66 	  storing STP traces to system memory. It supports single
67 	  and multiblock modes of operation and provides read()
68 	  and mmap() access to the collected data.
69 
70 	  Say Y here to enable MSU output device for Intel TH.
71 
72 config INTEL_TH_PTI
73 	tristate "Intel(R) Trace Hub PTI output"
74 	help
75 	  Parallel Trace Interface unit (PTI) is a trace output device
76 	  of Intel TH architecture that facilitates STP trace output via
77 	  a PTI port.
78 
79 	  Say Y to enable PTI output of Intel TH data.
80 
81 config INTEL_TH_DEBUG
82 	bool "Intel(R) Trace Hub debugging"
83 	depends on DEBUG_FS
84 	help
85 	  Say Y here to enable debugging.
86 
87 endif
88