<div dir="ltr">Hi, <br>Thanks for looking through that again.<br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Aug 28, 2014 at 4:01 PM, Emil Velikov <span dir="ltr"><<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On 22/08/14 17:41, Andreas Pokorny wrote:<br>
> Allows using prime fds as display target and from display target.<br>
> Test for PRIME capability after initializing kms_swrast screen.<br>
><br>
</div>Hi Andreas,<br>
<br>
I'm hoping that Giovanni will take a look. After all kms-dri is his creation.<br>
<br>
>From my POV the patch is good and should be safe to go in 10.3 on the point<br>
that the driver/target was introduced with 10.3. There is a trivial nit-pick<br>
which I'll squash before committing later on this week.<br>
<br>
Btw in the future can you please include Cc: "branch number" <mesa-stable...><br>
[1] in the commit message - it will ease things a bit :)<br>
<br>
Cheers,<br>
Emil<br>
<br>
[1] Marking a commit as a candidate for a stable branch<br>
<a href="http://mesa3d.org/devinfo.html" target="_blank">http://mesa3d.org/devinfo.html</a><br>
<div class=""><br>
> Signed-off-by: Andreas Pokorny <<a href="mailto:andreas.pokorny@canonical.com">andreas.pokorny@canonical.com</a>><br>
> ---<br>
</div>[snip]<br>
<div class="">> diff --git a/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c b/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c<br>
> index c9934bb..ba0660c 100644<br>
> --- a/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c<br>
> +++ b/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c<br>
</div>[snip]<br>
<div class="">> @@ -231,17 +264,34 @@ kms_sw_displaytarget_from_handle(struct sw_winsys *ws,<br>
>     struct kms_sw_winsys *kms_sw = kms_sw_winsys(ws);<br>
>     struct kms_sw_displaytarget *kms_sw_dt;<br>
><br>
> -   assert(whandle->type == DRM_API_HANDLE_TYPE_KMS);<br>
> +   assert(whandle->type == DRM_API_HANDLE_TYPE_KMS ||<br>
> +          whandle->type == DRM_API_HANDLE_TYPE_FD);<br>
><br>
> -   LIST_FOR_EACH_ENTRY(kms_sw_dt, &kms_sw->bo_list, link) {<br>
> -      if (kms_sw_dt->handle == whandle->handle) {<br>
> +   switch(whandle->type) {<br>
> +   case DRM_API_HANDLE_TYPE_FD:<br>
> +      kms_sw_dt = kms_sw_displaytarget_add_from_prime(kms_sw, whandle->handle);<br>
> +      if (kms_sw_dt) {<br>
>           kms_sw_dt->ref_count++;<br>
> +         kms_sw_dt->width = templ->width0;<br>
> +         kms_sw_dt->height = templ->height0;<br>
> +         kms_sw_dt->stride = whandle->stride;<br>
> +         if (stride)<br>
</div>Any objections on dropping the above conditional before committing?<br>
</blockquote><div> <br></div><div>The  if (stride)? - Oh I see the original code did not test for that.<br></div><div>No objections.<br><br></div><div>regards<br></div><div>Andreas<br></div></div></div></div>