On Wed, 2011-05-04 at 13:53 +0300, Tomi Valkeinen wrote:
> On Wed, 2011-05-04 at 12:40 +0300, Tony Lindgren wrote:
> > * Archit Taneja <[email protected]> [110504 10:30]:
> > > --- a/arch/arm/mach-omap2/board-3430sdp.c
> > > +++ b/arch/arm/mach-omap2/board-3430sdp.c
> > > @@ -401,7 +401,7 @@ static struct regulator_consumer_supply 
> > > sdp3430_vdda_dac_supplies[] = {
> > >  /* VPLL2 for digital video outputs */
> > >  static struct regulator_consumer_supply sdp3430_vpll2_supplies[] = {
> > >   REGULATOR_SUPPLY("vdds_dsi", "omapdss"),
> > > - REGULATOR_SUPPLY("vdds_dsi", "omapdss_dsi1"),
> > > + REGULATOR_SUPPLY("vdds_dsi", "omapdss_dsi.0"),
> > >  };
> > >  
> > >  static struct regulator_consumer_supply sdp3430_vmmc1_supplies[] = {
> > > diff --git a/arch/arm/mach-omap2/board-4430sdp.c 
> > > b/arch/arm/mach-omap2/board-4430sdp.c
> > > index 570e83f..eafadb4 100644
> > > --- a/arch/arm/mach-omap2/board-4430sdp.c
> > > +++ b/arch/arm/mach-omap2/board-4430sdp.c
> > > @@ -375,7 +375,7 @@ static struct regulator_consumer_supply 
> > > sdp4430_vmmc_supply[] = {
> > >  };
> > >  static struct regulator_consumer_supply sdp4430_vcxio_supply[] = {
> > >   REGULATOR_SUPPLY("vdds_dsi", "omapdss_dss"),
> > > - REGULATOR_SUPPLY("vdds_dsi", "omapdss_dsi1"),
> > > + REGULATOR_SUPPLY("vdds_dsi", "omapdss_dsi.0"),
> > >  };
> > ...
> > 
> > Looks like we should first combine all this cut and paste data
> > for each board file into some common init function to cut
> > down the "crazy churn".
> 
> I was actually thinking about this earlier today.
> 
> All the boards I have seen use vdds_dsi the same way (depending on the
> omap version, though). For OMAP3 it comes from VPPL2 and for OMAP4 it's
> VCXIO. Optimally a common piece of code would just set up the regulator
> properly.
> 
> But I think in the end the config has to come from the board data, as I
> don't see that the above config would be the only possibility. The
> vdds_dsi could be supplied from anywhere (with suitable voltage, of
> course), as far as I understand.
> 
> What we could do is:
> 
> 1. The board file tells the common display code which regulator is used
> for vdds_dsi, and the common code can setup the regulator supply for all
> DSS devices which need it (omapdss_dss, omapdss_dsi1, omapdss_dsi2).
> 
> I guess this needs dynamically adding the regulator supply in display.c,
> and I'm not quite sure if that's possible. We have to look at this.

I don't see how this would be possible. As far as I see, the regulator
consumers have to be given statically at init time. We could get the
whole VPLL2 or VCXIO supply array from a common display code, but that
would prevent adding any other consumers to those regulators, so that's
not an option either.

 Tomi


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to