summaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/intel/vsec.h
diff options
context:
space:
mode:
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>2023-02-02 02:07:33 +0100
committerHans de Goede <hdegoede@redhat.com>2023-02-06 13:47:21 +0100
commit251a41116aebdbb7ff00fbc635b1c1a0f08119e6 (patch)
treea4fdd0939b3122a286e6d907941e6e2032e22235 /drivers/platform/x86/intel/vsec.h
parentplatform/x86/intel/vsec: Add TPMI ID (diff)
downloadlinux-251a41116aebdbb7ff00fbc635b1c1a0f08119e6.tar.xz
linux-251a41116aebdbb7ff00fbc635b1c1a0f08119e6.zip
platform/x86/intel/vsec: Enhance and Export intel_vsec_add_aux()
Remove static for intel_vsec_add_aux() and export this interface so that it can be used by other vsec related modules. This driver creates aux devices by parsing PCI-VSEC, which allows individual drivers to load on those devices. Those driver may further create more devices on aux bus by parsing the PCI MMIO region. For example, TPMI (Topology Aware Register and PM Capsule Interface) creates device nodes for power management features by parsing MMIO region. When TPMI driver creates devices, it can reuse existing function intel_vsec_add_aux() to create aux devices with TPMI device as the parent. 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-3-srinivas.pandruvada@linux.intel.com Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/platform/x86/intel/vsec.h')
-rw-r--r--drivers/platform/x86/intel/vsec.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/platform/x86/intel/vsec.h b/drivers/platform/x86/intel/vsec.h
index 3deeb05cf394..d02c340fd458 100644
--- a/drivers/platform/x86/intel/vsec.h
+++ b/drivers/platform/x86/intel/vsec.h
@@ -40,6 +40,10 @@ struct intel_vsec_device {
int num_resources;
};
+int intel_vsec_add_aux(struct pci_dev *pdev, struct device *parent,
+ struct intel_vsec_device *intel_vsec_dev,
+ const char *name);
+
static inline struct intel_vsec_device *dev_to_ivdev(struct device *dev)
{
return container_of(dev, struct intel_vsec_device, auxdev.dev);