[PATCH] drm/omap: gem: Fix tearing with BO_TILED

Tomi Valkeinen tomi.valkeinen at ti.com
Tue Jan 7 13:31:44 UTC 2020


On 07/01/2020 15:30, Tomi Valkeinen wrote:
> On 05/01/2020 22:37, Tony Lindgren wrote:
>> Hi,
>>
>> * Tony Lindgren <tony at atomide.com> [200104 05:51]:
>>>
>>> Just changing the alingment fixes the issue. Looks like the minimum
>>> alignment we currently allow is 128, I think 512 was the minimum
>>> that worked for me, so maybe the right fix would be to just change
>>> the minimum to 512 with no specific need to use 4096 for now.
>>
>> So Matthijs and I chatted about this a bit on irc, and here's what
>> we concluded so far:
>>
>> 1. We have at least three different alignment needs for tiler
>>
>> - Linux use of tiler aligned to 128 bytes
>>
>> - SGX use of tiler aligned to 4096 bytes (or 512 bytes?)
>>
>> - Fast userspace mapping aligned to 4096 bytes
>>
>> 2. The alignment need may need to be configured by the tiler consumer
>>     in #1 above
>>
>> 3. The alignment need for SGX seems to be based on SGX MMU page size
>>
>> 4. The issue I'm seeing with stellarium on droid4 may be a stride
>>     issue as about one out of 3 or 4 frames is OK and aligning to
>>     512 also fixes the issue maybe because it happens to make
>>     multiple frames align to 4096
>>
>> So let's wait on this patch until we have more info and know how
>> the different alignments should be handled.
> 
> I don't know if these are related to the issue you have, and it's been a while since I looked at 
> TILER, but two thoughts after looking at the thread:
> 
> - If the usergart is not used, the width of each line has to be expanded to be page size aligned, 
> right? Do the patches from Matthijs do this?

And immediately after pressing "send", I realized that aligning the start of the buffers to page 
size already accomplishes this...

  Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


More information about the dri-devel mailing list