12:34 cosurgi: imirkin: is it possible to get the sound working via displayport?
12:34 imirkin: should Just Work (tm)
12:34 cosurgi: I have a motherboard without soundcard. I turned up volume on my LCD screens to max and I hear a white noise.
12:34 cosurgi: hmm. it doesn't ;)
12:35 imirkin: are you in front of the machine now?
12:35 cosurgi: which modules should be loaded?
12:35 cosurgi: yeah
12:35 imirkin: give me a sec
12:35 cosurgi: lsmod shows stuff like: snd_hda_intel, snd_hda_codec_hdmi
12:35 imirkin: grep . /proc/asound/NVidia/eld*
12:35 imirkin: remember - you have like 75 monitors, and audio will go to exactly one of them
12:36 cosurgi: only three. Ahhh! 75 ???
12:36 cosurgi: due to high resolution?
12:36 imirkin: also, audio over DP-MST may be more questionable than audio over DP.
12:36 imirkin: (but you don't use MST, do you)
12:36 imirkin: (and if c = 1, 75 is like 3)
12:37 cosurgi: this is `aplay -l` output: https://paste.ubuntu.com/p/Rhg3F5hgPg
12:37 cosurgi: this is `grep . /proc/asound/NVidia/eld*`: https://paste.ubuntu.com/p/Hq6hmwn4wQ/
12:37 cosurgi: what is MST ? :)
12:37 imirkin: multi-stream transport (i think)
12:37 imirkin: DP is a network protocol
12:37 imirkin: MST makes use of that
12:38 cosurgi: I never tried to use it. If it's not defaulr then I dont
12:38 imirkin: it's about how the monitors are connected
12:39 imirkin: ok, so all 3 of your monitors show up
12:39 imirkin: that's good.
12:39 cosurgi: I have three DP cables. Each cable goes straight from the screen to the graphic card.
12:39 imirkin: ok, then no MST
12:40 imirkin: so ... basically it's trial and error to figure out whihc of those stupid alsa devices corresponds to which monitor
12:40 imirkin: iirc 7 is the one you want
12:40 cosurgi: All three screens have max volume. I can hear the white noise from them.
12:40 imirkin: do you have a wav file sitting around?
12:41 imirkin: aplay -D ... something
12:41 imirkin: i forget the argument you have to give to specify an exact device
12:41 imirkin: but try all of them
12:41 imirkin: aplay -D hw:0,7 maybe?
12:42 cosurgi: aplay -D hw:0,7 unshade.wav
12:42 cosurgi: Playing WAVE 'unshade.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
12:42 cosurgi: it claims to have played something. So I need to try the whole range
12:43 imirkin: 7-12
12:43 imirkin: and try 3 while you're at it
12:46 cosurgi: I tried a lot, none worked: https://paste.ubuntu.com/p/D7DRPRPJXZ/
12:47 cosurgi:checks aplay -L to list devices, then try again.
12:48 imirkin: 3 and 7-12 are the only ones
12:48 imirkin: but if none of those work, then something's missing
12:48 imirkin: you're on pascal, right?
12:49 cosurgi: 04:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
12:49 cosurgi: 04:00.1 Audio device: NVIDIA Corporation GP106 High Definition Audio Controller (rev a1)
12:49 imirkin: right. i have a GP108 with HDMI plugged in - i'll see if audio works for me
12:49 imirkin: not right now though, maybe tonight
12:49 cosurgi: great! Thanks in advance :)
12:50 cosurgi: I hope the fix will not involve a reboot. In that case I will buy a cheap USB dongle with sound card in it ;)
12:50 imirkin: well, if the kernel needs to change ...
12:50 cosurgi: ... yeah. I know :)
12:51 imirkin: any more issues since that eviction fix went in btw?
12:51 imirkin: [stability issues]
12:51 cosurgi: no! I think it's really fixed.
12:51 imirkin: that's awesome
12:51 imirkin: tough bug to find ... happened when someone tried to delete the code because it did nothing :)
12:52 cosurgi: that's the logs:
12:52 cosurgi: https://paste.ubuntu.com/p/VQJMBXp9Qz/
12:52 imirkin: yeah, so it happens with some frequency ... makes sense
12:52 imirkin: then a bunch of evictions happen and all is well
12:53 cosurgi: heh. the logs are in time reverse order. That's grep
12:53 cosurgi: export LOG_SEARCH="EAGAIN"; cat /var/log/syslog | grep ${LOG_SEARCH} ; cat /var/log/syslog.1 | grep ${LOG_SEARCH} ; zcat /var/log/syslog.*gz | grep ${LOG_SEARCH} ;
12:54 imirkin: heh
19:12 Lyude: yay, figured out the last issues with CRCs on nouveau with volta, looks like we also were accidentally enabling dithering (possibly only on volta? I checked on pre-volta for this already so i'm not sure how I missed it :S)
19:12 imirkin: i think dithering is generally enabled
19:13 imirkin: there's a setting that controls it
19:13 imirkin: but in the "auto" state, dithering is on
19:13 imirkin: whenever there's mismatch of fb depth and display pipe bpc
19:13 imirkin: not 100% sure what happens when dithering is on and the two depths match. i assuemd it did nothing, but i could be wrong
19:17 Lyude: imirkin: so actually that's kinda the weird part-I was already aware of that and actually added support to igt already to disable dithering on nouveau since this caused some issues before already. That appeared to fix it on pascal, but then I noticed the occasional failures on volta and realized that the code in nv50_head_atomic_check_dither() will end up still enabling dithering even if we disable it (I've
19:17 Lyude: a patch now to fix this locally)
19:17 Lyude: so i'm just more confused on how this worked on pascal at any point
19:17 Lyude: meh
19:18 imirkin: oh
19:19 imirkin: that's nice.
19:19 Lyude: maybe the bpps just didn't match with the displays I was using before
19:19 Lyude: *did match with the displays I was using before
20:54 cosurgi: imirkin: how the audio GP108 with HDMI plugged in? (is it night at your timezone? :)
20:54 cosurgi: *how's
20:55 imirkin: it's 5pm
20:55 imirkin: (US/Eastern)
20:55 imirkin: haven't tested
20:55 imirkin: nor will i for several hours
20:55 imirkin: i have an upcomign move, have to go get moving supplies
20:55 imirkin: this comes second in priority :)
20:55 cosurgi: sure, no problem, just asking ;)
20:56 cosurgi: So I suppose we will talk tomorrow. It's 22:00 here and I sayed up until 5am last night. I need to go to sleep early today
20:56 cosurgi: Poland/EU ;)
20:57 imirkin: hehe ok
23:33 Lyude: Hey - what should we use for the SPDX license identifiers for nouveau? or do we even want to use them at all?
23:33 imirkin: well, they were imposed on us
23:34 imirkin: they're all MIT iirc (i fixed them)
23:35 Lyude: imirkin: are those license changes still waiting to get merged upstream? I'm still seeing some old copyright headers in drm/nouveau/dispnv50/disp.c and drm/nouveau/nouveau_drm.c
23:35 imirkin: no, they're upstream
23:35 imirkin: a lot of files were missing a license
23:35 imirkin: like header files and whatnot
23:36 imirkin: and greg k-h dumped a GPL header on them
23:36 imirkin: i got annoyed and fixed them.
23:36 imirkin: files with full license texts weren't touched though, iirc
23:36 Lyude: imirkin: ahhh, I'll find one of the other spdx headers you added then and use that
23:37 Lyude: after that, the time for CRC has come
23:37 imirkin: decades in the making
23:37 Lyude: hehe
23:38 Lyude: told you I'd get there eventually though ;P
23:38 imirkin: dunno how far back you go, but i have a G84 plugged in
23:38 Lyude: imirkin: unfortunately we only got details from nvidia for gf119+
23:38 Lyude: tbh, wouldn't be super surprised if this worked on earlier gens without much fuss though\
23:39 imirkin: oh
23:39 imirkin: that's no fun.
23:39 imirkin: but muh nv5!
23:39 Lyude: mhm, it's a little disappointing
23:40 Lyude: tbh though if support exists pre-gf119, it really shouldn't be too difficult to figure out at least back to nv50
23:40 Lyude: pre-nv50, no idea
23:40 imirkin: pre-nv50 is entirely different than nv50+
23:40 Lyude: mhm
23:40 imirkin: pre-nv50 is all direct programming
23:40 imirkin: no command stream
23:40 imirkin: could still have CRC's for all i know, but the display engines are entirely different
23:40 Lyude: yeah-I'm aware :)
23:41 Lyude: i wouldn't be surprised if they didn't use notifier contexts or stuff like that in the earlier gens
23:41 imirkin: those things did exist, going back to the dawn of time
23:41 imirkin: however the display never produced anything afaik
23:44 Lyude: imirkin: yeah-I think for pre-nv50 it's a lot more likely there's just a single register that you read on every vblank to get the CRC
23:48 Lyude: imirkin: although-it just occured to me if you could check on something pre-gf119+ but post-nv50 that we don't accidentally segfault on driver load and also don't expose CRCs in debugfs, that'd be useful :) (should have the patch series on the ML in a little bit for people to try)
23:48 imirkin: not crashing is nice
23:49 imirkin: i like not crashing.
23:49 Lyude: hehe
23:55 imirkin: cosurgi: just tested hdmi audio with GP108 - works fine (at least one of the monitors)
23:55 imirkin: fwiw the other one is dvi, with a dvi <-> hdmi adapter, plugging into the hdmi port of the monitor. not 100% sure audio would work on that one.
23:58 Lyude: depends, but hdmi through dvi-i/d isn't unheard of
23:59 Lyude:used to have an old radeon gpu that did it
23:59 Lyude: erm, *hdmi audio