diff options
-rw-r--r-- | drivers/video/omap2/dss/dispc.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c index 9f083a952747..6f326765f341 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c | |||
@@ -993,7 +993,7 @@ void dispc_wb_set_channel_in(enum dss_writeback_channel channel) | |||
993 | static void dispc_ovl_set_burst_size(enum omap_plane plane, | 993 | static void dispc_ovl_set_burst_size(enum omap_plane plane, |
994 | enum omap_burst_size burst_size) | 994 | enum omap_burst_size burst_size) |
995 | { | 995 | { |
996 | static const unsigned shifts[] = { 6, 14, 14, 14, }; | 996 | static const unsigned shifts[] = { 6, 14, 14, 14, 14, }; |
997 | int shift; | 997 | int shift; |
998 | 998 | ||
999 | shift = shifts[plane]; | 999 | shift = shifts[plane]; |
@@ -1225,6 +1225,14 @@ void dispc_ovl_compute_fifo_thresholds(enum omap_plane plane, | |||
1225 | if (manual_update && dss_has_feature(FEAT_OMAP3_DSI_FIFO_BUG)) { | 1225 | if (manual_update && dss_has_feature(FEAT_OMAP3_DSI_FIFO_BUG)) { |
1226 | *fifo_low = ovl_fifo_size - burst_size * 2; | 1226 | *fifo_low = ovl_fifo_size - burst_size * 2; |
1227 | *fifo_high = total_fifo_size - burst_size; | 1227 | *fifo_high = total_fifo_size - burst_size; |
1228 | } else if (plane == OMAP_DSS_WB) { | ||
1229 | /* | ||
1230 | * Most optimal configuration for writeback is to push out data | ||
1231 | * to the interconnect the moment writeback pushes enough pixels | ||
1232 | * in the FIFO to form a burst | ||
1233 | */ | ||
1234 | *fifo_low = 0; | ||
1235 | *fifo_high = burst_size; | ||
1228 | } else { | 1236 | } else { |
1229 | *fifo_low = ovl_fifo_size - burst_size; | 1237 | *fifo_low = ovl_fifo_size - burst_size; |
1230 | *fifo_high = total_fifo_size - buf_unit; | 1238 | *fifo_high = total_fifo_size - buf_unit; |