Yocto Daisy mit Spark

Yocto/OE
flk
Contributor
Beiträge: 292
Registriert: Donnerstag 21. November 2002, 05:32
Box 1: AX HD51
Image: tuxbox

Yocto Daisy mit Spark

Beitrag von flk »

Hi,

weil ich mich für ein paar Änderungen in opkg-cl interessiert habe, wollte ich eine aktuelle Version in meinem Image haben. Um nicht zu arg im Yocto Layer rumpfuschen zu müssen, bin ich auf die glorreiche Idee gekommen, gleich die aktuelle Version von Yocto zu verwenden. Nachdem das für die Coolstream relativ unkompliziert und gut funktioniert hat, bin ich bei Spark auf einige Probleme gestoßen. Da bei Yocto Daisy dummerweise nur noch gcc 4.8.2 Recipes vorhanden sind, war das erste Problem, den stlinux Kernel zu bauen. Dazu habe ich den Kernel Source gepatcht:

Code: Alles auswählen

diff --git a/drivers/char/consolemap.c b/drivers/char/consolemap.c
index 45d3e80..323c964 100644
--- a/drivers/char/consolemap.c
+++ b/drivers/char/consolemap.c
@@ -649,9 +649,9 @@ int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct, struct uni
 			if ((p2 = *(p1++)))
 				for (k = 0; k < 64; k++) {
 					if (*p2 < MAX_GLYPH && ect++ < ct) {
-						__put_user((u_short)((i<<11)+(j<<6)+k),
+						put_user((u_short)((i<<11)+(j<<6)+k),
 							   &list->unicode);
-						__put_user((u_short) *p2, 
+						put_user((u_short) *p2, 
 							   &list->fontpos);
 						list++;
 					}
-- 
1.8.5.2
Damit baut der Kernel durch und "put_user" anstatt "__put_user" sollte doch eigentlich kein Problem sein, oder ?

Ansonsten habe ich noch ein udev Rule angelegt, weil /dev/lirc nicht vorhanden war:

Code: Alles auswählen

KERNEL=="lirc[0-9]*", SYMLINK+="lirc"
Sonst waren nur ein paar kosmetische Änderungen notwendig und schon konnte ich mit Daisy Images erstellen, die auch funktionieren ... allerdings stimmt was nicht mit stmfb, mit der Folge, dass es zu unschönen Grafikfehlern und Pixelbildung beim Umschalten kommt.

Im Bootlog ist verdächtig:

Code: Alles auswählen

   /sys/devices/virtual/coproc-dev/st231-0 (1090)
  /sys/devices/virtual/coproc-dev/st231-1 (1091)
[    8.172000] Fulan front panel driver
[    8.188000] VfdType = 2
[    8.200000] CpuType = 2
[    8.200000] DisplayInfo = 4
[    8.208000] scankeyNum = 8
[    8.216000] swMajorVersion = 1
[    8.216000] swSubVersion = 10
[    8.644000] input: fulan front panel buttons as /devices/virtual/input/input0
[    9.296000] stmcore-display: using HDMI hotplug
[    9.304000] stmcore-display: STi7111 display probed
[    9.312000] device probe found 2 display pipelines
[    9.320000] requesting frm: 'component.fw', c111e564/87ffb450
[    9.328000]  stm-awg: firmware: requesting component.fw
[    9.344000] frm 'component.fw' successfully loaded
[    9.348000] requesting frm: 'fdvo0.fw', c111e564/87ffbf10
[    9.356000]  stm-awg: firmware: requesting fdvo0.fw
[    9.368000] loading frm: 'fdvo0.fw' failed: -2
[    9.736000] stmfb: fb0 parameters = "1920x1080-32@50:12m:pal:yuv:yuv"
[    9.748000] stmfb: Starting HDMI Output hdmi = 87240000
[    9.776000] stmfb: first EDID byte (255) is corrupt, attempting to fix..
[    9.784000] stmfb: Invalid extension header checksum block0
[    9.920000] stmfb: first EDID byte (255) is corrupt, attempting to fix..
[    9.932000] stmfb: Invalid extension header checksum block0
[   10.064000] stmfb: first EDID byte (255) is corrupt, attempting to fix..
[   10.076000] stmfb: Invalid extension header checksum block0
[   10.208000] stmfb: first EDID byte (255) is corrupt, attempting to fix..
[   10.220000] stmfb: Invalid extension header checksum block0
[   10.352000] stmfb: first EDID byte (255) is corrupt, attempting to fix..
[   10.356000] stmfb: Invalid extension header checksum block0
[   10.368000] stmfb: EDID Read Error, setup safe EDID
[   10.380000] stmfb: Setting Safe EDID
[   10.664000] stmfb: fb1 parameters = "<NULL>"
[   11.728000] Init of MME log wrapper
[   11.900000] stm_v4l2_register_driver: driver 'stmvout' registered
[   11.928000] stm_v4l2_register_driver: driver 'stmvbi' registered
[   11.972000] snd_pseudo snd_pseudo.0: firmware: requesting downmix.fw
[   12.020000] pseudocard: 1 pseudo soundcard(s) found
[   12.116000] stv090x loaded
[   12.156000] pti loaded
Jetzt würde mich interessieren, ob s irgendwelche üblichen Verdächtigen gibt, die das verursachen könnten ? Liegt s evtl. doch an meiner Änderung am Kernel oder am gcc ? Ich wäre an dieser Stelle für einen Tipp sehr dankbar.
graugans
Interessierter
Interessierter
Beiträge: 79
Registriert: Sonntag 26. August 2012, 20:16

Re: Yocto Daisy mit Spark

Beitrag von graugans »

Verwendet Du das OSS pti oder ein anderes? Der stmfb ist eher für die GUI beim Video signal ist eher der player2 für verantwortlich. Bei meinen e2 Experimenten habe ich Probleme bei 60 Hz Video Wiederholrate und HD Kanälen gehabt....

Gesendet von meinem Nexus 4 mit Tapatalk
flk
Contributor
Beiträge: 292
Registriert: Donnerstag 21. November 2002, 05:32
Box 1: AX HD51
Image: tuxbox

Re: Yocto Daisy mit Spark

Beitrag von flk »

Bisher hab ich nur das oss_pti verwendet, glaubst das np_pti bringt da was ? Werde das morgen jedenfalls mal ausprobieren und berichten.
graugans
Interessierter
Interessierter
Beiträge: 79
Registriert: Sonntag 26. August 2012, 20:16

Re: Yocto Daisy mit Spark

Beitrag von graugans »

Nope, np könnte eher Probleme verursachen wenn sich von GCC Version zu Version was in den calling convetions geändert hätte.

Den STMFB & Player2 habe ich mir nie im Detail angeschaut, ist mir irgendwie zu komplex gewesen.

Schade finde ich das da immer jeder an dem kernel/treiber code rumpatched aber niemand gezielt versucht das vernünftig umzusetzen. Bzw. Mal versucht das ganze auf 3.1x zu portieren.

Gesendet von meinem Nexus 4 mit Tapatalk
babsy98
Neugieriger
Neugieriger
Beiträge: 16
Registriert: Sonntag 9. Dezember 2001, 00:00

Re: Yocto Daisy mit Spark

Beitrag von babsy98 »

sehe gerade hier wird ja fleißig an oe-core Build für SH4 gebaut

gibt es hier schon Images die Fertig sind die darauf Basieren im Netz