intel_vsec.h (a885a2780937afac4f31f00d11663f50d05dfb35) intel_vsec.h (86fc85c75bcd9b0f28afadd60c9f890669b42ba4)
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _INTEL_VSEC_H
3#define _INTEL_VSEC_H
4
5#include <linux/auxiliary_bus.h>
6#include <linux/bits.h>
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _INTEL_VSEC_H
3#define _INTEL_VSEC_H
4
5#include <linux/auxiliary_bus.h>
6#include <linux/bits.h>
7#include <linux/intel_pmt_features.h>
7
8/*
9 * VSEC_CAP_UNUSED is reserved. It exists to prevent zero initialized
10 * intel_vsec devices from being automatically set to a known
11 * capability with ID 0
12 */
13#define VSEC_CAP_UNUSED BIT(0)
14#define VSEC_CAP_TELEMETRY BIT(1)

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

161 u8 package_id;
162 u8 partition;
163 u8 segment;
164 u8 bus_number;
165 u8 device_number;
166 u8 function_number;
167};
168
8
9/*
10 * VSEC_CAP_UNUSED is reserved. It exists to prevent zero initialized
11 * intel_vsec devices from being automatically set to a known
12 * capability with ID 0
13 */
14#define VSEC_CAP_UNUSED BIT(0)
15#define VSEC_CAP_TELEMETRY BIT(1)

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

162 u8 package_id;
163 u8 partition;
164 u8 segment;
165 u8 bus_number;
166 u8 device_number;
167 u8 function_number;
168};
169
170struct telemetry_region {
171 struct oobmsm_plat_info plat_info;
172 void __iomem *addr;
173 size_t size;
174 u32 guid;
175 u32 num_rmids;
176};
177
178struct pmt_feature_group {
179 enum pmt_feature_id id;
180 int count;
181 struct kref kref;
182 struct telemetry_region regions[];
183};
184
169int intel_vsec_add_aux(struct pci_dev *pdev, struct device *parent,
170 struct intel_vsec_device *intel_vsec_dev,
171 const char *name);
172
173static inline struct intel_vsec_device *dev_to_ivdev(struct device *dev)
174{
175 return container_of(dev, struct intel_vsec_device, auxdev.dev);
176}

--- 29 unchanged lines hidden ---
185int intel_vsec_add_aux(struct pci_dev *pdev, struct device *parent,
186 struct intel_vsec_device *intel_vsec_dev,
187 const char *name);
188
189static inline struct intel_vsec_device *dev_to_ivdev(struct device *dev)
190{
191 return container_of(dev, struct intel_vsec_device, auxdev.dev);
192}

--- 29 unchanged lines hidden ---