Message ID | 20170220120647.GA19951@amd (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Pavel, On Mon, Feb 20, 2017 at 01:06:47PM +0100, Pavel Machek wrote: > > Code in ispcsiphy is quite confusing, and does not initialize phy1 in > case of isp rev. 2. Set it to zero, to prevent confusion. > > Signed-off-by: Pavel Machek <pavel@ucw.cz> > > index 8f73f6d..a2474b6 100644 > --- a/drivers/media/platform/omap3isp/ispcsiphy.c > +++ b/drivers/media/platform/omap3isp/ispcsiphy.c > @@ -362,14 +374,16 @@ int omap3isp_csiphy_init(struct isp_device *isp) > phy2->phy_regs = OMAP3_ISP_IOMEM_CSIPHY2; > mutex_init(&phy2->mutex); > > - if (isp->revision == ISP_REVISION_15_0) { > - phy1->isp = isp; > - phy1->csi2 = &isp->isp_csi2c; > - phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES; > - phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1; > - phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1; > - mutex_init(&phy1->mutex); > + if (isp->revision != ISP_REVISION_15_0) { > + memset(phy1, sizeof(*phy1), 0); > + return 0; Isn't the memory allocated using kzalloc(), meaning it's already zero? > } > > + phy1->isp = isp; > + phy1->csi2 = &isp->isp_csi2c; > + phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES; > + phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1; > + phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1; > + mutex_init(&phy1->mutex); > return 0; > } > >
--- a/drivers/media/platform/omap3isp/ispcsiphy.c +++ b/drivers/media/platform/omap3isp/ispcsiphy.c @@ -362,14 +374,16 @@ int omap3isp_csiphy_init(struct isp_device *isp) phy2->phy_regs = OMAP3_ISP_IOMEM_CSIPHY2; mutex_init(&phy2->mutex); - if (isp->revision == ISP_REVISION_15_0) { - phy1->isp = isp; - phy1->csi2 = &isp->isp_csi2c; - phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES; - phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1; - phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1; - mutex_init(&phy1->mutex); + if (isp->revision != ISP_REVISION_15_0) { + memset(phy1, sizeof(*phy1), 0); + return 0; } + phy1->isp = isp; + phy1->csi2 = &isp->isp_csi2c; + phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES; + phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1; + phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1; + mutex_init(&phy1->mutex); return 0; }
Code in ispcsiphy is quite confusing, and does not initialize phy1 in case of isp rev. 2. Set it to zero, to prevent confusion. Signed-off-by: Pavel Machek <pavel@ucw.cz> index 8f73f6d..a2474b6 100644