You are not logged in.

#1 2014-12-28 13:09:22

Noe
Member
Registered: 2014-12-28
Posts: 4

nouveau driver not starting - Direct firmware load failed error -2

Hi all,

I am trying to install Arch Linux for the first time, on a laptop.
I have followed Arch Linux Forums step by step, and now I am trying to set up a graphical environment with Gnome 3.
I then went through both the xorg page and Nouveau page, and installed the nouveau driver.

But on booting, the driver seems to fail to load, and I get the following from the dmesg log (and also mixed up with my login prompt in the console at startup):

 7.329163] nouveau 0000:01:00.0: Direct firmware load for nouveau/nv117_fuc409c failed with error -2
[    7.329168] nouveau 0000:01:00.0: Direct firmware load for nouveau/fuc409c failed with error -2
[    7.329169] nouveau E[  PGRAPH][0000:01:00.0] failed to load fuc409c
[    7.329188] nouveau E[  DEVICE][0000:01:00.0] failed to create 0x18000717, -22
[    7.329208] nouveau E[     DRM] failed to create 0x00000080, -22
[    7.329835] nouveau: probe of 0000:01:00.0 failed with error -22

What am I missing to get it working ?

Here are the steps and some relevant outouts :

  • lspci | grep -E VGA -e 3D
    00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
    01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 860M] (rev a2)
    dmesg | grep Chipset
    [    0.526608] nouveau  [  DEVICE][0000:01:00.0] Chipset: GM107 (NV117)

    This model is in the supported list, at the bottom of the page.

  • lsmod | grep nouveau
    nouveau              1270078  0 
    button                 12953  2 i915,nouveau
    video                  18043  3 i915,nouveau,asus_wmi
    mxm_wmi                12515  1 nouveau
    wmi                    17339  3 mxm_wmi,nouveau,asus_wmi
    i2c_algo_bit           12744  2 i915,nouveau
    hwmon                  12930  3 coretemp,nouveau,asus_wmi
    drm_kms_helper         80934  2 i915,nouveau
    ttm                    73743  1 nouveau
    drm                   259106  5 ttm,i915,drm_kms_helper,nouveau
    i2c_core               50152  8 drm,i915,i2c_i801,drm_kms_helper,i2c_algo_bit,v4l2_common,nouveau,videodev
  • pacman -Q linux
    linux 3.17.6-1
  • I added nouveau in the MODULES in mkinitcpio.conf, re-ran mkinitcpio -p linux and restarted.

  • ls /etc/modprobe.d/

    is empty. Is it normal ?

  • Here is a relevant extract from dmesg, I can provide the full file if necessary

    dmesg
    [    0.514422] VGA switcheroo: detected Optimus DSM method \_SB_.PCI0.PEG0.PEGP handle
    [    0.514433] checking generic (d0000000 7f0000) vs hw (e0000000 10000000)
    [    0.514433] checking generic (d0000000 7f0000) vs hw (f0000000 2000000)
    [    0.514623] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x117120a2
    [    0.514624] nouveau  [  DEVICE][0000:01:00.0] Chipset: GM107 (NV117)
    [    0.514625] nouveau  [  DEVICE][0000:01:00.0] Family : NV110
    [    0.514640] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
    [    0.514653] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
    [    0.514654] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
    [    0.514770] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
    [    0.514770] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
    [    1.479572] tsc: Refined TSC clocksource calibration: 2494.225 MHz
    [    2.480861] Switched to clocksource tsc
    [    7.209414] nouveau  [   VBIOS][0000:01:00.0] ... appears to be valid
    [    7.209418] nouveau  [   VBIOS][0000:01:00.0] using image from ACPI
    [    7.209539] nouveau  [   VBIOS][0000:01:00.0] BIT signature found
    [    7.209541] nouveau  [   VBIOS][0000:01:00.0] version 82.07.49.00.0a
    [    7.209913] nouveau  [ DEVINIT][0000:01:00.0] adaptor not initialised
    [    7.209923] nouveau  [   VBIOS][0000:01:00.0] running init tables
    [    7.316713] nouveau 0000:01:00.0: irq 30 for MSI/MSI-X
    [    7.316719] nouveau  [     PMC][0000:01:00.0] MSI interrupts enabled
    [    7.316753] nouveau  [     PFB][0000:01:00.0] RAM type: GDDR5
    [    7.316754] nouveau  [     PFB][0000:01:00.0] RAM size: 4096 MiB
    [    7.316755] nouveau  [     PFB][0000:01:00.0]    ZCOMP: 0 tags
    [    7.316983] nouveau E[   PIBUS][0000:01:00.0] HUB0: 0x6013d4 0xffff57ff (0x1c408200)
    [    7.318148] nouveau  [     CLK][0000:01:00.0] 07: core 405 MHz memory 810 MHz 
    [    7.318226] nouveau  [     CLK][0000:01:00.0] 0a: core 270-1097 MHz memory 1600 MHz 
    [    7.318328] nouveau  [     CLK][0000:01:00.0] 0f: core 270-1097 MHz memory 5010 MHz 
    [    7.318403] nouveau  [     CLK][0000:01:00.0] --: core 405 MHz memory 810 MHz 
    [    7.329153] nouveau  [  PGRAPH][0000:01:00.0] using external firmware
    [    7.329163] nouveau 0000:01:00.0: Direct firmware load for nouveau/nv117_fuc409c failed with error -2
    [    7.329168] nouveau 0000:01:00.0: Direct firmware load for nouveau/fuc409c failed with error -2
    [    7.329169] nouveau E[  PGRAPH][0000:01:00.0] failed to load fuc409c
    [    7.329188] nouveau E[  DEVICE][0000:01:00.0] failed to create 0x18000717, -22
    [    7.329208] nouveau E[     DRM] failed to create 0x00000080, -22
    [    7.329835] nouveau: probe of 0000:01:00.0 failed with error -22
    [    7.398013] i8042: PNP: PS/2 Controller [PNP030b:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
    [    7.400962] i8042: Detected active multiplexing controller, rev 1.1

When I try to test x,

Xorg --configure

, it is also failing with the following (I can provide the full file Xorg.0.log if necessary)

[   529.451] (II) LoadModule: "nouveau"
[   529.451] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[   529.451] (II) Module nouveau: vendor="X.Org Foundation"
[   529.451] 	compiled for 1.16.1, module version = 1.0.11
[   529.451] 	Module class: X.Org Video Driver
[   529.451] 	ABI class: X.Org Video Driver, version 18.0
[   529.451] (II) NOUVEAU driver 
[   529.451] (II) NOUVEAU driver for NVIDIA chipset families :
[   529.451] 	RIVA TNT        (NV04)
[   529.451] 	RIVA TNT2       (NV05)
[   529.451] 	GeForce 256     (NV10)
[   529.451] 	GeForce 2       (NV11, NV15)
[   529.451] 	GeForce 4MX     (NV17, NV18)
[   529.451] 	GeForce 3       (NV20)
[   529.451] 	GeForce 4Ti     (NV25, NV28)
[   529.451] 	GeForce FX      (NV3x)
[   529.451] 	GeForce 6       (NV4x)
[   529.451] 	GeForce 7       (G7x)
[   529.451] 	GeForce 8       (G8x)
[   529.451] 	GeForce GTX 200 (NVA0)
[   529.451] 	GeForce GTX 400 (NVC0)
[   529.503] (++) Using config file: "/root/xorg.conf.new"
[   529.503] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   529.503] (==) ServerLayout "X.org Configured"
[   529.503] (**) |-->Screen "Screen0" (0)
[   529.503] (**) |   |-->Monitor "Monitor0"
[   529.503] (**) |   |-->Device "Card0"
[   529.503] (**) |-->Input Device "Mouse0"
[   529.503] (**) |-->Input Device "Keyboard0"
[   529.503] (==) Automatically adding devices
[   529.503] (==) Automatically enabling devices
[   529.503] (==) Automatically adding GPU devices
[   529.503] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[   529.503] 	Entry deleted from font path.
[   529.503] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[   529.503] 	Entry deleted from font path.
[   529.503] (**) FontPath set to:
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/Type1/,
	/usr/share/fonts/100dpi/,
	/usr/share/fonts/75dpi/,
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/Type1/,
	/usr/share/fonts/100dpi/,
	/usr/share/fonts/75dpi/
[   529.503] (**) ModulePath set to "/usr/lib/xorg/modules"
[   529.503] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[   529.503] (WW) Disabling Mouse0
[   529.503] (WW) Disabling Keyboard0
[   529.504] (EE) [drm] KMS not enabled
[   529.504] Number of created screens does not match number of detected devices.
  Configuration failed.

I don't understand why mks would not be enabled, so I think this is due to the previous issue.

Just in case,

cat /sys/module/nouveau/parameters/modeset

returns -1, and

cat /proc/cmdline

returns BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=7aaea74e-cc6c-4f35-bf2d-e132853230ad rw quiet

Thanks a lot in advance for your help !

Offline

#2 2014-12-28 13:50:25

yurikoles
Member
Registered: 2014-12-28
Posts: 5

Re: nouveau driver not starting - Direct firmware load failed error -2

Try adding the following to the kernel fags

nouveau.NvGrUseFW=1

Offline

#3 2014-12-28 15:04:00

Noe
Member
Registered: 2014-12-28
Posts: 4

Re: nouveau driver not starting - Direct firmware load failed error -2

Hi Yurikoles,

thanks for your help.

I set the kernel flag to

nouveau.config=NvGrUseFW=1

otherwise it would not pick it up, and it did not change anything :

[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=7aaea74e-cc6c-4f35-bf2d-e132853230ad rw quiet nouveau.config=NvGrUseFW=1
...
[    0.508452] VGA switcheroo: detected Optimus DSM method \_SB_.PCI0.PEG0.PEGP handle
[    0.508462] checking generic (d0000000 7f0000) vs hw (e0000000 10000000)
[    0.508462] checking generic (d0000000 7f0000) vs hw (f0000000 2000000)
[    0.508653] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x117120a2
[    0.508655] nouveau  [  DEVICE][0000:01:00.0] Chipset: GM107 (NV117)
[    0.508655] nouveau  [  DEVICE][0000:01:00.0] Family : NV110
[    0.508670] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
[    0.508684] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    0.508685] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
[    0.508809] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    0.508810] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
[    1.473415] tsc: Refined TSC clocksource calibration: 2494.224 MHz
[    2.474705] Switched to clocksource tsc
[    7.076434] nouveau  [   VBIOS][0000:01:00.0] ... appears to be valid
[    7.076438] nouveau  [   VBIOS][0000:01:00.0] using image from ACPI
[    7.076559] nouveau  [   VBIOS][0000:01:00.0] BIT signature found
[    7.076562] nouveau  [   VBIOS][0000:01:00.0] version 82.07.49.00.0a
[    7.077146] nouveau  [ DEVINIT][0000:01:00.0] adaptor not initialised
[    7.077159] nouveau  [   VBIOS][0000:01:00.0] running init tables
[    7.183969] nouveau 0000:01:00.0: irq 30 for MSI/MSI-X
[    7.183976] nouveau  [     PMC][0000:01:00.0] MSI interrupts enabled
[    7.184008] nouveau  [     PFB][0000:01:00.0] RAM type: GDDR5
[    7.184009] nouveau  [     PFB][0000:01:00.0] RAM size: 4096 MiB
[    7.184009] nouveau  [     PFB][0000:01:00.0]    ZCOMP: 0 tags
[    7.184246] nouveau E[   PIBUS][0000:01:00.0] HUB0: 0x6013d4 0xffff573f (0x1c408200)
[    7.185379] nouveau  [     CLK][0000:01:00.0] 07: core 405 MHz memory 810 MHz 
[    7.185457] nouveau  [     CLK][0000:01:00.0] 0a: core 270-1097 MHz memory 1600 MHz 
[    7.185557] nouveau  [     CLK][0000:01:00.0] 0f: core 270-1097 MHz memory 5010 MHz 
[    7.185623] nouveau  [     CLK][0000:01:00.0] --: core 405 MHz memory 810 MHz 
[    7.196233] nouveau  [  PGRAPH][0000:01:00.0] using external firmware
[    7.196242] nouveau 0000:01:00.0: Direct firmware load for nouveau/nv117_fuc409c failed with error -2
[    7.196248] nouveau 0000:01:00.0: Direct firmware load for nouveau/fuc409c failed with error -2
[    7.196249] nouveau E[  PGRAPH][0000:01:00.0] failed to load fuc409c
[    7.196267] nouveau E[  DEVICE][0000:01:00.0] failed to create 0x18000717, -22
[    7.196287] nouveau E[     DRM] failed to create 0x00000080, -22
[    7.197105] nouveau: probe of 0000:01:00.0 failed with error -22
[    7.278975] i8042: PNP: PS/2 Controller [PNP030b:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
[    7.281877] i8042: Detected active multiplexing controller, rev 1.1

Another thing I forgot to mention,

in the /var/log/errors.log, I can see the following lines

Dec 28 15:58:42 noe-computer-linux kernel: nouveau E[   PIBUS][0000:01:00.0] HUB0: 0x6013d4 0x0000573f (0x1c408200)
Dec 28 15:58:42 noe-computer-linux kernel: nouveau E[  PGRAPH][0000:01:00.0] failed to load fuc409c
Dec 28 15:58:42 noe-computer-linux kernel: nouveau E[  DEVICE][0000:01:00.0] failed to create 0x18000717, -22
Dec 28 15:58:42 noe-computer-linux kernel: nouveau E[     DRM] failed to create 0x00000080, -22
Dec 28 15:58:42 noe-computer-linux kernel: irq 16: nobody cared (try booting with the "irqpoll" option)
Dec 28 15:58:42 noe-computer-linux kernel: handlers:
Dec 28 15:58:42 noe-computer-linux kernel: [<ffffffffa0271c30>] usb_hcd_irq [usbcore]

I can also see these lines in the console at startup, then it disappears very quickly and I have the log-in prompt.

Offline

#4 2014-12-28 19:16:16

CarlD
Member
From: London
Registered: 2013-11-23
Posts: 128

Re: nouveau driver not starting - Direct firmware load failed error -2

You need to install the intel driver. Your integrated Intel hardware is your primary resource; the NVIDIA card is essentially a supplement for extra horsepower / number crunching.

The Intel driver should be enough to get you going before configuring your sytem to properly act a a hybrid.

Offline

#5 2014-12-28 21:17:45

Noe
Member
Registered: 2014-12-28
Posts: 4

Re: nouveau driver not starting - Direct firmware load failed error -2

Hi CarID, thanks for your help.

Indeed I am actually to start x with Intel driver, but still not able to start x with Nouveau, using the GeForce, and I am still getting these logs on booting.

Here is my xorg.conf

Section "Monitor"
	Identifier   "Monitor0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "device-intel"
#	Device     "device-nouveau"
	Monitor    "Monitor0"
	DefaultDepth	16
	SubSection	"Display"
		Depth	16
		Modes	"1024*768_75.00"
	EndSubSection
EndSection

Section "Device"
	Identifier  "device-intel"
	Driver      "intel"
	BusID       "PCI:0:2:0"
EndSection

Section "Device"
	Identifier "device-nouveau"
	Driver "nouveau"
	BusId	"PCI:1:0:0"
EndSection

And if I try to start X, I get the following log:

[   688.006] 
X.Org X Server 1.16.3
Release Date: 2014-12-20
[   688.007] X Protocol Version 11, Revision 0
[   688.007] Build Operating System: Linux 3.17.4-1-ARCH x86_64 
[   688.008] Current Operating System: Linux noe-computer-linux 3.17.6-1-ARCH #1 SMP PREEMPT Sun Dec 7 23:43:32 UTC 2014 x86_64
[   688.008] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=7aaea74e-cc6c-4f35-bf2d-e132853230ad rw quiet
[   688.009] Build Date: 20 December 2014  01:34:48PM
[   688.009]  
[   688.009] Current version of pixman: 0.32.6
[   688.010] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[   688.010] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   688.012] (==) Log file: "/var/log/Xorg.0.log", Time: Sun Dec 28 22:02:34 2014
[   688.013] (==) Using config file: "/etc/X11/xorg.conf"
[   688.014] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   688.014] (==) No Layout section.  Using the first Screen section.
[   688.014] (**) |-->Screen "Screen0" (0)
[   688.014] (**) |   |-->Monitor "Monitor0"
[   688.014] (**) |   |-->Device "device-nouveau"
[   688.014] (==) Automatically adding devices
[   688.014] (==) Automatically enabling devices
[   688.014] (==) Automatically adding GPU devices
[   688.014] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[   688.014] 	Entry deleted from font path.
[   688.014] (==) FontPath set to:
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/Type1/,
	/usr/share/fonts/100dpi/,
	/usr/share/fonts/75dpi/
[   688.014] (==) ModulePath set to "/usr/lib/xorg/modules"
[   688.014] (II) The server relies on udev to provide the list of input devices.
	If no devices become available, reconfigure udev or disable AutoAddDevices.
[   688.014] (II) Loader magic: 0x818d40
[   688.014] (II) Module ABI versions:
[   688.014] 	X.Org ANSI C Emulation: 0.4
[   688.014] 	X.Org Video Driver: 18.0
[   688.014] 	X.Org XInput driver : 21.0
[   688.014] 	X.Org Server Extension : 8.0
[   688.015] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c1
[   688.015] (II) xfree86: Adding drm device (/dev/dri/card0)
[   688.016] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 8 paused 0
[   688.017] (--) PCI:*(0:0:2:0) 8086:0416:1043:186d rev 6, Mem @ 0xf7400000/4194304, 0xd0000000/268435456, I/O @ 0x0000f000/64
[   688.017] (--) PCI: (0:1:0:0) 10de:1392:1043:186d rev 162, Mem @ 0xf6000000/16777216, 0xe0000000/268435456, 0xf0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/524288
[   688.017] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[   688.017] (II) LoadModule: "glx"
[   688.017] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[   688.026] (II) Module glx: vendor="X.Org Foundation"
[   688.026] 	compiled for 1.16.3, module version = 1.0.0
[   688.026] 	ABI class: X.Org Server Extension, version 8.0
[   688.026] (==) AIGLX enabled
[   688.026] (II) LoadModule: "nouveau"
[   688.026] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[   688.026] (II) Module nouveau: vendor="X.Org Foundation"
[   688.026] 	compiled for 1.16.1, module version = 1.0.11
[   688.026] 	Module class: X.Org Video Driver
[   688.026] 	ABI class: X.Org Video Driver, version 18.0
[   688.026] (II) NOUVEAU driver 
[   688.026] (II) NOUVEAU driver for NVIDIA chipset families :
[   688.026] 	RIVA TNT        (NV04)
[   688.026] 	RIVA TNT2       (NV05)
[   688.026] 	GeForce 256     (NV10)
[   688.026] 	GeForce 2       (NV11, NV15)
[   688.026] 	GeForce 4MX     (NV17, NV18)
[   688.026] 	GeForce 3       (NV20)
[   688.026] 	GeForce 4Ti     (NV25, NV28)
[   688.026] 	GeForce FX      (NV3x)
[   688.026] 	GeForce 6       (NV4x)
[   688.027] 	GeForce 7       (G7x)
[   688.027] 	GeForce 8       (G8x)
[   688.027] 	GeForce GTX 200 (NVA0)
[   688.027] 	GeForce GTX 400 (NVC0)
[   688.027] (++) using VT number 1

[   688.027] (--) controlling tty is VT number 1, auto-enabling KeepTty
[   688.027] (EE) [drm] KMS not enabled
[   688.027] (EE) No devices detected.
[   688.027] (EE) 
Fatal server error:
[   688.027] (EE) no screens found(EE) 
[   688.027] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[   688.027] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[   688.027] (EE) 

Is it possible that it tries to reach an external screen (on the hdmi output) ? I would simply like to use it on the direct monitor of my laptop, though.

Thanks again for your help.

Offline

#6 2015-03-02 21:01:36

ackalker
Member
Registered: 2012-11-27
Posts: 201

Re: nouveau driver not starting - Direct firmware load failed error -2

@Noe
From your lspci output I gather that you are using a GPU from the Maxwell series, which needs firmware to operate. This firmware cannot be redistributed legally, so it must be extracted from the proprietary nvidia driver.
Normally, building and installing nouveau-fw from the AUR would be sufficient, but the firmware extraction script in this package doesn't seem to support Maxwell yet, so you have to do it manually.
Please have a look at this page on the Nouveau Wiki for instructions on how to do an MmioTrace and extract the firmware from it.

Last edited by ackalker (2015-03-02 21:06:51)

Offline

#7 2015-03-04 13:10:02

Noe
Member
Registered: 2014-12-28
Posts: 4

Re: nouveau driver not starting - Direct firmware load failed error -2

Thanks a lot, I will give it a try.

Offline

#8 2015-03-04 18:12:33

ackalker
Member
Registered: 2012-11-27
Posts: 201

Re: nouveau driver not starting - Direct firmware load failed error -2

You're welcome. Here is another link explaining how to do an MMIO trace, with some suggestions on troubleshooting if you need to.

Offline

Board footer

Powered by FluxBB