diff options
author | David Yu <davyu@nvidia.com> | 2014-05-20 20:44:22 +0900 |
---|---|---|
committer | Harry Hong <hhong@nvidia.com> | 2014-05-21 17:51:09 -0700 |
commit | 508a57c332c65b5c42840c08b0eb952851d9b69a (patch) | |
tree | 3727139be13cd25ae033c86c337fff8f24f70fd8 | |
parent | d253cc10557628ddaf929d24fccfe4d47df3e040 (diff) |
Revert "video: tegra: Fix filtering with SCAN_COLUMN on"
This reverts commit f08b3a1c970f72c6978979936d117b694ecaeba6.
Signed-off-by: David Yu <davyu@nvidia.com>
Change-Id: I078f73db95a55eb56ad0cf44fe612a6f2d10d390
Reviewed-on: http://git-master/r/412015
Reviewed-by: Harry Hong <hhong@nvidia.com>
Tested-by: Harry Hong <hhong@nvidia.com>
-rw-r--r-- | drivers/video/tegra/dc/bandwidth.c | 6 | ||||
-rw-r--r-- | drivers/video/tegra/dc/dc_config.h | 25 | ||||
-rw-r--r-- | drivers/video/tegra/dc/window.c | 7 |
3 files changed, 12 insertions, 26 deletions
diff --git a/drivers/video/tegra/dc/bandwidth.c b/drivers/video/tegra/dc/bandwidth.c index 181ae5a31af7..4989ba4d096c 100644 --- a/drivers/video/tegra/dc/bandwidth.c +++ b/drivers/video/tegra/dc/bandwidth.c @@ -66,7 +66,7 @@ static void tegra_dc_set_latency_allowance(struct tegra_dc *dc, #if defined(CONFIG_ARCH_TEGRA_2x_SOC) || defined(CONFIG_ARCH_TEGRA_3x_SOC) /* tegra_dc_get_bandwidth() treats V filter windows as double * bandwidth, but LA has a seperate client for V filter */ - if (w->idx == 1 && win_use_v_filter(dc, w, false)) + if (w->idx == 1 && win_use_v_filter(dc, w)) bw /= 2; #endif @@ -211,7 +211,7 @@ static unsigned long tegra_dc_calc_win_bandwidth(struct tegra_dc *dc, bw *= tiled_windows_bw_multiplier; #if defined(CONFIG_ARCH_TEGRA_2x_SOC) || defined(CONFIG_ARCH_TEGRA_3x_SOC) - if (win_use_v_filter(dc, w, false)) + if (win_use_v_filter(dc, w)) bw *= 2; #endif @@ -220,7 +220,7 @@ static unsigned long tegra_dc_calc_win_bandwidth(struct tegra_dc *dc, f_h = max(in_h * 100 / w->out_h, 100u); bw *= f_w; bw /= 100; - if (win_use_v_filter(dc, w, w->flags & TEGRA_WIN_FLAG_SCAN_COLUMN)) { + if (win_use_v_filter(dc, w)) { bw *= f_h; bw /= 100; } diff --git a/drivers/video/tegra/dc/dc_config.h b/drivers/video/tegra/dc/dc_config.h index 19cc71accc49..0ef076c2d3e1 100644 --- a/drivers/video/tegra/dc/dc_config.h +++ b/drivers/video/tegra/dc/dc_config.h @@ -1,7 +1,6 @@ /* * drivers/video/tegra/dc/dc_config.c - * - * Copyright (c) 2010-2013, NVIDIA CORPORATION, All rights reserved. + * Copyright (c) 2010-2012, NVIDIA CORPORATION, All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -157,26 +156,16 @@ long *tegra_dc_parse_feature(struct tegra_dc *dc, int win_idx, int operation); void tegra_dc_feature_register(struct tegra_dc *dc); static inline bool win_use_v_filter(struct tegra_dc *dc, - const struct tegra_dc_win *win, bool scan_column) + const struct tegra_dc_win *win) { - int has_filter; - - has_filter = tegra_dc_feature_has_filter(dc, win->idx, HAS_V_FILTER); - if (scan_column) - return has_filter && win->w.full != dfixed_const(win->out_h); - else - return has_filter && win->h.full != dfixed_const(win->out_h); + return tegra_dc_feature_has_filter(dc, win->idx, HAS_V_FILTER) && + win->h.full != dfixed_const(win->out_h); } static inline bool win_use_h_filter(struct tegra_dc *dc, - const struct tegra_dc_win *win, bool scan_column) + const struct tegra_dc_win *win) { - int has_filter; - - has_filter = tegra_dc_feature_has_filter(dc, win->idx, HAS_H_FILTER); - if (scan_column) - return has_filter && win->h.full != dfixed_const(win->out_w); - else - return has_filter && win->w.full != dfixed_const(win->out_w); + return tegra_dc_feature_has_filter(dc, win->idx, HAS_H_FILTER) && + win->w.full != dfixed_const(win->out_w); } #endif diff --git a/drivers/video/tegra/dc/window.c b/drivers/video/tegra/dc/window.c index 987797aaa2a0..58113ab652cb 100644 --- a/drivers/video/tegra/dc/window.c +++ b/drivers/video/tegra/dc/window.c @@ -364,8 +364,8 @@ int tegra_dc_update_windows(struct tegra_dc_win *windows[], int n) unsigned Bpp = tegra_dc_fmt_bpp(win->fmt) / 8; /* Bytes per pixel of bandwidth, used for dda_inc calculation */ unsigned Bpp_bw = Bpp * (yuvp ? 2 : 1); - bool filter_h; - bool filter_v; + const bool filter_h = win_use_h_filter(dc, win); + const bool filter_v = win_use_v_filter(dc, win); #if defined(CONFIG_TEGRA_DC_SCAN_COLUMN) scan_column = (win->flags & TEGRA_WIN_FLAG_SCAN_COLUMN); #endif @@ -395,9 +395,6 @@ int tegra_dc_update_windows(struct tegra_dc_win *windows[], int n) continue; } - filter_h = win_use_h_filter(dc, win, scan_column); - filter_v = win_use_v_filter(dc, win, scan_column); - tegra_dc_writel(dc, tegra_dc_fmt(win->fmt), DC_WIN_COLOR_DEPTH); tegra_dc_writel(dc, tegra_dc_fmt_byteorder(win->fmt), |