Dell UP3218K | An “8K” monitor at 32″ via 2x DisplayPort

Promotional Page

Does it work with Linux (Wayland Weston etc.): UNKNOWN.
There is no clear positive statement that it does… or does not.

The headline specs are all those fun “little lies” that commerce gets to flourish itself with …wherein “8K” equals 7600, and “32 inches” equals 28.4″ etc.

Specifications

  • “8K” = 7680 x 4320
  • 32″ = 31.5″ =28.4″ × 8.5″ × 24.3″
  • 17 Kg = 37.47 Lbs.
  • 60 Hz
  • 2x DisplayPort 1.4+
    Something about HDMI 2.0 maybe.

Folklore

From the Drivers & Manuals subpage

  • May or may not be Windows Only
    Some commentariat that MacOS is “not supported.”
    Claimed <quote>All NVIDIA 10xx cards, and their TITAN line, support 7680×4320@60Hz natively.</quote>
  • Requires both cables to provide the “8K” mode.
  • Which graphics cards are supported?
  • AMD video cards may or may not be supported.
  • Intel HD Graphics may or may not be supported.

Via: backfill.

Continued characterization, but no solution, for the Dell M3800 with Fedora 21 and Broadcom’s Bluetooth brcm/BCM20702A0-0a5c-216f.hcd binary blob

Continuing: Bluetooth seen working on the Dell M3800 with Fedora 21 and Broadcom’s Bluetooth brcm/BCM20702A0-0a5c-216f.hcd binary blob, still not solved, or ameliorated.

An example of syslog messages from a boot trace where the firmware was loaded correctly, three suspend-resume sycles occurred with the firmware failing to (re)load on the third cycle.

Specimen

$ cat /var/log/messages | grep -i bluetooth
<snip/>
Oct  5 13:39:56 sonsie bluetoothd[1063]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 13:39:56 sonsie bluetoothd[1063]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  5 13:40:58 sonsie kernel: [   40.537859] Bluetooth: Core ver 2.20
Oct  5 13:40:58 sonsie kernel: [   40.537878] Bluetooth: HCI device and connection manager initialized
Oct  5 13:40:58 sonsie kernel: [   40.537882] Bluetooth: HCI socket layer initialized
Oct  5 13:40:58 sonsie kernel: [   40.537885] Bluetooth: L2CAP socket layer initialized
Oct  5 13:40:58 sonsie kernel: [   40.537891] Bluetooth: SCO socket layer initialized
Oct 5 13:40:58 sonsie kernel: [ 40.594551] Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=1000 lmp_ver=06 lmp_subver=220e Oct 5 13:40:58 sonsie kernel: [ 41.201337] Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=1624 lmp_ver=06 lmp_subver=220e 
Oct  5 13:39:56 sonsie bluetoothd[1063]: Terminating
Oct  5 13:39:56 sonsie bluetoothd[1063]: Stopping SDP server
Oct  5 13:39:56 sonsie bluetoothd[1063]: Exit
Oct  5 13:40:58 sonsie kernel: [   41.809621] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Oct  5 13:40:58 sonsie kernel: [   41.809625] Bluetooth: BNEP filters: protocol multicast
Oct  5 13:40:58 sonsie kernel: [   41.809629] Bluetooth: BNEP socket layer initialized
Oct  5 13:40:57 sonsie kernel: Bluetooth: Core ver 2.20
Oct  5 13:40:57 sonsie kernel: Bluetooth: HCI device and connection manager initialized
Oct  5 13:40:57 sonsie kernel: Bluetooth: HCI socket layer initialized
Oct  5 13:40:57 sonsie kernel: Bluetooth: L2CAP socket layer initialized
Oct  5 13:40:57 sonsie kernel: Bluetooth: SCO socket layer initialized
Oct  5 13:40:57 sonsie kernel: Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=1000 lmp_ver=06 lmp_subver=220e
Oct  5 13:40:57 sonsie kernel: Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=1624 lmp_ver=06 lmp_subver=220e
Oct  5 13:40:58 sonsie bluetoothd[1341]: Bluetooth daemon 5.29
Oct  5 13:40:58 sonsie bluetoothd[1341]: Starting SDP server
Oct  5 13:40:58 sonsie kernel: Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Oct  5 13:40:58 sonsie kernel: Bluetooth: BNEP filters: protocol multicast
Oct  5 13:40:58 sonsie kernel: Bluetooth: BNEP socket layer initialized
Oct  5 13:40:58 sonsie bluetoothd[1341]: Bluetooth management interface 1.8 initialized
Oct  5 13:40:58 sonsie bluetoothd[1341]: Failed to obtain handles for "Service Changed" characteristic
Oct  5 13:40:58 sonsie NetworkManager[1483]:   Loaded device plugin: /usr/lib64/NetworkManager/libnm-device-plugin-bluetooth.so
Oct  5 13:41:01 sonsie NetworkManager[1483]:   (F8:F1:B6:90:2E:D5): new Bluetooth device (driver: 'bluez' ifindex: 0)
Oct  5 13:41:13 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 13:41:13 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  5 13:41:13 sonsie kernel: [   56.715761] Bluetooth: RFCOMM TTY layer initialized
Oct  5 13:41:13 sonsie kernel: [   56.715769] Bluetooth: RFCOMM socket layer initialized
Oct  5 13:41:13 sonsie kernel: [   56.715812] Bluetooth: RFCOMM ver 1.11
Oct  5 13:41:13 sonsie kernel: Bluetooth: RFCOMM TTY layer initialized
Oct  5 13:41:13 sonsie kernel: Bluetooth: RFCOMM socket layer initialized
Oct  5 13:41:13 sonsie kernel: Bluetooth: RFCOMM ver 1.11
<suspending/>
Oct  5 13:45:54 sonsie bluetoothd[1341]: Unable to get io data for Object Push: getpeername: Transport endpoint is not connected (107)
<suspend/>
<resume/>
Oct 5 13:58:17 sonsie kernel: Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=1000 lmp_ver=06 lmp_subver=220e Oct 5 13:58:17 sonsie kernel: [ 695.669721] Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=1000 lmp_ver=06 lmp_subver=220e Oct 5 13:58:18 sonsie kernel: [ 696.273496] Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=1624 lmp_ver=06 lmp_subver=220e Oct 5 13:58:18 sonsie kernel: Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=1624 lmp_ver=06 lmp_subver=220e
Oct  5 13:58:18 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 13:58:18 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  5 13:58:18 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 13:58:18 sonsie bluetoothd[1341]: Failed to obtain handles for "Service Changed" characteristic
Oct  5 13:58:18 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 13:58:18 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 13:58:18 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 13:58:18 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 13:58:18 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  5 13:58:18 sonsie NetworkManager[1483]:   (F8:F1:B6:90:2E:D5): new Bluetooth device (driver: 'bluez' ifindex: 0)
<suspend/>
<resume/>
Oct  5 21:26:31 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 21:26:31 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  5 21:26:31 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 21:26:31 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 21:26:31 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 21:26:31 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  5 21:26:31 sonsie bluetoothd[1341]: Failed to obtain handles for "Service Changed" characteristic
Oct  5 21:26:31 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  5 21:26:31 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSink
<suspend/>
<resume/>
Oct 6 08:41:12 sonsie kernel: [26523.176432] bluetooth hci0: firmware: brcm/BCM20702A0-0a5c-216f.hcd will not be loaded Oct 6 08:41:13 sonsie kernel: bluetooth hci0: firmware: brcm/BCM20702A0-0a5c-216f.hcd will not be loaded
Oct  6 08:41:13 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  6 08:41:13 sonsie bluetoothd[1341]: Endpoint unregistered: sender=:1.56 path=/MediaEndpoint/A2DPSink
Oct  6 08:41:13 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  6 08:41:13 sonsie bluetoothd[1341]: Failed to obtain handles for "Service Changed" characteristic
Oct  6 08:41:13 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  6 08:41:13 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  6 08:41:13 sonsie dbus[1367]: [system] Rejected send message, 11 matched rules; type="error", sender=":1.56" (uid=25500 pid=3361 comm="/usr/bin/pulseaudio --start ") interface="(unset)" member="(unset)" error name="org.bluez.MediaEndpoint1.Error.NotImplemented" requested_reply="0" destination=":1.2" (uid=0 pid=1341 comm="/usr/libexec/bluetooth/bluetoothd ")
Oct  6 08:41:13 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSource
Oct  6 08:41:13 sonsie bluetoothd[1341]: Endpoint registered: sender=:1.56 path=/MediaEndpoint/A2DPSink

Bluetooth seen working on the Dell M3800 with Fedora 21 and Broadcom’s Bluetooth brcm/BCM20702A0-0a5c-216f.hcd binary blob

tl;dr

$ cd /usr/lib/firmware/brcm
$ sudo ln -sr /usr/lib/firmware/brcm/BCM20702{A0,A1}-0a5c-216f.hcd

$ ls -l
total 9700
-r--r--r--. 1 root root  35080 Jul 25 11:25 BCM20702A0-0a5c-216f.hcd
-r--r--r--. 1 root root  34700 Jul 25 09:56 BCM20702A0-0a5c-21e8.hcd
lrwxrwxrwx. 1 root root     24 Sep 23 13:41 BCM20702A1-0a5c-216f.hcd -> BCM20702A0-0a5c-216f.hcd
<snip/>

You need the symlink.

Summary

  • When loaded, the blob seems to work (bluetooth works).
  • Yet it can fail in place; perhaps after a suspend-resume cycle.

Revision

  • Something else is going on.
  • Sometimes the firmware loads.
  • Sometimes the firmware fails to load.
  • It may have something to do with the crashes, hangs & heating observed in multiple suspend-resume cycles.

Frustration

Trending towards: Does Not Work With Linux
This is still a hobbyist’s & enthusiast’s machine; it can’t be used for production work except in the factory-install configuration.
Dell delivered a working machine.  Aftermarket conversion to Fedora is nearly unuseable.
If it weren’t for the 4K display, this machine would be AVOID.

Following up from: Experiences with the Dell M3800 with Fedora 21 and Broadcom’s Bluetooth brcm/BCM20702A0-0a5c-216f.hcd binary blob

Indeed, the gear does work with the factory-prepared Ubuntu 14.04 LTE that Dell installed.  But it has so much blobbery and idiosyncratic non-open hardware that you won’t be able to upgrade beyond what the Dell team was able to assemble.  It is unknown how they were able to assemble a working configuration.

It’s 2015 and GPUs still don’t “just work.”

I did mention it has a 4K2K display, right?  That’s why we’re here.  That’s a can’t-live-without thing nowadays.

Goal

  • “just works”
  • bluetooth “just works”
  • graphics “just works”
  • suspend “just works”

Mentions

  • There is a blob
  • You have to get the correct blob
  • You need to make a symlink nearby to the blob.
  • Debugging whether the blob loaded or was caused to load-but-failed  is murky.
  • Something about the udev subsystem.

Folklore

  • How to fix Dell XPS 13 (2015) for Ubuntu 15.04; Tiago Cogumbreiro; In His Notes; 2015-08-15.
    • Covers
      • High DPI; in Arch Linux Wiki
      • Suspend Error; kermel patch for Ubuntu bcmwl-kernel-source
      • Bluetooth Problems (relevant here)
      • TLP
    • Actualities for BIOS revision A05
      Hardware name: Dell Inc. XPS 13 9343/0310JH, BIOS A05 07/14/2015
    • Dell XPS 13 (2015) – Bluetooth; in Arch Linux Wiki
    • Especially reminding about the need to create the symlink
      ln -rs /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
      which will be /usr/lib/firmware/brcm on Fedora 21

References

  • Section 14.8Dealing with Firmware; In Some Linux Kernel Documentation.
    • Describes the upcall to userland request_firmware(…)
    • Does not describe how userland receives the upcall or acts upon it.
  • Firmware; In Ubuntu Wiki
  • Dell XPS 13 (2015) – Bluetooth; in Arch Linux Wiki

Evidences

The symlink is required to make the firmware load.

Actions

$ cd /usr/lib/firmware/brcm
$ sudo ln -sr /usr/lib/firmware/brcm/BCM20702{A0,A1}-0a5c-216f.hcd

$ ls -l
total 9700
-r--r--r--. 1 root root  35080 Jul 25 11:25 BCM20702A0-0a5c-216f.hcd
-r--r--r--. 1 root root  34700 Jul 25 09:56 BCM20702A0-0a5c-21e8.hcd
lrwxrwxrwx. 1 root root     24 Sep 23 13:41 BCM20702A1-0a5c-216f.hcd -> BCM20702A0-0a5c-216f.hcd
<snip/>

Evidences

Sep 23 10:41:37 devbox kernel: bluetooth hci0: firmware: brcm/BCM20702A0-0a5c-216f.hcd will not be loaded
Sep 23 10:41:37 devbox kernel: Bluetooth: hci0: BCM: patch brcm/BCM20702A0-0a5c-216f.hcd not found
$ find /usr/lib/firmware -name '*216f.hcd'
/usr/lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
$ ls -ldZ /usr/lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
-r--r--r--. root root system_u:object_r:lib_t:s0       /usr/lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
$ find /usr/lib -path '*brcm/BCM20702A0-0a5c-216f.hcd' -ls
660333   36 -r--r--r--   1 root     root        35080 Jul 25 11:25 /usr/lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
$ lsusb -t
/:  Bus 04.Port 1: Dev 1,, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0,, Driver=hub/8p, 480M
/:  Bus 03.Port 1: Dev 1,, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0,, Driver=hub/6p, 480M
/:  Bus 02.Port 1: Dev 1,, Driver=xhci_hcd/6p, 5000M
|__ Port 2: Dev 13, If 0,, Driver=hub/1p, 5000M
|__ Port 1: Dev 14, If 0, Specific Class, Driver=, 5000M
|__ Port 1: Dev 14, If 1, Specific Interface, Driver=, 5000M
|__ Port 1: Dev 14, If 2,, Driver=snd-usb-audio, 5000M
|__ Port 1: Dev 14, If 3,, Driver=snd-usb-audio, 5000M
|__ Port 1: Dev 14, If 4,, Driver=snd-usb-audio, 5000M
|__ Port 1: Dev 14, If 5,, Driver=cdc_ncm, 5000M
|__ Port 1: Dev 14, If 6, Data, Driver=cdc_ncm, 5000M
/:  Bus 01.Port 1: Dev 1,, Driver=xhci_hcd/14p, 480M
|__ Port 2: Dev 20, If 0,, Driver=hub/4p, 480M
|__ Port 3: Dev 21, If 0, Interface Device, Driver=usbhid, 1.5M
|__ Port 4: Dev 22, If 0, Interface Device, Driver=usbhid, 1.5M
|__ Port 6: Dev 5, If 0, Interface Device, Driver=usbhid, 12M
|__ Port 9: Dev 6, If 0, Specific Class, Driver=btusb, 12M
|__ Port 9: Dev 6, If 1, Specific Class, Driver=btusb, 12M
|__ Port 9: Dev 6, If 2, Specific Class, Driver=, 12M
|__ Port 9: Dev 6, If 3, Specific Interface, Driver=, 12M
|__ Port 11: Dev 7, If 0,, Driver=uvcvideo, 480M
|__ Port 11: Dev 7, If 1,, Driver=uvcvideo, 480M
$ lsusb
Bus 004 Device 002: ID 8087:8000 Intel Corp.
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:8008 Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 014: ID 17e9:436f DisplayLink
Bus 002 Device 013: ID 2109:0210 VIA Labs, Inc.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 0a5c:216f Broadcom Corp.
Bus 001 Device 005: ID 04f3:21f9 Elan Microelectronics Corp.
Bus 001 Device 022: ID 03f0:0024 Hewlett-Packard KU-0316 Keyboard
Bus 001 Device 021: ID 046d:c018 Logitech, Inc. Optical Wheel Mouse
Bus 001 Device 020: ID 2109:2210 VIA Labs, Inc.
Bus 001 Device 007: ID 0bda:573c Realtek Semiconductor Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

From /var/log/messages

Hardware name: Dell Inc. Dell Precision M3800/Dell Precision M3800, BIOS A09 01/08/2015

UNSOLVED: Dell M3800 Fedora 21 – more hangs and spews ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41 profile =00:25:9c:63:75:8b

Previously

The machine is rapidly becoming unusable. Especially delicate is that screensaver & display blanking faults require a power cycle.

  • Upon screensaver, the graphics faults and is “hung” → one must power cycle to recover control.
  • Upon suspend, the CPU (GPU?) runs hard, it gets hot and hangs → one must power down to recover control.

(UNSOLVED) Dell M3800 under Fedora 21 (but not Dell-Factory Ubuntu 14) does not suspend, runs super-hot, hangs

Indications

Sep 15 14:56:07 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:13 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:13 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:19 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:19 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:25 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:25 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:31 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:31 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:37 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:37 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:43 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:43 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:49 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:49 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:55 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:56:55 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:01 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:01 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:07 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:07 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:13 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:13 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 15 14:57:19 example.com kernel: ERROR @wl_cfg80211_get_station : Wrong Mac address, mac = c0:c1:c0:07:86:41   profile =00:25:9c:63:75:8b
Sep 16 11:06:18 sonsie kernel: [   31.704603] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:06:18 sonsie kernel: [   31.704708] ACPI: \_SB_.PCI0.PEG0.PEGP: failed to evaluate _DSM
Sep 16 11:06:18 sonsie kernel: [   31.704713] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:06:24 sonsie kernel: [   37.509492] nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Sep 16 11:06:26 sonsie kernel: [   39.665225] tun: Universal TUN/TAP device driver, 1.6
Sep 16 11:06:26 sonsie kernel: [   39.665227] tun: (C) 1999-2004 Max Krasnyansky 
Sep 16 11:06:30 sonsie kernel: [   43.707905] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:06:30 sonsie kernel: [   43.707989] ACPI: \_SB_.PCI0.PEG0.PEGP: failed to evaluate _DSM
Sep 16 11:06:30 sonsie kernel: [   43.707992] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:06:32 sonsie kernel: [   46.042587] Adjusting tsc more than 11% (6262765 vs 8115577)
Sep 16 11:06:35 sonsie kernel: [   48.859093] fuse init (API version 7.23)
Sep 16 11:06:35 sonsie kernel: [   49.724054] nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Sep 16 11:06:36 sonsie kernel: [   50.561330] Bluetooth: RFCOMM TTY layer initialized
Sep 16 11:06:36 sonsie kernel: [   50.561337] Bluetooth: RFCOMM socket layer initialized
Sep 16 11:06:36 sonsie kernel: [   50.561382] Bluetooth: RFCOMM ver 1.11
Sep 16 11:06:41 sonsie kernel: [   55.150323] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:06:41 sonsie kernel: [   55.150423] ACPI: \_SB_.PCI0.PEG0.PEGP: failed to evaluate _DSM
Sep 16 11:06:41 sonsie kernel: [   55.150429] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Pac
kage] (20150204/nsarguments-95)
Sep 16 11:19:33 sonsie rsyslogd-2177: imjournal: 584788 messages lost due to rate-limiting

Context

$ lspci -v | grep Broad
06:00.0 Network controller: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter (rev 03)
$ rpm -q -a | grep -i broadc
broadcom-wl-6.30.223.248-3.fc21.noarch
$ uname -a
Linux box.example.com 4.0.7-200.fc21.x86_64 #1 SMP Mon Jun 29 22:11:52 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
$ dmesg | grep Broadcom
[ 2.953312] usb 1-9: Manufacturer: Broadcom Corp
[ 25.747449] eth0: Broadcom BCM43b1 802.11 Hybrid Wireless Controller 6.30.223.248 (r487574)

Reports

  • 914975@wl_cfg80211_get_station : Wrong Mac address; In Red Hat Bugzilla; 2013-02.
    tl;dr → CLOSED CANTFIX → Broadcom is not FOSS, it is not supported; was reported against Fedora 18.
  • 1163401[11125.005426] ERROR @wl_cfg80211_get_station : Wrong Mac address ; In Ubuntu Launchpad; 2013-04-02.
    tl;dr → declared a duplicate of 1097519
  • 1097519bcmwl-kernel-source_6.20 update breaks for BCM4313; In Ubuntu Launchpad; 2013-01-08.

Folklore

  • Nick Groenen; Fixing the Broadcom BCM4331 wireless drivers on Ubuntu 13.10; In His Blog; 2013-11-09.
    tl;dr → covers bcmwl-kernel-source_6.20.155.1+bdcom-0ubuntu6_amd64.deb
  • bcmwl-kernel-source of Ubuntu Packages
  • Something about two drivers that almost work …
    • brcmsmac
    • wl
  • Something about the broadcoam-sta-* package(s).
  • Something about the b43driver which is “in tree”
    • that it could or should work or should be made to work
    • Comment 7Re: Use brcmsmac driver for BCM4313

UNSOLVED: Dell M3800 under Fedora 21 (but not Factory Ubuntu 14) does not suspend, runs super-hot, hangs

Indications

Fedora 21 is substantially unuseable except in “immobile” modes.  Upon closing the clamshell to transport, the CPU, GPU & fan run hard and it gets extremely hot.  The unit will not respond on the NIC, the keyboard or anything.  A powercycle is required.  To transport, one must power down.

This does not occur with the Dell-installed Ubuntu 14.04 LTS.  That configuration suspends & resumes appropriately.

Estimate

Seems like the Fedora system is using nouveau while the Ubuntu system is using i915 (Intel).  Both systems have a Quadro K1100M GPU.

Also the use of external displays.   I didn’t test Dell-factory Ubuntu with external displays.  I did exercise Fedora 21 nouveau with an external display.

Remediations

  • Fedora → None known.
  • Ubuntu → Stick with the factory-installed Ubuntu, learn Ubuntu, hope it doesn’t break.

Hardware

  • NVIDIA Corporation GK107GLM [Quadro K1100M]

Differences

  • Fedora 21 → uses nouveau
  • Ubuntu 14.04 LTS → extensive blacklisting of nouveau
    • nvidia_340 is used
    • all other nvidia is blacklisted
    • nouveau is blacklisted
    • See /etc/modprobe/modprobe.d

References

  • Precision Mobile Workstation M3800 Keyboard Guide
    • FN+Insert → “hardware sleep” unlabeled
      is apparently different than powerbutton “software sleep”)

      • Effective when the Power button (tap) does not
      • Yet is ineffective when the GNOME screen saver is active.

Folklore

Previously

Actualities

$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:04.0 Signal processing controller: Intel Corporation Device 0c03 (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM87 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
00:1f.6 Signal processing controller: Intel Corporation 8 Series Chipset Family Thermal Management Controller (rev 05)
02:00.0 3D controller: NVIDIA Corporation GK107GLM [Quadro K1100M] (rev a1)
06:00.0 Network controller: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter (rev 03)
07:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5249 PCI Express Card Reader (rev 01)
grep -le nouveau $(find /etc/modprobe* -type f)
/etc/modprobe.d/nvidia-340_hybrid.conf
$ ls -ld /etc/modprobe.d/nvidia-*
-rw-r--r-- 1 root root 153 Oct  5  2014 /etc/modprobe.d/nvidia-340_hybrid.conf
lrwxrwxrwx 1 root root  49 Jul 14 09:59 /etc/modprobe.d/nvidia-graphics-drivers.conf -> /etc/alternatives/x86_64-linux-gnu_nvidia_modconf
$ cat /etc/modprobe.d/nvidia-340_hybrid.conf 
# This file was installed by nvidia-340
# Do not edit this file manually

blacklist nouveau
blacklist lbm-nouveau
alias nouveau off
$ cd /etc/modprobe.d
$ grep -le nouveau *
nvidia-340_hybrid.conf
nvidia-graphics-drivers.conf
$ ls -l nvidia*
-rw-r--r-- 1 root root 153 Oct  5  2014 nvidia-340_hybrid.conf
lrwxrwxrwx 1 root root  49 Jul 14 09:59 nvidia-graphics-drivers.conf -> /etc/alternatives/x86_64-linux-gnu_nvidia_modconf
s-drivers.conf
wbaker@bijoux:/etc/modprobe.d$ ls -l nvidia*
-rw-r--r-- 1 root root 153 Oct  5  2014 nvidia-340_hybrid.conf
lrwxrwxrwx 1 root root  49 Jul 14 09:59 nvidia-graphics-drivers.conf -> /etc/alternatives/x86_64-linux-gnu_nvidia_modconf
wbaker@bijoux:/etc/modprobe.d$ dpkg -S /etc/modprobe.d/nvidia-*
nvidia-340: /etc/modprobe.d/nvidia-340_hybrid.conf
dpkg-query: no path found matching pattern /etc/modprobe.d/nvidia-graphics-drivers.conf
wbaker@bijoux:/etc/modprobe.d$ dpkg -L nvidia-340
/.
/lib
/lib/udev
/lib/udev/rules.d
/lib/udev/rules.d/69-nvidia-persistenced.rules
/lib/nvidia-340
/lib/nvidia-340/modprobe.conf
/usr
/usr/lib
/usr/lib/vdpau
/usr/lib/xorg
/usr/lib/xorg/modules
/usr/lib/xorg/modules/extensions
/usr/lib/xorg/modules/drivers
/usr/lib/nvidia-340
/usr/lib/nvidia-340/libnvidia-ifr.so.340.46
/usr/lib/nvidia-340/vdpau
/usr/lib/nvidia-340/vdpau/libvdpau_nvidia.so.340.46
/usr/lib/nvidia-340/libnvidia-tls.so.340.46
/usr/lib/nvidia-340/libnvidia-eglcore.so.340.46
/usr/lib/nvidia-340/libGLESv2.so.340.46
/usr/lib/nvidia-340/libnvidia-fbc.so.340.46
/usr/lib/nvidia-340/tls
/usr/lib/nvidia-340/tls/libnvidia-tls.so.340.46
/usr/lib/nvidia-340/bin
/usr/lib/nvidia-340/bin/nvidia-cuda-mps-control
/usr/lib/nvidia-340/bin/nvidia-debugdump
/usr/lib/nvidia-340/bin/nvidia-smi
/usr/lib/nvidia-340/bin/nvidia-persistenced
/usr/lib/nvidia-340/bin/nvidia-xconfig
/usr/lib/nvidia-340/bin/nvidia-bug-report.sh
/usr/lib/nvidia-340/bin/nvidia-cuda-mps-server
/usr/lib/nvidia-340/libnvidia-encode.so.340.46
/usr/lib/nvidia-340/libGL.so.340.46
/usr/lib/nvidia-340/xorg
/usr/lib/nvidia-340/xorg/nvidia_drv.so
/usr/lib/nvidia-340/xorg/libglx.so.340.46
/usr/lib/nvidia-340/alt_ld.so.conf
/usr/lib/nvidia-340/libnvidia-wfb.so.340.46
/usr/lib/nvidia-340/libnvidia-ml.so.340.46
/usr/lib/nvidia-340/libnvidia-glsi.so.340.46
/usr/lib/nvidia-340/libnvidia-glcore.so.340.46
/usr/lib/nvidia-340/libnvidia-cfg.so.340.46
/usr/lib/nvidia-340/libnvidia-compiler.so.340.46
/usr/lib/nvidia-340/ld.so.conf
/usr/lib/nvidia-340/libnvcuvid.so.340.46
/usr/lib/nvidia-340/libGLESv1_CM.so.340.46
/usr/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu/xorg
/usr/lib/nvidia-340-prime
/usr/lib/nvidia-340-prime/alt_ld.so.conf
/usr/lib/nvidia-340-prime/ld.so.conf
/usr/bin
/usr/bin/start-nvidia-persistenced
/usr/share
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/nvidia-340.override
/usr/share/doc
/usr/share/doc/nvidia-340
/usr/share/doc/nvidia-340/NVIDIA_Changelog.gz
/usr/share/doc/nvidia-340/README.txt.gz
/usr/share/doc/nvidia-340/html
/usr/share/doc/nvidia-340/html/powermanagement.html
/usr/share/doc/nvidia-340/html/installationandconfiguration.html
/usr/share/doc/nvidia-340/html/programmingmodes.html
/usr/share/doc/nvidia-340/html/configmultxscreens.html
/usr/share/doc/nvidia-340/html/profiles.html
/usr/share/doc/nvidia-340/html/selectdriver.html
/usr/share/doc/nvidia-340/html/introduction.html
/usr/share/doc/nvidia-340/html/configlaptop.html
/usr/share/doc/nvidia-340/html/vdpausupport.html
/usr/share/doc/nvidia-340/html/xineramaglx.html
/usr/share/doc/nvidia-340/html/nvidia-ml.html
/usr/share/doc/nvidia-340/html/dpi.html
/usr/share/doc/nvidia-340/html/addtlresources.html
/usr/share/doc/nvidia-340/html/flippingubb.html
/usr/share/doc/nvidia-340/html/dma_issues.html
/usr/share/doc/nvidia-340/html/sli.html
/usr/share/doc/nvidia-340/html/depth30.html
/usr/share/doc/nvidia-340/html/minimumrequirements.html
/usr/share/doc/nvidia-340/html/i2c.html
/usr/share/doc/nvidia-340/html/newusertips.html
/usr/share/doc/nvidia-340/html/xcompositeextension.html
/usr/share/doc/nvidia-340/html/acknowledgements.html
/usr/share/doc/nvidia-340/html/framelock.html
/usr/share/doc/nvidia-340/html/sdi.html
/usr/share/doc/nvidia-340/html/configtvout.html
/usr/share/doc/nvidia-340/html/xrandrextension.html
/usr/share/doc/nvidia-340/html/nvidia-smi.html
/usr/share/doc/nvidia-340/html/glxsupport.html
/usr/share/doc/nvidia-340/html/commonproblems.html
/usr/share/doc/nvidia-340/html/openglenvvariables.html
/usr/share/doc/nvidia-340/html/gpunames.html
/usr/share/doc/nvidia-340/html/installdriver.html
/usr/share/doc/nvidia-340/html/editxconfig.html
/usr/share/doc/nvidia-340/html/addressingcapabilities.html
/usr/share/doc/nvidia-340/html/appendices.html
/usr/share/doc/nvidia-340/html/knownissues.html
/usr/share/doc/nvidia-340/html/installedcomponents.html
/usr/share/doc/nvidia-340/html/randr14.html
/usr/share/doc/nvidia-340/html/displaydevicenames.html
/usr/share/doc/nvidia-340/html/nvidia-debugdump.html
/usr/share/doc/nvidia-340/html/nvidia-persistenced.html
/usr/share/doc/nvidia-340/html/index.html
/usr/share/doc/nvidia-340/html/audiosupport.html
/usr/share/doc/nvidia-340/html/faq.html
/usr/share/doc/nvidia-340/html/optimus.html
/usr/share/doc/nvidia-340/html/xconfigoptions.html
/usr/share/doc/nvidia-340/html/configtwinview.html
/usr/share/doc/nvidia-340/html/supportedchips.html
/usr/share/doc/nvidia-340/html/nvidiasettings.html
/usr/share/doc/nvidia-340/html/procinterface.html
/usr/share/doc/nvidia-340/README.Debian
/usr/share/doc/nvidia-340/copyright
/usr/share/doc/nvidia-340/changelog.Debian.gz
/usr/share/nvidia-340
/usr/share/nvidia-340/nvidia-340.grub-gfxpayload
/usr/share/nvidia-340/glamor.conf
/usr/share/nvidia-340/nvidia-application-profiles-340.46-rc
/usr/share/grub-gfxpayload-lists
/usr/share/grub-gfxpayload-lists/blacklist
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/alt-nvidia-340-xconfig.1.gz
/usr/share/man/man1/alt-nvidia-340-persistenced.1.gz
/usr/share/man/man1/alt-nvidia-340-cuda-mps-control.1.gz
/usr/share/man/man1/alt-nvidia-340-smi.1.gz
/usr/share/nvidia
/usr/src
/usr/src/nvidia-340-340.46
/usr/src/nvidia-340-340.46/nv_uvm_interface.h
/usr/src/nvidia-340-340.46/nv-cray.c
/usr/src/nvidia-340-340.46/xapi-sdk.h
/usr/src/nvidia-340-340.46/nverror.h
/usr/src/nvidia-340-340.46/nv-usermap.c
/usr/src/nvidia-340-340.46/os-usermap.c
/usr/src/nvidia-340-340.46/nv-frontend.h
/usr/src/nvidia-340-340.46/nv_uvm_interface.c
/usr/src/nvidia-340-340.46/nv.h
/usr/src/nvidia-340-340.46/nv-drm.c
/usr/src/nvidia-340-340.46/nv-vm.c
/usr/src/nvidia-340-340.46/nv-p2p.h
/usr/src/nvidia-340-340.46/nv-dma.c
/usr/src/nvidia-340-340.46/cpuopsys.h
/usr/src/nvidia-340-340.46/os-pci.c
/usr/src/nvidia-340-340.46/conftest.sh
/usr/src/nvidia-340-340.46/rmretval.h
/usr/src/nvidia-340-340.46/os-mlock.c
/usr/src/nvidia-340-340.46/dkms.conf
/usr/src/nvidia-340-340.46/nv-proto.h
/usr/src/nvidia-340-340.46/nv-frontend.c
/usr/src/nvidia-340-340.46/nv-procfs.c
/usr/src/nvidia-340-340.46/Makefile
/usr/src/nvidia-340-340.46/os-registry.c
/usr/src/nvidia-340-340.46/nv-chrdev.c
/usr/src/nvidia-340-340.46/nv-misc.h
/usr/src/nvidia-340-340.46/gcc-version-check.c
/usr/src/nvidia-340-340.46/nv-gvi.c
/usr/src/nvidia-340-340.46/patches
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.11.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.0.patch
/usr/src/nvidia-340-340.46/patches/register-VT-switch-requirements.patch
/usr/src/nvidia-340-340.46/patches/allow_sublevel_greater_than_5.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.6.patch
/usr/src/nvidia-340-340.46/patches/replace-VM_RESERVED-with-VM_DONTEXPAND-and-VM_DONTDU.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.13.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.14.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.10.patch
/usr/src/nvidia-340-340.46/patches/buildfix_kernel_3.8.patch
/usr/src/nvidia-340-340.46/patches/make-use-of-the-new-uapi-framework.patch
/usr/src/nvidia-340-340.46/nv-p2p.c
/usr/src/nvidia-340-340.46/os-smp.c
/usr/src/nvidia-340-340.46/nv-i2c.c
/usr/src/nvidia-340-340.46/g_nvreadme.h
/usr/src/nvidia-340-340.46/nv-pat.c
/usr/src/nvidia-340-340.46/nv-kernel.o
/usr/src/nvidia-340-340.46/nv.c
/usr/src/nvidia-340-340.46/nvgputypes.h
/usr/src/nvidia-340-340.46/rmil.h
/usr/src/nvidia-340-340.46/nvtypes.h
/usr/src/nvidia-340-340.46/nv-linux.h
/usr/src/nvidia-340-340.46/nv-acpi.c
/usr/src/nvidia-340-340.46/nvidia-modules-common.mk
/usr/src/nvidia-340-340.46/nv-mmap.c
/usr/src/nvidia-340-340.46/os-interface.h
/usr/src/nvidia-340-340.46/nv-mempool.c
/usr/src/nvidia-340-340.46/nv-memdbg.h
/usr/src/nvidia-340-340.46/os-interface.c
/usr/src/nvidia-340-340.46/nv-reg.h
/usr/src/nvidia-340-340.46/nv-vtophys.c
/usr/src/nvidia-340-340.46/nv_gpu_ops.h
/usr/lib32
/usr/lib32/vdpau
/usr/lib32/nvidia-340
/usr/lib32/nvidia-340/libnvidia-ifr.so.340.46
/usr/lib32/nvidia-340/vdpau
/usr/lib32/nvidia-340/vdpau/libvdpau_trace.so.340.46
/usr/lib32/nvidia-340/vdpau/libvdpau.so.340.46
/usr/lib32/nvidia-340/vdpau/libvdpau_nvidia.so.340.46
/usr/lib32/nvidia-340/libnvidia-tls.so.340.46
/usr/lib32/nvidia-340/libnvidia-fbc.so.340.46
/usr/lib32/nvidia-340/tls
/usr/lib32/nvidia-340/tls/libnvidia-tls.so.340.46
/usr/lib32/nvidia-340/libnvidia-encode.so.340.46
/usr/lib32/nvidia-340/libGL.so.340.46
/usr/lib32/nvidia-340/libnvidia-wfb.so.340.46
/usr/lib32/nvidia-340/libnvidia-ml.so.340.46
/usr/lib32/nvidia-340/libnvidia-glsi.so.340.46
/usr/lib32/nvidia-340/libnvidia-glcore.so.340.46
/usr/lib32/nvidia-340/libnvidia-cfg.so.340.46
/usr/lib32/nvidia-340/libnvidia-compiler.so.340.46
/usr/lib32/nvidia-340/libnvcuvid.so.340.46
/usr/lib32/nvidia-340/libGL.la
/etc
/etc/init
/etc/init/nvidia-persistenced.conf
/etc/modprobe.d
/etc/modprobe.d/nvidia-340_hybrid.conf
/usr/lib/nvidia-340/vdpau/libvdpau_nvidia.so
/usr/lib/nvidia-340/vdpau/libvdpau_nvidia.so.1
/usr/lib/nvidia-340/libnvidia-ifr.so
/usr/lib/nvidia-340/libnvcuvid.so.1
/usr/lib/nvidia-340/xorg/libglx.so
/usr/lib/nvidia-340/libnvidia-encode.so
/usr/lib/nvidia-340/libnvidia-compiler.so
/usr/lib/nvidia-340/libnvidia-ifr.so.1
/usr/lib/nvidia-340/libGL.so.1
/usr/lib/nvidia-340/libnvidia-ml.so
/usr/lib/nvidia-340/libnvidia-cfg.so
/usr/lib/nvidia-340/libnvcuvid.so
/usr/lib/nvidia-340/libGL.so
/usr/lib/nvidia-340/libnvidia-encode.so.1
/usr/lib/nvidia-340/libnvidia-cfg.so.1
/usr/lib/nvidia-340/libnvidia-ml.so.1
/usr/lib/nvidia-340/libnvidia-compiler.so.1
/usr/lib32/nvidia-340/vdpau/libvdpau_nvidia.so
/usr/lib32/nvidia-340/vdpau/libvdpau_nvidia.so.1
/usr/lib32/nvidia-340/libnvidia-ifr.so
/usr/lib32/nvidia-340/libnvcuvid.so.1
/usr/lib32/nvidia-340/libnvidia-encode.so
/usr/lib32/nvidia-340/libnvidia-compiler.so
/usr/lib32/nvidia-340/libnvidia-ifr.so.1
/usr/lib32/nvidia-340/libGL.so.1
/usr/lib32/nvidia-340/libnvidia-ml.so
/usr/lib32/nvidia-340/libnvidia-cfg.so
/usr/lib32/nvidia-340/libnvcuvid.so
/usr/lib32/nvidia-340/libGL.so
/usr/lib32/nvidia-340/libnvidia-encode.so.1
/usr/lib32/nvidia-340/libnvidia-cfg.so.1
/usr/lib32/nvidia-340/libnvidia-ml.so.1
/usr/lib32/nvidia-340/libnvidia-compiler.so.1

Experiences with the Dell M3800 with Fedora 21 and the nouveau driver

Whereas

Suspend & graphics are (ahem)interacting poorly on the Dell M3800 under Fedora 21.

Question

But does it work with the Ubuntu shipped from the factory by Dell?   TBD.

Previously

Experiences with the Dell M3800, The Good, The Bad (no Ugly, it’s a beautiful machine)

Evidences

  • Fedora 21
  • Kernel 4.0.7
    Linux devbox.example.com 4.0.7-200.fc21.x86_64 #1 SMP Mon Jun 29 22:11:52 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
  • $ rpm -q -a | grep nouveau
    xorg-x11-drv-nouveau-1.0.11-1.fc21.x86_64

Actualities

Graphics Crashes

These manifest as the graphics becomes inoperable; the CPU is running hard, the fan is running hard. Even virtual consoles will not work. You must powercycle.

Jul 24 19:52:10 devbox.example.ccom kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Jul 24 19:52:24 devbox.example.com kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Jul 24 19:52:55 devbox.example.com kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]

 

Experiences with the Dell M3800 with Fedora 21 and Broadcom’s Bluetooth brcm/BCM20702A0-0a5c-216f.hcd binary blob

tl;dr

You need a blob for the driver BCM20702A0-0a5c-216f.hcd

Update 2015-09-28: some success is reported

Whereas

Bluetooth is not working on the Dell M3800 under Fedora 21.

Question

But does it work with the Ubuntu shipped from the factory by Dell?   TBD.

Previously

Experiences with the Dell M3800, The Good, The Bad (no Ugly, it’s a beautiful machine)

Evidences

  • Fedora 21
  • Kernel 4.0.7
    Linux devbox.example.com 4.0.7-200.fc21.x86_64 #1 SMP Mon Jun 29 22:11:52 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
  • linux-firmware-20150521-48.git3161bfa4.fc21.noarch

Recipe

Recipe #1

Via: Dell XPS 13 (2015); staff; In Arch Linux Forums; 2015-07-25

<quote>

Note: Intel WiFi users: If your WiFi card supports Bluetooth, then the BT interface should be available out-of-the-box, as the required firmware is included in linux-firmware.

The Broadcom Bluetooth firmware is not available in the kernel (source), so you will have to retrieve it from the Windows driver. You need to extract the .cab file with cabextract and then convert it to a .hcd file with hex2hcd from bluez-utils:

$ cabextract 20662520_6c535fbfa9dca0d07ab069e8918896086e2af0a7.cab
$ hex2hcd BCM20702A1_001.002.014.1443.1572.hex
# mv BCM20702A1_001.002.014.1443.1572.hcd /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd
# ln -rs /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd

After reboot, the firmware should be available for your Bluetooth interface.

</quote>

Recipe #2

Via: Bluetooth not connecting to devices even though it recognizes them; Aaron Weinberg, some dude using the self-asserted identity token Jeremy31, Ian Mackinnon; In Ask  Ubuntu; 2015-05-01 → 2015-07-01.

Recipe #2(a)

<quote>

wget https://www.dropbox.com/s/r2pb41rhx65t9zi/BCM20702A0-0a5c-216f.hcd sudo cp BCM20702A0-0a5c-216f.hcd /lib/firmware/brcm/ sudo modprobe -r btusb sudo modprobe btusb

</quote>

And as recovered by me from the dropbox site.  Proven to work on my Dell M3800 <paranoid>but who knows what I recovered?</paranoid>

$ for i in md5sum sha1sum sha256sum ; do $i BCM20702A0-0a5c-216f.hcd; done
356ecc4d52b344109b55b3c96d6ec4d0  BCM20702A0-0a5c-216f.hcd
6ab9dde1e010bacfd57d371f832477d819fd671a  BCM20702A0-0a5c-216f.hcd
42677905be180547d4c6f3e670884f6b5bcaf003c1a7c156e2dfc6fdc0397364  BCM20702A0-0a5c-216f.hcd
Recipe #2(b)

<quote>
Get 20662520_6c535fbfa9dca0d07ab069e8918896086e2af0a7.cab from Microsoft at Broadcom Corporation Bluetooth Controller.
Acquire cabextract via yum (dnf).
Run cabextract 20662520_6c535fbfa9dca0d07ab069e8918896086e2af0a7.cab to recover BCM20702A1_001.002.014.1443.1572.hex.

git clone https://github.com/jessesung/hex2hcd.git
make -C hex2hcd
./hex2hcd/hex2hcd BCM20702A1_001.002.014.1443.1572.hex BCM20702A0-0a5c-216f.hcd
sudo cp BCM20702A0-0a5c-216f.hcd /lib/firmware/brcm/
sudo modprobe -r btusb
sudo modprobe btusb

Folklore

In archaeological order, newer on top, older below.
And recall that the Dell M3800 is “alot like” the Dell XPS 13.

  • Dell XPS 13 (2015); staff; In Arch Linux Forums; 2015-07-25
    tl;dr → see recipe above.  You must to extract the blog out of the Windows driver package yourself, convert the encoding and place the file appropriiately.  Yourself.  No packaging is available at this time.  Construction recipe for:

    • /usr/lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd
    • /usr/lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd
  • Bluetooth not connecting to devices even though it recognizes them; Aaron Weinberg, some dude using the self-asserted identity token Jeremy31, Ian Mackinnon; In Ask  Ubuntu; 2015-05-01 → 2015-07-01.
    tl;dr → good compendium of the recipes; those being recited above.

    • Concept
      <quote>hex2hcd utility by Jesse Sung that converts Broadcom hex files to hcd for use in newer kernels but you have to use Windows drivers and search the inf files to find the correct hex file to convert.</quote>
    • Resources
      • BCM20702A0-0a5c-216f.hcd; at DropBox; prepared by whom? (perhaps en Jeremy31?); no checksum or signature is published nearby.
      • jessesung/hex2hcd at GitHub
      • Broadcom Corporation Bluetooth Controller, software update, At Microsoft; released 2014-06.
        20662520_6c535fbfa9dca0d07ab069e8918896086e2af0a7.cab → some Windows blob you have to use cabstract upon; no checksum or signature is available to you (maybe Microsoft has access to such in their API, who knows).
    • References
      • XPS 13 (9343) Ubuntu Linux; Some Dude; In Sybian Linux; 2015-03-15.
        tl;dr → <quote>whole lot of complaints about the compatibility of this laptop with Linux.</quote> but enumerates the remediations.

        • BIOS update from A0 to A1
        • Ubuntu LTS 14.04.2 with UEFI enabled
        • Broadcom 4352 WiFi (use USB dongle networking to bootstrap it)
        • Broadcom 216F Bluetooth (acquiring BCM20702A0-0a5c-216f.hcd
        • Touchpad requires kernel parameters
        • (Analog) Audio requires kernel parameters
      • How can I get the Bluetooth working on my Lenovo  Yoga 3; Some dude using the self-asserted identity token drs; In Stack Exchange; 2015-03-12.
        tl;dr → complete procedure for Broadcom BCM20702A0 including fishing around in the Broadcom Windows Driver Installer to discover BCM20702A1_001.002.014.1443.1496.hex
  • Dell XPS 13 (9343) Developer Edition – Bluetooth Firmware; Some Dude, using the self-asserted identity token Beowulf; In His Blog; 2015-06-23.
    this advice is unrelated ot the Plugable advice (last item)
    tl;dr → asserts a recipe for manually acquiring & installing the module

    • The module is bfusb
    • That the appropriate firmware is available in bt-dw1560-firmware_1.0_all.deb
    • Gives a recipe for copying it into place, manually.
  • Dell XPS 13 (9343) – No Bluetooth; Some dude using the self-asserted identity token red-lichtie; In Arch Linux Forums; 2015-06-20.
    tl;dr → cites the difference in hardware version number in the firmware blob that must be loaded
    brcm/BCM20702A1-0a5c-216f.hcd is what? (possible?)
    brcm/BCM20702A0-0a5c-216f.hcd is expected but not found.
  • THIS IS A DIFFERENT DEVICE ENTIRELY Plugable USB Bluetooth Adapter: Solving HFP/HSP and A2DP Profiles Issues on Linux; (Plugable); In their Blog; 2014-06-23.
    tl;dr → recommends downloading & installing some unspecified binary blob sourced out of Amazon S3; not even a checksum was uttered to know what was to be expected.
    wget https://s3.amazonaws.com/plugable/bin/fw-0a5c_21e8.hcd
    sudo mv fw-0a5c_21e8.hcd /lib/firmware/brcm/BCM20702A0-0a5c-21e8.hcd

Actualities

Jul 24 19:52:10 devbox.example.com kernel: bluetooth hci0: firmware: brcm/BCM20702A0-0a5c-216f.hcd will not be loaded
Jul 24 19:52:10 devbox.example.com kernel: Bluetooth: hci0: BCM: patch brcm/BCM20702A0-0a5c-216f.hcd not found
$ find /usr/lib/firmware/brcm -print | while read file ; do echo "$file $(rpm -q -f $file)" ; done
$ find /usr/lib/firmware/brcm -print | while read file ; do rpm=$(rpm -q -f $file); echo "$rpm $file" ; done
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43570-pcie.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43362-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/bcm4329-fullmac-4.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4354-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43143.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43340-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43236b.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43602-pcie.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4334-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/bcm43xx-0.fw
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43241b5-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/bcm43xx_hdr-0.fw
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4330-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43569.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43143-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43455-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4335-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43602-pcie.ap.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4356-pcie.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4329-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43241b4-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43241b0-sdio.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac43242a.bin
linux-firmware-20150521-48.git3161bfa4.fc21.noarch /usr/lib/firmware/brcm/brcmfmac4339-sdio.bin
$ lsusb
Bus 004 Device 002: ID 8087:8000 Intel Corp.
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:8008 Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 0bda:8153 Realtek Semiconductor Corp.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0a5c:216f Broadcom Corp.
Bus 001 Device 002: ID 04f3:21f9 Elan Microelectronics Corp.
Bus 001 Device 004: ID 0bda:573c Realtek Semiconductor Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
$ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
    |__ Port 2: Dev 2, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 6: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 9: Dev 3, If 0, Class=Vendor Specific Class, Driver=btusb, 12M
    |__ Port 9: Dev 3, If 1, Class=Vendor Specific Class, Driver=btusb, 12M
    |__ Port 9: Dev 3, If 2, Class=Vendor Specific Class, Driver=, 12M
    |__ Port 9: Dev 3, If 3, Class=Application Specific Interface, Driver=, 12M
    |__ Port 11: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 11: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
$ lsusb --verbose
<snip/>
Bus 001 Device 003: ID 0a5c:216f Broadcom Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass         1
  bDeviceProtocol         1
  bMaxPacketSize0        64
  idVendor           0x0a5c Broadcom Corp.
  idProduct          0x216f
  bcdDevice            1.12
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          218
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Couldn't open device, some information will be missing
Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1
      bInterfaceProtocol      1
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       254 Application Specific Interface
      bInterfaceSubClass      1 Device Firmware Update
      bInterfaceProtocol      1
      iInterface              0
      Device Firmware Upgrade Interface Descriptor:
        bLength                             9
        bDescriptorType                    33
        bmAttributes                        5
          Will Not Detach
          Manifestation Tolerant
          Upload Unsupported
          Download Supported
        wDetachTimeout                   5000 milliseconds
        wTransferSize                      64 bytes
        bcdDFUVersion                   1.10
<snip/>

Experiences with the Dell M3800, The Good, The Bad (no Ugly, it’s a beautiful machine)

Remaining UNSOLVED

Suspend does not function; you must power off before you go mobile.

  • Early in the boot lifetime
    • it does work
    • after a few hours of uptime, it does not
  • Later in the boot cycle
    • The initial suspend works on powerbutton or lid close.
    • Yet five+ seconds later, it comes back alive at full power & heat.
    • Then the cpu is running hard, getting hot, very hot
      it will overheat if left in a suitcase.
    • The screen is dark & the network is unresponsive; it is hard hung.
    • A powercycle is required.

Following

The Good

  • The native 4k2k display is worth the buy-in.
  • The HDMI2-MHL runs 4K2K externally over the HDMI port.  Neat!

The Bad

  • Uses Broadcom componentry
    which is known Linux-unfriendly
    but maybe it’s different here, different now

    • Wireless → SOLVED (a binary blobs in rpms: broadcom-wl, kmod-wl)
    • Bluetooth → SOLVABLE (a binary blob & extraordinary non-standard reencoding & manual installation)
  • No wireline ethernet; use the USB-to-RJ45 dongle DP/N 0J1GH5.

Yet

remember the good

  • 4k2k display
  • super-thin
  • Intel i7
  • 1T SSD
  • Does run Fedora 21 … except for the exceptions.

The Ugly

No ugly, it’s a beautiful machine.  See?

Complaints

Yet, we came to complain. There is stuff that “just does not work.”

  • The bluetooth does not “just work,” whereas it does “just work” elsewhere (on Fedora 20)
    Potentially Solvable
  • The graphics hangs & crashes … alot. Especially when coming out of suspend. this is the nouveau driver.
    UNSOLVED
  • The unit cannot be reliably suspended and put in a closed space. It will go into overheat mode.  The CPU runs hard.
    UNSOLVED.

Evidences

  • Fedora 21
  • Kernel 4.0.7
    Linux devbox.example.com 4.0.7-200.fc21.x86_64 #1 SMP Mon Jun 29 22:11:52 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Actualities

Graphics Crashes

These manifest as the graphics becomes inoperable; the CPU is running hard, the fan is running hard. Even virtual consoles will not work. You must powercycle.

Jul 24 19:52:10 devbox.example.ccom kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Jul 24 19:52:24 devbox.example.com kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]
Jul 24 19:52:55 devbox.example.com kernel: nouveau E[    PBUS][0000:02:00.0] MMIO write of 0x00000002 FAULT at 0x4188ac [ IBUS ]

ACPI Scary Warnings

Jul 24 19:52:30 devbox.example.com kernel: ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150204/nsarguments-95)
Jul 24 19:52:30 devbox.example.com kernel: ACPI: \_SB_.PCI0.PEG0.PEGP: failed to evaluate _DSM
Jul 24 19:52:30 devbox.example.com kernel: ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150204/nsarguments-95)
Jul 24 19:53:01 devbox.example.com kernel: ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150204/nsarguments-95)
Jul 24 19:53:01 devbox.example.com kernel: ACPI: \_SB_.PCI0.PEG0.PEGP: failed to evaluate _DSM
Jul 24 19:53:01 devbox.example.com kernel: ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150204/nsarguments-95)

 

Bringing up wirelessness (wlp6s0) on the Dell M3800 under Fedora 21

Solution

You need the packages

  • broadcom-wl
  • kmod-wl

Automatically

  • With the correct driver module installed, it “just works” on boot.

Manually

  • modprobe wl

Witness

$ ip addr show wlp6s0
5: wlp6s0:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether c4:8e:8f:f4:ec:fd brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.64/24 brd 192.168.1.255 scope global dynamic wlp6s0
       valid_lft 3563sec preferred_lft 3563sec
    inet6 fe80::c68e:8fff:fef4:ecfd/64 scope link 
       valid_lft forever preferred_lft forever

Original State

  • Works under the factory-installed Ubunto 14.14
  • Not recognized under stock Fedora 21 (wlan0 does not even show up).

Previously

  • Bringing up Fedora 21 on the Dell M3800 with a 4K2K Display; herein; 2015-07-07.
    tl;dr → partial success in bringup

    • wireless networking → unsolved (solved here)
    • wireline networking → solved (pesky dongle)
    • HiDPI Display → solved (GNOME settings)
    • Bluetooth → partial, you need a blob, the blob survive suspend-resume; status.
    • Suspend/Resume → UNSOLVED remains not working (does not suspend, dangerously overheats, arbitrary hang of the GPU); this makes the machine substantially unuseable beyond the hobbyist/tinkerist use case. status
  • Dell M3800 Mobile Workstation, ships with Linux, herein; 2015-03-31.
    tl;dr → promotional images, references to the promotional history

Dell M3800, ships with LinuxDell Precision M3800 Mobile workstation, ships with Linux

Configured
  • Ubuntu, surely it will work with Fedora
  • 4K2K display (3180×2160)
  • 16GB RAM
  • 1TB mSATA
Standard
  • NVIDIA Quadro K1100M
  • 4th Generation Intel i7 (Haswell)
Issues
  • No RJ45 Ethernet; need a USB-to-Ethernet dongle. :-(

Factoids

  • Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter
  • Fedora 21
  • Kernel 4.0.6 (upgraded from the stock install)

broadcom-wl

This package contains the license, README.txt and configuration files for the Broadcom 802.11 Linux STA Driver for WiFi, a Linux device driver for use with Broadcom\’s BCM4311-, BCM4312-, BCM4313-, BCM4321-, BCM4322-, BCM43142-, BCM43224-, BCM43225-, BCM43227-, BCM43228-, BCM4331-, BCM4360 and -BCM4352- based hardware.

Content of RPM:
/etc/akmods/akmod-wl/api
/etc/dracut.conf.d/20-wl.conf
/usr/lib/modprobe.d/broadcom-wl-blacklist.conf
/usr/share/doc/broadcom-wl
/usr/share/doc/broadcom-wl/LICENSE.txt
/usr/share/doc/broadcom-wl/README_6.30.223.248.txt
/usr/share/doc/broadcom-wl/fedora.readme

Folklore

Based on information, belief & hearsay, as seen written.

  • Broadcom is not “well-supported” in Linux prior to kernel 3.17.x
    Atheros & Intel are “well-supported”
  • Something about the 3.17 kernel not working with kernel 3.17

Experiences

References

  • brcm80211Broadcom brcmsmac(PCIe) and brcmfmac(SDIO/USB) drivers; In Linux Wireless, a wiki.
    tl;dr → does not seem to mention the Broadcom BCM4352
  • Broadcom 802.11 Drivers for Linux; Broadcom
    tl;dr → unhelpful.
  • 1027651Wireless driver for Broadcom BCM4352 802.11 Hybrid Wireless Controller 6.30.223.95; In Red Hat Bugzilla; 2013-11-07 → 2014-03-19.
    tl;dr → mentions brdcm80211 is not in Fedora because <quote ref=”commentariat“> <snip/>is only partially compiled and the majority is a binary blob. That is all the excuse one need to not push it upstream.</quote>  Broadcom gets a FAIL on Open Source (through 2014-03).
    Claimed in <quote ref=”brcm80211“>Completely open source host drivers, no binary object files. </quote>

Actualities

$ ifconfig -a
ifconfig: reminder, is interactive; using ip instead
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s20u3:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 9c:eb:e8:24:3a:98 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.158/24 brd 192.168.0.255 scope global dynamic enp0s20u3
       valid_lft 86101sec preferred_lft 301sec
    inet6 fdd3:34cd:f133:0:9eeb:e8ff:fe24:3a98/64 scope global noprefixroute dynamic 
       valid_lft 86396sec preferred_lft 86396sec
    inet6 fe80::9eeb:e8ff:fe24:3a98/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0:  mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 82:7d:3d:25:6b:f6 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
$ rfkill list
0: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no
1: nfc0: NFC
	Soft blocked: no
	Hard blocked: no
$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:04.0 Signal processing controller: Intel Corporation Device 0c03 (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM87 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
00:1f.6 Signal processing controller: Intel Corporation 8 Series Chipset Family Thermal Management Controller (rev 05)
02:00.0 3D controller: NVIDIA Corporation GK107GLM [Quadro K1100M] (rev a1)
06:00.0 Network controller: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter (rev 03)
07:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5249 PCI Express Card Reader (rev 01)
$ lsusb
Bus 004 Device 002: ID 8087:8000 Intel Corp. 
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:8008 Intel Corp. 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0a5c:216f Broadcom Corp. 
Bus 001 Device 003: ID 04f3:21f9 Elan Microelectronics Corp. 
Bus 001 Device 002: ID 0bda:8153 Realtek Semiconductor Corp. 
Bus 001 Device 005: ID 0bda:573c Realtek Semiconductor Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ cat /etc/modprobe.d/openfwwf.conf 
options b43 nohwcrypt=1 qos=0
$ rpm -q -f /etc/modprobe.d/openfwwf.conf
b43-openfwwf-5.2-11.fc21.noarch
$ sudo yum install -y broadcom-wl
Loaded plugins: auto-update-debuginfo, langpacks
collected-by-http                                                                                   | 3.0 kB  00:00:00
rpmfusion-free-updates                                                                              | 2.7 kB  00:00:00
rpmfusion-nonfree-updates                                                                           | 2.7 kB  00:00:00
updates/21/x86_64/metalink                                                                          |  12 kB  00:00:00
updates                                                                                             | 4.9 kB  00:00:00
updates/21/x86_64/primary_db                                                                        | 8.4 MB  00:00:29
(1/4): rpmfusion-nonfree-updates/21/x86_64/primary_db                                               | 146 kB  00:00:01
(2/4): rpmfusion-free-updates/21/x86_64/primary_db                                                  | 355 kB  00:00:01
(3/4): updates/21/x86_64/updateinfo                                                                 | 1.3 MB  00:00:06
(4/4): updates/21/x86_64/pkgtags                                                                    | 1.6 MB  00:00:13
Resolving Dependencies
--> Running transaction check
---> Package broadcom-wl.noarch 0:6.30.223.248-3.fc21 will be installed
--> Processing Dependency: wl-kmod >= 6.30.223.248 for package: broadcom-wl-6.30.223.248-3.fc21.noarch
--> Running transaction check
---> Package kmod-wl.x86_64 0:6.30.223.248-8.fc21.5 will be installed
--> Processing Dependency: kmod-wl-4.0.7-200.fc21.x86_64 >= 6.30.223.248-8.fc21.5 for package: kmod-wl-6.30.223.248-8.fc21.5.x86_64
--> Running transaction check
---> Package kmod-wl-4.0.7-200.fc21.x86_64.x86_64 0:6.30.223.248-8.fc21.5 will be installed
--> Processing Dependency: kernel-uname-r = 4.0.7-200.fc21.x86_64 for package: kmod-wl-4.0.7-200.fc21.x86_64-6.30.223.248-8.fc21.5.x86_64
--> Running transaction check
---> Package kernel-core.x86_64 0:4.0.7-200.fc21 will be installed
--> Finished Dependency Resolution
Dependencies Resolved

===========================================================================================================================
Package Arch Version Repository Size
===========================================================================================================================
Installing:
broadcom-wl noarch 6.30.223.248-3.fc21 rpmfusion-nonfree-updates 24 k
Installing for dependencies:
kernel-core x86_64 4.0.7-200.fc21 updates 19 M
kmod-wl x86_64 6.30.223.248-8.fc21.5 rpmfusion-nonfree-updates 19 k
kmod-wl-4.0.7-200.fc21.x86_64 x86_64 6.30.223.248-8.fc21.5 rpmfusion-nonfree-updates 1.5 M

Transaction Summary
===========================================================================================================================
Install 1 Package (+3 Dependent packages)

Total download size: 21 M
Installed size: 49 M
Downloading packages:
(1/4): broadcom-wl-6.30.223.248-3.fc21.noarch.rpm | 24 kB 00:00:00
(2/4): kmod-wl-6.30.223.248-8.fc21.5.x86_64.rpm | 19 kB 00:00:01
kernel-core-4.0.7-200.fc21.x86 FAILED ] 190 kB/s | 802 kB 00:01:47 ETA
ftp://ftp.uci.edu/mirrors/fedora/linux/updates/21/x86_64/k/kernel-core-4.0.7-200.fc21.x86_64.rpm: [Errno 14] curl#7 - "Failed to connect to ftp.uci.edu port 21: Connection refused"
Trying other mirror.
(3/4): kmod-wl-4.0.7-200.fc21.x86_64-6.30.223.248-8.fc21.5.x86_64.rpm | 1.5 MB 00:00:05
(4/4): kernel-core-4.0.7-200.fc21.x86_64.rpm | 19 MB 00:01:07
---------------------------------------------------------------------------------------------------------------------------
Total 299 kB/s | 21 MB 00:01:10
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction (shutdown inhibited)
Installing : kernel-core-4.0.7-200.fc21.x86_64 1/4
Installing : broadcom-wl-6.30.223.248-3.fc21.noarch 2/4
Installing : kmod-wl-4.0.7-200.fc21.x86_64-6.30.223.248-8.fc21.5.x86_64 3/4
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_scan_done
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_disconnected
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_new_nm
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_inform_bss_width_frame
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_register
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_put_bss
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_roamed
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_inform_bss_width
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_gtk_rekey_notify
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_ibss_joined
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_michael_mic_failure
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_connect_result
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_unregister
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_get_bss
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol __ieee80211_get_channel
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol ieee80211_channel_to_frequency
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_report_wowlan_wakeup
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol ieee80211_frequency_to_channel
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_free
Installing : kmod-wl-6.30.223.248-8.fc21.5.x86_64 4/4
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_scan_done
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_disconnected
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_new_nm
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_inform_bss_width_frame
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_register
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_put_bss
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_roamed
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_inform_bss_width
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_gtk_rekey_notify
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_ibss_joined
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_michael_mic_failure
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_connect_result
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_unregister
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_get_bss
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol __ieee80211_get_channel
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol ieee80211_channel_to_frequency
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol cfg80211_report_wowlan_wakeup
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol ieee80211_frequency_to_channel
depmod: WARNING: /lib/modules/4.0.7-200.fc21.x86_64/extra/wl/wl.ko needs unknown symbol wiphy_free
Verifying : kmod-wl-4.0.7-200.fc21.x86_64-6.30.223.248-8.fc21.5.x86_64 1/4
Verifying : kmod-wl-6.30.223.248-8.fc21.5.x86_64 2/4
Verifying : broadcom-wl-6.30.223.248-3.fc21.noarch 3/4
Verifying : kernel-core-4.0.7-200.fc21.x86_64 4/4

Installed:
broadcom-wl.noarch 0:6.30.223.248-3.fc21

Dependency Installed:
kernel-core.x86_64 0:4.0.7-200.fc21 kmod-wl.x86_64 0:6.30.223.248-8.fc21.5
kmod-wl-4.0.7-200.fc21.x86_64.x86_64 0:6.30.223.248-8.fc21.5

Complee!
$ uname -a
Linux sonsie.example.com 4.0.6-200.fc21.x86_64 #1 SMP Tue Jun 23 13:59:12 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Somewhat SOLVED: Bringing up Fedora 21 on the Dell M3800 with a 4K2K Display

Just Works … (almost)completely

  • Installation of Fedora via wireline ethernet (network install) is not possible
  • Installation of Fedora via wireless network not offered.
  • Installation of Fedora via (legacy BIOS boot) USB media … just works.
  • Wireless networking does not work under Fedora [NOT SOLVEDSOLVED]

Once Fedora (Fedora 21) is installed, the network works as it should.

Background

Wireless Network

Does not work.  No wireless networking capability is recognized by Fedora. It worked under the native Ubuntu from Dell.  TODO.

Wireline Network

There s no win or workaround here.  Dell does not provide a wireline NIC on the M3800.  The USB dongle is not supported in BIOS during the network install scenario.  You lose.  You must use a USB stick.

Some dude explored all the options in Dell laptops, including the M3800 to assess which of the BIOS and USB-to-Ethernet dongles would “work.”  Windows-centric (there is some sort of Windows7-vs-Windows8 issue going on for that culture).  The net of the issue is that while the in-ROM PXE will operate the USB-to-Ethernet dongles for long enough to bring over a kernel, once the kernel itself attempts to assert control over the devices from PXE, then the USB controller drops back into HCI mode only, the network-capable hardware “disappears” off the USB bus.  There is no workaround, it is a (legacy) BIOS thing; UEFI does not support network booting in this scenario at all.

References

  • That blog post.

HiDPI Display

The whole point of this machine was the 4K2K display.  Wiithout intervention, it render similarly to an HDMI display, that is comfortable to read at 15″; to get it to use the full native resolution, which can be uncomfortable to read at 15″ you will need some settings.

To avail yourself of the “High DPI” screen you will need to establish that in GNOME, else you’ll have what amounts to a HDMI-scale screen.  At runtime, within a GNOME session, declare:

gsettings set org.gnome.desktop.interface scaling-factor 1

This wasn’t necessary when using a 31″ display (on Fedora 19 & Fedora 20), but is absolutely necessary using a 15″ display (on Fedora 21).

Definitions

<quote> cite=”ref”>HiDPI (High Dots Per Inch) displays, also known by Apple’s “Retina Display” marketing name, are screens with a high resolution in a relatively small format. They are mostly found in Apple products or high-end “ultrabooks”, as well as in 4K (Ultra HD) or even 5K monitors.</quote>

<quote cite=”ref“>Hi-dpi support means that applications render at half the available screen resolution to avoid content that is defined in terms of pixels from becoming tiny. Effectively, this means treating 2×2 blocks as device pixels as application pixels, with the extra twist that data that is available in high resolution (e.g. svgs or fonts) can be rendered at the full resolution. </quote>

References

  • HiDPI; Some Dude; In Arch Linux Wiki; 2015-07-05.
    tl;dr → declares for GNOME as the first solution recipe.
  • Hi-DPI; MatthiasClasen‘; In GNOME Wiki; 2014-12-21
    tl;dr → discursive, not very helpful avoids any mention of gsettings or org.desktop.interface.scaling-factor, mentions gnome-tweak-tool but not what to do with it, discusses detailed application-specific workarounds (avoid these, GNOME works just fine with scaling-factor)
  • How to debug Xorg problems; In Fedora Documentation; 2015.
    tl;dr → this is not a “problem” in Xorg, rather it is a feature of HiDPI displays
    Useful

    • /var/log/Xorg.0.logno longer exists in Fedora; each release has a different way of recovering the logfile, perhaps the changes have stabilized
      • Fedora 22 → journalctl -b _COMM=gdm-x-session
      • Fedora 21 → journalctl -b _COMM=Xorg.bin
      • Fedora 20 → journalctl -b _COMM=Xorg
      • Fedora 19 (& prior) still used /var/log/Xorg.0.log

Folklore

  • Use scaling-factor 2 to get something approximating an HDMI (HD-type) resolution.
  • Use scaling-factor 1 to get the native resolution
  • Use scaling-factor 0 to get (what?)
  • Use gsettings reset to recover the default
  • Use gsettings get to recover the current setting.
  • Of course, gnome-settings-daemon must be running.

Discussions

Dell M3800 Mobile Workstation, ships with [Ubuntu] Linux (Fedora has issues)

Dell M3800, ships with LinuxDell Precision M3800 Mobile workstation, ships with Linux

Configured

  • Ubuntu, surely it will work with Fedora
  • 4K2K display (3180×2160)
  • 16GB RAM
  • 1TB mSATA

Standard

  • NVIDIA Quadro K1100M
  • 4th Generation Intel i7 (Haswell)

Issues

  • No RJ45 Ethernet; need a USB-to-Ethernet dongle.

Promotions

Archaeological order, derivitave and “metoo” stuff on top, original work and announcements below.

Heavy, heavy, retargeting off of the product page.

Dell Precision M3800 CTO Laptop, RetargetingProgram

Order

Dell M3800; Complete Order Page 1; Screenshot from 2015-03-30 19:20:33, tranche 1Dell M3800; Complete Order Page 1; Screenshot from 2015-03-30 19:20:33, tranche 2Dell M3800; Complete Order Page 1; Screenshot from 2015-03-30 19:20:33, tranche 3M3800; Complete Order Page 1; Screenshot from 2015-03-30 19:20:33, tranche 4Dell M3800; Complete Order Page 1; Screenshot from 2015-03-30 19:20:33, tranche 5