class.h (c771600c6af14749609b49565ffb4cac2959710d) class.h (d9a0788093565c300f7c8dd034dbfa6ac4da9aa6)
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>

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

15#define ACCESS_BARID 2
16#define ACCESS_LOCAL 3
17
18/* PMT discovery base address/offset register layout */
19#define GET_BIR(v) ((v) & GENMASK(2, 0))
20#define GET_ADDRESS(v) ((v) & GENMASK(31, 3))
21
22struct pci_dev;
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>

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

15#define ACCESS_BARID 2
16#define ACCESS_LOCAL 3
17
18/* PMT discovery base address/offset register layout */
19#define GET_BIR(v) ((v) & GENMASK(2, 0))
20#define GET_ADDRESS(v) ((v) & GENMASK(31, 3))
21
22struct pci_dev;
23extern struct class intel_pmt_class;
23
24struct telem_endpoint {
25 struct pci_dev *pcidev;
26 struct telem_header header;
27 struct pmt_callbacks *cb;
28 void __iomem *base;
29 bool present;
30 struct kref kref;

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

43 struct bin_attribute pmt_bin_attr;
44 struct kobject *kobj;
45 void __iomem *disc_table;
46 void __iomem *base;
47 struct pmt_callbacks *cb;
48 unsigned long base_addr;
49 size_t size;
50 u32 guid;
24
25struct telem_endpoint {
26 struct pci_dev *pcidev;
27 struct telem_header header;
28 struct pmt_callbacks *cb;
29 void __iomem *base;
30 bool present;
31 struct kref kref;

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

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 u32 guid;
52 u32 num_rmids; /* Number of Resource Monitoring IDs */
51 int devid;
52};
53
54struct intel_pmt_namespace {
55 const char *name;
56 struct xarray *xa;
57 const struct attribute_group *attr_grp;
58 int (*pmt_header_decode)(struct intel_pmt_entry *entry,

--- 14 unchanged lines hidden ---
53 int devid;
54};
55
56struct intel_pmt_namespace {
57 const char *name;
58 struct xarray *xa;
59 const struct attribute_group *attr_grp;
60 int (*pmt_header_decode)(struct intel_pmt_entry *entry,

--- 14 unchanged lines hidden ---