<div dir="ltr">I'm quite sure on Gentoo lib points to lib64 and we have a lib32</div><br><div class="gmail_quote"><div dir="ltr">On Mon, 22 May 2017 at 22:46 Rob Herring <<a href="mailto:robh@kernel.org">robh@kernel.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, May 22, 2017 at 9:16 AM, Emil Velikov <<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>> wrote:<br>
> On 20 May 2017 at 01:16, Rob Herring <<a href="mailto:robh@kernel.org" target="_blank">robh@kernel.org</a>> wrote:<br>
>> On Fri, May 19, 2017 at 12:57 PM, Emil Velikov <<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>> wrote:<br>
>>> On 18 May 2017 at 23:01, Rob Herring <<a href="mailto:robh@kernel.org" target="_blank">robh@kernel.org</a>> wrote:<br>
>>>> On Thu, May 18, 2017 at 5:25 AM, Emil Velikov <<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>> wrote:<br>
>>>>> On 18 May 2017 at 05:10, Chih-Wei Huang <<a href="mailto:cwhuang@android-x86.org" target="_blank">cwhuang@android-x86.org</a>> wrote:<br>
>>>>>> 2017-05-18 12:01 GMT+08:00 Xu, Randy <<a href="mailto:randy.xu@intel.com" target="_blank">randy.xu@intel.com</a>>:<br>
>>>>>>><br>
>>>>>>>> -----Original Message-----<br>
>>>>>>>> From: Palli, Tapani<br>
>>>>>>>> ><br>
>>>>>>>> > It's just applied. Isn't it?<br>
>>>>>>>> > Yesterday without this patch<br>
>>>>>>>> > the color format is mismatch apparently.<br>
>>>>>>>><br>
>>>>>>>> Yeah we do need this. TBH I don't quite understand why but will try to figure<br>
>>>>>>>> it out. I remember we used to have a patch in Surfaceflinger at one point<br>
>>>>>>>> because visual was hardcoded there and this might be related.<br>
>>>>>>>><br>
>>>>>>>> // Tapani<br>
>>>>>>><br>
>>>>>>> Sorry, that's for different issue, I mix it with RGB565 blending one.<br>
>>>>>>> This patch is required because some Android GLES test apps, like gl2_basic, need to create RGBA8888 surface.<br>
>>>>>><br>
>>>>>> Indeed it is.<br>
>>>>>><br>
>>>>>> As Emil pointed out, the patch was merged before<br>
>>>>>> but reverted later since it broke desktop.<br>
>>>>>><br>
>>>>>> So what's the current upstreaming plan?<br>
>>>>>><br>
>>>>> No idea about a plan, but how you can fix it once and for all:<br>
>>>>><br>
>>>>> Extend the loader extension(s) to have a get_caps() callback,<br>
>>>>> analogous to __DRIimageExtension::getCapabilities.<br>
>>>>> Then the DRI module will query [the loader] and advertise the<br>
>>>>> RGBX/RGBA visuals when possible.<br>
>>>><br>
>>>> Could we do something compile time instead to enable just for Android?<br>
>>>> Seems like a lot of complexity when the platform needing these pixel<br>
>>>> formats doesn't need the backwards compatibility. Or maybe there are<br>
>>>> other things needing this interface?<br>
>>>><br>
>>> Having a short/mid term ifdef ANDROID is perfectly fine.<br>
>>><br>
>>> Can we address some of the existing ones before/alongside the newly added ones?<br>
>>> Afacit the nouveau bits are no longer applicable.<br>
>><br>
>> Yeah. I don't explicitly warn for KK or less, but will add that and fix these.<br>
>><br>
>>> While for the<br>
>>> gbm/egl 'use "gallium_dri.so"' one can either use your latest build<br>
>>> rework or MESA_LOADER_DRIVER_OVERRIDE.<br>
>><br>
>> How does the build rework help? My only reservation with using an env<br>
>> var is generally Android things don't rely on them and it would break<br>
>> working systems. I'm not even completely certain I can set env vars<br>
>> globally. It would be nice if the build system could set defaults for<br>
>> env vars we could use.<br>
>><br>
> IIRC with the rework you have the dri driver names are known as we<br>
> reach targets/dri/Android.mk<br>
<br>
Not really because we have things like freedreno -> msm and virgl -><br>
virtio_gpu, but having a variable like TARGET_DRIVERS is simple<br>
enough.<br>
<br>
> Thus one can reuse them to create the separate drivers<br>
>   - be that one blob + {sym,hard}links as we do in autotools/scons, or<br>
>  - completely separate drivers like i965 and other classic drivers.<br>
<br>
Got it. Symlinks are really easy in master:<br>
<br>
LOCAL_MODULE_SYMLINKS := $(foreach d, $(GALLIUM_TARGET_DRIVERS), $(d)_dri.so)<br>
<br>
However, that only works in master. There is LOCAL_POST_INSTALL_CMD,<br>
but it doesn't support multilib, so we need something like this:<br>
<br>
LOCAL_POST_INSTALL_CMD := \<br>
$(foreach l, lib lib64, \<br>
 mkdir -p $(TARGET_OUT_SHARED_LIBRARIES)/$(l)/$(MESA_DRI_MODULE_REL_PATH); \<br>
 $(foreach d, $(GALLIUM_TARGET_DRIVERS), ln -sf gallium_dri.so<br>
$(TARGET_OUT)/$(l)/$(MESA_DRI_MODULE_REL_PATH)/$(d)_dri.so;) \<br>
)<br>
<br>
This will install broken links when we're not on a multilib build. A<br>
bit ugly, but should be harmless.<br>
<br>
Rob<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</blockquote></div>