class.h (d9a0788093565c300f7c8dd034dbfa6ac4da9aa6) class.h (86fc85c75bcd9b0f28afadd60c9f890669b42ba4)
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _INTEL_PMT_CLASS_H
3#define _INTEL_PMT_CLASS_H
4
5#include <linux/intel_vsec.h>
6#include <linux/xarray.h>
7#include <linux/types.h>
8#include <linux/bits.h>

--- 34 unchanged lines hidden (view full) ---

43 struct intel_pmt_header header;
44 struct bin_attribute pmt_bin_attr;
45 struct kobject *kobj;
46 void __iomem *disc_table;
47 void __iomem *base;
48 struct pmt_callbacks *cb;
49 unsigned long base_addr;
50 size_t size;
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _INTEL_PMT_CLASS_H
3#define _INTEL_PMT_CLASS_H
4
5#include <linux/intel_vsec.h>
6#include <linux/xarray.h>
7#include <linux/types.h>
8#include <linux/bits.h>

--- 34 unchanged lines hidden (view full) ---

43 struct intel_pmt_header header;
44 struct bin_attribute pmt_bin_attr;
45 struct kobject *kobj;
46 void __iomem *disc_table;
47 void __iomem *base;
48 struct pmt_callbacks *cb;
49 unsigned long base_addr;
50 size_t size;
51 u64 feature_flags;
51 u32 guid;
52 u32 num_rmids; /* Number of Resource Monitoring IDs */
53 int devid;
54};
55
56struct intel_pmt_namespace {
57 const char *name;
58 struct xarray *xa;

--- 7 unchanged lines hidden (view full) ---

66int pmt_telem_read_mmio(struct pci_dev *pdev, struct pmt_callbacks *cb, u32 guid, void *buf,
67 void __iomem *addr, loff_t off, u32 count);
68bool intel_pmt_is_early_client_hw(struct device *dev);
69int intel_pmt_dev_create(struct intel_pmt_entry *entry,
70 struct intel_pmt_namespace *ns,
71 struct intel_vsec_device *dev, int idx);
72void intel_pmt_dev_destroy(struct intel_pmt_entry *entry,
73 struct intel_pmt_namespace *ns);
52 u32 guid;
53 u32 num_rmids; /* Number of Resource Monitoring IDs */
54 int devid;
55};
56
57struct intel_pmt_namespace {
58 const char *name;
59 struct xarray *xa;

--- 7 unchanged lines hidden (view full) ---

67int pmt_telem_read_mmio(struct pci_dev *pdev, struct pmt_callbacks *cb, u32 guid, void *buf,
68 void __iomem *addr, loff_t off, u32 count);
69bool intel_pmt_is_early_client_hw(struct device *dev);
70int intel_pmt_dev_create(struct intel_pmt_entry *entry,
71 struct intel_pmt_namespace *ns,
72 struct intel_vsec_device *dev, int idx);
73void intel_pmt_dev_destroy(struct intel_pmt_entry *entry,
74 struct intel_pmt_namespace *ns);
75#if IS_ENABLED(CONFIG_INTEL_PMT_DISCOVERY)
76void intel_pmt_get_features(struct intel_pmt_entry *entry);
77#else
78static inline void intel_pmt_get_features(struct intel_pmt_entry *entry) {}
74#endif
79#endif
80
81#endif