diff mbox series

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

Message ID 20190109183448.20923-1-slongerbeam@gmail.com (mailing list archive)
State New, archived
Headers show
Series media: imx-csi: Input connections to CSI should be optional | expand

Commit Message

Steve Longerbeam Jan. 9, 2019, 6:34 p.m. UTC
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")

Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
---
 drivers/staging/media/imx/imx-media-csi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Philipp Zabel Jan. 10, 2019, 10:54 a.m. UTC | #1
On Wed, 2019-01-09 at 10:34 -0800, Steve Longerbeam wrote:
> 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")
> 
> Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp

> ---
>  drivers/staging/media/imx/imx-media-csi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/staging/media/imx/imx-media-csi.c b/drivers/staging/media/imx/imx-media-csi.c
> index 4223f8d418ae..30b1717982ae 100644
> --- a/drivers/staging/media/imx/imx-media-csi.c
> +++ b/drivers/staging/media/imx/imx-media-csi.c
> @@ -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)
Tim Harvey Jan. 15, 2019, 4:42 p.m. UTC | #2
On Wed, Jan 9, 2019 at 10:34 AM Steve Longerbeam <slongerbeam@gmail.com> wrote:
>
> 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")
>
> Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
> ---
>  drivers/staging/media/imx/imx-media-csi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/media/imx/imx-media-csi.c b/drivers/staging/media/imx/imx-media-csi.c
> index 4223f8d418ae..30b1717982ae 100644
> --- a/drivers/staging/media/imx/imx-media-csi.c
> +++ b/drivers/staging/media/imx/imx-media-csi.c
> @@ -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)
> --
> 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: stable@vger.kernel.org' if you re-submit (else we can send
it to stable@vger.kernel.org later).

Acked-by: Tim Harvey <tharvey@gateworks.com>

Tim
Steve Longerbeam Jan. 17, 2019, 8:53 p.m. UTC | #3
Hi Tim,

On 1/15/19 8:42 AM, Tim Harvey wrote:
> On Wed, Jan 9, 2019 at 10:34 AM Steve Longerbeam <slongerbeam@gmail.com> wrote:
>> 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")
>>
>> Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
>> ---
>>   drivers/staging/media/imx/imx-media-csi.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/media/imx/imx-media-csi.c b/drivers/staging/media/imx/imx-media-csi.c
>> index 4223f8d418ae..30b1717982ae 100644
>> --- a/drivers/staging/media/imx/imx-media-csi.c
>> +++ b/drivers/staging/media/imx/imx-media-csi.c
>> @@ -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)
>> --
>> 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: stable@vger.kernel.org' if you re-submit (else we can send
> it to stable@vger.kernel.org later).
>
> Acked-by: Tim Harvey <tharvey@gateworks.com>

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

Steve
diff mbox series

Patch

diff --git a/drivers/staging/media/imx/imx-media-csi.c b/drivers/staging/media/imx/imx-media-csi.c
index 4223f8d418ae..30b1717982ae 100644
--- a/drivers/staging/media/imx/imx-media-csi.c
+++ b/drivers/staging/media/imx/imx-media-csi.c
@@ -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)