Skip to content

Commit

Permalink
OMAP: DSS2: Reject scaling settings when they cannot be supported
Browse files Browse the repository at this point in the history
If the scaling ratio is below 0.5 video output width can't be identical
to the display width. Reject such settings.

Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
Acked-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
  • Loading branch information
Ville Syrjälä authored and Tomi Valkeinen committed Jan 12, 2010
1 parent 24be78b commit 2d9c559
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions drivers/video/omap2/dss/dispc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1454,7 +1454,10 @@ static unsigned long calc_fclk_five_taps(u16 width, u16 height,
do_div(tmp, 2 * out_height * ppl);
fclk = tmp;

if (height > 2 * out_height && ppl != out_width) {
if (height > 2 * out_height) {
if (ppl == out_width)
return 0;

tmp = pclk * (height - 2 * out_height) * out_width;
do_div(tmp, 2 * out_height * (ppl - out_width));
fclk = max(fclk, (u32) tmp);
Expand Down Expand Up @@ -1634,7 +1637,7 @@ static int _dispc_setup_plane(enum omap_plane plane,
DSSDBG("required fclk rate = %lu Hz\n", fclk);
DSSDBG("current fclk rate = %lu Hz\n", dispc_fclk_rate());

if (fclk > dispc_fclk_rate()) {
if (!fclk || fclk > dispc_fclk_rate()) {
DSSERR("failed to set up scaling, "
"required fclk rate = %lu Hz, "
"current fclk rate = %lu Hz\n",
Expand Down

0 comments on commit 2d9c559

Please sign in to comment.