alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - Logs https://freenode.irclog.whitequark.org/panfrost - <daniels> avoiding X is a huge feature
stikonas has quit [Remote host closed the connection]
kaspter has quit [Read error: Connection reset by peer]
kaspter has joined #panfrost
<anarsoul> tomeu: narmstrong: can someone upgrade kernel on lava runners to 5.7-rc1 please?
vstehle has quit [Ping timeout: 265 seconds]
megi has quit [Ping timeout: 258 seconds]
<icecream95> I've been doing some reverse-engineering on AFBC, and can now encode solid blocks of any colour.
<anarsoul> cool
<anarsoul> icecream95: what device are you using?
<icecream95> anarsoul: RK3288, which has a t760
<HdkR> Solid blocks are the easy bit :P
<HdkR> What'll be fun is if AFBC has different encoding algorithms for the tiles
<icecream95> HdkR: It's pretty straightfoward, except that green is derived from red and blue and a sum byte, rather than stored directly.
<HdkR> Sounds like a pretty weak compression then :P
<icecream95> HdkR: I wouldn't call using 34 bits for 32 bits of data compression.
<HdkR> 34bits because of the additional bits from the header?
<HdkR> Worst case should just be header + uncompressed size right?
<HdkR> Burn a bit of memory capacity to (on average) dramatically reduce memory bandwidth is worth it
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
buzzmarshall has quit [Remote host closed the connection]
vstehle has joined #panfrost
<tomeu> anarsoul: in the runners or in the devices that test lima?
<anarsoul|c> Devices
<tomeu> if the latter, then it's built by gitlab-ci and it's just a matter of changing the download url for the kernel sources, and update the arm_build container's tag so it's rebuilt
<anarsoul|c> OK, I'll try that
<anarsoul|c> Is it shared between panfrost and lima?
<tomeu> anarsoul|c: yes, all devices under lava share the same kernel, per arch
bnieuwenhuizen has quit [Ping timeout: 256 seconds]
bnieuwenhuizen has joined #panfrost
mias has joined #panfrost
davidlt has joined #panfrost
nerdboy has joined #panfrost
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
mias has quit [Remote host closed the connection]
Elpaulo has quit [Quit: Elpaulo]
<tomeu> alyssa: have pushed the only two commits that I think could be upstreamed: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4530
<tomeu> the rest seem to be gross hacks that need quite some RE to get something to push
<tomeu> alyssa: will look at decoding textures and samplers, after that I will need to have some asserts fixed when running kmscube -M rgba (or glmark2's texture scene)
megi has joined #panfrost
icecream95 has quit [Ping timeout: 250 seconds]
<chewitt> tomeu: do you have a kernel branch with collected hacks/commits for bifrost?
<chewitt> I'm just retooling around 5.7-rc1 so wondering what things to keep an eye upon
<tomeu> oh, kernel
<tomeu> no really
<tomeu> for the g31 in the rk3326, it's enough to comment out the read from the FLUSH_ID register
<tomeu> otherwise it just works
<chewitt> for Amlogic?
<chewitt> I wasn't aware RK had Bifrost devices :)
<tomeu> not doing much on amlogic atm, as we have those reliability issues
<tomeu> maybe narmstrong has such a branch?
<narmstrong> Nah I took yours for my test
<jernej> chewitt: Allwinner also has SoCs with G31 now
<jernej> we will see more and more of bifrost GPUs now
stikonas has joined #panfrost
<chewitt> I guess that's a good thing!? :)
<chewitt> narmstrong: I will leave the panfrost bits out of my 5.7 branch for now .. I'm trying to cull the patch-set(s) down
<chewitt> too many plates spinning and I need to focus on some core bits instead
<kaichi> The RK3358 features a G52 GPU
<chewitt> @jernej ^ indeed :)
<chewitt> G31 strikes again
<chewitt> hopefully all the SoC vendors stick to the tried/tested G31/G52 combo and there's more consistency than Midgard
<kaichi> ah sorry, the RK3530 has the G52
<kaichi> not sure what the RK3588 will have
<kaichi> Would be nice to have a RK3588 Chromebook as a successor to the 3399
<kaichi> G77 Valhall maybe? Next generation of panfrost :)
Elpaulo has joined #panfrost
kaichi has quit [Quit: Leaving]
stikonas has quit [Ping timeout: 246 seconds]
<chewitt> I've been told Valhal is "all new" so wouldn't be a logical extension of panfrost
<chewitt> eat. sleep. reinvent-wheel. repeat
stikonas has joined #panfrost
warpme_ has joined #panfrost
robmur01_ has quit [Ping timeout: 265 seconds]
raster has joined #panfrost
megi has quit [Quit: WeeChat 2.8]
megi has joined #panfrost
unoccupied has quit [Quit: WeeChat 2.5]
nerdboy has quit [Ping timeout: 256 seconds]
buzzmarshall has joined #panfrost
<tomeu> alyssa: got some dumps: http://paste.debian.net/1140116/
<tomeu> looks like the texture trampoline is a struct
<tomeu> with the address to the texture (1ffd52000) after some other stuff
<tomeu> no idea whatsoever about the rest :p
unoccupied has joined #panfrost
<alyssa> Werner: "R16G16B16A16_FLOAT" could be supported on t720 (the blob does) but it would entail quite a bit of development effort and t720 has been mostly ES2-only for us for various reasons.
<Werner> That is fine.
<alyssa> unoccupied: hiya!
<alyssa> thank you :)
<anarsoul> tomeu: arm_build job hits timeout if I try to update kernel
megi has quit [Quit: WeeChat 2.8]
<alyssa> chewitt: It's my understanding Valhal : Bifrost :: Bifrost : Midgard
<alyssa> So a ton of new compiler work but probably shared code on cmdstream
megi has joined #panfrost
<alyssa> (whereas Utgard is really its own island away from Midg/Bi)
<alyssa> tomeu: I think I have some preliminary texture/sampler decode somewhere
<alyssa> Not at all complete but that branch should give you a nice starting point (and then add on some pandecode support etc)
nerdboy has joined #panfrost
<anarsoul> alyssa: utgard has a lot of similarities with midgard but yeah they're quite different
<alyssa> anarsoul: Similarities but no shared code (except tiling)
<anarsoul> yep
<anarsoul> :(
<alyssa> alas.
nerdboy has quit [Ping timeout: 240 seconds]
<alyssa> ^ Staring at convert ops but I think this is nearly right
<alyssa> Seem to be missing i16 to i32 though
<alyssa> uh, no
<alyssa> Mode 4
<alyssa> Guess it's right
<alyssa> Gah just corrupted my git
TheKit has quit [Remote host closed the connection]
<alyssa> No data loss but still annoying
<alyssa> Bifrost dropped swizzles, but we do still have the 0x10 flag which means "set w to 1"
<alyssa> (defaults to zero)
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
<alyssa> i32_to_i16 or maybe i32_to_f16 etc is what's missing uhm ok
davidlt has quit [Ping timeout: 256 seconds]
icecream95 has joined #panfrost
kaichi has joined #panfrost
<alyssa> Oh, cute: i32_to_i16 is done vectorized with SEL.XX.i16 :)
Lyude has quit [Quit: WeeChat 2.7.1]
Elpaulo has quit [Ping timeout: 265 seconds]
<alyssa> Arrrgh
<alyssa> the exp2(..) implementation mentioned is the half_exp2 (...) impl, way more complicated for full precision
<anarsoul> they're doing some newton-raphson steps?
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
<alyssa> anarsoul: looks like a different impl entirely
<alyssa> OTOH - this is consistent with libclc