aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWentong Wu <wentong.wu@intel.com>2023-08-29 13:24:28 +0800
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2023-09-27 09:39:56 +0200
commit6966f2f7abbaf32fa395eff8e2888ea10d422e40 (patch)
treea8bffd0a376e017bd7ebcd27a4334ca14ee302f7
parent6b6f41791b443e9d141ae254ec0de833841497a9 (diff)
media: ivsc: ace: probe ace device after IPU bridge is initialized.
During probe ivsc ace device, acpi_dev_clear_dependencies() will be called to clear the consumer and supplier relationship between camera sensor device and ivsc device. But IPU bridge will setup the connection swnodes for ivsc device and camera sensor device based on this consumer and supplier relationship. This patch defers ivsc ace's probe to make sure IPU bridge is initialized before this consumer and supplier relationship between camera sensor device and IVSC device is cleared. Signed-off-by: Wentong Wu <wentong.wu@intel.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
-rw-r--r--drivers/media/pci/intel/ivsc/mei_ace.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/media/pci/intel/ivsc/mei_ace.c b/drivers/media/pci/intel/ivsc/mei_ace.c
index d4ecc2b4a7f0..3622271c71c8 100644
--- a/drivers/media/pci/intel/ivsc/mei_ace.c
+++ b/drivers/media/pci/intel/ivsc/mei_ace.c
@@ -406,6 +406,9 @@ static int mei_ace_setup_dev_link(struct mei_ace *ace)
if (!csi_dev) {
ret = -EPROBE_DEFER;
goto err;
+ } else if (!dev_fwnode(csi_dev)) {
+ ret = -EPROBE_DEFER;
+ goto err_put;
}
/* setup link between mei_ace and mei_csi */