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