Re: [RFC] omap3isp: add support for CSI1 bus
From: Pavel Machek
Date: Tue Apr 11 2017 - 14:15:08 EST
On Fri 2017-03-10 14:41:31, Pavel Machek wrote:
> On Mon 2017-03-06 08:56:59, Pavel Machek wrote:
> > omap3isp: add rest of CSI1 support
> >
> > CSI1 needs one more bit to be set up. Do just that.
> >
> > Signed-off-by: Pavel Machek <pavel@xxxxxx>
> >
> > ---
> >
> > Hmm. Looking at that... num_data_lanes probably should be modified in
> > local variable, not globally like this. Should I do that?
> >
> > Anything else that needs fixing?
>
> Ping? Feedback here would be nice. This is last "interesting" piece of
> the hardware support...
Any news here? You complained that I was not pushy enough in the past
;-).
Pavel
> > index 24a9fc5..6feba36 100644
> > --- a/drivers/media/platform/omap3isp/ispccp2.c
> > +++ b/drivers/media/platform/omap3isp/ispccp2.c
> > @@ -21,6 +23,7 @@
> > #include <linux/mutex.h>
> > #include <linux/uaccess.h>
> > #include <linux/regulator/consumer.h>
> > +#include <linux/regmap.h>
> >
> > #include "isp.h"
> > #include "ispreg.h"
> > @@ -1149,6 +1152,7 @@ int omap3isp_ccp2_init(struct isp_device *isp)
> > "Could not get regulator vdds_csib\n");
> > ccp2->vdds_csib = NULL;
> > }
> > + ccp2->phy = &isp->isp_csiphy2;
> > } else if (isp->revision == ISP_REVISION_15_0) {
> > ccp2->phy = &isp->isp_csiphy1;
> > }
> > diff --git a/drivers/media/platform/omap3isp/ispcsiphy.c b/drivers/media/platform/omap3isp/ispcsiphy.c
> > index 50c0f64..cd6351b 100644
> > --- a/drivers/media/platform/omap3isp/ispcsiphy.c
> > +++ b/drivers/media/platform/omap3isp/ispcsiphy.c
> > @@ -197,9 +200,10 @@ static int omap3isp_csiphy_config(struct isp_csiphy *phy)
> > }
> >
> > if (buscfg->interface == ISP_INTERFACE_CCP2B_PHY1
> > - || buscfg->interface == ISP_INTERFACE_CCP2B_PHY2)
> > + || buscfg->interface == ISP_INTERFACE_CCP2B_PHY2) {
> > lanes = &buscfg->bus.ccp2.lanecfg;
> > - else
> > + phy->num_data_lanes = 1;
> > + } else
> > lanes = &buscfg->bus.csi2.lanecfg;
> >
> > /* Clock and data lanes verification */
> > @@ -302,13 +306,16 @@ int omap3isp_csiphy_acquire(struct isp_csiphy *phy)
> > if (rval < 0)
> > goto done;
> >
> > - rval = csiphy_set_power(phy, ISPCSI2_PHY_CFG_PWR_CMD_ON);
> > - if (rval) {
> > - regulator_disable(phy->vdd);
> > - goto done;
> > + if (phy->isp->revision == ISP_REVISION_15_0) {
> > + rval = csiphy_set_power(phy, ISPCSI2_PHY_CFG_PWR_CMD_ON);
> > + if (rval) {
> > + regulator_disable(phy->vdd);
> > + goto done;
> > + }
> > +
> > + csiphy_power_autoswitch_enable(phy, true);
> > }
> >
> > - csiphy_power_autoswitch_enable(phy, true);
> > phy->phy_in_use = 1;
> >
> > done:
> >
>
>
>
--
(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