Bug 86935 - [NV106] unknown kepler chipset 0x106
Summary: [NV106] unknown kepler chipset 0x106
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-12-02 15:19 UTC by Sven
Modified: 2015-03-20 04:57 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
the patch proposed in the previous comment (576 bytes, patch)
2014-12-02 15:43 UTC, Sven
no flags Details | Splinter Review
proper patch (2.76 KB, patch)
2014-12-03 12:17 UTC, Sven
no flags Details | Splinter Review

Description Sven 2014-12-02 15:19:58 UTC
With Linux 3.17.4, I get the following errors in dmesg:

nouveau ![  DEVICE][0000:01:00.0] unknown Kepler chipset
nouveau E[  DEVICE][0000:01:00.0] unknown chipset, 0xb06070b1
nouveau E[     DRM] failed to create 0x00000080, -22
nouveau: probe of 0000:01:00.0 failed with error -22

Obviously, I don't have a framebuffer console during boot and of course nouveau-based X also doesn't work. I'm currently using uvesafb as a workaround.

lspci -v output:

01:00.0 VGA compatible controller: NVIDIA Corporation GK208 [GeForce GT 730] (rev a1) (prog-if 00 [VGA controller])
	Subsystem: CardExpert Technology Device 1287
	Flags: bus master, fast devsel, latency 0, IRQ 11
	Memory at f6000000 (32-bit, non-prefetchable) [size=16M]
	Memory at e8000000 (64-bit, prefetchable) [size=128M]
	Memory at f0000000 (64-bit, prefetchable) [size=32M]
	I/O ports at e000 [size=128]
	Expansion ROM at f7000000 [disabled] [size=512K]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [78] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Virtual Channel
	Capabilities: [128] Power Budgeting <?>
	Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
	Kernel modules: nouveau

I have no additional details on the card. It came with an HP office PC.
Comment 1 Ilia Mirkin 2014-12-02 15:27:59 UTC
Yeah, these are the funky GK208B's (often marketed as GT 720?). You can try adding 0x106 right above case 0x108 in drivers/gpu/drm/nouveau/core/engine/device/nve0.c -- they should be identical or at least similar.

If that doesn't work, please append a dmesg here (after the patch) and send a mmiotrace of the blob + vbios to mmio.dumps@gmail.com -- good guide available at https://wiki.ubuntu.com/X/MMIOTracing
Comment 2 Sven 2014-12-02 15:43:41 UTC
Created attachment 110361 [details] [review]
the patch proposed in the previous comment

Adding 0x106 seems to have worked. I can now boot with nouveau framebuffer and nouveau Xorg driver also works.
Comment 3 Sven 2014-12-02 15:58:55 UTC
Will this patch be included in 3.18 (a bit late I guess) or maybe 3.19?
Comment 4 Ilia Mirkin 2014-12-02 16:15:07 UTC
(In reply to Sven from comment #2)
> Created attachment 110361 [details] [review] [review]
> the patch proposed in the previous comment
> 
> Adding 0x106 seems to have worked. I can now boot with nouveau framebuffer
> and nouveau Xorg driver also works.

Awesome. Please confirm that you're using the nouveau 3d driver (you'll need at least mesa 10.2). Try running some semi-stressing 3d thing too? Not sure if you use gnome-shell or something. [glxgears isn't really enough, although it's a start.]

Also, I think it'd still be nice if you could provide a mmiotrace of the blob, the chip could have different golden init values, and other small differences.

As for the patch, change it so that the 0x106 case gets a full copy of the 0x108 stuff, and call it GK208B in the name string, and send it as a proper patch (with git format-patch) to nouveau@lists.freedesktop.org .
Comment 5 Sven 2014-12-02 16:22:17 UTC
I will try to do the mmiotrace of the blob. Problem is, that the binary nvidia drivers gives me a kernel OOPS. Yay!

Also, while I can make the changes to the kernel source, I'm not really sure what you're asking from me regarding the git format-patch. I'm not really an experienced git user yet.
Comment 6 Ilia Mirkin 2014-12-02 16:25:53 UTC
(In reply to Sven from comment #5)
> I will try to do the mmiotrace of the blob. Problem is, that the binary
> nvidia drivers gives me a kernel OOPS. Yay!

D'oh! Maybe try a newer driver? If it oopses "later" rather than on load/X start, then that should be enough for a mmiotrace.

> 
> Also, while I can make the changes to the kernel source, I'm not really sure
> what you're asking from me regarding the git format-patch. I'm not really an
> experienced git user yet.

Step 1: get a git checkout
Step 2: Make changes
Step 3: git commit -a [pops up editor window, enter in a commit log, subject on first line, blank line, then longer description as necessary, and your sign off]
Step 4: git format-patch HEAD^..
Step 5: review the foo.patch file that's generated
Step 6: git send-email --to 'nouveau@lists.freedesktop.org' foo.patch [or send it as an email in some other way, just make sure that way preserves little details like tabs]
Comment 7 Sven 2014-12-03 11:12:20 UTC
(In reply to Ilia Mirkin from comment #6)
> (In reply to Sven from comment #5)
> > I will try to do the mmiotrace of the blob. Problem is, that the binary
> > nvidia drivers gives me a kernel OOPS. Yay!
> 
> D'oh! Maybe try a newer driver? If it oopses "later" rather than on load/X
> start, then that should be enough for a mmiotrace.

I'm on gentoo. I was using the newest nvidia driver. But I suspect the kernel was too new. Anyhow, on the 3rd try it didn't oops. Trace has been emailed.
Comment 8 Sven 2014-12-03 11:27:11 UTC
(In reply to Ilia Mirkin from comment #4)
> (In reply to Sven from comment #2)
> > Adding 0x106 seems to have worked. I can now boot with nouveau framebuffer
> > and nouveau Xorg driver also works.
> 
> Awesome. Please confirm that you're using the nouveau 3d driver (you'll need
> at least mesa 10.2). Try running some semi-stressing 3d thing too? Not sure
> if you use gnome-shell or something. [glxgears isn't really enough, although
> it's a start.]

I'm using mesa 10.3.4 and glxinfo confirms that I'm using "Gallium 0.4 on NV106" and not software rendering or nvidia binary driver. I can confirm that glxgears, quake3-demo, and 0ad alpha 17 run fine. Everything looks like it should.

Sorry, no gnome-shell here. I'm using the MATE Desktop Environment (good old fast 2D stuff).
Comment 9 Sven 2014-12-03 12:17:00 UTC
Created attachment 110407 [details] [review]
proper patch
Comment 10 Sven 2014-12-03 12:40:11 UTC
There is an error in dmesg with the patch applied:
nouveau E[    PBUS][0000:01:00.0] MMIO read of 0x00000000 FAULT at 0x500c30 [ IBUS ]

It doesn't seem to matter though. Is it something serious?
Comment 11 Sven 2014-12-03 13:35:24 UTC
nouveau 0000:01:00.0: Direct firmware load for nouveau/nv106_fuc084 failed with error -2
nouveau 0000:01:00.0: Direct firmware load for nouveau/nv106_fuc084d failed with error -2
nouveau E[    PBSP][0000:01:00.0] unable to load firmware data
nouveau E[    PBSP][0000:01:00.0] init failed, -2

Does extract_firmware.py need updating?
(I have Gentoo's nvidia-firmware-340.32 installed)
Comment 12 Ilia Mirkin 2014-12-18 23:45:40 UTC
(In reply to Sven from comment #11)
> nouveau 0000:01:00.0: Direct firmware load for nouveau/nv106_fuc084 failed
> with error -2
> nouveau 0000:01:00.0: Direct firmware load for nouveau/nv106_fuc084d failed
> with error -2
> nouveau E[    PBSP][0000:01:00.0] unable to load firmware data
> nouveau E[    PBSP][0000:01:00.0] init failed, -2
> 
> Does extract_firmware.py need updating?
> (I have Gentoo's nvidia-firmware-340.32 installed)

Just add symlinks, same as for nv108, to the bsp/vp/ppp files. I'll update extract_firmware.py shortly.
Comment 13 Bjørn Lie 2014-12-27 18:04:20 UTC
Any chance we can get this into 3.20?
Comment 14 Ilia Mirkin 2014-12-27 18:10:22 UTC
(In reply to Bjørn Lie from comment #13)
> Any chance we can get this into 3.20?

The current plan is for it to be added into 3.19 I believe.

http://cgit.freedesktop.org/~darktama/nouveau/log/?h=linux-3.19
Comment 15 Bjørn Lie 2015-02-14 20:18:12 UTC
Running kernel 3.19.0 now, and nouveau driver now recognizes my card :-)

I guess this bug can be closed, but leaving it up to the developer.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.