]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
platform/x86/intel/vsec: Make driver_data info const
authorDavid E. Box <david.e.box@linux.intel.com>
Fri, 13 Mar 2026 01:51:41 +0000 (18:51 -0700)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 17 Mar 2026 16:51:12 +0000 (18:51 +0200)
Treat PCI id->driver_data (intel_vsec_platform_info) as read-only by making
vsec_priv->info a const pointer and updating all function signatures to
accept const intel_vsec_platform_info *.

This improves const-correctness and clarifies that the platform info data
from the driver_data table is not meant to be modified at runtime.

No functional changes intended.

Signed-off-by: David E. Box <david.e.box@linux.intel.com>
Reviewed-by: Michael J. Ruhl <michael.j.ruhl@intel.com>
Link: https://patch.msgid.link/20260313015202.3660072-3-david.e.box@linux.intel.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/intel/vsec.c
include/linux/intel_vsec.h

index 46966edca03b946145a7bac5904a7aadc2bfd05c..e0096be605d9d07f76a091eac31d43f49cc4aafd 100644 (file)
@@ -42,7 +42,7 @@ enum vsec_device_state {
 };
 
 struct vsec_priv {
-       struct intel_vsec_platform_info *info;
+       const struct intel_vsec_platform_info *info;
        struct device *suppliers[VSEC_FEATURE_COUNT];
        struct oobmsm_plat_info plat_info;
        enum vsec_device_state state[VSEC_FEATURE_COUNT];
@@ -270,7 +270,7 @@ cleanup_aux:
 EXPORT_SYMBOL_NS_GPL(intel_vsec_add_aux, "INTEL_VSEC");
 
 static int intel_vsec_add_dev(struct pci_dev *pdev, struct intel_vsec_header *header,
-                             struct intel_vsec_platform_info *info,
+                             const struct intel_vsec_platform_info *info,
                              unsigned long cap_id, u64 base_addr)
 {
        struct intel_vsec_device __free(kfree) *intel_vsec_dev = NULL;
@@ -406,7 +406,7 @@ static int get_cap_id(u32 header_id, unsigned long *cap_id)
 
 static int intel_vsec_register_device(struct pci_dev *pdev,
                                      struct intel_vsec_header *header,
-                                     struct intel_vsec_platform_info *info,
+                                     const struct intel_vsec_platform_info *info,
                                      u64 base_addr)
 {
        const struct vsec_feature_dependency *consumer_deps;
@@ -452,7 +452,7 @@ static int intel_vsec_register_device(struct pci_dev *pdev,
 }
 
 static bool intel_vsec_walk_header(struct pci_dev *pdev,
-                                  struct intel_vsec_platform_info *info)
+                                  const struct intel_vsec_platform_info *info)
 {
        struct intel_vsec_header **header = info->headers;
        bool have_devices = false;
@@ -468,7 +468,7 @@ static bool intel_vsec_walk_header(struct pci_dev *pdev,
 }
 
 static bool intel_vsec_walk_dvsec(struct pci_dev *pdev,
-                                 struct intel_vsec_platform_info *info)
+                                 const struct intel_vsec_platform_info *info)
 {
        bool have_devices = false;
        int pos = 0;
@@ -519,7 +519,7 @@ static bool intel_vsec_walk_dvsec(struct pci_dev *pdev,
 }
 
 static bool intel_vsec_walk_vsec(struct pci_dev *pdev,
-                                struct intel_vsec_platform_info *info)
+                                const struct intel_vsec_platform_info *info)
 {
        bool have_devices = false;
        int pos = 0;
@@ -565,7 +565,7 @@ static bool intel_vsec_walk_vsec(struct pci_dev *pdev,
 }
 
 int intel_vsec_register(struct pci_dev *pdev,
-                        struct intel_vsec_platform_info *info)
+                       const struct intel_vsec_platform_info *info)
 {
        if (!pdev || !info || !info->headers)
                return -EINVAL;
@@ -578,7 +578,7 @@ int intel_vsec_register(struct pci_dev *pdev,
 EXPORT_SYMBOL_NS_GPL(intel_vsec_register, "INTEL_VSEC");
 
 static bool intel_vsec_get_features(struct pci_dev *pdev,
-                                   struct intel_vsec_platform_info *info)
+                                   const struct intel_vsec_platform_info *info)
 {
        bool found = false;
 
@@ -622,7 +622,7 @@ static void intel_vsec_skip_missing_dependencies(struct pci_dev *pdev)
 
 static int intel_vsec_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 {
-       struct intel_vsec_platform_info *info;
+       const struct intel_vsec_platform_info *info;
        struct vsec_priv *priv;
        int num_caps, ret;
        int run_once = 0;
@@ -633,7 +633,7 @@ static int intel_vsec_pci_probe(struct pci_dev *pdev, const struct pci_device_id
                return ret;
 
        pci_save_state(pdev);
-       info = (struct intel_vsec_platform_info *)id->driver_data;
+       info = (const struct intel_vsec_platform_info *)id->driver_data;
        if (!info)
                return -EINVAL;
 
index 1a0f357c24271eaad71b96c99dcc3af71166cf81..d551174b0049168a5c5d1813493c42b123eff711 100644 (file)
@@ -200,13 +200,13 @@ static inline struct intel_vsec_device *auxdev_to_ivdev(struct auxiliary_device
 
 #if IS_ENABLED(CONFIG_INTEL_VSEC)
 int intel_vsec_register(struct pci_dev *pdev,
-                        struct intel_vsec_platform_info *info);
+                       const struct intel_vsec_platform_info *info);
 int intel_vsec_set_mapping(struct oobmsm_plat_info *plat_info,
                           struct intel_vsec_device *vsec_dev);
 struct oobmsm_plat_info *intel_vsec_get_mapping(struct pci_dev *pdev);
 #else
 static inline int intel_vsec_register(struct pci_dev *pdev,
-                                      struct intel_vsec_platform_info *info)
+                                     const struct intel_vsec_platform_info *info)
 {
        return -ENODEV;
 }