xref: /openbmc/linux/drivers/hwtracing/intel_th/sth.h (revision aac28965)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Intel(R) Trace Hub Software Trace Hub (STH) data structures
4  *
5  * Copyright (C) 2014-2015 Intel Corporation.
6  */
7 
8 #ifndef __INTEL_TH_STH_H__
9 #define __INTEL_TH_STH_H__
10 
11 enum {
12 	REG_STH_STHCAP0		= 0x0000, /* capabilities pt1 */
13 	REG_STH_STHCAP1		= 0x0004, /* capabilities pt2 */
14 	REG_STH_TRIG		= 0x0008, /* TRIG packet payload */
15 	REG_STH_TRIG_TS		= 0x000c, /* TRIG_TS packet payload */
16 	REG_STH_XSYNC		= 0x0010, /* XSYNC packet payload */
17 	REG_STH_XSYNC_TS	= 0x0014, /* XSYNC_TS packet payload */
18 	REG_STH_GERR		= 0x0018, /* GERR packet payload */
19 };
20 
21 struct intel_th_channel {
22 	u64	Dn;
23 	u64	DnM;
24 	u64	DnTS;
25 	u64	DnMTS;
26 	u64	USER;
27 	u64	USER_TS;
28 	u32	FLAG;
29 	u32	FLAG_TS;
30 	u32	MERR;
31 	u32	__unused;
32 } __packed;
33 
34 #endif /* __INTEL_TH_STH_H__ */
35