PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Broadcom öffnet VideoCore IV (RPi) Code+Docs


Ganon
2014-03-01, 00:12:28
http://www.raspberrypi.org/archives/6299

Broadcom hat den vollständigen Sourcecode und eine komplette Dokumentation des VideoCore IV veröffentlicht.

Das Raspberry Pi Projekt hat jetzt einen Preis darauf ausgeschrieben. Wer als erster den Code auf den Raspberry Pi portiert, sodass "demo four" in Quake 3 Arena in Full HD mit min. 20fps läuft, bekommt 10000 $.

http://www.raspberrypi.org/competition-rules

Na dann ran! :D

AnarchX
2014-03-01, 10:27:09
Damit sollte Android lauffähig werden? Oder fehlen da noch andere Treibersourcen?

Demirug
2014-03-01, 11:02:50
Damit sollte Android lauffähig werden? Oder fehlen da noch andere Treibersourcen?

Gab es für den BCM21553 nicht direkt von Broadcom schon alle Android Treiber wenn auch nur in binärer form?

Ganon
2014-03-01, 11:23:49
Es ist ja bisher auch nur eine Öffnung des Codes des VideoCore IV eines anderen SoC. Darum halt auf der Aufruf zur Portierung. Andere Teile des SoC des Raspberry Pi sind weiterhin Closed Source.

AnarchX
2014-03-01, 12:34:06
Gab es für den BCM21553 nicht direkt von Broadcom schon alle Android Treiber wenn auch nur in binärer form?

Broadcom hat ein lauffähiges 4.0.3, welches aber nicht veröffentlicht wurde.

Die Probleme der verfügbaren Community Android ROMs sind wohl im GPU-Teil verortet: http://androidpi.wikia.com/wiki/Android_Pi_Wiki ... was mit den Sourcen zu dieser und neuen Treiber vielleicht behebbar ist?

Demirug
2014-03-01, 12:51:55
Broadcom hat ein lauffähiges 4.0.3, welches aber nicht veröffentlicht wurde.

Die Probleme der verfügbaren Community Android ROMs sind wohl im GPU-Teil verortet: http://androidpi.wikia.com/wiki/Android_Pi_Wiki ... was mit den Sourcen zu dieser und neuen Treiber vielleicht behebbar ist?

Der Code der veröffentlicht wurde ist laut dem Namen und was ich sehen konnte der ICS Treiber. Wie vollständig er ist kann ich allerdings nicht beurteilen. Ich habe auch kein Dev System das dafür ausgelegt ist ein Android zu kompilieren kann es also nicht ausprobieren ob er überhaupt baut.

=Floi=
2014-03-01, 15:30:25
wie realistisch ist denn das Q3A projekt? wie viele mannstunden werden dafür nötig sein?

Ganon
2014-03-01, 17:00:35
Ich denke, das kann man ohne tiefere Analyse des vorliegenden Codes und der Doku nicht sagen.

Allzu bald würde ich nicht mit Ergebnissen rechnen. Der bisherige Treiber hat nichts anderes gemacht, als die OpenGL-Kommandos an den Blob weiterzuleiten und so wie ich es in den Foren gelesen haben, ist die OpenGL-Implementierung nicht enthalten im Code-Release. D.h. man muss jetzt das ganze erst mal mit einem Mesa/Gallium3D-Treiber erweitern.

Nicht umsonst wedelt das Raspberry Pi Projekt mit 10000$. Q3A hat aber noch nicht allzu hohe Anforderungen an den Treiber, was Shaderkram etc. angeht.

Demirug
2014-03-01, 17:07:04
wie realistisch ist denn das Q3A projekt? wie viele mannstunden werden dafür nötig sein?

Machbar ist es auf jeden Fall. Denn Aufwand kann ich aber nicht wirklich abschätzen da ich noch nie was an einem Linux GPU Treiber gemacht habe. Da man aber $10.000 dafür ausgeschrieben hat sollte klar sein das man schon mit einem erheblichen Aufwand rechnet.

Ich denke, das kann man ohne tiefere Analyse des vorliegenden Codes und der Doku nicht sagen.

Ja ist beides recht umfangreich und für den Code gibt es auch scheinbar keinen Leitfaden wo man anfangen soll zu suchen.

Allzu bald würde ich nicht mit Ergebnissen rechnen. Der bisherige Treiber hat nichts anderes gemacht, als die OpenGL-Kommandos an den Blob weiterzuleiten und so wie ich es in den Foren gelesen haben, ist die OpenGL-Implementierung nicht enthalten im Code-Release. D.h. man muss jetzt das ganze erst mal mit einem Mesa/Gallium3D-Treiber erweitern.

Ist OpenGL ES schon bei Mesa/Gallium3D vorgesehen?

Nicht umsonst wedelt das Raspberry Pi Projekt mit 10000$. Q3A hat aber noch nicht allzu hohe Anforderungen an den Treiber, was Shaderkram etc. angeht.

Überhaupt keine Shader. Die Raspberry Pi Version benutzt OpenGL ES 1.1. Also nur Fixed Functions.

Ganon
2014-03-01, 18:00:28
Ist OpenGL ES schon bei Mesa/Gallium3D vorgesehen?

Jup, OpenGL ES 3.0 ist schon seit Mesa 9.x implementiert und von allen(?) Treibern unterstützt. Intels OpenSource Treiber ist sogar zertifiziert für GLES 3.0

Demirug
2014-03-01, 20:29:32
Jup, OpenGL ES 3.0 ist schon seit Mesa 9.x implementiert und von allen(?) Treibern unterstützt. Intels OpenSource Treiber ist sogar zertifiziert für GLES 3.0

Dann wäre ein MESA Treiber möglicherweise wirklich der schnellste Weg.

Ein wenig juckt es mich ja schon in den Fingern. Aber bei dem Zeitbudget das ich derzeit habe hätte ich keine Chance da zeitnah ein Ergebnis zu produzieren.

Die Kernroutinen habe ich nach ein wenig suchen in dem Code gefunden. Ist ein Tiler was die ganze Sache etwas komplexer macht.

Ganon
2014-03-31, 14:10:15
Es gibt einen Gewinner:

http://www.raspberrypi.org/archives/6561

Der Screenshot stammt aber nicht vom Raspberry Pi :D

=Floi=
2014-04-01, 02:10:03
warum sollte er das nicht?

es war die rede von full hd und hier sieht man 768p. AF ist auch nicht vorhanden imho.

Ganon
2014-04-01, 09:22:24
warum sollte er das nicht?

Wirf die Google Rückwärts-Bildersuche an (nach dem 1. April, wenn das Bild wieder da ist) ;)

=Floi=
2014-04-01, 22:23:48
ok, ist wohl aus einer argentur.

die rechnerischen ~53 fps machen den braten leider auch nicht fett. da hätte ich mehr erwartet.
nach gefühl brauchte man für höhere auflösungen immer sehr viel mehr power. das cpu-limt wäre noch interessant und wie nahe die 20 fps @ FHD am theoretischen maximum des chips sind.