aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2011-09-08 03:55:17 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2011-09-30 09:17:27 -0400
commit0373cac6cc7eef7ada03269288088e3cbee232c0 (patch)
tree181bff7c26aaed5a0e4fa40259dbef2522911171 /drivers/video
parent79ad75f27b3096e163d3d8970bfd95b4c077dce7 (diff)
OMAPDSS: FEATURES: Create a range param to get max downscaling
Create a dss_range_param member called FEAT_PARAM_DOWNSCALE to get the maximum downscaling possible on the current platform. Use this in dispc_ovl_calc_scaling(). Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/dispc.c2
-rw-r--r--drivers/video/omap2/dss/dss_features.c3
-rw-r--r--drivers/video/omap2/dss/dss_features.h1
3 files changed, 5 insertions, 1 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c
index 68a11e382f3a..5e6849e224c2 100644
--- a/drivers/video/omap2/dss/dispc.c
+++ b/drivers/video/omap2/dss/dispc.c
@@ -1692,7 +1692,7 @@ static int dispc_ovl_calc_scaling(enum omap_plane plane,
1692 enum omap_color_mode color_mode, bool *five_taps) 1692 enum omap_color_mode color_mode, bool *five_taps)
1693{ 1693{
1694 struct omap_overlay *ovl = omap_dss_get_overlay(plane); 1694 struct omap_overlay *ovl = omap_dss_get_overlay(plane);
1695 const int maxdownscale = cpu_is_omap34xx() ? 4 : 2; 1695 const int maxdownscale = dss_feat_get_param_max(FEAT_PARAM_DOWNSCALE);
1696 unsigned long fclk = 0; 1696 unsigned long fclk = 0;
1697 1697
1698 if ((ovl->caps & OMAP_DSS_OVL_CAP_SCALE) == 0) { 1698 if ((ovl->caps & OMAP_DSS_OVL_CAP_SCALE) == 0) {
diff --git a/drivers/video/omap2/dss/dss_features.c b/drivers/video/omap2/dss/dss_features.c
index ab4166590a74..47e66d87065f 100644
--- a/drivers/video/omap2/dss/dss_features.c
+++ b/drivers/video/omap2/dss/dss_features.c
@@ -288,6 +288,7 @@ static const struct dss_param_range omap2_dss_param_range[] = {
288 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, 0 }, 288 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, 0 },
289 [FEAT_PARAM_DSIPLL_FINT] = { 0, 0 }, 289 [FEAT_PARAM_DSIPLL_FINT] = { 0, 0 },
290 [FEAT_PARAM_DSIPLL_LPDIV] = { 0, 0 }, 290 [FEAT_PARAM_DSIPLL_LPDIV] = { 0, 0 },
291 [FEAT_PARAM_DOWNSCALE] = { 1, 2 },
291}; 292};
292 293
293static const struct dss_param_range omap3_dss_param_range[] = { 294static const struct dss_param_range omap3_dss_param_range[] = {
@@ -299,6 +300,7 @@ static const struct dss_param_range omap3_dss_param_range[] = {
299 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, (1 << 4) - 1 }, 300 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, (1 << 4) - 1 },
300 [FEAT_PARAM_DSIPLL_FINT] = { 750000, 2100000 }, 301 [FEAT_PARAM_DSIPLL_FINT] = { 750000, 2100000 },
301 [FEAT_PARAM_DSIPLL_LPDIV] = { 1, (1 << 13) - 1}, 302 [FEAT_PARAM_DSIPLL_LPDIV] = { 1, (1 << 13) - 1},
303 [FEAT_PARAM_DOWNSCALE] = { 1, 4 },
302}; 304};
303 305
304static const struct dss_param_range omap4_dss_param_range[] = { 306static const struct dss_param_range omap4_dss_param_range[] = {
@@ -310,6 +312,7 @@ static const struct dss_param_range omap4_dss_param_range[] = {
310 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, (1 << 5) - 1 }, 312 [FEAT_PARAM_DSIPLL_REGM_DSI] = { 0, (1 << 5) - 1 },
311 [FEAT_PARAM_DSIPLL_FINT] = { 500000, 2500000 }, 313 [FEAT_PARAM_DSIPLL_FINT] = { 500000, 2500000 },
312 [FEAT_PARAM_DSIPLL_LPDIV] = { 0, (1 << 13) - 1 }, 314 [FEAT_PARAM_DSIPLL_LPDIV] = { 0, (1 << 13) - 1 },
315 [FEAT_PARAM_DOWNSCALE] = { 1, 4 },
313}; 316};
314 317
315/* OMAP2 DSS Features */ 318/* OMAP2 DSS Features */
diff --git a/drivers/video/omap2/dss/dss_features.h b/drivers/video/omap2/dss/dss_features.h
index f73585e09d27..cd606447fcfc 100644
--- a/drivers/video/omap2/dss/dss_features.h
+++ b/drivers/video/omap2/dss/dss_features.h
@@ -84,6 +84,7 @@ enum dss_range_param {
84 FEAT_PARAM_DSIPLL_REGM_DSI, 84 FEAT_PARAM_DSIPLL_REGM_DSI,
85 FEAT_PARAM_DSIPLL_FINT, 85 FEAT_PARAM_DSIPLL_FINT,
86 FEAT_PARAM_DSIPLL_LPDIV, 86 FEAT_PARAM_DSIPLL_LPDIV,
87 FEAT_PARAM_DOWNSCALE,
87}; 88};
88 89
89/* DSS Feature Functions */ 90/* DSS Feature Functions */