isl: properly filter supported display modifiers on Gen9+
Y tiling is supported for display on Gen9+ so don't filter it from the possible flags. v2: Drop Yf from display supported tilings on Gen12+ (Jason) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4243>
This commit is contained in:
parent
157a3cf3ec
commit
dab0aadea9
|
@ -251,9 +251,19 @@ isl_gen6_filter_tiling(const struct isl_device *dev,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (info->usage & ISL_SURF_USAGE_DISPLAY_BIT) {
|
if (info->usage & ISL_SURF_USAGE_DISPLAY_BIT) {
|
||||||
/* Before Skylake, the display engine does not accept Y */
|
if (ISL_DEV_GEN(dev) >= 12) {
|
||||||
/* FINISHME[SKL]: Y tiling for display surfaces */
|
*flags &= (ISL_TILING_LINEAR_BIT | ISL_TILING_X_BIT |
|
||||||
*flags &= (ISL_TILING_LINEAR_BIT | ISL_TILING_X_BIT);
|
ISL_TILING_Y0_BIT);
|
||||||
|
} else if (ISL_DEV_GEN(dev) >= 9) {
|
||||||
|
/* Note we let Yf even though it was cleared above. This is just for
|
||||||
|
* completeness.
|
||||||
|
*/
|
||||||
|
*flags &= (ISL_TILING_LINEAR_BIT | ISL_TILING_X_BIT |
|
||||||
|
ISL_TILING_Y0_BIT | ISL_TILING_Yf_BIT);
|
||||||
|
} else {
|
||||||
|
/* Before Skylake, the display engine does not accept Y */
|
||||||
|
*flags &= (ISL_TILING_LINEAR_BIT | ISL_TILING_X_BIT);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (info->samples > 1) {
|
if (info->samples > 1) {
|
||||||
|
|
Loading…
Reference in New Issue