Hey all, I've just pushed out the initial Nouveau support for $subject \o/ As the atomic modesetting transition is basically a rewrite of the KMS portion of the driver, I would be very grateful for any additional testing that people could provide (even as simple as just booting and making sure you get a display is valuable). There's a Linux tree at https://github.com/skeggsb/linux/tree/linux-4.10, and the code also exists in my usual development tree[1] on the master branch (which is currently based on Dave's drm-next tree for Linux 4.10). There's another branch (devel-kms) in the same repository, which is the same code on top of what's currently Linux 4.9. If you have problems with the 4.10 code, I'd definitely be interested in seeing if they exist on the 4.9 branch too. Thanks in advance! Ben. [1] https://github.com/skeggsb/nouveau -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: OpenPGP digital signature URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20161104/f0b792af/attachment.sig>
On 04.11.2016 10:41, Ben Skeggs wrote:> Hey all, > > I've just pushed out the initial Nouveau support for $subject \o/ > > As the atomic modesetting transition is basically a rewrite of the KMS > portion of the driver, I would be very grateful for any additional > testing that people could provide (even as simple as just booting and > making sure you get a display is valuable).[...]> There's another branch (devel-kms) in the same repository, which is the > same code on top of what's currently Linux 4.9. If you have problems > with the 4.10 code, I'd definitely be interested in seeing if they exist > on the 4.9 branch too. >Hey Joe, $ grep nouveau /etc/dracut.conf.d/custom.conf omit_drivers+=" nouveau " # lsinitrd --kver 4.9.0-0.rc3.git2.1.fc26.x86_64 | grep nouveau ; echo $? 1 $ git clone https://github.com/skeggsb/nouveau.git -b devel-kms $ cd nouveau/drm/ $ git log -1 | head -1 commit 5a4d1791e82dd1eaa1e4ad5a220e82cbcc2f6535 $ sed -i /0xac/s/^/\\/\\// nouveau/nvkm/engine/disp/nv50.c # "No Signal" ION VGA $ make $ su # cp nouveau/nouveau.ko /usr/lib/modules/4.9.0-0.rc3.git2.1.fc26.x86_64/updates/ # depmod # reboot $ modinfo -n nouveau /lib/modules/4.9.0-0.rc3.git2.1.fc26.x86_64/updates/nouveau.ko = G98 $ dmesg | grep nouveau [ 22.111216] nouveau: loading out-of-tree module taints kernel. [ 22.115029] nouveau: module verification failed: signature and/or required key missing - tainting kernel [ 22.167576] nouveau 0000:02:00.0: NVIDIA G98 ... [ 22.283146] nouveau 0000:02:00.0: bios: version ... [ 22.314705] nouveau 0000:02:00.0: bios: M0203T not found [ 22.314835] nouveau 0000:02:00.0: bios: M0203E not matched! [ 22.314961] nouveau 0000:02:00.0: fb: 512 MiB DDR2 [ 24.767092] nouveau 0000:02:00.0: DRM: VRAM: 512 MiB [ 24.767267] nouveau 0000:02:00.0: DRM: GART: 1048576 MiB [ 24.767423] nouveau 0000:02:00.0: DRM: TMDS table version 2.0 [ 24.767570] nouveau 0000:02:00.0: DRM: DCB version 4.0 [ 24.767719] nouveau 0000:02:00.0: DRM: DCB outp 00: 02000300 00000028 [ 24.767869] nouveau 0000:02:00.0: DRM: DCB outp 01: 01000302 00020030 [ 24.768019] nouveau 0000:02:00.0: DRM: DCB outp 02: 04011310 00000028 [ 24.768167] nouveau 0000:02:00.0: DRM: DCB outp 03: 010223f1 00c0c080 [ 24.768339] nouveau 0000:02:00.0: DRM: DCB conn 00: 00001030 [ 24.768487] nouveau 0000:02:00.0: DRM: DCB conn 01: 00000100 [ 24.768638] nouveau 0000:02:00.0: DRM: DCB conn 02: 00000210 [ 24.768784] nouveau 0000:02:00.0: DRM: DCB conn 03: 00000211 [ 24.768932] nouveau 0000:02:00.0: DRM: DCB conn 04: 00000213 [ 24.776629] nouveau 0000:02:00.0: DRM: failed to create encoder 0/1/0: -19 [ 24.776760] nouveau 0000:02:00.0: DRM: TV-1 has no encoders, removing [ 24.791752] nouveau 0000:02:00.0: DRM: MM: using M2MF for buffer copies [ 24.858594] nouveau 0000:02:00.0: DRM: allocated 1920x1080 fb: 0x50000, bo ffff9013e3162000 [ 24.859949] fbcon: nouveaufb (fb0) is primary device [ 24.908898] nouveau 0000:02:00.0: fb0: nouveaufb frame buffer device [ 24.921432] [drm] Initialized nouveau 1.3.1 20120801 for 0000:02:00.0 on minor 0 [ 61.198374] nouveau 0000:02:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2 [ 61.198563] nouveau 0000:02:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2 [ 61.198580] nouveau 0000:02:00.0: msvld: unable to load firmware data [ 61.198588] nouveau 0000:02:00.0: msvld: init failed, -19 [ 76.197433] nouveau 0000:02:00.0: Direct firmware load for nouveau/nv98_fuc084 failed with error -2 [ 76.197468] nouveau 0000:02:00.0: Direct firmware load for nouveau/nv98_fuc084d failed with error -2 [ 76.197473] nouveau 0000:02:00.0: msvld: unable to load firmware data [ 76.197475] nouveau 0000:02:00.0: msvld: init failed, -19 S3 / S4 / RESUME [ 194.532401] nouveau 0000:02:00.0: DRM: suspending console... [ 194.532638] nouveau 0000:02:00.0: DRM: suspending display... [ 194.559166] nouveau 0000:02:00.0: DRM: evicting buffers... [ 195.716205] nouveau 0000:02:00.0: DRM: waiting for kernel channels to go idle... [ 195.716328] nouveau 0000:02:00.0: DRM: suspending client object trees... [ 195.717089] nouveau 0000:02:00.0: DRM: suspending kernel object tree... [ 197.464225] nouveau 0000:02:00.0: DRM: resuming kernel object tree... [ 197.579099] nouveau 0000:02:00.0: DRM: resuming client object trees... [ 197.579429] nouveau 0000:02:00.0: DRM: resuming display... [ 197.605069] nouveau 0000:02:00.0: DRM: resuming console... = ION VGA $ dmesg | grep nouveau [ 39.239672] nouveau: loading out-of-tree module taints kernel. [ 39.249832] nouveau: module verification failed: signature and/or required key missing - tainting kernel [ 39.392859] nouveau 0000:01:00.0: NVIDIA MCP79/MCP7A ... [ 39.417499] nouveau 0000:01:00.0: bios: version ... [ 39.448535] nouveau 0000:01:00.0: fb: 256 MiB stolen system memory [ 39.509648] nouveau 0000:01:00.0: DRM: VRAM: 256 MiB [ 39.514208] nouveau 0000:01:00.0: DRM: GART: 1048576 MiB [ 39.518884] nouveau 0000:01:00.0: DRM: TMDS table version 2.0 [ 39.518891] nouveau 0000:01:00.0: DRM: DCB version 4.0 [ 39.518899] nouveau 0000:01:00.0: DRM: DCB outp 00: 02000300 0000001e [ 39.518906] nouveau 0000:01:00.0: DRM: DCB outp 01: 01011322 00000030 [ 39.518912] nouveau 0000:01:00.0: DRM: DCB outp 02: 02022332 00020010 [ 39.518922] nouveau 0000:01:00.0: DRM: DCB conn 00: 00000000 [ 39.518935] nouveau 0000:01:00.0: DRM: DCB conn 01: 00001131 [ 39.518941] nouveau 0000:01:00.0: DRM: DCB conn 02: 00002261 [ 39.557069] nouveau 0000:01:00.0: DRM: MM: using M2MF for buffer copies [ 39.634080] nouveau 0000:01:00.0: DRM: allocated 1920x1080 fb: 0x50000, bo ffff8ab2afe1b000 [ 39.641306] fbcon: nouveaufb (fb1) is primary device [ 39.881426] nouveau 0000:01:00.0: fb1: nouveaufb frame buffer device [ 39.881475] [drm] Initialized nouveau 1.3.1 20120801 for 0000:01:00.0 on minor 1 At least what is obvious visible ain't broken, towards atomic modeset.
Hi Ben, with your 4.10 tree on my NVAC nouveau can't find the EDID with a passive miniDP to DVI adapter. It used to work before. miniDVI to VGA works. 2016-11-04 10:41 GMT+01:00 Ben Skeggs <skeggsb at gmail.com>:> Hey all, > > I've just pushed out the initial Nouveau support for $subject \o/ > > As the atomic modesetting transition is basically a rewrite of the KMS > portion of the driver, I would be very grateful for any additional > testing that people could provide (even as simple as just booting and > making sure you get a display is valuable). > > There's a Linux tree at > https://github.com/skeggsb/linux/tree/linux-4.10, and the code also > exists in my usual development tree[1] on the master branch (which is > currently based on Dave's drm-next tree for Linux 4.10). > > There's another branch (devel-kms) in the same repository, which is the > same code on top of what's currently Linux 4.9. If you have problems > with the 4.10 code, I'd definitely be interested in seeing if they exist > on the 4.9 branch too. > > Thanks in advance! > Ben. > > [1] https://github.com/skeggsb/nouveau > > > _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau >
okay, I managed to bisect this issue and it comes down to this commit: https://github.com/skeggsb/linux/commit/f6795bda9c2ee8173398533cab355fe259a9c1f1 with that commit, a 00ed EDID is read out and using that display fails. It's a display connected with a miniDP to DVI listed as "DP-1" in xrandr 2016-11-04 10:41 GMT+01:00 Ben Skeggs <skeggsb at gmail.com>:> Hey all, > > I've just pushed out the initial Nouveau support for $subject \o/ > > As the atomic modesetting transition is basically a rewrite of the KMS > portion of the driver, I would be very grateful for any additional > testing that people could provide (even as simple as just booting and > making sure you get a display is valuable). > > There's a Linux tree at > https://github.com/skeggsb/linux/tree/linux-4.10, and the code also > exists in my usual development tree[1] on the master branch (which is > currently based on Dave's drm-next tree for Linux 4.10). > > There's another branch (devel-kms) in the same repository, which is the > same code on top of what's currently Linux 4.9. If you have problems > with the 4.10 code, I'd definitely be interested in seeing if they exist > on the 4.9 branch too. > > Thanks in advance! > Ben. > > [1] https://github.com/skeggsb/nouveau > > > _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau >
another issue: whenever I stop X with your patches, the display becomes black and the display disabled. Works with 4.8.4 2016-11-04 10:41 GMT+01:00 Ben Skeggs <skeggsb at gmail.com>:> Hey all, > > I've just pushed out the initial Nouveau support for $subject \o/ > > As the atomic modesetting transition is basically a rewrite of the KMS > portion of the driver, I would be very grateful for any additional > testing that people could provide (even as simple as just booting and > making sure you get a display is valuable). > > There's a Linux tree at > https://github.com/skeggsb/linux/tree/linux-4.10, and the code also > exists in my usual development tree[1] on the master branch (which is > currently based on Dave's drm-next tree for Linux 4.10). > > There's another branch (devel-kms) in the same repository, which is the > same code on top of what's currently Linux 4.9. If you have problems > with the 4.10 code, I'd definitely be interested in seeing if they exist > on the 4.9 branch too. > > Thanks in advance! > Ben. > > [1] https://github.com/skeggsb/nouveau > > > _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau >
Hello Ben, You can find below my results; there is a slight over-representation of 1st gen Tesla cards, but… that’s what I have. :-D No regressions observed, apart from: * screen rotation on G80, MCP79 * resuming on G86 I’ll retest those cards with your linux-4.10 branch but without the atomic + DP serie. Pierre Tested: linux-4.10 (HEAD at b27add13f "drm/nouveau/fifo/gf100-: protect channel preempt with subdev mutex) Against: 4.8.7 Fullscreen game: Portal (FAIL is: it is not working, but neither did it before.) G80: * Basic modesetting: OK * VT switching: OK * Changing rotation: REGRESSION (disp: ERROR 5 [INVALID_STATE] * Suspend: OK * Hotplugging: - * Fullscreen game: FAIL (fail ttm_validate, vaildate: -12) (different on 4.8.7, but still failing) G84: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: FAIL (DRM: base-0: timeout) * Hotplugging: OK * Fullscreen game: OK G86: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: REGRESSION (PGRAPH TLB flush idle timeout fail) * Hotplugging: - * Fullscreen game: FAIL (gr: TRAP_PROP - TP 0 - 00000040 [RT_FAULT] - Address 004bed0000) (does not work im 4.8.7 either, though there was no trap, just FAIL ttm_validate & cie) G92: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: - * Fullscreen game: OK G94: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: - * Fullscreen game: OK G96: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: - * Fullscreen game: OK G98: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: OK * Fullscreen game: FAIL (fail ttm_validate, vaildate: -12) MCP79: * Basic modesetting: OK * VT switching: OK * Changing rotation: REGRESSION (no freeze, no errors, cursor was correctly updated, but screen does not update though switching to TTY works just fine) * Suspend: OK * Hotplugging: - * Fullscreen game: OK GT200: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: FAIL (PGRAPH TLB idle timeout fail) * Hotplugging: - * Fullscreen game: OK GF100: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: - * Fullscreen game: OK GF114: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: - * Fullscreen game: OK GK208: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: OK * Fullscreen game: OK GM206: * Basic modesetting: OK * VT switching: OK * Changing rotation: OK * Suspend: OK * Hotplugging: OK * Fullscreen game: OK On 07:41 pm - Nov 04 2016, Ben Skeggs wrote:> Hey all, > > I've just pushed out the initial Nouveau support for $subject \o/ > > As the atomic modesetting transition is basically a rewrite of the KMS > portion of the driver, I would be very grateful for any additional > testing that people could provide (even as simple as just booting and > making sure you get a display is valuable). > > There's a Linux tree at > https://github.com/skeggsb/linux/tree/linux-4.10, and the code also > exists in my usual development tree[1] on the master branch (which is > currently based on Dave's drm-next tree for Linux 4.10). > > There's another branch (devel-kms) in the same repository, which is the > same code on top of what's currently Linux 4.9. If you have problems > with the 4.10 code, I'd definitely be interested in seeing if they exist > on the 4.9 branch too. > > Thanks in advance! > Ben. > > [1] https://github.com/skeggsb/nouveau >> _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau-------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: not available URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20161113/b3ba7dff/attachment.sig>
On 11/14/2016 06:17 AM, Pierre Moreau wrote:> Hello Ben, > > You can find below my results; there is a slight over-representation of 1st gen > Tesla cards, but… that’s what I have. :-D No regressions observed, apart from: > > * screen rotation on G80, MCP79 > * resuming on G86Hey Pierre, Thanks for testing all this! Notes below.> > I’ll retest those cards with your linux-4.10 branch but without the atomic + DP > serie. > > Pierre > > > Tested: linux-4.10 (HEAD at b27add13f "drm/nouveau/fifo/gf100-: protect channel preempt with subdev mutex) > Against: 4.8.7 > Fullscreen game: Portal > (FAIL is: it is not working, but neither did it before.) > > > G80: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: REGRESSION (disp: ERROR 5 [INVALID_STATE]ACK, I'll look into this one.> * Suspend: OK > * Hotplugging: - > * Fullscreen game: FAIL (fail ttm_validate, vaildate: -12) (different on 4.8.7, but still failing) > > G84: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: FAIL (DRM: base-0: timeout) > * Hotplugging: OK > * Fullscreen game: OK > > G86: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: REGRESSION (PGRAPH TLB flush idle timeout fail)Hm, I wouldn't expect something like this to be related. Is this reproducible (works reliably before, fails reliably after)?> * Hotplugging: - > * Fullscreen game: FAIL (gr: TRAP_PROP - TP 0 - 00000040 [RT_FAULT] - Address 004bed0000) (does not work im 4.8.7 either, though there was no trap, just FAIL ttm_validate & cie) > > G92: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > G94: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > G96: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > G98: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: OK > * Fullscreen game: FAIL (fail ttm_validate, vaildate: -12) > > MCP79: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: REGRESSION (no freeze, no errors, cursor was correctly updated, but screen does not update though switching to TTY works just fine)I don't have the hardware for this, but hopefully whatever I uncover on G80 will help too :) Thanks again, Ben.> * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > GT200: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: FAIL (PGRAPH TLB idle timeout fail) > * Hotplugging: - > * Fullscreen game: OK > > GF100: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > GF114: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: - > * Fullscreen game: OK > > GK208: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: OK > * Fullscreen game: OK > > GM206: > * Basic modesetting: OK > * VT switching: OK > * Changing rotation: OK > * Suspend: OK > * Hotplugging: OK > * Fullscreen game: OK > > > > On 07:41 pm - Nov 04 2016, Ben Skeggs wrote: >> Hey all, >> >> I've just pushed out the initial Nouveau support for $subject \o/ >> >> As the atomic modesetting transition is basically a rewrite of the KMS >> portion of the driver, I would be very grateful for any additional >> testing that people could provide (even as simple as just booting and >> making sure you get a display is valuable). >> >> There's a Linux tree at >> https://github.com/skeggsb/linux/tree/linux-4.10, and the code also >> exists in my usual development tree[1] on the master branch (which is >> currently based on Dave's drm-next tree for Linux 4.10). >> >> There's another branch (devel-kms) in the same repository, which is the >> same code on top of what's currently Linux 4.9. If you have problems >> with the 4.10 code, I'd definitely be interested in seeing if they exist >> on the 4.9 branch too. >> >> Thanks in advance! >> Ben. >> >> [1] https://github.com/skeggsb/nouveau >> > > > > >> _______________________________________________ >> Nouveau mailing list >> Nouveau at lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/nouveau >-------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: OpenPGP digital signature URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20161116/7a4f8441/attachment-0001.sig>
Possibly Parallel Threads
- Atomic modesetting + DisplayPort MST
- [PATCH] Add Option "DRI3" to allow to disable DRI3 under EXA.
- [PATCH] Add Option "DRI3" to allow to disable DRI3 under EXA.
- [Bug 16792] New: modesetting on NV86: text mode goes blank, machine freeze on gdm stop
- [Bug 110830] New: GeForce GTX 1660 Ti (mobile) not supported (NV168/TU116)