From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Archit Taneja <archit@ti.com>, linux-omap@vger.kernel.org
Subject: Re: [PATCH 1/9] OMAP: DSS2: Change DSI platform device name from "omapdss_dsi1" to "omapdss_dsi"
Date: Tue, 07 Jun 2011 16:11:43 +0300 [thread overview]
Message-ID: <1307452303.1858.59.camel@deskari> (raw)
In-Reply-To: <20110504094050.GI27860@atomide.com>
Hi Tony,
On Wed, 2011-05-04 at 12:40 +0300, Tony Lindgren wrote:
> * Archit Taneja <archit@ti.com> [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 haven't been able to do this in a clean way. The regulator framework
is rather static in this area, and adding the data for REGULATOR_SUPPLYs
dynamically based on OMAP version is something I haven't been able to
do.
The best option I've found out is defining helper macros to add those
consumers. An example patch below with 3430sdp and 4430sdp boards
modified.
This would allow boards to setup the regulators whatever way they want,
but the 99% of the boards could just use the macros.
It's still not as good as I'd want, because the source regulator is also
the same for a particular OMAP version for 99% of the boards. So there's
no real need to use those those macros in the board file, a common
display file should be able to set everything up. But as I said, I
haven't found out any way to do this.
What is your opinion of this approach?
Tomi
diff --git a/arch/arm/mach-omap2/board-3430sdp.c
b/arch/arm/mach-omap2/board-3430sdp.c
index ae2963a..69b7e6f 100644
--- a/arch/arm/mach-omap2/board-3430sdp.c
+++ b/arch/arm/mach-omap2/board-3430sdp.c
@@ -308,13 +308,12 @@ static struct regulator_consumer_supply
sdp3430_vaux3_supplies[] = {
};
static struct regulator_consumer_supply sdp3430_vdda_dac_supplies[] = {
- REGULATOR_SUPPLY("vdda_dac", "omapdss_venc"),
+ OMAP_DSS_VENC_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"),
+ OMAP_DSS_SUPPLIES,
};
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 2647a95..80bbf61 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -339,8 +339,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"),
+ OMAP_DSS_SUPPLIES,
};
static int omap4_twl6030_hsmmc_late_init(struct device *dev)
diff --git a/include/video/omapdss.h b/include/video/omapdss.h
index bb39738..557b400 100644
--- a/include/video/omapdss.h
+++ b/include/video/omapdss.h
@@ -636,4 +636,12 @@ int omap_rfbi_update(struct omap_dss_device
*dssdev,
int omap_rfbi_configure(struct omap_dss_device *dssdev, int pixel_size,
int data_lines);
+#define OMAP_DSS_SUPPLIES \
+ REGULATOR_SUPPLY("vdds_sdi", "omapdss_dss"), \
+ REGULATOR_SUPPLY("vdds_dsi", "omapdss_dss"), \
+ REGULATOR_SUPPLY("vdds_dsi", "omapdss_dsi1")
+
+#define OMAP_DSS_VENC_SUPPLIES \
+ REGULATOR_SUPPLY("vdda_dac", "omapdss_venc")
+
#endif
next prev parent reply other threads:[~2011-06-07 13:11 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-04 7:38 [PATCH 0/9] MAP: DSS2: DSI2 for secondary lcd panel on OMAP4 Archit Taneja
2011-05-04 7:38 ` [PATCH 1/9] OMAP: DSS2: Change DSI platform device name from "omapdss_dsi1" to "omapdss_dsi" Archit Taneja
2011-05-04 9:40 ` Tony Lindgren
2011-05-04 10:53 ` Tomi Valkeinen
2011-05-04 11:21 ` Tomi Valkeinen
2011-05-04 12:11 ` Archit Taneja
2011-05-04 12:17 ` Tony Lindgren
2011-05-05 11:36 ` Tomi Valkeinen
2011-05-05 11:50 ` Tony Lindgren
2011-05-05 11:58 ` Tomi Valkeinen
2011-05-05 13:03 ` Tomi Valkeinen
2011-05-05 13:02 ` Mark Brown
2011-05-09 15:34 ` Tomi Valkeinen
2011-05-09 19:19 ` Mark Brown
2011-05-10 12:30 ` Tomi Valkeinen
2011-05-10 13:47 ` Mark Brown
2011-05-11 9:23 ` Tomi Valkeinen
2011-05-11 12:12 ` Mark Brown
2011-06-07 11:44 ` Tomi Valkeinen
2011-06-07 12:08 ` Mark Brown
2011-06-07 13:11 ` Tomi Valkeinen [this message]
2011-06-13 9:54 ` Tomi Valkeinen
2011-06-13 13:27 ` Tony Lindgren
2011-05-04 7:38 ` [PATCH 2/9] OMAP: DSS2: DSI: Add extra omap_dss_device argument in functions exported by dsi Archit Taneja
2011-05-04 7:38 ` [PATCH 3/9] OMAP: DSS2: Remove omap_dss_device argument from dsi_pll_init() Archit Taneja
2011-05-04 7:38 ` [PATCH 4/9] OMAP: DSS2: Pass platform_device as an argument in dsi functions Archit Taneja
2011-05-04 7:38 ` [PATCH 5/9] OMAP: DSS2: DSI: Use platform_device pointer to get dsi data Archit Taneja
2011-05-04 7:38 ` [PATCH 6/9] OMAP: DSS2: DSI: Pass pointer to struct to packet_sent_handler isrs Archit Taneja
2011-05-04 7:38 ` [PATCH 7/9] OMAP4: DSS2: DSI: Changes for DSI2 on OMAP4 Archit Taneja
2011-05-04 7:38 ` [PATCH 8/9] OMAP: DSS2: DSI: Build a platform device instance for DSI2 Archit Taneja
2011-05-04 7:38 ` [PATCH 9/9] OMAP: DSS2: Taal: Use device name in backlight_device_register Archit Taneja
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1307452303.1858.59.camel@deskari \
--to=tomi.valkeinen@ti.com \
--cc=archit@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox