Hi! > > > > + if (isp->phy_type == ISP_PHY_TYPE_3430) { > > > > + struct media_pad *pad; > > > > + struct v4l2_subdev *sensor; > > > > + const struct isp_ccp2_cfg *buscfg; > > > > + > > > > + pad = media_entity_remote_pad(&ccp2->pads[CCP2_PAD_SINK]); > > > > + sensor = media_entity_to_v4l2_subdev(pad->entity); > > > > + /* Struct isp_bus_cfg has union inside */ > > > > + buscfg = &((struct isp_bus_cfg *)sensor->host_priv)->bus.ccp2; > > > > + > > > > + csiphy_routing_cfg_3430(&isp->isp_csiphy2, > > > > + ISP_INTERFACE_CCP2B_PHY1, > > > > + enable, !!buscfg->phy_layer, > > > > + buscfg->strobe_clk_pol); > > > > > > You should do this through omap3isp_csiphy_acquire(), and not call > > > csiphy_routing_cfg_3430() directly from here. > > > > Well, unfortunately omap3isp_csiphy_acquire() does have csi2 > > assumptions hard-coded :-(. > > > > This will probably fail. > > > > rval = omap3isp_csi2_reset(phy->csi2); > > if (rval < 0) > > goto done; > > Could you try to two patches I've applied on the ccp2 branch (I'll remove > them if there are issues). > > That's compile tested for now only. Thanks! They seem to be step in right direction. I still need to call csiphy_routing_cfg_3430() directly for camera to work, but at least it does not crash if I set up the phy pointer. I'll debug it some more. Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Attachment:
signature.asc
Description: Digital signature