media: ipu3-cio2: Don't dereference fwnode handle
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 28 Dec 2022 09:49:19 +0000 (11:49 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Jan 2023 18:04:26 +0000 (19:04 +0100)
Use acpi_fwnode_handle() instead of dereferencing an fwnode handle directly,
which is a better coding practice.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Tested-by: Daniel Scally <dan.scally@ideasonboard.com>
Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20221228094922.84119-2-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/pci/intel/ipu3/cio2-bridge.c

index df6c94d..18974a7 100644 (file)
@@ -263,7 +263,7 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
                                      struct cio2_bridge *bridge,
                                      struct pci_dev *cio2)
 {
-       struct fwnode_handle *fwnode;
+       struct fwnode_handle *fwnode, *primary;
        struct cio2_sensor *sensor;
        struct acpi_device *adev;
        acpi_status status;
@@ -322,7 +322,9 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
                }
 
                sensor->adev = acpi_dev_get(adev);
-               adev->fwnode.secondary = fwnode;
+
+               primary = acpi_fwnode_handle(adev);
+               primary->secondary = fwnode;
 
                cio2_bridge_instantiate_vcm_i2c_client(sensor);