diff mbox series

[03/12] media: ipu3-cio2: Make cio2_bridge_init() take a regular struct device as argument

Message ID 20230627175643.114778-4-hdegoede@redhat.com (mailing list archive)
State New, archived
Headers show
Series media: intel-cio2-bridge: Add shared intel-cio2-bridge code, rework VCM instantiation | expand

Commit Message

Hans de Goede June 27, 2023, 5:56 p.m. UTC
Make cio2_bridge_init() take a regular struct device, rather then
a pci_dev as argument.

This is a preparation patch for making the cio2-bridge code more generic
so that it can be shared with the atomisp driver.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/media/pci/intel/ipu3/cio2-bridge.c    | 16 +++++++---------
 drivers/media/pci/intel/ipu3/ipu3-cio2-main.c |  2 +-
 drivers/media/pci/intel/ipu3/ipu3-cio2.h      |  4 ++--
 3 files changed, 10 insertions(+), 12 deletions(-)
diff mbox series

Patch

diff --git a/drivers/media/pci/intel/ipu3/cio2-bridge.c b/drivers/media/pci/intel/ipu3/cio2-bridge.c
index 0f7adca9d6f9..72a28844dfdb 100644
--- a/drivers/media/pci/intel/ipu3/cio2-bridge.c
+++ b/drivers/media/pci/intel/ipu3/cio2-bridge.c
@@ -4,7 +4,6 @@ 
 #include <linux/acpi.h>
 #include <linux/device.h>
 #include <linux/i2c.h>
-#include <linux/pci.h>
 #include <linux/property.h>
 #include <media/v4l2-fwnode.h>
 
@@ -288,7 +287,7 @@  static void cio2_bridge_unregister_sensors(struct cio2_bridge *bridge)
 
 static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
 				      struct cio2_bridge *bridge,
-				      struct pci_dev *cio2)
+				      struct device *dev)
 {
 	struct fwnode_handle *fwnode, *primary;
 	struct cio2_sensor *sensor;
@@ -302,7 +301,7 @@  static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
 
 		if (bridge->n_sensors >= CIO2_NUM_PORTS) {
 			acpi_dev_put(adev);
-			dev_err(&cio2->dev, "Exceeded available CIO2 ports\n");
+			dev_err(dev, "Exceeded available CIO2 ports\n");
 			return -EINVAL;
 		}
 
@@ -357,7 +356,7 @@  static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
 
 		cio2_bridge_instantiate_vcm_i2c_client(sensor);
 
-		dev_info(&cio2->dev, "Found supported sensor %s\n",
+		dev_info(dev, "Found supported sensor %s\n",
 			 acpi_dev_name(adev));
 
 		bridge->n_sensors++;
@@ -375,7 +374,7 @@  static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
 }
 
 static int cio2_bridge_connect_sensors(struct cio2_bridge *bridge,
-				       struct pci_dev *cio2)
+				       struct device *dev)
 {
 	unsigned int i;
 	int ret;
@@ -384,7 +383,7 @@  static int cio2_bridge_connect_sensors(struct cio2_bridge *bridge,
 		const struct cio2_sensor_config *cfg =
 			&cio2_supported_sensors[i];
 
-		ret = cio2_bridge_connect_sensor(cfg, bridge, cio2);
+		ret = cio2_bridge_connect_sensor(cfg, bridge, dev);
 		if (ret)
 			goto err_unregister_sensors;
 	}
@@ -430,9 +429,8 @@  static int cio2_bridge_sensors_are_ready(void)
 	return ready;
 }
 
-int cio2_bridge_init(struct pci_dev *cio2)
+int cio2_bridge_init(struct device *dev)
 {
-	struct device *dev = &cio2->dev;
 	struct fwnode_handle *fwnode;
 	struct cio2_bridge *bridge;
 	unsigned int i;
@@ -465,7 +463,7 @@  int cio2_bridge_init(struct pci_dev *cio2)
 	for (i = 0; i < CIO2_MAX_LANES; i++)
 		bridge->data_lanes[i] = i + 1;
 
-	ret = cio2_bridge_connect_sensors(bridge, cio2);
+	ret = cio2_bridge_connect_sensors(bridge, dev);
 	if (ret || bridge->n_sensors == 0)
 		goto err_unregister_cio2;
 
diff --git a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
index 34984a7474ed..afc3255b5eb8 100644
--- a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
+++ b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
@@ -1724,7 +1724,7 @@  static int cio2_pci_probe(struct pci_dev *pci_dev,
 			return -EINVAL;
 		}
 
-		r = cio2_bridge_init(pci_dev);
+		r = cio2_bridge_init(dev);
 		if (r)
 			return r;
 	}
diff --git a/drivers/media/pci/intel/ipu3/ipu3-cio2.h b/drivers/media/pci/intel/ipu3/ipu3-cio2.h
index 3a1f394e05aa..7ff7915f9823 100644
--- a/drivers/media/pci/intel/ipu3/ipu3-cio2.h
+++ b/drivers/media/pci/intel/ipu3/ipu3-cio2.h
@@ -460,9 +460,9 @@  static inline struct cio2_queue *vb2q_to_cio2_queue(struct vb2_queue *vq)
 }
 
 #if IS_ENABLED(CONFIG_CIO2_BRIDGE)
-int cio2_bridge_init(struct pci_dev *cio2);
+int cio2_bridge_init(struct device *dev);
 #else
-static inline int cio2_bridge_init(struct pci_dev *cio2) { return 0; }
+static inline int cio2_bridge_init(struct device *dev) { return 0; }
 #endif
 
 #endif