03:18imirkin: skeggsb: did you get a chance to look at that gpio setup bug?
03:26skeggsb: imirkin: nope, i'm only vaguely aware of it too, i didn't follow that too closely
03:28imirkin: skeggsb: basically the gpio's are set up wrong by the bios / whatever boots the system
03:28imirkin: skeggsb: and it needs a call to nv50_gpio_reset to set it right (0xe100)
03:28imirkin: otherwise the backlight doesn't work
03:28imirkin: (since the backlight gpio doesn't make it into the "SPECIAL_SOR_MASK", per rnndb naming)
03:29imirkin: obviously on a suspend/resume cycle all is fixed, since nouveau runs the scripts, which have a GPIO command
03:31skeggsb: we're *supposed* to do that stuff on some other conditions too, but i never fully figured it out and kinda forgot about it
03:31skeggsb: things broke doing that unconditionally too, many years back
03:31imirkin: yeah, i'm sure =/
03:32imirkin: i don't see a whole lot going on in the mmiotrace though
03:32imirkin: before it starts messing with the mode
03:32imirkin: but obv could be something it read in "a while back"
03:32imirkin: or maybe always do it on fermi+? who knows
03:36skeggsb: yeah, i'm not sure, i might shoot nvidia an email and see if they have any hints
03:41imirkin: that'd certainly be nice
06:13skeggsb: imirkin: mail sent, i'll let you know if/when i have any progress there
06:14imirkin: skeggsb: thanks!
07:54mbuf: The Parabola GNU/Linux-libre live USB works nicely with the Zotac GeForce GT 730 graphics card!
07:55mbuf: Thanks for all your inputs and discussion!
09:55pmoreau: Trying to fix the texture/sampler patch, but not having much success apparently as supertuxkart is giving me a black screen instead of the menu. :-D
10:09karolherbst: pmoreau: is it broken on master as well or just with your patches?
10:27pmoreau: Going to try that; I only compared against 20.1.4 so far.
10:34pmoreau: Master is fine, so it is one of my patches; going to bisect it.
11:08pmoreau: It was my bad, just a copy/paste failure where a call to `nv50_validate_tsc()` became a call to `nv50_validate_tic()`. xD
11:15pmoreau: Mmh, need to change some more stuff apparently…
11:49karolherbst: pmoreau: mhhh... I am right now wondering how to deal with offsets in clover as might want to add those as additional arguments :/
11:50karolherbst: the spirv needs to report those, but maybe we want to run at least DCE on all incoming spirvs
11:50karolherbst: but that might not clear the input/output list
12:05pmoreau: The offsets for splitting large grid launch?
12:05karolherbst: pmoreau: nope, right now it's just about the API offsets
12:06karolherbst: clover passes that in via an additional argument
12:06karolherbst: mhh, seems like we have "module::argument::grid_dimension" as well
12:07karolherbst: ehh.. same for images.. for whatever reason
12:08karolherbst: well image_size and image_format allthough the device knows that at runtime?
12:08karolherbst: this is all weird
12:08pmoreau: Okay; isn’t there an built-in for the API offset?
12:09karolherbst: there is
12:09karolherbst: but hw doesn't support it
12:09karolherbst: so instead of driver level lowering, clover just adds more args
12:09pmoreau: Sure, but we don’t need to change the SPIR-V for that.
12:10pmoreau: SPIR-V uses its own built-in for it, and we do our magic internally from clover to the driver, and do the appropriate lowering to pick up the offset from the appropriate place.
12:22karolherbst: yeah.. mhh
12:23karolherbst: I mean.. it's just about changing the gallium api a little, but some people are concerned that the memory overhead (for stack memory) matters all that much
12:24karolherbst: adding it as arguments does come with the benefit that it just works for all drivers
12:24karolherbst: and I guess we could lower it to parameters
12:25karolherbst: just.. I don't want to add the argument if there is no need for it
12:25karolherbst: hence the idea of running DCE
12:25karolherbst: but doesn't matter, as we have to rely on the variable inputs of entrypoints
12:25karolherbst: and I doubt DCE will rescan
12:25karolherbst: and we would have to adjust other functions as welll...
12:27karolherbst: well.. we could lower after function inlining I guess
12:27karolherbst: but what if at some point we can't inline anymore
12:59pmoreau: AndrewR: I just pushed an updated version which should hopefully fix the issue.
12:59pmoreau: I had to revert some of the changes cause I couldn’t figure out the missing pieces.
13:07karolherbst: pmoreau: actually.. if we have 2 ivec3 as the first two args it should work out just fine I guess...
13:08karolherbst: ehh... uff... that will cause other issues :/ annoying
13:08karolherbst: why is that so stupid :D
13:13karolherbst: you know what? screw it.. if LLVM is playing tricks by adding args for AMDGPU, I just ignore that. I can use up to 512 bytes from the kernel input buffer which is _half_ of what the spec requires you to support anyway
13:38karolherbst: ehh.. the CTS doesn't even test CL_DEVICE_MAX_PARAMETER_SIZE
14:59AndrewR: pmoreau, yes, it seems to work!
15:08pmoreau: Thank you for testing!