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 */
20enum {
21	STM_OPTION_GUARANTEED = 0,
22	STM_OPTION_INVARIANT,
23};
24
25#endif
26