xref: /linux/include/uapi/linux/coresight-stm.h (revision cbecf716ca618fd44feda6bd9a64a8179d031fc5)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef __UAPI_CORESIGHT_STM_H_
3 #define __UAPI_CORESIGHT_STM_H_
4 
5 #include <linux/const.h>
6 
7 #define STM_FLAG_TIMESTAMPED   _BITUL(3)
8 #define STM_FLAG_MARKED        _BITUL(4)
9 #define STM_FLAG_GUARANTEED    _BITUL(7)
10 
11 /*
12  * The CoreSight STM supports guaranteed and invariant timing
13  * transactions.  Guaranteed transactions are guaranteed to be
14  * traced, this might involve stalling the bus or system to
15  * ensure the transaction is accepted by the STM.  While invariant
16  * timing transactions are not guaranteed to be traced, they
17  * will take an invariant amount of time regardless of the
18  * state of the STM.
19  */
20 enum {
21 	STM_OPTION_GUARANTEED = 0,
22 	STM_OPTION_INVARIANT,
23 };
24 
25 #endif
26