mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-11 00:08:50 +00:00
platform/x86/intel/pmt: Add header to struct intel_pmt_entry
The PMT header is passed to several functions. Instead, store the header in struct intel_pmt_entry which is also passed to these functions and shorten the argument list. This simplifies the calls in preparation for later changes. While here also perform a newline cleanup. Signed-off-by: David E. Box <david.e.box@linux.intel.com> Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Link: https://lore.kernel.org/r/20231129222132.2331261-10-david.e.box@linux.intel.com Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
e97ec7f621
commit
4d1b7efee3
@ -159,12 +159,12 @@ static struct class intel_pmt_class = {
|
||||
};
|
||||
|
||||
static int intel_pmt_populate_entry(struct intel_pmt_entry *entry,
|
||||
struct intel_pmt_header *header,
|
||||
struct intel_vsec_device *ivdev,
|
||||
struct resource *disc_res)
|
||||
{
|
||||
struct pci_dev *pci_dev = ivdev->pcidev;
|
||||
struct device *dev = &ivdev->auxdev.dev;
|
||||
struct intel_pmt_header *header = &entry->header;
|
||||
u8 bir;
|
||||
|
||||
/*
|
||||
@ -313,7 +313,6 @@ int intel_pmt_dev_create(struct intel_pmt_entry *entry, struct intel_pmt_namespa
|
||||
struct intel_vsec_device *intel_vsec_dev, int idx)
|
||||
{
|
||||
struct device *dev = &intel_vsec_dev->auxdev.dev;
|
||||
struct intel_pmt_header header;
|
||||
struct resource *disc_res;
|
||||
int ret;
|
||||
|
||||
@ -323,16 +322,15 @@ int intel_pmt_dev_create(struct intel_pmt_entry *entry, struct intel_pmt_namespa
|
||||
if (IS_ERR(entry->disc_table))
|
||||
return PTR_ERR(entry->disc_table);
|
||||
|
||||
ret = ns->pmt_header_decode(entry, &header, dev);
|
||||
ret = ns->pmt_header_decode(entry, dev);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ret = intel_pmt_populate_entry(entry, &header, intel_vsec_dev, disc_res);
|
||||
ret = intel_pmt_populate_entry(entry, intel_vsec_dev, disc_res);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return intel_pmt_dev_register(entry, ns, dev);
|
||||
|
||||
}
|
||||
EXPORT_SYMBOL_NS_GPL(intel_pmt_dev_create, INTEL_PMT);
|
||||
|
||||
|
@ -18,7 +18,15 @@
|
||||
#define GET_BIR(v) ((v) & GENMASK(2, 0))
|
||||
#define GET_ADDRESS(v) ((v) & GENMASK(31, 3))
|
||||
|
||||
struct intel_pmt_header {
|
||||
u32 base_offset;
|
||||
u32 size;
|
||||
u32 guid;
|
||||
u8 access_type;
|
||||
};
|
||||
|
||||
struct intel_pmt_entry {
|
||||
struct intel_pmt_header header;
|
||||
struct bin_attribute pmt_bin_attr;
|
||||
struct kobject *kobj;
|
||||
void __iomem *disc_table;
|
||||
@ -29,19 +37,11 @@ struct intel_pmt_entry {
|
||||
int devid;
|
||||
};
|
||||
|
||||
struct intel_pmt_header {
|
||||
u32 base_offset;
|
||||
u32 size;
|
||||
u32 guid;
|
||||
u8 access_type;
|
||||
};
|
||||
|
||||
struct intel_pmt_namespace {
|
||||
const char *name;
|
||||
struct xarray *xa;
|
||||
const struct attribute_group *attr_grp;
|
||||
int (*pmt_header_decode)(struct intel_pmt_entry *entry,
|
||||
struct intel_pmt_header *header,
|
||||
struct device *dev);
|
||||
};
|
||||
|
||||
|
@ -223,10 +223,10 @@ static const struct attribute_group pmt_crashlog_group = {
|
||||
};
|
||||
|
||||
static int pmt_crashlog_header_decode(struct intel_pmt_entry *entry,
|
||||
struct intel_pmt_header *header,
|
||||
struct device *dev)
|
||||
{
|
||||
void __iomem *disc_table = entry->disc_table;
|
||||
struct intel_pmt_header *header = &entry->header;
|
||||
struct crashlog_entry *crashlog;
|
||||
|
||||
if (!pmt_crashlog_supported(entry))
|
||||
|
@ -58,10 +58,10 @@ static bool pmt_telem_region_overlaps(struct intel_pmt_entry *entry,
|
||||
}
|
||||
|
||||
static int pmt_telem_header_decode(struct intel_pmt_entry *entry,
|
||||
struct intel_pmt_header *header,
|
||||
struct device *dev)
|
||||
{
|
||||
void __iomem *disc_table = entry->disc_table;
|
||||
struct intel_pmt_header *header = &entry->header;
|
||||
|
||||
if (pmt_telem_region_overlaps(entry, dev))
|
||||
return 1;
|
||||
|
Loading…
x
Reference in New Issue
Block a user