@
graugans
In ultimele luni mi-am petrecut timpul sa fac un BSP Layer pt receiverele bazate pe STLinux.
Momentat ma concentrez mai mult pe receivere Spark(Fulan) pt. ca eu insumi am unul.
Exista deja o versiune pt. Spark 7162, insa nu e inca testata.
Pentru alte receivere, efortul de a-l adapta nu ar fi asa de mare.
Motivatie
Pentru ca deja de ceva timp vroiam sa ma ocup de tema Openembedded Core/Yocto, ma gindeam sa vad cita munca mi-ar cere un asemenea STLinux Port.
Mi-e absolut clar ca exista deja TDT, OpenWRT si Seife`s Buildsystem. Acestea au dupa mine avantaje si dezavantaje.
Pina acum , cel mai mult mi-au placut posibilitatile sistemului lui Seife. Acesta este clar structurat si ofera un management al pachetelor "out of the box".
Sistemul lui Yocto iti ofera putin mai multe posibilitati decit al lui Seife, deoarece este mai bine documentat si are in spate o comunitate mai mare.
In plus, dupa ce ai inteles sistemul, este usor sa adaugi pachete. Pentru mine, crearea unui Toolchain ce se poate folosi si extern la dezvoltarea de Party Tools, este de mare valoare (este de aur).
Situatia actuala
Pe Golden Media 990 booteaza core-image-minimal din Yocto Project. Driverele TDT se incarca si Tools ca fp_control si ustslave sint prezente.
Functia driverelor nu e inca testata deoarece nu am facut inca traducerea GUI. Momentan este doar un BSP Layer. Yocto foloseste UDEV ca service Hotplug, din acest motiv a fost necesar sa fac citeva UDEV Rules pt. Tools ca ustslave.
Aceasta, impreuna cu utilizarea de modutils, ar trebui sa faciliteze portarea de drivere w-lan sau a altor usb-Gadget-uri de pe Desktop pe receivere.
Aproape ca am facut cu nervii la portarea de driveri pt Compat-Wireless pentru Pinky TDT.
Cel mai mult timp mi-a luat Toolchain. In special glibc, pentru ca Yocto foloseste de fapt eglibc. Un timp am vrut sa lucrez cu un Toolchain extern ceea ce nu e prea fain.
Apoi m-am incumetat sa implementez glibc. Asta s-a dovedit a fi mai simplu decit ma asteptam. Folosesc glibc direct din stlinux git.
GCC-ul folosit e cel folosit in denzil Branch al lui Yocto. In cazul Toolchain-ului se poate sa lipseasca un patch sau altul pt. a asigura o performanta optima.
Pentru mine a fost la inceput primordial sa am un sistem care booteaza. Nu am testat daca functioneaza Closed Source PTI, pt ca nu are un GUI.
Lirc functioneaza pe GM 990 al meu. Cel putin cu "irw" l-am testat. Actionarea procesorului Front Panel-ului inclusiv crearea /dev/vfd, pare sa functioneze.
Daca toate Devices au fost create corect de catre UDEV, pot sa va spun numai cind am primul GUI functional sau un alt Tool ca w_scan.
Pasii urmatori
Paralel cu dezvoltarea BBSP-Layer-ului voi incepe o Applications Layer. Aici voi introduce GUI`s gen Neutrino,VDR si Enigma cu accent (momentan) pe Neutrino.
Voi avea destul de lucru pina toate bibliotecile vor fi compilate si vor functiona.
Surse
Totul sta la dispozitia celor interesati aici la github sub numele project magpie iar Repository se numeste meta-stlinux
-
https://github.com/project-magpie/meta-stlinux -
-
https://github.com/project-magpie/meta-stlinux/wiki -
Ma voi bucura de orice Patches, Merge Requests, idei si observatii