18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciconfig INTEL_TH
38c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub controller"
48c2ecf20Sopenharmony_ci	depends on HAS_DMA && HAS_IOMEM
58c2ecf20Sopenharmony_ci	help
68c2ecf20Sopenharmony_ci	  Intel(R) Trace Hub (TH) is a set of hardware blocks (subdevices) that
78c2ecf20Sopenharmony_ci	  produce, switch and output trace data from multiple hardware and
88c2ecf20Sopenharmony_ci	  software sources over several types of trace output ports encoded
98c2ecf20Sopenharmony_ci	  in System Trace Protocol (MIPI STPv2) and is intended to perform
108c2ecf20Sopenharmony_ci	  full system debugging.
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci	  This option enables intel_th bus and common code used by TH
138c2ecf20Sopenharmony_ci	  subdevices to interact with each other and hardware and for
148c2ecf20Sopenharmony_ci	  platform glue layers to drive Intel TH devices.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci	  Say Y here to enable Intel(R) Trace Hub controller support.
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciif INTEL_TH
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciconfig INTEL_TH_PCI
218c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub PCI controller"
228c2ecf20Sopenharmony_ci	depends on PCI
238c2ecf20Sopenharmony_ci	help
248c2ecf20Sopenharmony_ci	  Intel(R) Trace Hub may exist as a PCI device. This option enables
258c2ecf20Sopenharmony_ci	  support glue layer for PCI-based Intel TH.
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci	  Say Y here to enable PCI Intel TH support.
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciconfig INTEL_TH_ACPI
308c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub ACPI controller"
318c2ecf20Sopenharmony_ci	depends on ACPI
328c2ecf20Sopenharmony_ci	help
338c2ecf20Sopenharmony_ci	  Intel(R) Trace Hub may exist as an ACPI device. This option enables
348c2ecf20Sopenharmony_ci	  support glue layer for ACPI-based Intel TH. This typically implies
358c2ecf20Sopenharmony_ci	  'host debugger' mode, that is, the trace configuration and capture
368c2ecf20Sopenharmony_ci	  is handled by an external debug host and corresponding controls will
378c2ecf20Sopenharmony_ci	  not be available on the target.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	  Say Y here to enable ACPI Intel TH support.
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciconfig INTEL_TH_GTH
428c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub Global Trace Hub"
438c2ecf20Sopenharmony_ci	help
448c2ecf20Sopenharmony_ci	  Global Trace Hub (GTH) is the central component of the
458c2ecf20Sopenharmony_ci	  Intel TH infrastructure and acts as a switch for source
468c2ecf20Sopenharmony_ci	  and output devices. This driver is required for other
478c2ecf20Sopenharmony_ci	  Intel TH subdevices to initialize.
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci	  Say Y here to enable GTH subdevice of Intel(R) Trace Hub.
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ciconfig INTEL_TH_STH
528c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub Software Trace Hub support"
538c2ecf20Sopenharmony_ci	depends on STM
548c2ecf20Sopenharmony_ci	help
558c2ecf20Sopenharmony_ci	  Software Trace Hub (STH) enables trace data from software
568c2ecf20Sopenharmony_ci	  trace sources to be sent out via Intel(R) Trace Hub. It
578c2ecf20Sopenharmony_ci	  uses stm class device to interface with its sources.
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci	  Say Y here to enable STH subdevice of Intel(R) Trace Hub.
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ciconfig INTEL_TH_MSU
628c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub Memory Storage Unit"
638c2ecf20Sopenharmony_ci	help
648c2ecf20Sopenharmony_ci	  Memory Storage Unit (MSU) trace output device enables
658c2ecf20Sopenharmony_ci	  storing STP traces to system memory. It supports single
668c2ecf20Sopenharmony_ci	  and multiblock modes of operation and provides read()
678c2ecf20Sopenharmony_ci	  and mmap() access to the collected data.
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci	  Say Y here to enable MSU output device for Intel TH.
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ciconfig INTEL_TH_PTI
728c2ecf20Sopenharmony_ci	tristate "Intel(R) Trace Hub PTI output"
738c2ecf20Sopenharmony_ci	help
748c2ecf20Sopenharmony_ci	  Parallel Trace Interface unit (PTI) is a trace output device
758c2ecf20Sopenharmony_ci	  of Intel TH architecture that facilitates STP trace output via
768c2ecf20Sopenharmony_ci	  a PTI port.
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ci	  Say Y to enable PTI output of Intel TH data.
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciconfig INTEL_TH_DEBUG
818c2ecf20Sopenharmony_ci	bool "Intel(R) Trace Hub debugging"
828c2ecf20Sopenharmony_ci	depends on DEBUG_FS
838c2ecf20Sopenharmony_ci	help
848c2ecf20Sopenharmony_ci	  Say Y here to enable debugging.
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ciendif
87