platform/x86/intel/pmt: Add header to struct intel_pmt_entry
authorDavid E. Box <david.e.box@linux.intel.com>
Wed, 29 Nov 2023 22:21:21 +0000 (14:21 -0800)
committerHans de Goede <hdegoede@redhat.com>
Mon, 4 Dec 2023 13:53:43 +0000 (14:53 +0100)
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>
drivers/platform/x86/intel/pmt/class.c
drivers/platform/x86/intel/pmt/class.h
drivers/platform/x86/intel/pmt/crashlog.c
drivers/platform/x86/intel/pmt/telemetry.c

index 32608baaa56c61c747c33a0e46f23ab85c9207c2..142a24e3727de93fbef8735538ec241d963e9002 100644 (file)
@@ -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);
 
index db11d58867ce2f1ed36a6fd04a0a9bc443092acd..e477a19f67008a61f004d4c27fd44554d6f70ae8 100644 (file)
 #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);
 };
 
index bbb3d61d09f46976cceeb1cc6d8d3645a019219b..4014c02cafdb53c1b8dd5bf0c7ae51693889bfce 100644 (file)
@@ -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))
index 39cbc87cc28a89f452e1e9ccbceb6cc2b0f22666..f86080e8bebd026c4c17dd11161c39d9d5936424 100644 (file)
@@ -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;