diff options
author | Tomi Valkeinen <tomi.valkeinen@nokia.com> | 2010-02-04 17:03:41 +0200 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@nokia.com> | 2010-02-12 12:46:08 +0200 |
commit | 8a2cfea8ccb6292dc43c37968fe08475ae7c2576 (patch) | |
tree | 880fb2f9e43172f84baa771c7060bb7c473f7816 /drivers/video/omap2/dss/dss.h | |
parent | e721032785b72afbc3da14c5525ca570bc2ed108 (diff) | |
download | blackbird-op-linux-8a2cfea8ccb6292dc43c37968fe08475ae7c2576.tar.gz blackbird-op-linux-8a2cfea8ccb6292dc43c37968fe08475ae7c2576.zip |
OMAP: DSS2: enable VDDS_DSI when using DPI
It looks like on OMAP3 some DSS pins need VDDS_DSI to function properly.
This has not been confirmed from TI, but looking at figure 15-1 "Display
subsystem highlight" from the TRM, some data pins come near the DSI and SDI
blocks. This is not very hard evidence, but the fact remains that with the
power on, pixels are ok, and with the power off, pixels are not ok.
It may also be that VDDS_SDI is needed to power some pins, but as normally
both VDDS_SDI and VDDS_DSI come from the same power source, this hasn't
been shown.
It seems that a single driver can only get a regulator once. This patch
solves it by getting all the required regulators in one place, and from
which the submodules then get the regulators they need.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Diffstat (limited to 'drivers/video/omap2/dss/dss.h')
-rw-r--r-- | drivers/video/omap2/dss/dss.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h index 2bcb1245d6c2..41145af36353 100644 --- a/drivers/video/omap2/dss/dss.h +++ b/drivers/video/omap2/dss/dss.h @@ -169,6 +169,9 @@ unsigned long dss_clk_get_rate(enum dss_clock clk); int dss_need_ctx_restore(void); void dss_dump_clocks(struct seq_file *s); struct bus_type *dss_get_bus(void); +struct regulator *dss_get_vdds_dsi(void); +struct regulator *dss_get_vdds_sdi(void); +struct regulator *dss_get_vdda_dac(void); /* display */ int dss_suspend_all_devices(void); @@ -261,7 +264,7 @@ void dsi_get_overlay_fifo_thresholds(enum omap_plane plane, u32 *fifo_low, u32 *fifo_high); /* DPI */ -int dpi_init(void); +int dpi_init(struct platform_device *pdev); void dpi_exit(void); int dpi_init_display(struct omap_dss_device *dssdev); |