Bug 71472 - [NV108] GT-740M not detected (mmiotrace)
Summary: [NV108] GT-740M not detected (mmiotrace)
Status: RESOLVED NOTABUG
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-11 09:00 UTC by Andrey Melnikov
Modified: 2013-11-26 02:15 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Andrey Melnikov 2013-11-11 09:00:27 UTC
GK208M not detected by kernel driver. 

[  206.920626] ACPI Warning: \_SB_.PCI0.GFX0._DSM: Argument #4 type mismatch - Found [Integer], ACPI requires [Package] (20130725/nsarguments-95)
[  206.920693] ACPI Warning: \_SB_.PCI0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130725/nsarguments-95)
[  206.921040] nouveau T[  DEVICE][0000:01:00.0] inc() == 2
[  206.921055] [drm] hdmi device  not found 1 0 1
[  206.921072] nouveau T[     DRM] inc() == 3
[  206.921077] nouveau T[  DEVICE][0000:01:00.0] use(+1) == 1
[  206.921082] nouveau T[  DEVICE][0000:01:00.0] initialising...
[  206.921086] nouveau D[  DEVICE][0000:01:00.0] initialised
[  206.921090] nouveau T[     DRM] inc() == 4
[  206.921095] nouveau T[     DRM] inc() == 5
[  206.921099] nouveau T[  DEVICE][0000:01:00.0] inc() == 3
[  206.921373] nouveau E[  DEVICE][0000:01:00.0] unknown chipset, 0x108120a1
[  206.921378] nouveau E[     DRM] failed to create 0x80000080, -22
[  206.921381] nouveau T[  DEVICE][0000:01:00.0] dec() == 2
[  206.921384] nouveau T[     DRM] dec() == 4
[  206.921386] nouveau T[     DRM] dec() == 3
[  206.921389] nouveau T[  DEVICE][0000:01:00.0] use(-1) == 0
[  206.921392] nouveau T[  DEVICE][0000:01:00.0] stopping...
[  206.921394] nouveau D[  DEVICE][0000:01:00.0] stopped
[  206.921397] nouveau T[     DRM] dec() == 2
[  206.921400] nouveau D[     DRM] fini running
[  206.921403] nouveau T[     DRM] 0xffffffff:0xffffffff fini children
[  206.921406] nouveau T[     DRM] 0xffffffff:0xffffffff fini running
[  206.921409] nouveau T[     DRM] use(-1) == 1
[  206.921412] nouveau T[     DRM] 0xffffffff:0xffffffff fini completed
[  206.921414] nouveau D[     DRM] fini completed with 0
[  206.921417] nouveau T[     DRM] dec() == 0
[  206.921419] nouveau D[     DRM] destroying
[  206.921422] nouveau T[  DEVICE][0000:01:00.0] dec() == 1
[  206.921425] nouveau T[     DRM] 0xffffffff:0xffffffff destroy running
[  206.921427] nouveau T[     DRM] 0xffffffff:0xffffffff destroy completed
[  206.921430] nouveau T[     DRM] dec() == -1
[  206.921767] nouveau T[  DEVICE][0000:01:00.0] dec() == 0
[  206.921773] nouveau D[  DEVICE][0000:01:00.0] destroying
[  206.921783] nouveau: probe of 0000:01:00.0 failed with error -22

-- lspci --
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller])
        Subsystem: Toshiba America Info Systems Device fa43
        Flags: bus master, fast devsel, latency 0, IRQ 44
        Memory at d3000000 (64-bit, non-prefetchable) [size=4M]
        Memory at c0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 4000 [size=64]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: i915

01:00.0 3D controller: NVIDIA Corporation GK208M [GeForce GT 740M] (rev a1)
        Subsystem: Toshiba America Info Systems Device fa43
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at d2000000 (32-bit, non-prefetchable) [size=16M]
        Memory at a0000000 (64-bit, prefetchable) [size=256M]
        Memory at b0000000 (64-bit, prefetchable) [size=32M]
        I/O ports at 3000 [size=128]
        [virtual] Expansion ROM at b2000000 [disabled] [size=512K]
        Capabilities: <access denied>
Comment 1 Ilia Mirkin 2013-11-11 09:08:51 UTC
That's right. However nouveau/master (http://cgit.freedesktop.org/nouveau/linux-2.6/) has some very preliminary support, you'll need to extract graph firmware from the blob (see http://nouveau.freedesktop.org/wiki/NVC0_Firmware/) as well as xf86-video-nouveau 1.0.10.
Comment 2 Andrey Melnikov 2013-11-11 20:54:26 UTC
Ok, kernel driver not support GK208 at all.
mmio traces:

nvidia 331.20 + startx
http://woofie.cef.spbstu.ru/mmiotrace-startx.log

nvidia 331.20 + start + nvidia-settings
http://woofie.cef.spbstu.ru/mmiotrace-nvs.log

Xorg driver already v1.0.10 - still no go:

[     7.237] (II) LoadModule: "nouveau"
[     7.237] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[     7.239] (II) Module nouveau: vendor="X.Org Foundation"
[     7.239]    compiled for 1.14.3, module version = 1.0.10
[     7.239]    Module class: X.Org Video Driver
[     7.239]    ABI class: X.Org Video Driver, version 14.1
[     7.239] (II) LoadModule: "glx"
[     7.239] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[     7.242] (II) Module glx: vendor="X.Org Foundation"
[     7.242]    compiled for 1.14.3, module version = 1.0.0
[     7.242]    ABI class: X.Org Server Extension, version 7.0
[     7.242] (==) AIGLX enabled
[     7.242] Loading extension GLX
[     7.242] (==) Matched intel as autoconfigured driver 0
[     7.242] (==) Matched intel as autoconfigured driver 1
[     7.242] (==) Matched vesa as autoconfigured driver 2
[     7.242] (==) Matched modesetting as autoconfigured driver 3
[     7.242] (==) Matched fbdev as autoconfigured driver 4
[     7.242] (==) Assigned the driver to the xf86ConfigLayout
[     7.242] (II) LoadModule: "intel"
[     7.242] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[     7.247] (II) Module intel: vendor="X.Org Foundation"
[     7.247]    compiled for 1.14.3, module version = 2.99.905
[     7.247]    Module class: X.Org Video Driver
[     7.247]    ABI class: X.Org Video Driver, version 14.1
...
[     7.249] (II) NOUVEAU driver Date:   Thu Nov 7 14:56:48 2013 +1000
[     7.249] (II) NOUVEAU driver for NVIDIA chipset families :
[     7.249]    RIVA TNT        (NV04)
[     7.249]    RIVA TNT2       (NV05)
[     7.249]    GeForce 256     (NV10)
[     7.249]    GeForce 2       (NV11, NV15)
[     7.249]    GeForce 4MX     (NV17, NV18)
[     7.249]    GeForce 3       (NV20)
[     7.249]    GeForce 4Ti     (NV25, NV28)
[     7.249]    GeForce FX      (NV3x)
[     7.249]    GeForce 6       (NV4x)
[     7.249]    GeForce 7       (G7x)
[     7.249]    GeForce 8       (G8x)
[     7.249]    GeForce GTX 200 (NVA0)
[     7.249]    GeForce GTX 400 (NVC0)
[     7.249] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
        i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
        915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
        Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
        GM45, 4 Series, G45/G43, Q45/Q43, G41, B43, HD Graphics,
        HD Graphics 2000, HD Graphics 3000, HD Graphics 2500,
        HD Graphics 4000, HD Graphics P4000, HD Graphics 4600,
        HD Graphics 5000, HD Graphics P4600/P4700, Iris(TM) Graphics 5100,
        HD Graphics 4400, HD Graphics 4200, Iris(TM) Pro Graphics 5200
[     7.250] (II) VESA: driver for VESA chipsets: vesa
[     7.250] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[     7.250] (II) FBDEV: driver for framebuffer: fbdev
[     7.250] (++) using VT number 7

[     7.251] (II) intel(0): SNA compiled: xserver-xorg-video-intel 2:2.99.905+git20131023.b70390b4-0ubuntu0sarvatt (Robert Hooker <sarvatt@ubuntu.com>)
[     7.252] (WW) Falling back to old probe method for vesa
[     7.252] (WW) Falling back to old probe method for modesetting
[     7.252] (WW) Falling back to old probe method for fbdev
[     7.252] (II) Loading sub module "fbdevhw"
[     7.252] (II) LoadModule: "fbdevhw"
[     7.252] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[     7.253] (II) Module fbdevhw: vendor="X.Org Foundation"
[     7.253]    compiled for 1.14.3, module version = 0.0.2
[     7.253]    ABI class: X.Org Video Driver, version 14.1
[     7.254] (II) intel(0): Creating default Display subsection in Screen section
        "Default Screen Section" for depth/fbbpp 24/32
[     7.254] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[     7.254] (==) intel(0): RGB weight 888
[     7.254] (==) intel(0): Default visual is TrueColor
[     7.254] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics 4000
[     7.254] (--) intel(0): CPU: x86-64, sse2, sse3, ssse3, sse4.1, sse4.2, avx
[     7.255] (**) intel(0): Framebuffer tiled
[     7.255] (**) intel(0): Pixmaps tiled
[     7.255] (**) intel(0): "Tear free" disabled
[     7.255] (**) intel(0): Forcing per-crtc-pixmaps? no
[     7.255] (II) intel(0): Output LVDS1 has no monitor section
[     7.255] (--) intel(0): found backlight control interface acpi_video1 (type 'firmware')
[     7.255] (II) intel(0): Output VGA1 has no monitor section
[     7.255] (II) intel(0): Output HDMI1 has no monitor section
[     7.255] (II) intel(0): Output DP1 has no monitor section
[     7.255] (II) intel(0): Output VIRTUAL1 has no monitor section
[     7.255] (--) intel(0): Output LVDS1 using initial mode 1366x768 on pipe 0
[     7.255] (==) intel(0): DPI set to (96, 96)
[     7.255] (II) Loading sub module "dri2"
[     7.255] (II) LoadModule: "dri2"
[     7.255] (II) Module "dri2" already built-in
[     7.255] (II) UnloadModule: "nouveau"
[     7.255] (II) Unloading nouveau
....

Any ideas?
Comment 3 Ilia Mirkin 2013-11-11 21:12:37 UTC
You used the nouveau/master kernel, right? What's in dmesg? Does it say that it can't find the VBIOS perchance? If so, you may need to try the drm-next tree -- it has a fix that's not in nouveau/master (but should have almost all the commits in nouveau/master by now).

Also note that the card is marked as a 3d controller. That means it probably has no outputs (but not necessarily) and that it can really only be useful for 3d accel. That part is not in nouveau/master, if you want you can look at http://cgit.freedesktop.org/~darktama/nouveau/ for some _very_ prelim support -- this allows you to build an "out of tree" kernel module. You'll still need to extract graph firmware from the blob mmiotraces, but I wouldn't really expect 3d accel to actually work properly quite yet.

I'm not sure what you're trying to achieve by filing this bug. The GK208 is essentially unsupported hardware ATM -- there's some very prelim support atm, and it's being worked on. If you'd like to contribute, it's probably best to join #nouveau on irc.freenode.net.
Comment 4 Andrey Melnikov 2013-11-13 07:42:14 UTC
(In reply to comment #3)
> You used the nouveau/master kernel, right? What's in dmesg? Does it say that
No, plain 3.12 kernel. Running 3.12 + drm-next correctly find & initalize card:

[    5.446823] [drm] Initialized drm 1.1.0 20060810
[    5.553540] [drm:__gen6_gt_force_wake_mt_get] *ERROR* Timed out waiting for forcewake old ack to clear.
[    5.553838] [drm] Memory usable by graphics device = 2048M
[    5.597641] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    5.597642] [drm] Driver supports precise vblank timestamp query.
[    5.643467] fbcon: inteldrmfb (fb0) is primary device
[    6.477539] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[    6.479547] ACPI: Video Device [PEGP] (multi-head: yes  rom: yes  post: no)
[    6.498276] ACPI: Video Device [GFX0] (multi-head: yes  rom: no  post: no)
[    6.498622] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[    6.500980] [drm] hdmi device  not found 1 0 1
[    6.501130] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x108120a1
[    6.501133] nouveau  [  DEVICE][0000:01:00.0] Chipset: GK208 (NV108)
[    6.501135] nouveau  [  DEVICE][0000:01:00.0] Family : NVE0
[    6.503834] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
[    6.504924] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    6.504926] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
[    6.505011] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    6.505013] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
[    6.822958] [drm] Enabling RC6 states: RC6 on, RC6p on, RC6pp off
[    7.923775] nouveau  [   VBIOS][0000:01:00.0] ... appears to be valid
[    7.923779] nouveau  [   VBIOS][0000:01:00.0] using image from ACPI
[    7.923878] nouveau  [   VBIOS][0000:01:00.0] BIT signature found
[    7.923880] nouveau  [   VBIOS][0000:01:00.0] version 80.28.22.00.2d
[    7.924312] nouveau  [ DEVINIT][0000:01:00.0] adaptor not initialised
[    7.924314] nouveau  [   VBIOS][0000:01:00.0] running init tables
[    7.987014] nouveau 0000:01:00.0: irq 47 for MSI/MSI-X
[    7.987022] nouveau  [     PMC][0000:01:00.0] MSI interrupts enabled
[    7.987053] nouveau  [     PFB][0000:01:00.0] RAM type: DDR3
[    7.987055] nouveau  [     PFB][0000:01:00.0] RAM size: 2048 MiB
[    7.987056] nouveau  [     PFB][0000:01:00.0]    ZCOMP: 0 tags
[    7.987124] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[    7.991145] nouveau  [    VOLT][0000:01:00.0] GPU voltage: 600000uv
[    8.014359] nouveau  [  PTHERM][0000:01:00.0] FAN control: none / external
[    8.014365] nouveau  [  PTHERM][0000:01:00.0] fan management: automatic
[    8.014368] nouveau  [  PTHERM][0000:01:00.0] internal sensor: yes
[    8.014389] nouveau  [     CLK][0000:01:00.0] 07: core 405 MHz memory 405 MHz 
[    8.014447] nouveau  [     CLK][0000:01:00.0] 0a: core 405-1058 MHz memory 810 MHz 
[    8.014522] nouveau  [     CLK][0000:01:00.0] 0f: core 405-1058 MHz memory 900 MHz 
[    8.014605] nouveau  [     CLK][0000:01:00.0] --: core 405 MHz memory 405 MHz 
[    8.014614] vga_switcheroo: enabled
[    8.014742] [TTM] Zone  kernel: Available graphics memory: 2992280 kiB
[    8.014743] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
[    8.014744] [TTM] Initializing pool allocator
[    8.014747] [TTM] Initializing DMA pool allocator
[    8.014753] nouveau  [     DRM] VRAM: 2048 MiB
[    8.014754] nouveau  [     DRM] GART: 1048576 MiB
[    8.014757] nouveau E[     DRM] Pointer to TMDS table invalid
[    8.014776] nouveau  [     DRM] DCB version 4.0
[    8.014778] nouveau E[     DRM] Pointer to flat panel table invalid
[    8.014805] nouveau  [     DRM] ACPI backlight interface available, not registering our own
[    8.014845] [drm] Initialized nouveau 1.1.1 20120801 for 0000:01:00.0 on minor 1
[  109.660228] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[ 1726.135079] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[ 1734.934377] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[ 1790.774022] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[ 1798.993019] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[ 1936.349824] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)
[13311.264009] nouveau E[   PIBUS][0000:01:00.0] GPC0: 0x4188ac 0x00000001 (0x1e70822e)

> You'll still need to extract graph firmware from the blob mmiotraces
This is other problem - python script from this page (http://nouveau.freedesktop.org/wiki/NVC0_Firmware/) produce empty files,
demmio tool crash with messages: 
I don't know which chipset variant to use!
[0] 4073.986684 MMIO32 R 0x000000 0x108120a1 PMC.ID => { REV_MINOR = 0x1 | REV_MAJOR = 0xa | IMPLEMENTATION = 0 | ALWAYS0_2 = 0x2 | CHIPSET = NV01 | ALWAYS0_1 = 0 | FOUNDRY = HELIOS | 0x800000 }
Segmentation fault (core dumped)

> I'm not sure what you're trying to achieve by filing this bug. The GK208 is
Try to find any working combination of drivers. nvidia blob on this hardware periodically stops screen output, notebook not survived suspend-resume. 

If you need other traces, testing patches - let me know.
Comment 5 Ilia Mirkin 2013-11-26 02:15:24 UTC
If you grab envytools from git, demmio should be fixed.

However I'll reiterate -- your gpu has no outputs, so it's only good for 3d acceleration. With the nouveau driver compiled from http://cgit.freedesktop.org/~darktama/nouveau/log/?h=devel-pm (and the graph firmware extracted as per the earlier instructions) you might have a functioning graph unit [I'm not even sure of that], but the current mesa has no knowledge of the GK208 (NV108), and is quite unlikely to work. I think that GK208 is similar to GK110 in terms of ISA, which has dodgy-at-best support presently in mesa, so I wouldn't expect any quick miracles.

If you're interested in working on this yourself, join us in #nouveau, otherwise wait a few months before trying again. I'm closing this, since there's no point in having it open -- the GK208 just isn't supported atm, esp wrt 3d accel.


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.