On 11 October 2017 at 07:13, Guttula, Suresh <suresh.gutt...@amd.com<mailto:suresh.gutt...@amd.com>> wrote: > HI, > >>- why do we need "surfaceless" support > ChromeOS supports surfacelsess and we need this va enablement for > surfaceless in chromium. Ack, that should have been part of the commit message. >>>I will update the commit message.
>> - does upstream VAAPI has surfaceless platform > Yes. It uses headless support of VA-API for decoding. There's no VA_DISPLAY_SURFACELESS in libva [1]. Thus adding one here is _very_ confusing and misleading. >>>Sorry I understood wrongly the question, I thought you are asking about mesa-vaapi. In libva it is using drm path only. If I understood correctly , no need of any macro VA_DISPLAY_SURFACELESS in libva as there is no problem to use drm path for egl platform surfaceless. The problem exists in mesa side as the check is added to enable va based on platform. https://github.com/01org/libva/blob/master/va/va_backend.h#L39 >>>libva uses “VA_DISPLAY_DRM_RENDERNODES” in this case. In libva ,Chromium (Ozone) for egl surfaceless platform goes for drm display . https://cs.chromium.org/chromium/src/media/gpu/vaapi_wrapper.cc?rcl=e1a85cf02acf0b4ccaad6e37afcf41d1fd26ce24&l=1188 >> - why is the surfaceless implementation identical to the DRM one > If I understand your question correctly, In case of surfaceless platform > ,it uses headless support of VAAPI, which will use drm implementation. If I > miss something here please provide some more details on the question. > To put it otherwise: You're "adding" support for surfaceless for the sake of adding a name. There's no functional difference nor upstream (see the libva question above) demand for it. >>>The reason for adding "surfaceless" in mesa is the condition checks for platform "drm/wayland/x11" to enable va. But in case of chromium ,we build mesa with_egl_platforms=surfaceless and not mesa_gbm because chromium uses minigbm .So echo $platform is surfaceless, even it is using drm path, condition check fail because of platform type picked as surfaceless and va is not enabled. What is stopping you from using --with-platforms=drm ? because if we use with_platforms=drm, we need to enable mesa_gbm which is not required for chromium(with_egl_platforms=surfaceless). Thanks, Suresh G
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev