Hi Alexander,
ich habe Sonntag etwas Zeit investieren können, war aber leider wenig erfolgreich (frei nach Edison: ich habe mehrere Wege gefunden, wie es nicht geht ...)
Es kam mir aber eine Idee, die Du evtl. kurzfristig probieren könntest: Hast Du einen (älteren) Wifi-USB Adapter der auf einem anderen Chip basiert und vom
M4 supported wird ? Meine Theorie: wenn es damit nicht zu Abstürzen käme, dann wäre der Wifi-Treiber der Übeltäter und man hätte ggfs. einen Workaround.
Treten die Probleme immer noch auf denn müsste man im Bereich USB bzw. USB-Hub des RTD1395 weitersuchen.
Einen neueren Kernel zum Laufen zu bekommen, halte ich für sehr schwer. Einer meiner Versuche war, einen Diff vom Stock-Linux-Kernel 4.9.311-4.9.119 auf den linux-
rtk anzuwenden. Knapp 300+ Hunks sind gefailed. Habe angefangen die manuell zu resolven, aber dann waren ARM-Assembler Teile (memory-mgmt, Interrupts usw) betroffem - das war zu viel für mich...
Nächster Ansatz war, einen diff vom 4.9.119 zum linux-
rtk, um die RTD1395 spezifischen Teile zu identifizieren. Leider sind da auch Änderungen sichtbar, die IMHO nichts mit RTD1395 oder Treibern zu tun haben (siehe Attachment). Entweder wurde da wirklich tief rumgefummelt oder Teile des linux-
rtk basieren noch auf älteren Teilen des Kernel (was u.U. auch manche Probleme erklären könnte).
Eine ähnliche Übung müsste man machen, wenn man einen aktuellen 5.x Kernel mit entsprechender Treiber-Unterstüzung haben wollte.
Mein aktueller Ansatz ist nun, im Bereich USB den Code aus Stock-4.9.119 in den linux-
rtk zu nehmen. Und dann schauen ob man es kompiliert bekommt bzw. ob der Fehler auftritt. (Mein Test-
M4 kommt erst heute ...) Ob das am Ende zielführend wird und wie lange des dauert, kann ich nicht sagen.
Den Test mit einem billig USB-Wifi-Adapter halte ich aktuell für den besten Versuch. Den könnte ich die Woche auch machen (habe noch 2 hier rumliegen, muss schauen welche Chips da drin sind) ...
VG,
-Markus