Skip to contentSkip to conversation

media: imx-csi: Input connections to CSI should be optional

PATCH Superseded Steve Longerbeam 3 participants 4 messages Jan 9, 2019 – Jan 17, 2019

Subsystems (4)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore

Steve Longerbeam

author maintainer
#0 lore raw

PATCH 1/1 media: imx-csi: Input connections to CSI should be optional

Some imx platforms do not have fwnode connections to all CSI input ports, and should not be treated as an error. This includes the imx6q SabreAuto, which has no connections to ipu1_csi1 and ipu2_csi0. Return -ENOTCONN in imx_csi_parse_endpoint() so that v4l2-fwnode endpoint parsing will not treat an unconnected CSI input port as an error.

Fixes c893500a16baf ("media: imx: csi: Register a subdev notifier")
---
 drivers/staging/media/imx/imx-media-csi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/staging/media/imx/imx-media-csi.c +1 -1
index 4223f8d418ae..30b1717982ae 100644
@@ -1787,7 +1787,7 @@ static int imx_csi_parse_endpoint(struct device *dev,
 				  struct v4l2_fwnode_endpoint *vep,
 				  struct v4l2_async_subdev *asd)
 {
-	return fwnode_device_is_available(asd->match.fwnode) ? 0 : -EINVAL;
+	return fwnode_device_is_available(asd->match.fwnode) ? 0 : -ENOTCONN;
 }
 
 static int imx_csi_async_register(struct csi_priv *priv)
Signature · 1 line
2.17.1
maintainer Reviewed-by on v1 1/1
#1 lore raw
Quoted 10 lines · Steve Longerbeam

Some imx platforms do not have fwnode connections to all CSI input ports, and should not be treated as an error. This includes the imx6q SabreAuto, which has no connections to ipu1_csi1 and ipu2_csi0. Return -ENOTCONN in imx_csi_parse_endpoint() so that v4l2-fwnode endpoint parsing will not treat an unconnected CSI input port as an error.

Fixes c893500a16baf ("media: imx: csi: Register a subdev notifier")

regards
Philipp

Quoted 17 lines
---
 drivers/staging/media/imx/imx-media-csi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/staging/media/imx/imx-media-csi.c +1 -1
index 4223f8d418ae..30b1717982ae 100644
@@ -1787,7 +1787,7 @@ static int imx_csi_parse_endpoint(struct device *dev,
 				  struct v4l2_fwnode_endpoint *vep,
 				  struct v4l2_async_subdev *asd)
 {
-	return fwnode_device_is_available(asd->match.fwnode) ? 0 : -EINVAL;
+	return fwnode_device_is_available(asd->match.fwnode) ? 0 : -ENOTCONN;
 }
 
 static int imx_csi_async_register(struct csi_priv *priv)
Acked-by on v1 1/1
#2 lore raw
In reply to Steve Longerbeam
Quoted 29 lines · Steve Longerbeam

Some imx platforms do not have fwnode connections to all CSI input ports, and should not be treated as an error. This includes the imx6q SabreAuto, which has no connections to ipu1_csi1 and ipu2_csi0. Return -ENOTCONN in imx_csi_parse_endpoint() so that v4l2-fwnode endpoint parsing will not treat an unconnected CSI input port as an error.

Fixes c893500a16baf ("media: imx: csi: Register a subdev notifier")
---
 drivers/staging/media/imx/imx-media-csi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/staging/media/imx/imx-media-csi.c +1 -2
index 4223f8d418ae..30b1717982ae 100644
@@ -1787,7 +1787,7 @@ static int imx_csi_parse_endpoint(struct device *dev,
                                  struct v4l2_fwnode_endpoint *vep,
                                  struct v4l2_async_subdev *asd)
 {
-       return fwnode_device_is_available(asd->match.fwnode) ? 0 : -EINVAL;
+       return fwnode_device_is_available(asd->match.fwnode) ? 0 : -ENOTCONN;
 }
 
 static int imx_csi_async_register(struct csi_priv *priv)
--
Quoted 2 lines

2.17.1

Steve,

Thanks, this fixes adv7180 the capture regression on the Gateworks Ventana boards as well. This should go to stable to fix 4.20 so please add a 'Cc: [email protected]' if you re-submit (else we can send it to [email protected] later).

Tim

author maintainer
#3 lore raw

Hi Tim,

Quoted 33 lines · Tim Harvey
Quoted 28 lines · Steve Longerbeam

Some imx platforms do not have fwnode connections to all CSI input ports, and should not be treated as an error. This includes the imx6q SabreAuto, which has no connections to ipu1_csi1 and ipu2_csi0. Return -ENOTCONN in imx_csi_parse_endpoint() so that v4l2-fwnode endpoint parsing will not treat an unconnected CSI input port as an error.

Fixes c893500a16baf ("media: imx: csi: Register a subdev notifier")
---
  drivers/staging/media/imx/imx-media-csi.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
drivers/staging/media/imx/imx-media-csi.c +1 -2
index 4223f8d418ae..30b1717982ae 100644
@@ -1787,7 +1787,7 @@ static int imx_csi_parse_endpoint(struct device *dev,
                                   struct v4l2_fwnode_endpoint *vep,
                                   struct v4l2_async_subdev *asd)
  {
-       return fwnode_device_is_available(asd->match.fwnode) ? 0 : -EINVAL;
+       return fwnode_device_is_available(asd->match.fwnode) ? 0 : -ENOTCONN;
  }
 
  static int imx_csi_async_register(struct csi_priv *priv)
--
Quoted 2 lines

2.17.1

Steve,

Quoted 6 lines

Thanks, this fixes adv7180 the capture regression on the Gateworks Ventana boards as well. This should go to stable to fix 4.20 so please add a 'Cc: [email protected]' if you re-submit (else we can send it to [email protected] later).

I will resubmit a non-functional v2 that adds the Cc: stable and your ack.

Steve