Hi Hans, Thank you for the patch. On Fri, Mar 08, 2019 at 02:56:23PM +0100, Hans Verkuil wrote: > The media_device is part of a static global vimc_device struct. > The media framework expects this to be zeroed before it is > used, however, since this is a global this is not the case if > vimc is unbound and then bound again. > > So call memset to ensure any left-over values are cleared. > > Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> Do I recall correctly that you mentioned there's work in progress that will allocate this dynamically ? If so feel free to mention it in the commit message if you want. > --- > drivers/media/platform/vimc/vimc-core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/media/platform/vimc/vimc-core.c b/drivers/media/platform/vimc/vimc-core.c > index 0fbb7914098f..3aa62d7e3d0e 100644 > --- a/drivers/media/platform/vimc/vimc-core.c > +++ b/drivers/media/platform/vimc/vimc-core.c > @@ -304,6 +304,8 @@ static int vimc_probe(struct platform_device *pdev) > > dev_dbg(&pdev->dev, "probe"); > > + memset(&vimc->mdev, 0, sizeof(vimc->mdev)); > + > /* Create platform_device for each entity in the topology*/ > vimc->subdevs = devm_kcalloc(&vimc->pdev.dev, vimc->pipe_cfg->num_ents, > sizeof(*vimc->subdevs), GFP_KERNEL); -- Regards, Laurent Pinchart