linux/drivers/hwtracing/intel_th/msu.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Intel(R) Trace Hub Memory Storage Unit (MSU) data structures
 *
 * Copyright (C) 2014-2015 Intel Corporation.
 */

#ifndef __INTEL_TH_MSU_H__
#define __INTEL_TH_MSU_H__

enum {};

/* MSUSTS bits */
#define MSUSTS_MSU_INT
#define MSUSTS_MSC0BLAST
#define MSUSTS_MSC1BLAST

/* MSCnCTL bits */
#define MSC_EN
#define MSC_WRAPEN
#define MSC_RD_HDR_OVRD
#define MSC_MODE
#define MSC_LEN

/* MINTCTL bits */
#define MICDE
#define M0BLIE
#define M1BLIE

/* MSCnSTS bits */
#define MSCSTS_WRAPSTAT
#define MSCSTS_PLE

/*
 * Multiblock/multiwindow block descriptor
 */
struct msc_block_desc {} __packed;

#define MSC_BDESC
#define DATA_IN_PAGE

/* MSC multiblock sw tag bits */
#define MSC_SW_TAG_LASTBLK
#define MSC_SW_TAG_LASTWIN

/* MSC multiblock hw tag bits */
#define MSC_HW_TAG_TRIGGER
#define MSC_HW_TAG_BLOCKWRAP
#define MSC_HW_TAG_WINWRAP
#define MSC_HW_TAG_ENDBIT

static inline unsigned long msc_data_sz(struct msc_block_desc *bdesc)
{}

static inline unsigned long msc_total_sz(struct msc_block_desc *bdesc)
{}

static inline unsigned long msc_block_sz(struct msc_block_desc *bdesc)
{}

static inline bool msc_block_wrapped(struct msc_block_desc *bdesc)
{}

static inline bool msc_block_last_written(struct msc_block_desc *bdesc)
{}

/* waiting for Pipeline Empty bit(s) to assert for MSC */
#define MSC_PLE_WAITLOOP_DEPTH

#endif /* __INTEL_TH_MSU_H__ */