[KERNEL][ROOT][3G] Workaround für Android OS Bug/baseband_xmm_power wakelock

1.)
Connectivity Status: Fastboot Device Connected
Information: Flashing openrecovery-twrp-2.8.7.0-tilapia.img to RECOVERY partition...
fastboot flash recovery "C:\ProgrammeMe\WugFresh Development\Nexus Root Toolkit\data\Recovery_Custom\TWRP\openrecovery-twrp-2.8.7.0-tilapia.img"

2.)
Information: Temporarily Booting TWRP...
fastboot boot "C:\ProgrammeMe\WugFresh Development\Nexus Root Toolkit\data\Recovery_Custom\TWRP\openrecovery-twrp-2.8.7.0-tilapia.img"

3.)

Information: Flashing 'perm-recovery-signed.zip'...
Information: Waiting for your device...
Information: Device Detected

1. (dauerhaft) oder 2. (temrporär d.h. nur bis zum verlassen des recoverys, d.h. lieber gleich flashen. Das "stock" recovery wird vmtl. nie mehr benötigt. Update gibts wohl eh kein offizelles mehr), beides gibt keinen sinn.
3.) keine ahnung welches recovery diese zip flasht, evlt. wieder das originale, jedenfalls brauchst du das nicht

4. Nimm kein toolkit
 
Hallo vorcers,

ich bin heute auf diesen Thread gestoßen und meine Augen wurden immer größer, als ich gelesen habe, dass Du auch für cm 12.1 einen geänderten Kernel hast.

Aktuell verwende ich ich den Snapshot vom 7.10. und damit lässt sich via CM-Recovery Dein 12.1. Kernel vom 11.8. nicht installieren. Ich nehme an, es liegt am Versionssprung zwischen beiden Zeitpunkten.
Gut, dachte ich mir, gehe ich eben auf die CM Version vom 11.8. zurück, aber die CM-Server bieten diese Version nicht mehr an, erst wieder ab September.

Daher meine Bitte: Kannst Du für das aktuelle CM 12.1 vom 7.10 Deinen Kernel erneut anpassen?
Mit TWRP klappt es übrigens auch nicht, dort heißt es dann : File is corrupt.

Viele Grüße,
Matze
 
Hallo @Super-Matze ,

ich habe ein Anykernel-Package erstellt, damit sollte es in Zukunft keine Probleme mehr bei den neuen Versionen geben. (Esseiden neue Versionen von CM12.1 enthalten tiefgreifende Änderungen im Kernel, welche den boot verhindern - was ich aber nicht glaube.,,)

Der Link ist im 1. Post.

Vg
vorcers
 
  • Danke
Reaktionen: Super-Matze und Urs_1956
Hi vorcers,

vielen Dank für Deine Arbeit. Ich werde ihn testen und berichten, wie es sich auswirkt. :)

VG,
Matze
 
Hallo vorcers,

Ich habe den Kernel vorgestern Nachmittag bei einem Akkustand von 86% geflasht, das Tablet lag ohne aktivem WLAN, ohne Sync und im Flugmodus. Gesten hatte ich rund 75% Akkustand, heute Morgen um 5 waren es jedoch bereits 29%. Der Hauptverbraucher war wieder Android OS.
Momentan sieht es aus, dass es bei mir noch nicht funktioniert.
Ich habe als Snapshot immer noch die Version vom 7.10 von CM12.1 installiert.
Liegt es möglicherweise daran, dass der Kernel aktueller ist als das ROM?
 
Hallo Super-Matze,

hast du den aktivierer geflasht? Standardmäßig ist der Workaround nicht aktiv. Wenn ja, kannst du bitte die Kernel-Version in den Einstellungen überprüfen?
 
  • Danke
Reaktionen: Super-Matze
Danke vorcers für den Hinweis. Beim ersten Versuch hatte ja der alte Kernel nicht funktioniert. Um den Fehler zu beheben, hatte ich das ROM erneut geflasht, dabei ging dann datürlich die Datei im init.d Ordner wieder verloren.
Gestern Abend habe ich das wieder eingefügt und habe seitdem in knapp 23 Stunden rund 2% an Akkustand verloren. Bleibt das die kommenden Tage auch so, dann bin ich mehr als zufrieden. So lässt sich mit dem Tablet wieder prima umgehen :)

Vielen Dank!!! :thumbsup:
 
Also nachdem das Tablet mit dem modifiertem Kernel nun einige Tage am Stück lag, kann ich für mich folgendes feststellen:+
Die Laufzeit ist bei weitem nicht überragend, wie ich es von Hause aus erwarten würde, wenn ein Tablet mal nur herum liegt. Für die Lösung von vorcers allerdings bin ich sehr dankbar, ermöglicht es doch wenigstens mit den gegebenen Mitteln etwas vernünftiger zu arbeiten, als es Google schafft.
 

Anhänge

  • Screenshot_2015-12-01-16-48-43.png
    Screenshot_2015-12-01-16-48-43.png
    23,3 KB · Aufrufe: 303
Hi, irgendwie funktioniert der Mod bei mir nicht. Hat jemand ne Idee, wie ich checken kann, ob ich was falsch gemacht hab?

Ich hab den Bootloader entsperrt und TWRP als Recovery installiert. Beim Booten kommt das geöffnete Schloss unterm Google Logo und ich kann per Power und Volume - ins TWRP Recovery booten.
Ich hab mir den Kernel für 5.1 und beide Skripte runtergeladen. Hab den Kernel per TWRP installiert und dann erstmal das ...default...zip. Da ich immer noch massiv Akku verlor, hab ich dann das andere zip installiert, dass den Wakelock komplett beseitigen sollte.
Aber leider ändert sich nix. Wie kann ich testen, ob der modifizierte Kernel bzw. das Skript korrekt installiert wurde?

Hier die Ausgabe vom WakelockDetector PC, die zeigt, dass ich nach meiner Installation keine Besserung hab:
8e3addac05c7eda63d9ad5a7e5a10587.jpg
 
Kurze Info von mir: vorcers hat mir per PM geholfen. Ich hatte eine unvollständige Zip des Kernels geflasht. Jetzt sieht es gut aus.
 
@Super-Matze
Ein weiterer Energiefresser sind übrigens die Google-Services. Ich habe bei mir die Services so weit deaktiviert, dass ich zwar den Play Store noch benutzen kann, aber trotzdem funktionieren viele andere Dinge nicht. (GMS Services zum Beispiel, oder der automatische Update des Play Stores) Außerdem haben die Google-Services per Default kein Netzwerk-Zugriff. (Firewall) Erreicht habe ich das ganze mit der App "Disable Services". Ich habe keinerlei Hintergrund-Dienste in meinen System.

Außerdem habe ich mal meine deaktivierten Dienste angehangen, falls sich jemand dafür interessiert. (DS_backup.txt) Am "schlimmsten" sind die ganzen Location Services für WLAN/Mobilfunk ohne GPS, die ziehen ohne Ende, auch wenn man sie gar nicht verwendet. Die Google-App würde ich auch löschen, wenn sie nicht gebraucht wird. (Ist außerdem eine einzige Datenschleuder)
 

Anhänge

  • DS_backup.txt
    5,1 KB · Aufrufe: 1.157
  • Screenshot_2015-12-28-12-02-16.png
    Screenshot_2015-12-28-12-02-16.png
    33 KB · Aufrufe: 282
Hallo,

vielleicht noch eine Information, die auch für andere hilfreich ist. Bei mir war die Wirkung des Patches auch vom geflasheten radio.img aus dem Orginal stock kernel von:

Factory Images for Nexus Devices

abhängig. Zumindest funktrionierte bei mir nach komplett Stock-Flash vom 5.1.1er, danach CM12.1 + Any-Kernel nicht (kurze Akkulaufzeit < 2 Tage im Standby). Nachdem ich *nur* das radio.img aus dem 4.2.2er tgz im fastboot mode geflash hatte kam ich auf > 5 tage mit CM 12.1 + Anykernel (beides *nicht* noch mal neu geflasht) wakelock auf 0 gesetzt (im Terminal/tasker).

Jetzt fehlt mir für mein Glück nur noch eine Lösung for CM13. Für grouper gibt es schon ein image (das sich durch namensänderung - siehe Thread auch auf Tilapia flashen lässt -> natürlich kein GSM):

[ROM] [6.0.1] [MARSHMALLOW] [UNOFFICIAL] CyanogenMod 13 for Nexus 7

gtrcraft hat auch schon einen patch eingespielt der den wakelock auf 10 begrenzt. aber scheint bei meinem tilapia keine positive Wirkung zu haben. Immer noch < 2 Tage laufzeit im Standby.

@vorcers: habe die Sorucen für das wakelock-module nicht gefunden, wo sind die?

Vielen Dank
Frufo
 
@frufo

Sorry, den Patch hochzuladen habe ich irgendwie verschlafen.
Ich habe ihn Anhangen. (Warum erlaubt Android-Hilfe keine .gz Dateien?!??!)

Der Anykernel sollte übrigens auch Problemlos auch mit cm13 funktionieren, da die Kernel-Repos den gleichen Stand haben: cm12.1 vs. cm13. Er sollte eigentlich mit jeden ROM (für Tilapia ODER Grouper!) funktionieren, die init.d Support hat und die ROM nicht auf spezielle Anpassungen im Kernel angewiesen ist. Obwohl natürlich dafür keine Garantie besteht. Sehr häufig sind z.B. Kernel zwischen den Android-Versions-Sprüngen nicht austauschbar.
 

Anhänge

  • baseband-xmm-power-vorcers.c.patch.zip
    735 Bytes · Aufrufe: 183
Zuletzt bearbeitet:
  • Danke
Reaktionen: frufo
Hallo Vorcers,

vielen Dank. Leider bleibt das Booten nach dem flashen des Anykernels bei dem (inoffiziellen) CM13 von gtrcraft stehen. Habe mal bei gtrcraft angefragt, ob er nicht Deinen Patch integrieren kann. Bisher aber keine Reaktion.

Habe auch mal die aktuelle Version von Pure-Nexus ausprobiert:

[ROM] 6.0 Android MarshMallow Pure AOSP for Google Nexus 7 2012 WIFI+3G

-> Kein Wakelock-Problem, lange Laufzeit. Dafür friert das Tablet immer mal wieder ein bzw. nimmt sich dann sehr lange "Bedenkzeiten". Ein Problem, dass ich aber auch schon mal mit CM12 hatte. Bin mir so langsam nicht sicher, ob ich einen HW-defekt habe. Bei CM13 schien es mir nicht vorzukommen, aber vielleicht habe ich da nicht lang genug getestet...
 
Hallo frufo,

vermutlich hat gtrcraft doch einige Dinge im Kernel integriert, die für das ROM benötigt werden. (ZRAM?) Da gtrcraft die Kernel-quellen zur Verfügung stellt, kannst du versuchen den patch selber zu integrieren und den Kernel zu kompilieren. Im Netz gibt es dazu viele Anleitungen dazu. Du benötigst aber ein Linux. Und viel Zeit ... Ein guter Start ist Building Kernels | Android Open Source Project, aber das behandelt nur den Stock Kernel. Statt des Stock Kernels müsstest du dann die Quellen von gtrcraft verwenden. Und den Patch integrieren. Nach den Bau kannst du mein Anykernel-Package als Basis verwenden. Du musst nur die zImage Datei mit deiner selbst kompilierten ersetzen.


Das Grund warum der workaround bei gtrcraft's ROM nicht funktioniert ist, dass der patch falsch integriert wurde: Fix baseband_xmm_power wakelock · GtrCraft/cyanogenmod_kernel_grouper@d7d8473 · GitHub

Er hat nur die Variablen-Initalisierungen übernommen, nicht aber den eigentlichen Code. Er ist vermutlich kein Entwickler, sonst hätte er das gemerkt...
 
@vorcers
Was fehlt denn genau für mich als Laien?
Dann könnte ich ihn darauf hinweisen, das bitte auch noch zu integrieren.

Danke :)
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von: qu4nd - Grund: Direktzitat entfernt. Bitte Forenregeln beachten ;-) - qu4nd
@vorcers, erstmal Danke für den Kernel, ich habe ihn lange Zeit auf dem Nexus 7 am laufen gehabt und hatte keine Probleme mehr mit dem Wakelock. Nun bin ich auf CM13 umgestiegen und erwartungsgemäß ist der Wakelock wieder da...
Ich habe mal den Kernel von gtrcraft geforkt und Deinen Patch eingebaut. Müsste eigentlich passen, über einen kurzen Review würde ich mich freuen:
Completed incomplete fix for baseband_xmm_power wakelock on Nexus 7 3… · micw/cyanogenmod_kernel_grouper@959e3e1 · GitHub

Parallel frag ich bei gtrcraft an, ob er den Kernel mal bauen kann.
 
  • Danke
Reaktionen: vorcers
@mwyraz
Es freut mich, dass er für dich funktioniert.

Dein Code sieht gut aus. Du hast Ihn richtig eingebunden. Dein Kommentar ist allerdings falsch, das Activator Script, welches den Wert "10" schreibt, aktiviert den Wakelock nicht für 10 Sekunden, sondern für 1 Sekunde.
 
Zuletzt bearbeitet:
Danke für den Hinweis. Leider lassen sich Commit-Kommentare aber nicht mehr ohne Weiteres ändern...

Seitens gtrcraft habe ich noch keine Antwort bekommen. Hättest Du vielleicht die Möglichkeit, den Kernel in dem Repo für CM-13 zu bauen und hier mit zu verlinken?
 
Die Compilierung könnte ich durchführen, aber leider kann ich den Kernel nicht testen, da ich eine selbsterstellte KitKat-Version verwende. Android >= 5 ist für das Tablet einfach zu langsam... Würdest du das dann übernehmen? Ich würde ein Anykernel-ZIP bereitstellen.
 

Ähnliche Themen

Anonym6x6
Antworten
5
Aufrufe
2.391
mausbock
M
M
Antworten
4
Aufrufe
4.692
mopple6
M
A
  • andre879
Antworten
0
Aufrufe
1.784
andre879
A
Zurück
Oben Unten