Linux: Surface Tablets und Laptops mit eigenem Kernel-Repo

„Du saga mal, Du hascht doch des Suuhrfaze, gibtsch da scho wos njeues pführ?“ hallte es aus dem mitfünfziger Herrn am Tisch gegenüber. Freundlich, aber bestimmt, machte Ihm mein Sitznachbar darauf aufmerksam, daß er kurz hinter Kiel wäre und folglich kaum zu verstehen sei. Dies schien den Herrn genauso wenig zu stören, wie der Umstand, daß mein Sitznachbar eher andigital veranlagt ist und es sich bei dem Gerät vielmehr um eine kurz Präsentationsleihgabe meinerseits handelte.

Nachdem die beiden Fischköpfe ( wir… vermutlich ) kurz getuschelt hatten, übersetzte eine junge Dame (Bezeichnung Anna-Luisa o7) für uns (daher auch die grobe Entschlüsselung oben) und es entstand eine schöne , wenn auch sehr kurze, Unterhaltung zum Thema: Linux auf einem Surface Pro 4.

Surface Tablets und Laptops mit eigenem Kernel-Repo

„Ja, da gibts was njeues.. ehm.. neues“ und für Euch schalte ich das Gespräch mal auf Allwissenden Erzähler um, sonst darf ich mich in Bayern gar nimmer sehen lassen. Also, Ja Leute, es gibt eine nicht mehr ganz taufrische Entwicklung, die teils sehr erfreulich, weil unheimlich praktisch ist, andererseits leider nicht so ganz funktioniert. Letzterer Teil wird derzeit noch untersucht.

Seit einige Monaten gibt es im Github einen eigenen Prebuild-Kernel für Arch, Debian und Fedora. Den richtet Ihr Euch so für Fedora ein:

  1. Das Repo hinzufügen:

sudo dnf config-manager --add-repo=https://pkg.surfacelinux.com/fedora/linux-surface.repo

2. Den Kernel  installieren:

sudo dnf install kernel-surface surface-firmware surface-secureboot
sudo dnf install --allowerasing libwacom-surface

3. Letztere Anweisung ist eher optional, falls man mit Wacom Probleme hat., was auch die Stifteingabe betrifft.

Surface rebooten, den neuen Kernel auswählen und jetzt kommt es drauf an, ob Ihr ein SP4/SB1 habt oder ein anderes Surfacegerät Euer eigen nennt, denn bei mir (SP4) bootet der Kernel zwar sauber, aber IPTS ist nicht da, was man allerdings für Touchbedienung braucht.  So bin ich kaum einen Schritt weiter als mit dem Kernel von Fedora selbst. Ein Problem an dem derzeit gearbeitet wird.

Und da ist auch schon die Lösung … ( sowas von genial den Artikel schon Tage im Voraus zu schreiben 😀 ) … dem mangelnden Touchsupport kann man so begegnen:

[root@surface]# rmmod ipts
[root@surface]# insmod /lib/modules/5.5.8-1.surface.fc30.x86_64/kernel/drivers/input/touchscreen/ipts/ipts.ko.xz singletouch=y

Was man dann so verewigt:

echo „options ipts singletouch=y“ > /etc/modprobe.d/ipts.conf

Man muß aber wissen, das dann der Stiftsupport abgeschaltet ist. Außerdem ist im 5.5er Kernel die Multitouch-Support komischerweise abgeschaltet, wer das braucht, muß den LTS Kernel 4.19 installieren. Ob das bei einem aktuellen Fedora 30/31/32 eine gute Idee ist, mag ich nicht entscheiden wollen. Allerdings hatte der 5.3er noch Multitouch dabei. Da frage ich mich jetzt, wieso das abgeschaltet wurde.

Weniger Energieverbrauch .. vielleicht

Eine andere Sache, die noch untersucht werden muß, ist der anscheinend geringere Stromverbrauch des 5.5.8 Kernels auf dem Surface Pro 4. zunächst sah es eher nach einem Batteryauslesebug aus, weil das Gerät lange auf 100% blieb, aber mittlerweile könnnte auch ein leichter Einspareffekt vorhanden sein. Ich hab das SP4 noch nicht lange genug im Referenzkernel laufen lassen, um da einen Vergleich zu haben. Ich schau nachher mal.

Kameras gehen immer noch nicht

Tja, schlechte Nachrichten für die NSA, die Kameras der Surface Pro 4+ funktionieren immer noch nicht unter Linux, was an sich jetzt schade für reguläre Kameranutzer ist. Dafür soll das Wifi jetzt im 5G Betrieb stabiler sein, was ja auch nicht ganz unpraktisch ist.

Die Sache mit dem Secure Boot

Nachdem ersten Boot, kommt im Bootprozess eine mördermäßig wichtige Einblendung, die einem bei der Installation auch mitgeteilt wird, allerdings steht im Installationshinweis, daß man, WENN MAN danach gefragt wird, ein Password eingeben soll um den signierten Kernel, bzw. dessen Signatur, ins Bios zu bekommen um dann Secure Boot nutzen können. Tja, was soll ich sagen, die Abfrage kam so nicht, denn dazu muß man während ein Timer runterzählt auf eine Taste drücken, sonst wird man auch nicht nach dem Passwort gefragt 🙂

Da ich da noch unsignierte Kernels zum Testen liegen habe, kann ich SecureBoot eh nicht einschalten, insofern ist mir das auch egal 😉 Wenn der neue Kernel natürlich dauerhaft funktioniert, dann kann man das später immer noch mit Hilfe des mokutil erledigen.

Der TypeCover Bug

Zwar prellt das TypeCover nicht mehr, aber dafür funktioniert es auch nicht mehr, wenn man es abzieht und wieder dran steckt. Was ein Problem darstellt, da man das Surface Pro 4 neu booten muß.

Ihr seht, da werden noch einige Fixe nötig werden, bis das stabil läuft.

Surface: TypeCover defekt :(

Gebrauchte Geräte sind so ein Ding, kann gut gehen, muß aber nicht. Deutlich zu niedrige Preise bei Ebay sind auch so ein Ding, kann ok sein, könnte aber auch Fake oder geklaut sein. Um das alles mit einem Linux Tablet zu verbinden, drehen wir die Zeit nochmal 7 Monate zurück….

Ein gebrauchtes Surface Pro 4

Aufgrund der Neukosten und Verfügbarkeit, ersteigerte ich im Guerillaverfahren im Februar ein gebrauchtes Surface Pro 4 auf Ebay. Ihr kennt die Geschichte ja. Im Juni setzte für einen Tag der Lüfter aus, weswegen es zu dem Geflimmer kam:  „Das wars dann mit dem Linux Tablet 🙁

Vor ein paar Wochen, ging plötzlich die Tastatur aus und ich meine aus, weil die Lichter der Tastaturbeleuchtung das deutlich zeigten. Ich hab erst gedacht, daß der USB-Hub nicht mehr will, und die Tastatur abgezogen und dann wieder dran gesteckt, was auch für wenige Minuten geholfen hat, bis die wieder ausgefallen ist. An dem Tag ging da nichts mehr, was komisch war.

Einen Tag später aka. zu Hause, ging die Tastatur dann wieder anstandslos! Technik halt. Ab und zu gabs mal einen kurzen Ausfall, aber ein Muster lies sich nicht ableiten. Um Kontaktschwierigkeiten auszuschliessen, wurden die Kontakte und Pins kurz geschliffen. Es änderte sich nichts. Egal wie man es knickte und kickte, es gab einfach keinen gezielten Ausfall. Damit war die Sache erstmal erledigt, weil Abziehen und wieder dranhängen half … bis Vorgestern. Da war Schluss. Ende, aus, tod.

Ihr erinnert Euch, ich hatte ein englisches Typecover mitbekommen, da fehlt die Taste mit dem „|“ Pipezeichen, was bei Linux ein echtes Problem bedeutet. Also habe ich mir bei Ebay ein gebrauchtes deutsches Typecover zugelegt. 12 Monate Garantie und unter 24h angekommen. Super.

Fazit

Bei Ebay gebraucht kaufen, kann durchaus klappen 🙂

Für Surface Pro Besitzer kann ich nur empfehlen, sich einen anderen Besitzer zu suchen und einfach mal die Typecovers umzuhängen. Geht es an beiden Geräten nicht, ist das TypeCover hin. Da die auch gebraucht nicht billig sind, da bekommt man einen schnellen Ryzen 1500 für, lohnt sich der Gang zum Surface Kollegen immer, egal ob der Windows oder Linux fährt.

Linuxtablet zieht Blicke auf sich

 

Das Surface Pro 4 mit dem Linux Touch

Man mochte es kaum noch glauben wollen, aber das Surface hat dann am Ende doch noch mit Touchsupport gebootet. Einen neuen Kernel später, hatten wir endlich ein Linux mit Touchoberfläche, oder doch nicht?

Die eine Sache namens Wayland

Was installiert man, wenn man einen Rechner frisch macht nicht ? Richtig Waylandkomponenten 😉 Man würde ja annehmen, daß eine Distribution, die Wayland als Default Displayserver einsetzt, alles, was man so brauchen würde automatisch installiert. Fedora nicht 🙂

Die installieren zwar Wayland als Server, aber leider nicht Firefox und Thunderbird als Waylandversion. Das muß der Benutzer nach dem obligatorischen Bugreport selbst machen 😉

dnf install firefox-wayland thunderbird-wayland

Das wars schon. Ihr müßt Euch natürlich angewöhnen diese Programme zu starten und nicht die normalen Versionen. Das ist leicht am Wayland Zusatz im Namen zuerkennen und daher kein Problem.

Wer clever ist, schmeißt die Nichtwaylands aus dem Gnome-Dock gleich raus und ersetzt sie mit den Waylandversionen. Womit wir zum Gnome-Dock kommen.

Für alle Neugnometabletbenutzer, merkt Euch:

Wischt man am Linken Rand von Links nach Rechts, kommt das Dock raus.

Das wird im Laufe Eures Linuxtabletlebens noch viel Nerven sparen 😉

Die Sache mit der Energie

Ja, das ist Intel Hardware. Nein, das Wort Energiesparen stand nicht auf der Agenda, auch wenn Intel M$ erklärt hat, wie man das machen muß, wenn man auf 13h Laufzeit kommen will. Ich hab mit Linux jetzt nur 9h geschafft. Dazu habe ich allerdings alles, auf Stromsparmodus gestellt, was sich so im PowerTop einstellen lies.

dnf install powertop
su root
powertop

Ich würde Euch die ShellUI ja gern mal zeigen, aber PowerTop hats beim letzten Update auf 2.9.9 wohl leicht zerrissen ( Bugreport ist raus ) . Da ich nicht ausschließen kann, daß es am Kernel, an den Extentions, Intel, M$ oder dem Universum liegt, erwähne ich es hier trotzdem. Da Ihr sowieso ein Script daraus machen müßt, weil es nach jedem Reboot weg ist, hier die Lösung:

$ cat /etc/init.d/powersafe
#!/bin/bash
#
# Script fuer den Energieverbrauch
#
# chkconfig: 345 00 99
# description: Powersafemode
### BEGIN INIT INFO
# X-Start-Before: display-manager
### END INIT INFO

. /etc/init.d/functions

echo ‚auto‘ > ‚/sys/bus/i2c/devices/i2c-0/device/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1c.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1c.0/power/control‘;
echo ‚1‘ > ‚/sys/module/snd_hda_intel/parameters/power_save‘;

echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:14.0/power/control‘
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1d.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:14.2/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:00.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1f.3/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:01:00.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:14.3/power/control‘;

echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:05.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1f.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:08.0/power/control‘;
echo ‚auto‘ > ‚/sys/bus/pci/devices/0000:00:1f.2/power/control‘;
echo ‚auto‘ > ‚/sys/bus/usb/devices/1-7/power/control‘;

Jetzt noch im System verankern:

systemctl enable powersafe
systemctl start powersafe

und die HW ist deutlich langsamer 🙂 Aber das reicht nicht. Ihr braucht die Gnome Extention „cpufreq“:

CPUFreq in aktion(Ja, da sind noch mehr Extentions drauf. Geduld junger Padawan!)

Wie man oben sehen kann, habe ich der CPU gesagt, sie soll doch so freundlich sein und nur 2 Kerne und die auch nur mit maximal 60% Leistung benutzen. Das ist für den Tabletbetrieb erstmal ausreichend. Damit kann man auch Netflix schauen ohne das es ruckt. Ihr seht unter dem Smiley noch „powersafe“ das ist der Governator, eine Kerneloption, die Energiesparen über Spaß an der Reaktion stellt 😉 Es geht auch der „iss mir doch egal wie schnell der Akku leer ist“ Modus ;D

An der Stelle rate ich dazu das Gnome-Tweaktool zu installieren und sich Gnome einzurichten. Ich habe jetzt drei Bildschirmseiten voll Extentions mit sinnvollen Funktionen auf dem Tablet und damit lebt es sich gut. Extra fürs Surface Book, gibt es einen Batterieanzeiger, der rechnet das wohl leicht anders aus, wie es scheint.

Bevor wir mit der Sektion „Spaß haben“ weitermachen, hier noch die traurige Nachricht:

Eurer Tablet bleibt vorerst blind.

Der Kamerasupport im i915 IPTS Patch ist im Stand heute, 4.3. 2019, noch nicht enthalten. Jake hat das nach unten priorisiert. Das kann ich verstehen.

Ich hatte ja im letzten Artikel damit geendet, daß der Touchsupport nach 5 Minuten wieder weg war. Da bin ich Euch ja noch eine Information schuldig. Ja, leider die Kernelpatche sind nicht dauerhaft stabil. Einige Stunden können es schon mal sein, aber wer viele Events auslöst, der riskiert, daß einer zum Treibercrash führt. Das ist allerdings kein Grund zum Reboot, sondern nur zum Anklemmen der Tastatur. Als Root müßte Ihr das eingeben:

rmmod intel_ipts;modprobe intel_ipts

und schon geht es wieder. Bei Wifiproblemen ist das nicht ganz so leicht, da ist ein Reboot schneller.Kommt aber auch seltener vor.

Ok, genug der schlechten Nachrichten, jetzt, also für Euch übermorgen geht es mit dem nächsten Beitrag „Spaß haben“ weiter ! Da lassen wir das Tablet mal Android sowas von alt aussehen, daß die Schwarte kracht 😀

Das Linux Tablet dreht auf!