PDA

View Full Version : Ubuntu 15.10 + Dell XPS 13 + Dell D3100 Dock


chrisvo
03-18-2016, 06:44 PM
On a fresh Ubuntu 15.10 with Intel drivers, I cannot install the displaylink driver:

vo@ninja:~/Downloads/drivers$ sudo ./displaylink-driver-1.0.335.run
Verifying archive integrity... All good.
Uncompressing DisplayLink Linux Driver 1.0.335 100%
DisplayLink Linux Software 1.0.335 install script called: install
Distribution discovered: Ubuntu 15.10
WARNING: Kernel version 4.2.0-34-generic is not supported. Highest supported version is 3.19.
Installing
Configuring EVDI DKMS module
Registering EVDI kernel module with DKMS
Building EVDI kernel module with DKMS
Installing EVDI kernel module to kernel tree
EVDI kernel module built successfully
Installing x64/DisplayLinkManager
Installing libraries
Installing firmware packages
Installing license file
Adding udev rule for DisplayLink DL-3xxx/5xxx devices
Starting DLM systemd service
ln: failed to create symbolic link ‘/lib/systemd/system-sleep/displaylink.sh’: File exists
Job for displaylink.service failed because the control process exited with error code. See "systemctl status displaylink.service" and "journalctl -xe" for details.
vo@ninja:~/Downloads/drivers$ journalctl -xe
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_mode_connector_update_edid_property
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_mode_connector_update_edid_property (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_fb_helper_prepare
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_fb_helper_prepare (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_connector_init
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_connector_init (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_platform_init
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_platform_init (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_add_edid_modes
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_add_edid_modes (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_framebuffer_unreference
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_framebuffer_unreference (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_gem_object_release
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_gem_object_release (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_fb_helper_fill_var
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_fb_helper_fill_var (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_gem_dumb_destroy
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_gem_dumb_destroy (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_gem_handle_create
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_gem_handle_create (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_object_attach_property
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_object_attach_property (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_helper_mode_fill_fb_struct
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_helper_mode_fill_fb_struct (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_mode_connector_attach_encoder
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_mode_connector_attach_encoder (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_helper_connector_dpms
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_helper_connector_dpms (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_connector_cleanup
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_connector_cleanup (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_encoder_init
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_encoder_init (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_gem_free_mmap_offset
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_gem_free_mmap_offset (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_helper_probe_single_connector_modes
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_helper_probe_single_connector_modes (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_unplug_dev
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_unplug_dev (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_mode_config_cleanup
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_mode_config_cleanup (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_fb_helper_initial_config
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_fb_helper_initial_config (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_framebuffer_reference
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_framebuffer_reference (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_gem_put_pages
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_gem_put_pages (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_connector_unplug_all
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_connector_unplug_all (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_crtc_helper_set_config
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_crtc_helper_set_config (err -22)
Mar 18 15:28:26 ninja kernel: evdi: disagrees about version of symbol drm_prime_gem_destroy
Mar 18 15:28:26 ninja kernel: evdi: Unknown symbol drm_prime_gem_destroy (err -22)
Mar 18 15:28:26 ninja modprobe[4204]: modprobe: ERROR: could not insert 'evdi': Invalid argument
Mar 18 15:28:26 ninja systemd[1]: displaylink.service: Control process exited, code=exited status=1
Mar 18 15:28:26 ninja systemd[1]: Failed to start DisplayLink Manager Service.
-- Subject: Unit displaylink.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit displaylink.service has failed.
--
-- The result is failed.
Mar 18 15:28:26 ninja systemd[1]: displaylink.service: Unit entered failed state.
Mar 18 15:28:26 ninja systemd[1]: displaylink.service: Failed with result 'exit-code'.
vo@ninja:~/Downloads/drivers$


Is anyone else experiencing problems with this? :confused:

Note: I had it working earlier with fresh Ubuntu 15.10 before installing the Intel driver, but it was eating up 100% CPU consistently which was unacceptable so I installed the Intel driver and apparently it upgrades drm and that's why we're experiencing this error.

Is there a source code version of the driver available so I can fix the issue myself? Or is it forever proprietary? :mad:

mlukaszek
03-22-2016, 09:38 AM
Have you attempted to recompile the evdi kernel module after you updated?
The command

dkms autoinstall

should rebuild all modules for the running kernel - this should include evdi.

As far as the source code is concerned, evdi is an open-source project and you can access it in DisplayLink's GitHub (github.com/DisplayLink/evdi). DisplayLink Ubuntu drivers currently use master branch for releases.

Thanks,
Michal

fightling
03-24-2016, 07:46 AM
I have the same problem on a ThinkPad Carbon X1 with ubuntu wily.

since the last kernel update my DisplayLink dock isn't working proper at all. No graphics (xrandr doesn't show the linked displays and also eth over the link breaks down every minute).

I tried what you suggested without success:

$ sudo dkms autoinstall

Kernel preparation unnecessary for this kernel. Skipping...

Kernel preparation unnecessary for this kernel. Skipping...

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
Building module:
cleaning build area...
Building module:
cleaning build area....
.
make KERNELRELEASE=4.2.0-30-generic -d V=1 -C /lib/modules/4.2.0-30-generic/build M=/var/lib/dkms/i915-3.9-3.8/0.02/build...make KERNELRELEASE=4.2.0-30-generic -d V=1 -C /lib/modules/4.2.0-30-generic/build M=/var/lib/dkms/i915-3.4-3.2/0.04/build....
make KERNELRELEASE=4.2.0-30-generic -d V=1 -C /lib/modules/4.2.0-30-generic/build M=/var/lib/dkms/i915-3.15-3.13/0.01/build.....(bad exit status: 2)
(bad exit status: 2)
.(bad exit status: 2)
Error! Bad return status for module build on kernel: 4.2.0-30-generic (x86_64)
Consult /var/lib/dkms/i915-3.15-3.13/0.01/build/make.log for more information.
Error! Bad return status for module build on kernel: 4.2.0-30-generic (x86_64)
Consult /var/lib/dkms/i915-3.9-3.8/0.02/build/make.log for more information.
Error! Bad return status for module build on kernel: 4.2.0-30-generic (x86_64)
Consult /var/lib/dkms/i915-3.4-3.2/0.04/build/make.log for more information.

mlukaszek
03-24-2016, 08:50 AM
What's in /var/lib/dkms/i915-3.4-3.2/0.04/build/make.log then? Note that it's the i915 module that has problems with recompiling...

Cheers,
Michal

fightling
03-24-2016, 08:54 AM
Et voilà!

file attached.

can't even download my own attachment because I'm a Junior Member? m(

mlukaszek
03-24-2016, 09:30 AM
/var/lib/dkms/i915-3.4-3.2/0.04/build/include/drm/drmP.h:77:17: fatal error: drm.h: No such file or directory

You need libdrm-dev package (exact name depending on the distribution) to be installed first.

Hope this helps,

Cheers,
Michal

Maurix
03-24-2016, 11:11 AM
I also had to modify driver source as follows:

evdi_modeset.c:148
drm_dev_set_unique(dev, dev_name(dev->dev));

evdi_encoder.c:72
status = drm_encoder_init(dev, encoder, &evdi_enc_funcs, DRM_MODE_ENCODER_TMDS, dev_name(dev->dev));

chrisvo
03-24-2016, 12:11 PM
Thank you for your response. However the command does not do anything:


vo@ninja:~/Downloads/drivers$ sudo dkms status
bcmwl, 6.30.223.248+bdcom, 4.2.0-16-generic, x86_64: installed
bcmwl, 6.30.223.248+bdcom, 4.2.0-34-generic, x86_64: installed
evdi, 1.0.335, 4.2.0-34-generic, x86_64: installed
i915-4.3.3-4.2.0, 2, 4.2.0-16-generic, x86_64: installed
i915-4.3.3-4.2.0, 2, 4.2.0-34-generic, x86_64: installed
vo@ninja:~/Downloads/drivers$ sudo dkms autoinstall --verbose
vo@ninja:~/Downloads/drivers$


I'll try working with the source code, thanks.

Have you attempted to recompile the evdi kernel module after you updated?
The command

dkms autoinstall

should rebuild all modules for the running kernel - this should include evdi.

As far as the source code is concerned, evdi is an open-source project and you can access it in DisplayLink's GitHub (github.com/DisplayLink/evdi). DisplayLink Ubuntu drivers currently use master branch for releases.

Thanks,
Michal

chrisvo
03-24-2016, 01:06 PM
Manually building and installing the evdi driver (through dkms) does not fix the problem; it builds and installs successfully but the module won't load:



root@ninja:/usr/src/evdi-1.0.335devel# modprobe evdi
modprobe: ERROR: could not insert 'evdi': Invalid argument
root@ninja:/usr/src/evdi-1.0.335devel# journalctl -xe
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_platform_init (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_add_edid_modes
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_add_edid_modes (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_framebuffer_unreference
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_framebuffer_unreference (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_gem_object_release
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_gem_object_release (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_send_vblank_event
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_send_vblank_event (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_fb_helper_fill_var
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_fb_helper_fill_var (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_gem_dumb_destroy
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_gem_dumb_destroy (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_gem_handle_create
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_gem_handle_create (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_object_attach_property
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_object_attach_property (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_helper_mode_fill_fb_struct
Mar 24 10:05:06 ninja kernel: evdi: Unknown symbol drm_helper_mode_fill_fb_struct (err -22)
Mar 24 10:05:06 ninja kernel: evdi: disagrees about version of symbol drm_mode_copy
...

mlukaszek
03-24-2016, 01:46 PM
Are you sure modprobe is actually loading the version you've built? I bet you still have the previous version installed in the kernel module tree. Verbose switch for modprobe should tell you that.

It should be possible to insmod the module you built. If that works, remove the module from /lib/modules/..., copy your rebuilt version over, and run depmod -a to regenerate dependency info - that should heal modprobe.

The longer way for fixing dkms should be:

export EVDI="evdi/1.0.335"
dkms remove $EVDI --all
dkms add $EVDI
dkmd build $EVDI
dkms install $EVDI


Cheers,
Michal

chrisvo
03-25-2016, 11:13 AM
Are you sure modprobe is actually loading the version you've built?

Yes, I removed the old one and built and installed (both manually and using dkms) the version from git. I tried both devel and master branches. It builds fine, but refuses to be loaded, filling the log with messages about "evdi: Unknown symbol drm *" and "evdi: disagrees about version of drm*"

chrisvo
03-25-2016, 12:15 PM
Uninstalling the Intel driver fixed the problem. It appears there is an incompatibility between the version of libdrm used in the latest Intel driver and the version that is used by the displaylink driver.

fightling
03-27-2016, 10:30 AM
Uninstalling the Intel driver fixed the problem. It appears there is an incompatibility between the version of libdrm used in the latest Intel driver and the version that is used by the displaylink driver.

How did you do that?

chrisvo
03-30-2016, 09:16 AM
How did you do that?

This post has pretty good instructions for removal of the Intel driver, if you used the Intel installer:
http://askubuntu.com/questions/343390/how-to-remove-intels-open-source-technology-center-driver

unfulvio
03-31-2016, 01:31 PM
Hey there, I might have bumped into the same issue

I have a Lenovo Thinkvision and Ubuntu 15.10 with 4.20 kernel

when I try to install the supplied driver via script I get similar errors, I do have Intel drivers installed but would prefer not to uninstall them...

I checked and have libdrm-dev and libdrm2 v2.4.65-3 installed

is there any other way to solve this?

unfulvio
04-02-2016, 06:05 PM
I uninstalled the Intel drivers using Synaptic package manager

basically I looked for packages marked by intel and with source 01.org - I switched them all to use Ubuntu/Wily own packages -- this operation was successfull and I've downgraded to Ubuntu bundled drivers

but still, I would get the same error as chrisvo even after this after installing and trying to start the displaylink manager - same error

perhaps I missed something -- any clues?

thanks!

unfulvio
04-03-2016, 01:16 PM
I've finally managed to clean my Intel Graphics for Linux drivers following instructions at

http://theclonker.de/archive/89 (in my case I changed the origin of packages to wily, since I use 15.10)

then installing again the Displaylink driver, it was successful

however this solution wasn't optimal.. I noticed a decrease in battery performance and a bug in Google Chrome that forced me to disable the hardware acceleration there - this was fixed by installing the Intel drivers...

chrisvo
04-03-2016, 04:35 PM
I noticed a decrease in battery performance and a bug in Google Chrome that forced me to disable the hardware acceleration there

Yes, it would be ideal to be able to use the latest Intel drivers with the DisplayLink driver...

Also with the DisplayLink driver I've noticed high CPU usage even when I am not connected to the docking station, where I've had to manually kill DisplayLinkManager.

mvczettritz
01-05-2017, 01:12 PM
Ehlo,

I've encountered a very similar issue, while setting my Ubuntu 16.10 up.
Some debugging showed that I had no linux-image-extra-*-generic kernel installed/ loaded. Therefore the drm.ko Kernel module was not present and could not be loaded.
This can be checked easily by running 'modinfo drm', if the program complains about 'no module found' you should check 'dpkg --list | grep linux-image-extra' to see if you have a kernel that comes with drm.
Once installed and rebooted the journalctl errors went away.

Thanks,
Michel/Tofu