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

Reply via email to