On 12.08.2021 11:21, Robert Foss wrote: > vfe->ops->hw_version(vfe) is being called before vfe->base has been > assigned, and before the hardware has been powered up. > > Fixes: b10b5334528a9 ("media: camss: vfe: Don't read hardware version needlessly") > > Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx> > Reported-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> > Signed-off-by: Robert Foss <robert.foss@xxxxxxxxxx> Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> > --- > drivers/media/platform/qcom/camss/camss-vfe.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/qcom/camss/camss-vfe.c b/drivers/media/platform/qcom/camss/camss-vfe.c > index 6b2f33fc9be2..71f78b40e7f5 100644 > --- a/drivers/media/platform/qcom/camss/camss-vfe.c > +++ b/drivers/media/platform/qcom/camss/camss-vfe.c > @@ -604,6 +604,8 @@ static int vfe_get(struct vfe_device *vfe) > vfe_reset_output_maps(vfe); > > vfe_init_outputs(vfe); > + > + vfe->ops->hw_version(vfe); > } else { > ret = vfe_check_clock_rates(vfe); > if (ret < 0) > @@ -1299,7 +1301,6 @@ int msm_vfe_subdev_init(struct camss *camss, struct vfe_device *vfe, > return -EINVAL; > } > vfe->ops->subdev_init(dev, vfe); > - vfe->ops->hw_version(vfe); > > /* Memory */ > Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland