mako: msm_fb: display: change implementation of updating mdp_clk and blt mode
msm_fb: display: change implementation of updating mdp_clk and blt mode commit 496f928d Currently mdp clk and bw requests are predefined in a 4-entry table passed from the board file, and the logic to decide which level to use is mainly based on source resolution. This patch is intended to address several issues with this approach. One major issue is clk and bandwidth depends on seperate things, and need to be considered seperately. e.g. with mdp composition of multiple pipes, bw request may be high but clk requirement may still be low. The current approach that binds these two things together causes inefficiency of power. Another major issue is that there is no logic to calculate mdp clk requirement of a single pipe based upon panel clk and downscale parameters. Further the worst case of mdp clk should be determined by all pipe usage. Without proper logic, many underrun have been experienced, and blt mode may not be enalbed properly. Also mdp_clk or blt mode update must be on right timing especially between these two pathes: overlay play and pan display. In the situations of performance from high to low or from low to high clk and blt must be handled properly to avoid underruns. In a summary, to support many different panels and targets and complicated mdp pipe usage(mdp composition), mdp driver related to clk and bw needs to be implemented differently. This patch is to seperate clk and bw, and maily to deal with mdp clk and blt. Later increasing granuity of bw will be added. Change-Id: I0cda9597e130192cd224e2943711c8063bfc1a0a
Loading
Please sign in to comment