cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

stm.h (1290B)


      1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2/*
      3 * System Trace Module (STM) userspace interfaces
      4 * Copyright (c) 2014, Intel Corporation.
      5 *
      6 * STM class implements generic infrastructure for  System Trace Module devices
      7 * as defined in MIPI STPv2 specification.
      8 */
      9
     10#ifndef _UAPI_LINUX_STM_H
     11#define _UAPI_LINUX_STM_H
     12
     13#include <linux/types.h>
     14
     15/* Maximum allowed master and channel values */
     16#define STP_MASTER_MAX	0xffff
     17#define STP_CHANNEL_MAX	0xffff
     18
     19/**
     20 * struct stp_policy_id - identification for the STP policy
     21 * @size:	size of the structure including real id[] length
     22 * @master:	assigned master
     23 * @channel:	first assigned channel
     24 * @width:	number of requested channels
     25 * @id:		identification string
     26 *
     27 * User must calculate the total size of the structure and put it into
     28 * @size field, fill out the @id and desired @width. In return, kernel
     29 * fills out @master, @channel and @width.
     30 */
     31struct stp_policy_id {
     32	__u32		size;
     33	__u16		master;
     34	__u16		channel;
     35	__u16		width;
     36	/* padding */
     37	__u16		__reserved_0;
     38	__u32		__reserved_1;
     39	char		id[0];
     40};
     41
     42#define STP_POLICY_ID_SET	_IOWR('%', 0, struct stp_policy_id)
     43#define STP_POLICY_ID_GET	_IOR('%', 1, struct stp_policy_id)
     44#define STP_SET_OPTIONS		_IOW('%', 2, __u64)
     45
     46#endif /* _UAPI_LINUX_STM_H */