alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - - Logs - <daniels> avoiding X is a huge feature
<alyssa----> The code generated for framebuffer fetch is weiiiird
<HdkR> :D
<alyssa----> And by weird I mean long and impossible to follow :P
<alyssa----> Another day
<alyssa----> (It reminds me of the code generated for pixel local storage, which should be no surprise)
* alyssa---- vaguely wants to implement PLS on mesa
fysa has quit [Remote host closed the connection]
<alyssa----> Cubemaps why don't you want to work
<alyssa----> Hey, sweet!
<alyssa----> We're not faulting anymore!
<alyssa----> That's an improvement
<alyssa----> ...and we're faulting again, dangit
<alyssa----> Okay, faulting fixed, but we're still broken
<alyssa----> Okay, cubemaps are getting a lot closer but still failing tests
chewitt has joined #panfrost
vstehle has quit [Ping timeout: 250 seconds]
shenghaoyang has joined #panfrost
shenghaoyang has quit [Remote host closed the connection]
<alyssa----> Cubemaps work!
<alyssa----> Well, linearly
<tlwoerner> X.Org has been accepted into GSoC 2019!
<tlwoerner> if anyone has any ideas for, is interested in mentoring for, or knows of any students who might want to participate in this year's GSoC, please have a look at
<tlwoerner> students have until April 9, 1400EDT to submit their proposals
<HdkR> Woo cubes!
<alyssa----> tlwoerner: Hmm.. any students want to implement pixel_local_storage? =p
<tlwoerner> alyssa----: are you volunteering to mentor? ;-)
<tlwoerner> alyssa----: i'd be happy to add it to the list of project ideas
<alyssa----> tlwoerner: I mean... =P
<alyssa----> tlwoerner: Interpret as you will.
* alyssa---- sleep
vstehle has joined #panfrost
Elpaulo has quit [Read error: Connection reset by peer]
Elpaulo1 has joined #panfrost
Elpaulo1 is now known as Elpaulo
pH5 has quit [Quit: bye]
<bbrezillon> Looks like we need to support PIPE_TEXTURE_RECT support to get gallium-hud on panfrost
<bbrezillon> I looked at the doc and it seems TEXTURE_RECT and TEXTURE_2D are similar except for the normalized vs unnormalized coordinates
<HdkR> Correct
<HdkR> Since NPOT isn't an issue anymore in this hardware anyway
<bbrezillon> so I just modify the assert() in the driver to let _RECT texture go through
<bbrezillon> but I now have to support the texop_txs instruction
<HdkR> right
<bbrezillon> any idea how this should be done?
<HdkR> Depends on if the hardware supports an instruction for RECT texture coordinates or not
<HdkR> Worst case you have to consume some uniform slots to put width/height in the shader and do it directly in the shader
<HdkR> Although there is a textureSize function in GLSL. Maybe the hardware has an instruction for pulling the bound texture data in a special way
<bbrezillon> ok, I guess I should try with ARM's driver and see how the generated instructions
<bbrezillon> s/how//
<HdkR> Changing gallium_hud to not use texture rectangles could be more sane as well :P
<bbrezillon> I tried using TEXTURE_2D instead of TEXTURE_RECT but I still have a texop_txd instruction
<bbrezillon> so it probably has to do with the gallium-hud shaders
<HdkR> yes
<HdkR> You need to change both the shader side and the API facing side
maciejjo has quit [Remote host closed the connection]
maciejjo has joined #panfrost
<austriancoder> bbrezillon: you could handle txs like seen in nir_to_vir.c -
<HdkR> Why does gallium hud use rectangle textures anyway?
<tomeu> guess it's something we want to support regardless of that?
<HdkR> It's part of core GL, just not ES
<tomeu> well, but there's lots of big GL sw that people run these days on linux desktops
<HdkR> Sure. I'm just curious why anyone would choose to use them for gallium hud :P
<tomeu> ah, gotcha
chewitt has quit [Ping timeout: 250 seconds]
chewitt has joined #panfrost
chewitt has quit [Ping timeout: 246 seconds]
chewitt has joined #panfrost
<bbrezillon> austriancoder: so, if I omit the various optims done in V3D (which we'll have to do at some point), the idea is to add an implicit uniform that contains the texture size info and use use a store op to retrieve it
<bbrezillon> I'm not entirely sure how it can be done in panfrost though
<bbrezillon> (by implicit uniform I mean a uniform that is not explicitly declared in the shader)
<austriancoder> bbrezillon: yeah thats the idea...all you need to do at draw time is to keep the immediate/compiler used uniforms up-to-date - etna does the same for RECT
<alyssa----> bbrezillon: We already have a little bit of this for viewports
<alyssa----> I'm planning to overhaul this at some point soon so we can actually implement this stuff
<bbrezillon> alyssa----: great!
<alyssa----> bbrezillon: I don't know if this is a blocker for you..?
<bbrezillon> alyssa----: nothing really urgent, but I'd love to have HW counters exposed through gallium-hud :)
<bbrezillon> there's also the solution proposed by HdkR (use TEXTURE_2D) which I'm investigating
<alyssa----> bbrezillon: Nah, might as well get it right the first time
<alyssa----> Since we *will* need to support txs for ES3
* alyssa---- class
<bbrezillon> yep, that's why I went on supporting txs first, but I'm completely new to all of this :)
<alyssa----> bbrezillon: MM, yeah. I don't know what parts of the stack you're comfortable/interested in, so I'm not sure how to help best
<alyssa----> LeAdErShIp (TM)
<bbrezillon> the kernel side of things is okay-ish, but I'm interested in learning more on the mesa side of things (absolutely not up to the task right now, so it's more a long term goal not something I hope so achieved in a near future)
<HdkR> alyssa----: txs for es3?
<HdkR> oh, texturesize?
pH5 has joined #panfrost
stikonas has joined #panfrost
<alyssa----> HdkR: Yeah
<HdkR> I was thinking just tex_rect :P
stikonas has quit [Read error: Connection reset by peer]
stikonas has joined #panfrost
daniels has quit [Excess Flood]
daniels has joined #panfrost
stikonas has quit [Remote host closed the connection]
Elpaulo has quit [Quit: Elpaulo]
Elpaulo has joined #panfrost
<alyssa----> Blorp
<HdkR> blurp
pH5 has quit [Ping timeout: 245 seconds]
pH5 has joined #panfrost
pH5 has quit [Quit: -_-]