On Tue, Mar 17, 2015 at 2:57 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:> On Tue, Mar 17, 2015 at 5:52 PM, Andy Lutomirski <luto at amacapital.net> wrote: >> On Fri, Feb 13, 2015 at 9:52 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: >>> On Fri, Feb 13, 2015 at 8:59 PM, Andy Lutomirski <luto at amacapital.net> wrote: >>>> My new GTX 960 (GM206, I think) says: >>>> >>>> [ 10.329351] nouveau ![ DEVICE][0000:09:00.0] unknown Maxwell chipset >>>> [ 10.329355] nouveau E[ DEVICE][0000:09:00.0] unknown chipset, 0x126010a1 >>>> [ 10.329356] nouveau E[ DRM] failed to create 0x00000080, -22 >>>> [ 10.330129] nouveau: probe of 0000:09:00.0 failed with error -22 >>>> >>>> Hacking up nouveau so that it treats it like a GM204 doesn't work. >>> >>> What happens if you just drop the 0x126 next to the 0x124 in >>> engine/device/gm100.c ? >>> >>>> Are there any near-term plans to support this card? >>> >>> I don't know of anyone with the hw... maybe Ben got one? If you're >>> interested in helping, the kernel logs from the above experiment + an >>> mmiotrace of the blob drivers (see >>> https://wiki.ubuntu.com/X/MMIOTracing) + vbios (see >>> http://nouveau.freedesktop.org/wiki/DumpingVideoBios/). >>> >>> I assume you're on a recent kernel? You need 3.19 for the GM204 stuff >>> to work in the first place. >> >> Neither 3.19 nor 4.0-rcsomething works. >> >> I put an mmio trace (X startup and glxgears) and a vbios dump here: >> >> http://web.mit.edu/luto/www/GM206/ > > Stefan sent proper patches to get nouveau going on his GM206, which > will make it into the next 4.0-rc. Here is a tree that is destined > towards drm-fixes: > > http://cgit.freedesktop.org/nouveau/linux-2.6/log/?h=linux-4.0 > > Let us know if it makes the card work. (Definitely no acceleration > without signed firmware for now though.)The driver loads and seems to work. The nouveau X driver doesn't load, though. I tried to use the nvidia firmware: $ ls -l /lib/firmware/nouveau/ total 380 -rw-r--r--. 1 root root 110188 Mar 17 15:29 nv84_vp -rw-r--r--. 1 root root 110188 Mar 17 15:29 nv84_xuc00f -rw-r--r--. 1 root root 6400 Mar 17 15:29 vuc-h264-0 -rw-r--r--. 1 root root 3072 Mar 17 15:29 vuc-mpeg12-0 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-mpeg4-0 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-mpeg4-1 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-vc1-0 -rw-r--r--. 1 root root 8448 Mar 17 15:29 vuc-vc1-1 -rw-r--r--. 1 root root 8448 Mar 17 15:29 vuc-vc1-2 -rw-r--r--. 1 root root 5632 Mar 17 15:29 vuc-vp3-h264-0 -rw-r--r--. 1 root root 2816 Mar 17 15:29 vuc-vp3-mpeg12-0 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-vp3-vc1-0 -rw-r--r--. 1 root root 8448 Mar 17 15:29 vuc-vp3-vc1-1 -rw-r--r--. 1 root root 8960 Mar 17 15:29 vuc-vp3-vc1-2 -rw-r--r--. 1 root root 6400 Mar 17 15:29 vuc-vp4-h264-0 -rw-r--r--. 1 root root 3072 Mar 17 15:29 vuc-vp4-mpeg12-0 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-vp4-mpeg4-0 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-vp4-mpeg4-1 -rw-r--r--. 1 root root 7424 Mar 17 15:29 vuc-vp4-vc1-0 -rw-r--r--. 1 root root 8448 Mar 17 15:29 vuc-vp4-vc1-1 -rw-r--r--. 1 root root 8448 Mar 17 15:29 vuc-vp4-vc1-2 with: options nouveau config=NvGrUseFW=1 in my modprobe configuration, and that made no obvious difference, even in the kernel logs. --Andy
On Tue, Mar 17, 2015 at 6:40 PM, Andy Lutomirski <luto at amacapital.net> wrote:> On Tue, Mar 17, 2015 at 2:57 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: >> On Tue, Mar 17, 2015 at 5:52 PM, Andy Lutomirski <luto at amacapital.net> wrote: >>> On Fri, Feb 13, 2015 at 9:52 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: >>>> On Fri, Feb 13, 2015 at 8:59 PM, Andy Lutomirski <luto at amacapital.net> wrote: >>>>> My new GTX 960 (GM206, I think) says: >>>>> >>>>> [ 10.329351] nouveau ![ DEVICE][0000:09:00.0] unknown Maxwell chipset >>>>> [ 10.329355] nouveau E[ DEVICE][0000:09:00.0] unknown chipset, 0x126010a1 >>>>> [ 10.329356] nouveau E[ DRM] failed to create 0x00000080, -22 >>>>> [ 10.330129] nouveau: probe of 0000:09:00.0 failed with error -22 >>>>> >>>>> Hacking up nouveau so that it treats it like a GM204 doesn't work. >>>> >>>> What happens if you just drop the 0x126 next to the 0x124 in >>>> engine/device/gm100.c ? >>>> >>>>> Are there any near-term plans to support this card? >>>> >>>> I don't know of anyone with the hw... maybe Ben got one? If you're >>>> interested in helping, the kernel logs from the above experiment + an >>>> mmiotrace of the blob drivers (see >>>> https://wiki.ubuntu.com/X/MMIOTracing) + vbios (see >>>> http://nouveau.freedesktop.org/wiki/DumpingVideoBios/). >>>> >>>> I assume you're on a recent kernel? You need 3.19 for the GM204 stuff >>>> to work in the first place. >>> >>> Neither 3.19 nor 4.0-rcsomething works. >>> >>> I put an mmio trace (X startup and glxgears) and a vbios dump here: >>> >>> http://web.mit.edu/luto/www/GM206/ >> >> Stefan sent proper patches to get nouveau going on his GM206, which >> will make it into the next 4.0-rc. Here is a tree that is destined >> towards drm-fixes: >> >> http://cgit.freedesktop.org/nouveau/linux-2.6/log/?h=linux-4.0 >> >> Let us know if it makes the card work. (Definitely no acceleration >> without signed firmware for now though.) > > The driver loads and seems to work.Excellent!> The nouveau X driver doesn't load, though.Yeah, xf86-video-nouveau has no support for the GM20x family? Note that even if it did load, you wouldn't get any acceleration -- may as well just use the 'xf86-video-modesetting' driver.> > I tried to use the nvidia firmware: >[...]> > with: > > options nouveau config=NvGrUseFW=1 > > in my modprobe configuration, and that made no obvious difference, > even in the kernel logs.Right, that's expected. GM20x requires signed firmware. We haven't even gotten as far as being able to figure out what all the *proprietary* firmware is, never mind even loading it. It doesn't show up in mmiotraces, probably read by the card directly out of system memory. It's a multi-stage process, complicating RE. The firmware that you've extracted is exclusively for video decoding acceleration. You could extract firmware from 325.15 which will include the pgraph fuc blobs too [which would get loaded by NvGrUseFW=1], but nothing that'll help you. Cheers, -ilia
On Tue, Mar 17, 2015 at 06:59:25PM -0400, Ilia Mirkin wrote:> On Tue, Mar 17, 2015 at 6:40 PM, Andy Lutomirski <luto at amacapital.net> wrote: > > On Tue, Mar 17, 2015 at 2:57 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: > >> On Tue, Mar 17, 2015 at 5:52 PM, Andy Lutomirski <luto at amacapital.net> wrote: > >>> On Fri, Feb 13, 2015 at 9:52 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: > >>>> On Fri, Feb 13, 2015 at 8:59 PM, Andy Lutomirski <luto at amacapital.net> wrote: > >>>>> My new GTX 960 (GM206, I think) says: > >>>>> > >>>>> [ 10.329351] nouveau ![ DEVICE][0000:09:00.0] unknown Maxwell chipset > >>>>> [ 10.329355] nouveau E[ DEVICE][0000:09:00.0] unknown chipset, 0x126010a1 > >>>>> [ 10.329356] nouveau E[ DRM] failed to create 0x00000080, -22 > >>>>> [ 10.330129] nouveau: probe of 0000:09:00.0 failed with error -22 > >>>>> > >>>>> Hacking up nouveau so that it treats it like a GM204 doesn't work. > >>>> > >>>> What happens if you just drop the 0x126 next to the 0x124 in > >>>> engine/device/gm100.c ? > >>>> > >>>>> Are there any near-term plans to support this card? > >>>> > >>>> I don't know of anyone with the hw... maybe Ben got one? If you're > >>>> interested in helping, the kernel logs from the above experiment + an > >>>> mmiotrace of the blob drivers (see > >>>> https://wiki.ubuntu.com/X/MMIOTracing) + vbios (see > >>>> http://nouveau.freedesktop.org/wiki/DumpingVideoBios/). > >>>> > >>>> I assume you're on a recent kernel? You need 3.19 for the GM204 stuff > >>>> to work in the first place. > >>> > >>> Neither 3.19 nor 4.0-rcsomething works. > >>> > >>> I put an mmio trace (X startup and glxgears) and a vbios dump here: > >>> > >>> http://web.mit.edu/luto/www/GM206/ > >> > >> Stefan sent proper patches to get nouveau going on his GM206, which > >> will make it into the next 4.0-rc. Here is a tree that is destined > >> towards drm-fixes: > >> > >> http://cgit.freedesktop.org/nouveau/linux-2.6/log/?h=linux-4.0 > >> > >> Let us know if it makes the card work. (Definitely no acceleration > >> without signed firmware for now though.) > > > > The driver loads and seems to work. > > Excellent! > > > The nouveau X driver doesn't load, though. > > Yeah, xf86-video-nouveau has no support for the GM20x family? Note > that even if it did load, you wouldn't get any acceleration -- may as > well just use the 'xf86-video-modesetting' driver. >Hi guys, i did sent a patch to add GM206 to the ddx also but looks like it got missed you can find it here. http://lists.freedesktop.org/archives/nouveau/2015-February/020144.html But as said no acceleration yet. I'll ping in that older mail-thread as probably mail was overlooked (probably i should have mentioned ddx in my subject) Stefan
On 18/03/2015 00:59, Ilia Mirkin wrote:> On Tue, Mar 17, 2015 at 6:40 PM, Andy Lutomirski <luto at amacapital.net> wrote: >> On Tue, Mar 17, 2015 at 2:57 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: >>> On Tue, Mar 17, 2015 at 5:52 PM, Andy Lutomirski <luto at amacapital.net> wrote: >>>> On Fri, Feb 13, 2015 at 9:52 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote: >>>>> On Fri, Feb 13, 2015 at 8:59 PM, Andy Lutomirski <luto at amacapital.net> wrote: >>>>>> My new GTX 960 (GM206, I think) says: >>>>>> >>>>>> [ 10.329351] nouveau ![ DEVICE][0000:09:00.0] unknown Maxwell chipset >>>>>> [ 10.329355] nouveau E[ DEVICE][0000:09:00.0] unknown chipset, 0x126010a1 >>>>>> [ 10.329356] nouveau E[ DRM] failed to create 0x00000080, -22 >>>>>> [ 10.330129] nouveau: probe of 0000:09:00.0 failed with error -22 >>>>>> >>>>>> Hacking up nouveau so that it treats it like a GM204 doesn't work. >>>>> What happens if you just drop the 0x126 next to the 0x124 in >>>>> engine/device/gm100.c ? >>>>> >>>>>> Are there any near-term plans to support this card? >>>>> I don't know of anyone with the hw... maybe Ben got one? If you're >>>>> interested in helping, the kernel logs from the above experiment + an >>>>> mmiotrace of the blob drivers (see >>>>> https://wiki.ubuntu.com/X/MMIOTracing) + vbios (see >>>>> http://nouveau.freedesktop.org/wiki/DumpingVideoBios/). >>>>> >>>>> I assume you're on a recent kernel? You need 3.19 for the GM204 stuff >>>>> to work in the first place. >>>> Neither 3.19 nor 4.0-rcsomething works. >>>> >>>> I put an mmio trace (X startup and glxgears) and a vbios dump here: >>>> >>>> http://web.mit.edu/luto/www/GM206/ >>> Stefan sent proper patches to get nouveau going on his GM206, which >>> will make it into the next 4.0-rc. Here is a tree that is destined >>> towards drm-fixes: >>> >>> http://cgit.freedesktop.org/nouveau/linux-2.6/log/?h=linux-4.0 >>> >>> Let us know if it makes the card work. (Definitely no acceleration >>> without signed firmware for now though.) >> The driver loads and seems to work. > Excellent! > >> The nouveau X driver doesn't load, though. > Yeah, xf86-video-nouveau has no support for the GM20x family? Note > that even if it did load, you wouldn't get any acceleration -- may as > well just use the 'xf86-video-modesetting' driver. > >> I tried to use the nvidia firmware: >> > [...] > >> with: >> >> options nouveau config=NvGrUseFW=1 >> >> in my modprobe configuration, and that made no obvious difference, >> even in the kernel logs. > Right, that's expected. GM20x requires signed firmware. We haven't > even gotten as far as being able to figure out what all the > *proprietary* firmware is, never mind even loading it. It doesn't show > up in mmiotraces, probably read by the card directly out of system > memory. It's a multi-stage process, complicating RE. The firmware that > you've extracted is exclusively for video decoding acceleration. You > could extract firmware from 325.15 which will include the pgraph fuc > blobs too [which would get loaded by NvGrUseFW=1], but nothing that'll > help you.This is something that the recent work done by Samuel could help. He got the nvidia driver to work in kvm and then managed to trace the MMIO operations. If the card really reads the fw from system memory, it should show up in his trace. More info: https://hakzsam.wordpress.com/2015/02/21/471/