[PATCH v2 1/1] media: tc358743: register v4l2 async device only after successful setup

Robert Foss rfoss at kernel.org
Wed May 17 15:10:53 UTC 2023


On Wed, May 17, 2023 at 9:37 AM Alexander Stein
<alexander.stein at ew.tq-group.com> wrote:
>
> Ensure the device has been setup correctly before registering the v4l2
> async device, thus allowing userspace to access.
>
> Signed-off-by: Alexander Stein <alexander.stein at ew.tq-group.com>
> ---
> Change in v2:
> * New approach: Register async device as last step
>
> This superseeds the patch at [1], but has a different subject due to new
> solution.
>
> [1] https://lore.kernel.org/linux-media/20230502140612.2256850-1-alexander.stein@ew.tq-group.com/
>
>  drivers/media/i2c/tc358743.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/i2c/tc358743.c b/drivers/media/i2c/tc358743.c
> index ad6a72b2bcf5..9d4bd73469bf 100644
> --- a/drivers/media/i2c/tc358743.c
> +++ b/drivers/media/i2c/tc358743.c
> @@ -2091,9 +2091,6 @@ static int tc358743_probe(struct i2c_client *client)
>         state->mbus_fmt_code = MEDIA_BUS_FMT_RGB888_1X24;
>
>         sd->dev = &client->dev;
> -       err = v4l2_async_register_subdev(sd);
> -       if (err < 0)
> -               goto err_hdl;
>
>         mutex_init(&state->confctl_mutex);
>
> @@ -2151,6 +2148,10 @@ static int tc358743_probe(struct i2c_client *client)
>         if (err)
>                 goto err_work_queues;
>
> +       err = v4l2_async_register_subdev(sd);
> +       if (err < 0)
> +               goto err_work_queues;
> +
>         v4l2_info(sd, "%s found @ 0x%x (%s)\n", client->name,
>                   client->addr << 1, client->adapter->name);
>
> --
> 2.34.1
>

Reviewed-by: Robert Foss <rfoss at kernel.org>


More information about the dri-devel mailing list