Merge "msm: mdss: Allow WB to use first available control path"
This commit is contained in:
commit
d4e1fb98bd
1 changed files with 13 additions and 4 deletions
|
@ -1322,12 +1322,21 @@ static inline int mdss_mdp_get_wb_ctl_support(struct mdss_data_type *mdata,
|
||||||
bool rotator_session)
|
bool rotator_session)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Initial control paths are used for primary and external
|
* Any control path can be routed to any of the hardware datapaths.
|
||||||
* interfaces and remaining control paths are used for WB
|
* But there is a HW restriction for 3D Mux block. As the 3D Mux
|
||||||
* interfaces.
|
* settings in the CTL registers are double buffered, if an interface
|
||||||
|
* uses it and disconnects, then the subsequent interface which gets
|
||||||
|
* connected should use the same control path in order to clear the
|
||||||
|
* 3D MUX settings.
|
||||||
|
* To handle this restriction, we are allowing WB also, to loop through
|
||||||
|
* all the avialable control paths, so that it can reuse the control
|
||||||
|
* path left by the external interface, thereby clearing the 3D Mux
|
||||||
|
* settings.
|
||||||
|
* The initial control paths can be used by Primary, External and WB.
|
||||||
|
* The rotator can use the remaining available control paths.
|
||||||
*/
|
*/
|
||||||
return rotator_session ? (mdata->nctl - mdata->nmixers_wb) :
|
return rotator_session ? (mdata->nctl - mdata->nmixers_wb) :
|
||||||
(mdata->nctl - mdata->nwb);
|
MDSS_MDP_CTL0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool mdss_mdp_is_nrt_vbif_client(struct mdss_data_type *mdata,
|
static inline bool mdss_mdp_is_nrt_vbif_client(struct mdss_data_type *mdata,
|
||||||
|
|
Loading…
Add table
Reference in a new issue