[Spark] Shutdown & RTC

Fremd-Buildsysteme
graugans
Interessierter
Interessierter
Beiträge: 79
Registriert: Sonntag 26. August 2012, 20:16

[Spark] Shutdown & RTC

Beitrag von graugans »

Hi,

ich war etwas überrascht als ich mir für meinen openembedded Port angeschaut hatte wie die Boxen heruntergefahren werden.
http://gitorious.org/neutrino-hd/builds ... d/spark_fp

Ich hätte jetzt eine Lösung im Kernel erwartet. Interessante Technik aus dem Userspace... Aus reiner Neugierde habe ich mich mal hingesetzt und zwei Patches geschrieben welche das Problem im Kernel lösen. Der eine fügt einen pm_power_of "hook" im Kernel Code ein. Der andere modifiziert den aotom Treiber so, dass dieser bei der Initialisierung sich genau an diesen Hook hängt und ein Power_off zu Verfügung stellt. Wird aotom entladen wird der Hook wieder entfernt.

Am Anfang kam mir das ganze etwas unsauber vor aber es funktioniert ganz gut. :D

https://github.com/project-magpie/meta- ... halt.patch
https://github.com/project-magpie/meta- ... tion.patch

Ob das ganze dann auch mit Timern usw. funktioniert haben ich noch nicht getestet. Die Box geht in deep standby und kann mit der FB wieder geweckt werden.

Da ich beim openembedded port auch noch an der Busybox rumtricksen musste damit die nicht davon ausgeht, dass keine RTC im System vorhanden ist. Hatte ich mir überlegt on top of aotom könnte man doch ein RTC Modul bauen welches hwclock kompatibel wäre.


Über Eure Meinung zum Thema würde ich mich freuen.

Gruß
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: [Spark] Shutdown & RTC

Beitrag von seife »

Das ist prinzipiell die wesentlich bessere und die korrekte Lösung -- ich war einfach nicht motiviert genug, das so zu machen.

Ich schau mir das mal an und baue es dann wohl in meine builds mit ein, weil das wesentlich schicker ist.
martii
Einsteiger
Einsteiger
Beiträge: 217
Registriert: Donnerstag 14. Juni 2012, 09:39

Re: [Spark] Shutdown & RTC

Beitrag von martii »

Hallo graugans,

ich hab's eben (plus einer Handvoll dadurch bedingter Änderungen) in meinen Clone reingenommen, tut prima.

Danke!

Ciao,

martii
schufti
Einsteiger
Einsteiger
Beiträge: 352
Registriert: Freitag 20. August 2004, 23:33

Re: [Spark] Shutdown & RTC

Beitrag von schufti »

aber baut nicht durch ....

Code: Alles auswählen

make[3]: Entering directory `/home/lindev/martii/build_tmp/libstb-hal/tools'
  CC     spark_fp.o
/home/lindev/martii/source/libstb-hal/tools/spark_fp.c: In function 'main':
/home/lindev/martii/source/libstb-hal/tools/spark_fp.c:232:21: error: 'VFDSETPOWERONTIME' undeclared (first use in this function)
/home/lindev/martii/source/libstb-hal/tools/spark_fp.c:232:21: note: each undeclared identifier is reported only once for each function it appears in
/home/lindev/martii/source/libstb-hal/tools/spark_fp.c:235:21: error: 'VFDPOWEROFF' undeclared (first use in this function)
make[3]: *** [spark_fp.o] Error 1
martii
Einsteiger
Einsteiger
Beiträge: 217
Registriert: Donnerstag 14. Juni 2012, 09:39

Re: [Spark] Shutdown & RTC

Beitrag von martii »

schufti hat geschrieben:aber baut nicht durch ....
Die aotom_main.h wird beim Anlegen von build_tmp/drivers angelegt, also

Code: Alles auswählen

cp build_tmp/frontcontroller/aotom/aotom_main.h root/include/
Bei nachträglichen Änderungen wird das nicht nachgezogen -- musst Du manuell machen, oder

Code: Alles auswählen

rm -rf build_tmp/drivers ; make sparkdriver
Ciao,

martii
schufti
Einsteiger
Einsteiger
Beiträge: 352
Registriert: Freitag 20. August 2004, 23:33

Re: [Spark] Shutdown & RTC

Beitrag von schufti »

Hi,
OK, dass die .h nicht paßt habe ich schon gefunden, aber nicht warum sie nicht an den richtigen Platz kommt ... habe kernel neu gebaut, libstd-hal alles auch brav vorher gelöscht, bloß "driver" hab ich glatt übersehen. :blind

danke,
schufti
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: [Spark] Shutdown & RTC

Beitrag von seife »

graugans hat geschrieben:Über Eure Meinung zum Thema würde ich mich freuen.
Wie schon erwähnt -- die Idee fand ich super, aber dass der Kernel core gepatched werden musste, verwirrte mich ein wenig. Da war doch was. Genau. "reboot_notifier". Damit gehts ohne Kernelpatch.

Und wo ich schon dabei war mir den Treiber zu Gemüte zu führen (das ist ja echt kein Spass... :-) habe ich auch gleich noch ein richtiges RTC-Interface mit eingebaut. Jetzt kann man mittels "hwclock" die Uhrzeit lesen / setzen und die wakeup-Time im sysfs, wie auf "richtigen" Rechnern.

Dabei habe ich das tdt-driver gleich mal auf den aktuellen Stand hochgezogen und die Patches angepasst, ich hoffe dass dabei nichts kaputt ging, bei mir funktioniert es noch.
graugans
Interessierter
Interessierter
Beiträge: 79
Registriert: Sonntag 26. August 2012, 20:16

Re: [Spark] Shutdown & RTC

Beitrag von graugans »

Vielen Dank Seife,
seife hat geschrieben: Wie schon erwähnt -- die Idee fand ich super, aber dass der Kernel core gepatched werden musste, verwirrte mich ein wenig. Da war doch was. Genau. "reboot_notifier". Damit gehts ohne Kernelpatch.
Das war ja nur nen proof of concept :D umso besser das es auch ohne Kernel-Patch geht.
seife hat geschrieben: Und wo ich schon dabei war mir den Treiber zu Gemüte zu führen (das ist ja echt kein Spass... :-) habe ich auch gleich noch ein richtiges RTC-Interface mit eingebaut. Jetzt kann man mittels "hwclock" die Uhrzeit lesen / setzen und die wakeup-Time im sysfs, wie auf "richtigen" Rechnern.

Dabei habe ich das tdt-driver gleich mal auf den aktuellen Stand hochgezogen und die Patches angepasst, ich hoffe dass dabei nichts kaputt ging, bei mir funktioniert es noch.
Das ist echt genial. Schon wieder Arbeit gesspart ;-) Ich werde es sobald ich Zeit habe testen..

Gruß
Christian