Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Sep 2014 20:12:10 +0200
From:      "O. Hartmann" <ohartman@zedat.fu-berlin.de>
To:        freebsd-x11@freebsd.org, FreeBSD CURRENT <freebsd-current@freebsd.org>
Subject:   x11/nvidia-driver (340.24/340.32/343.13): nvidia BLOB doesn't recognize any display socket on Lenovo E540/UEFI and FBSD CURRENT
Message-ID:  <20140919201210.72650231.ohartman@zedat.fu-berlin.de>

next in thread | raw e-mail | index | archive | help
--Sig_/B6QkEIf5oqug.T8bKvEs2Hf
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

nVidia's BLOB from port x11/nvidia-driver seems to have problems in FreeBSD=
 11.0-CURRENT
#2 r271869: Fri Sep 19 13:28:03 CEST 2014 amd64, on Lenovo ThinkPad Edge E5=
40 laptop with
CPU i5-4200M (Haswell) with integrated HD4600 Intel iGPU and dedicated nVid=
ia GT 740M
(Optimus) working correctly.

The systems boots FreeBSD off via UEFI.

First of all: I tried versions 340.24, 340.32 and Beta 343.13 all with the =
very same
results.

Symptoms:

a) Loading kernel module "nvidia" via /boot/load.conf freezes the system af=
ter the
UEFI/EFI loader message shows up. Loading the kernel module vi kld_load=3D
in /etc/rc.conf[.local] works so far regarding loading and booting the kern=
el.

b) No display socket is recognized by the nvidia driver resulting in a blan=
k vt() screen
after X has been started. I tried many different configurations, but at the=
 end I suspect
that nVidia's "Optimus" technology may be the culprit.

The documentation of nVidia's driver for FreeBSD states that after the Xser=
ver has
started it logs in Xorg.0.log (or whatever display number is used) the avai=
lable display
sockets like (taken from the documents):

(--) NVIDIA(0): Valid display device(s) on Quadro 6000 at PCI:10:0:0
(--) NVIDIA(0):     CRT-0
(--) NVIDIA(0):     CRT-1
(--) NVIDIA(0):     DELL U2410 (DFP-0) (connected)
(--) NVIDIA(0):     NEC LCD1980SXi (DFP-1) (connected)

Nothing that similar shows up in my environment, but this:

[...]
[    58.656] (--) PCI:*(0:0:2:0) 8086:0416:17aa:502a rev 6, Mem @ 0xf100000=
0/4194304,
0xe0000000/268435456, I/O @ 0x00006000/64, BIOS @ 0x????????/65536
[    58.659] (--) PCI: (0:1:0:0) 10de:1292:17aa:502a rev 161, Mem @ 0xf0000=
000/16777216,
0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00005000/128
[    58.662] (II) "extmod" will be loaded. This was enabled by default and =
also specified
in the config file.
[    58.662] (II) "dbe" will be loaded. This was enabled by default and als=
o specified in
the config file.
[...]
[    60.055] (**) NVIDIA(0): Enabling 2D acceleration
[    60.485] (II) NVIDIA(0): NVIDIA GPU GeForce GT 740M (GK208) at PCI:1:0:=
0 (GPU-0)
[    60.486] (--) NVIDIA(0): Memory: 2097152 kBytes
[    60.486] (--) NVIDIA(0): VideoBIOS: 80.28.25.00.27
[    60.486] (II) NVIDIA(0): Detected PCI Express Link width: 8X
[    60.486] (--) NVIDIA(0): Valid display device(s) on GeForce GT 740M at =
PCI:1:0:0
[    60.487] (--) NVIDIA(0):     none
[    60.487] (II) NVIDIA(0): Validated MetaModes:
[    60.487] (II) NVIDIA(0):     "NULL"
[    60.487] (II) NVIDIA(0): Virtual screen size determined to be 640 x 480
[    60.488] (WW) NVIDIA(0): Unable to get display device for DPI computati=
on.
[    60.488] (=3D=3D) NVIDIA(0): DPI set to (75, 75); computed from built-i=
n default
[    60.488] (--) Depth 24 pixmap format is 32 bpp
[    60.489] (II) NVIDIA: Reserving 3072.00 MB of virtual memory for indire=
ct memory
[    60.489] (II) NVIDIA:     access.
[    60.492] (II) NVIDIA(0): Setting mode "NULL"
[    60.493] (EE) NVIDIA(0): Failed to initiate mode change.
[    60.493] (EE) NVIDIA(0): Failed to complete mode change
[    60.553] (II) NVIDIA(0): Built-in logo is bigger than the screen.
[    60.573] (II) Loading extension NV-GLX
[...]

Confusing is that in the lines
[    58.656] (--) PCI:*(0:0:2:0) 8086:0416:17aa:502a rev 6, Mem @ 0xf100000=
0/4194304,
0xe0000000/268435456, I/O @ 0x00006000/64, BIOS @ 0x????????/65536
[    58.659] (--) PCI: (0:1:0:0) 10de:1292:17aa:502a rev 161, Mem @ 0xf0000=
000/16777216,
0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00005000/128

both, the Intel iGPU HD4600 (PCI:*(0:0:2:0)) and the nVidia dedicated GPU G=
T=20
740M (PCI: (0:1:0:0)) show up.

The more scaring part is then (--) NVIDIA(0): Valid display device(s):

No display device is shown although the notebook has a built-in display, a =
DisplayPort
port as well as a VGA port. On all nVidia dedicated graphics boards I use o=
n diffrent
other machines with the very same driver EVERY possible connector/socket sh=
ows up.

The laptop has EFI/UEFI

EFI Version: 2.31
EFI Firmware: Lenovo (re. 05648)

The problem is present no matter whether the drm2 and i915kms kernel moules=
 are loaded or
not.

What is wrong here? Any chance to get the nVidia GPU to work? I use at the =
moment
xf86-video-scfb which is a pain in the ass and absolutely not usable, even =
with a faster
CPU. Under average load the whole laptop screen is like a slide show.

Please CC me.

Thanks in advance,
O. Hartmann

--Sig_/B6QkEIf5oqug.T8bKvEs2Hf
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBAgAGBQJUHHIAAAoJEOgBcD7A/5N868AIAKw638uX1D0x+Qyys3sR9ARI
gv+yShpQib6wTmn9b3xQpIvUu+f1DVjwEsiIIw5M/YMfwNXg2Dcnzvg6tprjjOVf
bTuE8ypdbRN57YrArdy116hxjhu8h9D424a2Tm3bVeOkF2z5FXTu0G1UhM1RbHJT
NKPfHJe2CXLq9QCIqjikMo1BoRS8piG0fKq1G6XaLv1gohPYXfnR8CyoayiZMQAw
x5aNpTfvwhh092tryCfkIqlkbLtHgG5op6cMiSkyeCUXst8VursedwniHoq70m8l
5L9aMUGop5zXDLpC2h1naia9jNGnwbMi2O8/dSvI9j9DTKyRkY4wj1C448UpWEY=
=NlDw
-----END PGP SIGNATURE-----

--Sig_/B6QkEIf5oqug.T8bKvEs2Hf--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140919201210.72650231.ohartman>