alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - https://gitlab.freedesktop.org/panfrost - Logs https://freenode.irclog.whitequark.org/panfrost - <daniels> avoiding X is a huge feature
<alyssa> Note to self: figure out ds_linear, since it's slightly different on midgard than bifrost
<robher> kernel driver RFC is on the list.
<HdkR> What is ds_linear?
<hanetzer> robher: apparently I missed the return statement in the gpu_read thing. fixed and repushed.
<hanetzer> yooooo, its been sent!
stikonas has quit [Remote host closed the connection]
<alyssa> robher: Oh my onions, so it is!!
<alyssa> (review in progress, afk for food)
<hanetzer> yum
pH5 has quit [Ping timeout: 245 seconds]
<HdkR> Oh? Where is the RFC on the list? Am I blind?
<alyssa> HdkR: Uhhh I was just CC'd...
robert_ancell has quit [Remote host closed the connection]
chewitt has joined #panfrost
<HdkR> robher: Ah I see. ML I wasn't watching. Thanks!
<alyssa> "t600_r0p0_15dev0" We can safely ignore this, right? :P
<alyssa> robher: RFC responded :)
<alyssa> And... that was a doozy! :P
* alyssa to sleep
<alyssa> Guess I won't get around to ds_linear poking tonight :p
<hanetzer> yeesh. doing u-boot work is not visibly exciting ;P
<alyssa> This is why I do graphics :p
<hanetzer> hehe... I've gotten it to say 'unsupported boot device', at least :P
<anarsoul> hanetzer: just do display driver for u-boot :P
<hanetzer> anarsoul: no good if it doesn't boot :P
<hanetzer> I need that eventually tho. currently the u-boot for gru doesn't support display :P (or keyboard)
<tomeu> hanetzer: isn't serial enough?
<hanetzer> tomeu: I barely have that. just enough for it to spit out some death knells and lock :P
<anarsoul> tomeu: serial won't help you to understand why your laptop doesn't boot if you don't have another laptop at hand
<tomeu> I hope I'm never in such a situation, sounds horrible :)
<hanetzer> yep. and serial on this board is not as nice as any of the various dev-boards with nice, large pins for uarts :P
<hanetzer> https://external-preview.redd.it/taGSHEf_l2hGgv3OzmDCi2tvI_4kKUqN0LepRu37LH8.jpg?auto=webp&s=878841ffc553147e960052b058ba5641582fa309 << see that screw in the top-right of the big copper heat-sink? to the left of that there is a cut-out with a header. that's what I have to hook up to
<hanetzer> not only that, you generally need a google servo debug board for ti
<tomeu> oh yeah
<tomeu> servos are cool
<tomeu> you are lucky to a have a header though :)
<hanetzer> apparently these come with them on consumer models. my speedy did not.
tlwoerner has joined #panfrost
<HdkR> I'm thirsty for that MR
<tomeu> alyssa: when there's no draws nor clears, looks like the context has the same ctx->job
<tomeu> guess there's still work to do in the transition to panfrost_job, so I will stop caring about that
<hanetzer> tomeu: hawt
stikonas has joined #panfrost
belgin has joined #panfrost
belgin has quit [Remote host closed the connection]
<HdkR> cwabbott: btw, I pushed my latest branch to https://gitlab.freedesktop.org/sonicadvance1/mesa/tree/bifrost_compiler . I'm 100% fine with you stripping out what I did and replacing it. I didn't spend too terribly much time on it, was mostly learning bits
<HdkR> I forgot to push it a week ago
<HdkR> sadly I won't get back to it for a two weeks or so probably
<HdkR> Next step was to play with attributes, varyings, and uniforms. Getting them working correctly
stikonas has quit [Remote host closed the connection]
<HdkR> Er, Lyude ^ as well
<HdkR> Getting sleepy
raster has joined #panfrost
BenG83 has quit [Quit: Leaving]
BenG83 has joined #panfrost
belgin has joined #panfrost
belgin has quit [Client Quit]
tlwoerner has quit [Ping timeout: 246 seconds]
belgin has joined #panfrost
Guest24641 has joined #panfrost
belgin has quit [Quit: Leaving]
afaerber has quit [Quit: Leaving]
afaerber has joined #panfrost
<tomeu> alyssa: wonder what's your opinion on the two commits I just pushed to: https://gitlab.freedesktop.org/tomeu/mesa/commits/mainline-driver
<tomeu> the previous output was getting a bit in the way of testing
<alyssa> tomeu: "alyssa: when there's no draws nor clears, looks like the context has the same ctx->job" Aaaaaaaaa, yes, okay, I see the issue now
<alyssa> tomeu: Thank you! Those two patches (the last two) are something I meant to deal with a while ago but never got around to since for my work I generally want that debug 100% of the time anyway:P
<alyssa> Feel free to send those two patches off to the ML immediately (since it has nothing to directly do with the DRM driver stuff and can I think be merged as-is)
<alyssa> (I still need to test them, but assuming it does what's on the tin without obvious regressions, I'll push :) )
tlwoerner has joined #panfrost
pH5 has joined #panfrost
stikonas has joined #panfrost
tlwoerner has quit [Ping timeout: 240 seconds]
stikonas has quit [Remote host closed the connection]
tlwoerner has joined #panfrost
stikonas has joined #panfrost
tlwoerner has quit [Ping timeout: 268 seconds]
raster has quit [Remote host closed the connection]
raster has joined #panfrost
afaerber has quit [Quit: Leaving]
belgin has joined #panfrost
adjtm has joined #panfrost
adjtm_ has quit [Read error: Connection reset by peer]
jailbox has quit [Remote host closed the connection]
belgin has quit [Remote host closed the connection]
indy has quit [Remote host closed the connection]
* alyssa looks at ds_linear
indy has joined #panfrost
<Lyude> (ds_linear stares back)
<alyssa> Lyude: :P
<robher> alyssa: looking at the affinity some more, seems like the first thing we need to add there is support for tiler-only jobs. But it looks like everything is an FS job currently.
<alyssa> robher: I'm not sure why we even would want a tiler-only job
<alyssa> Only place I've seen that used is for some fixed-function hackiness
<alyssa> (Where you skip the VERTEX stage, writing the pseudo-vertex-shader results right into varying memory from software)
<alyssa> The blob uses this as a micro-optimization for quads when blitting and such
<robher> so ignore that then?
* robher should learn about vertex, fragment shader, etc. someday...
<alyssa> robher: Eventually we might need it, but it'll be a while until userspace does anything with that so probably doesn't matter
* alyssa isn't sure how to encourage the blob to give the bits she needs
<alyssa> The "usage2" flags in the texture descriptors are super suspicious
<alyssa> Well then. I now have a linear depth FBO working.
<alyssa> Largely by brute force tbh.
<alyssa> I have to say, AFBC is a substantial performance win
<alyssa> Now I have the equivalently hard task of breaking this up into reasonable patches
* alyssa semi-ironically wonders how hard it'd be to AFBC compress everything
<anarsoul> alyssa: did you push your code for depth FBO?
<alyssa> anarsoul: Not yet
<alyssa> anarsoul: But um... we've supported AFBC-compressed depth FBOs since October (which is what you want 98% of the time); this is just a feature I wanted to get to sanity check my understanding of the hardware
<alyssa> (And it paid off -- the process of implementing it uncovered actual issues)
<anarsoul> oh, ok
<anarsoul> lima doesn't support depth fbo yet and I was interested to peek how it's implemented in panfrost :)
<alyssa> anarsoul: Conceptually it's identical to colour fbos
<alyssa> There's a different slot in the framebuffer descriptor for the depth buffer (versus collour buffer), and you have different format bits, but... nothing really "new"
<anarsoul> can you render into depth and color at the same time or you have to do 2 draws?
<alyssa> anarsoul: I mean, T760+ has native support for *MRT*
<anarsoul> oh, ok
<alyssa> We can simultaneously render into depth, stencil, and four different colour buffers if we want :P
<anarsoul> not the case for old mali4x0 though :(
<chrisf> anarsoul: presumably you can do 1 color + depth + stencil
<anarsoul> chrisf: I'm not 100% sure, but IIRC blob does 2 draws if we need color and depth + stencil
<HdkR> alyssa: Have you checked how Mali supports stencil readbacks btw?
<alyssa> HdkR: It doesn't, afaict :P
<alyssa> At least, the blob doesn't
<alyssa> We can certainly implement it ourselves but it would be slow (particularly since the native format is Z24S8 IIRC?)
<HdkR> alyssa: The blob supports GL_ARM_shader_framebuffer_fetch_depth_stencil so it does :P
<HdkR> It also supports texture_stencil8, but that only works with non-combined depth and stencil
<alyssa> HdkR: _shader_
<HdkR> hm?
<alyssa> HdkR: Shader readback != readPixels
<alyssa> I think we're talking about different things..? :P
<HdkR> Ah, I was talking about unrelated things, was just curious :P