Guest81763 has quit [Killed (tolkien.freenode.net (Nickname regained by services))]
atler has joined #panfrost
stikonas has quit [Remote host closed the connection]
adjtm_ has quit [Quit: Leaving]
adjtm has joined #panfrost
<icecream95>
Fun fact: SuperTuxKart uploads about 1MB of push constants per second
<HdkR>
That's not terrible
<icecream95>
It all gets uploaded twice, but it shouldn't be too hard to fix that...
camus has joined #panfrost
kaspter has quit [Ping timeout: 268 seconds]
camus is now known as kaspter
<alyssa>
whistle
davidlt has joined #panfrost
<cyrozap>
alyssa: Thanks! And yeah, I'll probably try to figure out the other fields first, since I don't even know the meaning of the value being used as the input to the function.
austriancoder has quit [Ping timeout: 245 seconds]
camus has joined #panfrost
kaspter has quit [Remote host closed the connection]
camus is now known as kaspter
austriancoder has joined #panfrost
kaspter has quit [Read error: Connection reset by peer]
kaspter has joined #panfrost
<bbrezillon>
alyssa: sure, I can take care of indirect compute dispatch
guillaume_g has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 240 seconds]
camus is now known as kaspter
warpme_ has joined #panfrost
alpernebbi has joined #panfrost
raster has joined #panfrost
felipealmeida has quit [Ping timeout: 260 seconds]
felipealmeida has joined #panfrost
wwilly has joined #panfrost
<bbrezillon>
alyssa: regarding the AFBC issue, I don't really have a clean solution
<bbrezillon>
applying the format fixup when the importer and exporter pass it to the GPU is okay, but you have a problem when one of them is a different piece of HW
<alyssa>
bbrezillon: That's definitely what we want :+1:
kaspter has quit [Quit: kaspter]
<daniels>
this means that AFBC is disallowed for XRGB and only allowed for XBGR, if I read correctly?
<bbrezillon>
it's actually only allowed for RGBX/RGBA
<bbrezillon>
not XRGB
<bbrezillon>
and yes, BGR is rejected
<bbrezillon>
daniels: do you have a better option?
<daniels>
right, RGBX/RGBA == ABGR/XBGR in DRM_FORMAT_* nomenclature
<daniels>
I don't have a better option, just wanted to confirm what I was seeing :)
<bbrezillon>
oh, ok
anarsoul|c has joined #panfrost
leah has quit [Quit: WeeChat 2.8]
<adjtm>
cyrozap, yes, I'm referring to unum III
unoccupied has joined #panfrost
unoccupied is now known as leah
<adjtm>
the way it uses the first consecutive ones in the input value is like posits encode the regime
<adjtm>
but sure it's not a posit, and maybe not even using it for floating point numbers
chewitt has joined #panfrost
archetech has joined #panfrost
Net147 has quit [Ping timeout: 276 seconds]
Net147 has joined #panfrost
MastaG6 has joined #panfrost
<robclark>
bbrezillon, daniels: UBWC (and tiled non-UBWC) is similar on adreno.. we just define the modifier as "native swizzle" since it is an opaque format.. although I guess in your case you need to get all the display drivers that support AFBC to go along with the scam
MastaG has quit [Ping timeout: 240 seconds]
MastaG6 is now known as MastaG
<robclark>
so UBWC RGBx and xBGR, etc, are all the same thing
<bbrezillon>
robclark: yep, that's the problem, I don't know what display controllers do when you tell them it's AFBC(BRG)
<bbrezillon>
if they interpret it as AFBC(RGB) we're good
<robclark>
I guess since there are (presumably) some display controllers already supporting the existing modifier, you could use the existing modifier for native swizzle (as you do), but then introduce a new modifier for "fake swizzle"..
<robclark>
*but*.. do existing display controllers advertise support for AFBC with all swizzles? If no, that might be an escape hatch to salvage the current modifier
<bbrezillon>
it seems to pass CI, which is weird because I remember trying the same trick when adding AFBC support to Bifrost
<bbrezillon>
and it was failing
<daniels>
but CI won't ever be testing shared or scanout surfaces, no?
<bbrezillon>
nope, but even internal usage was failing with this swizzle trick
<bbrezillon>
and what's for sure is that we are applying the pipe_format swizzle on Midgard when emitting the render-target descriptor
<bbrezillon>
and I guess alyssa tested it on T860 when toggling AFBC-sharing on by default
<bbrezillon>
which means, the swizzling is either ignored or applied, but the behavior is consistent (the display controller and the GPU do the same thing)
<daniels>
well, that's just for programming the afbc decoder, right? presumably the decoder doesn't care about the R/B channel order (modulo YTR), so it just emits them straight through, then the display controller swizzles if required?
<narmstrong>
bbrezillon: it is not `/* YTR is forbidden for non XBGR formats */`
<narmstrong>
bbrezillon: it's unclear, the decoder emits whatever channels it founds and it's the pixel encoder who can re-order them
<narmstrong>
bbrezillon: the decoder doesn't know what are R, G ou B channels