OSDN Git Service

platform/x86/intel/vsec: Support private data
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Thu, 2 Feb 2023 01:07:34 +0000 (17:07 -0800)
committerHans de Goede <hdegoede@redhat.com>
Mon, 6 Feb 2023 12:47:26 +0000 (13:47 +0100)
Add fields to struct intel_vsec_device, so that core module (which
creates aux bus devices) can pass private data to the client drivers.

For example there is one vsec device instance per CPU package. On a
multi package system, this private data can be used to pass the package
ID. This package id can be used by client drivers to change power
settings for a specific CPU package by targeting MMIO space of the
correct PCI device.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Acked-by: David E. Box <david.e.box@linux.intel.com>
Link: https://lore.kernel.org/r/20230202010738.2186174-4-srinivas.pandruvada@linux.intel.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/intel/vsec.h

index d02c340..ae8fe92 100644 (file)
@@ -38,6 +38,8 @@ struct intel_vsec_device {
        struct ida *ida;
        struct intel_vsec_platform_info *info;
        int num_resources;
+       void *priv_data;
+       size_t priv_data_size;
 };
 
 int intel_vsec_add_aux(struct pci_dev *pdev, struct device *parent,