diff options
author | Archit Taneja <archit@ti.com> | 2012-04-09 05:36:41 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2012-05-09 06:44:09 -0400 |
commit | 3fa03ba8542c40b90c95facfecd9b2789f71c0b6 (patch) | |
tree | df910c413818cbbb1c03e36abe561f19ae941d65 /drivers | |
parent | b3d795abb253c7605f8b6257f2e25e7ebaaf4b57 (diff) |
OMAPDSS: DISPC: Remove omap_dss_device pointer usage from dispc_mgr_pclk_rate()
The pixel clock rate for the TV manager is calculated by checking the device
type connected to the manager, and then requesting the VENC/HDMI interface for
the pixel clock rate.
Remove the use of omap_dss_device pointer from here by checking which interface
generates the pixel clock by reading the DSS_CTRL.VENC_HDMI_SWITCH bit.
Signed-off-by: Archit Taneja <archit@ti.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/omap2/dss/dispc.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c index 6eec08400094..cd0a3979c5d1 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c | |||
@@ -2643,13 +2643,14 @@ unsigned long dispc_mgr_pclk_rate(enum omap_channel channel) | |||
2643 | 2643 | ||
2644 | return r / pcd; | 2644 | return r / pcd; |
2645 | } else { | 2645 | } else { |
2646 | struct omap_dss_device *dssdev = | 2646 | enum dss_hdmi_venc_clk_source_select source; |
2647 | dispc_mgr_get_device(channel); | ||
2648 | 2647 | ||
2649 | switch (dssdev->type) { | 2648 | source = dss_get_hdmi_venc_clk_source(); |
2650 | case OMAP_DISPLAY_TYPE_VENC: | 2649 | |
2650 | switch (source) { | ||
2651 | case DSS_VENC_TV_CLK: | ||
2651 | return venc_get_pixel_clock(); | 2652 | return venc_get_pixel_clock(); |
2652 | case OMAP_DISPLAY_TYPE_HDMI: | 2653 | case DSS_HDMI_M_PCLK: |
2653 | return hdmi_get_pixel_clock(); | 2654 | return hdmi_get_pixel_clock(); |
2654 | default: | 2655 | default: |
2655 | BUG(); | 2656 | BUG(); |