Galaxy-Farbtiefe - tatsächlich nur 16 bpp/65536

  • 75 Antworten
  • Letztes Antwortdatum
achso, hab mich etwas blöd ausgedrückt
die Kernel-configs zum Kompilieren ziehen und dann in dem Treiber direkt die bpp setzen, denn scheinbar gibts keine Configs, sondern es wird direkt im Treiber gesetzt, dann den Kernel neu kompilieren

der Treiber: BSP/kernel_2.6.27/drivers/video/msm/mddi_samsung.c
sieht so aus als wurde der Toshiba-Treiber genommen und angepasst, wobei die 61Hz doch vom Ursprungstreiber kamen

inwiefern da jetzt noch der Framebuffer-Treiber was ändert (msm_fb.c) hab ich keine Ahnung ^^
 
Und noch etwas:

Das OpenGL ES System meldet beim Booten:
I/EGLDisplaySurface( 1072): bpp = 16
Und das hier kann man mittels 'adb bugreport' erfahren:

FrameBuffer[0] 320x480 size=614400 bytes is registered successfully!

614400 bytes entspricht zwar 32bit pro pixel. Da der Framebuffer bei Android meines Wissens aber für Double buffering ausgelegt sein muss, sind das wohl eher 2x 320x480px @ 16bpp.

Grüße,

Felix
 
  • Danke
Reaktionen: Orloaf
Psycholein schrieb:
der Treiber: BSP/kernel_2.6.27/drivers/video/msm/mddi_samsung.c
sieht so aus als wurde der Toshiba-Treiber genommen und angepasst, wobei die 61Hz doch vom Ursprungstreiber kamen

Ich bin mir nicht ganz sicher, aber ich glaube, dass der mddi_samsung gar nicht benutzt wird. Hier 2 Zeilen aus der Original-Config:
CONFIG_FB_MSM_MDDI_TOSHIBA_HVGA=y
# CONFIG_FB_MSM_MDDI_SAMSUNG_HVGA is not set

Ich kann mir auch nicht vorstellen, dass der Framebuffer mit 18bpp läuft, der /sys/... Eintrag aber nur 16bpp anzeigt.
Grüße, Felix
 
Zuletzt bearbeitet:
jo, sieht so aus als wenn der Treiber noch nicht benutzt wird, hab ich gar nicht draufgeachtet ^^
warten wir mal aufs nächste Update vllt haben sie es nicht ganz fertigstellen können, zumindest bin ich jetzt recht zuversichtlich, dass da auch noch was am Flimmern gedreht werden kann, wenn ich mir da die ganzen möglichen Parameter anschaue ;)
 
Psycholein schrieb:
jo, sieht so aus als wenn der Treiber noch nicht benutzt wird, hab ich gar nicht draufgeachtet ^^
warten wir mal aufs nächste Update vllt haben sie es nicht ganz fertigstellen können, zumindest bin ich jetzt recht zuversichtlich, dass da auch noch was am Flimmern gedreht werden kann, wenn ich mir da die ganzen möglichen Parameter anschaue ;)

Ich glaube das "noch" ist falsch ;)
Bei den verschiedenen mddi_xxx.c Dateien geht es ja um das verbaute Panel. Und da hat Samsung vielleicht eins von Toshiba verbaut.

Grüße, Felix
 
Zuletzt bearbeitet:
In drivers/video/msm/panel/mddi/mddi_toshiba_smd.c steht in Zeile 1698:

pinfo->bpp = 18;

Und der wird ja laut config auch verwendet.

Ich hab mal in drivers/video/msm/mddi.c (das ist der, der sich beim Booten mit "primary mddi base address = ..." meldet), Zeile 183, MDP_RGB_565 zu MDP_RGB_888 geändert und es wirkt sich auch aus - nur leider so, dass das Bild nicht mehr richtig dargestellt wird. Ich nehme an, die Daten werden richtig in den Framebuffer geschrieben, aber irgendwie muss man dem Controller noch sagen, dass er 24 bit pro Pixel nehmen soll. Fehlt also noch was.
 
leromarinvit schrieb:
In drivers/video/msm/panel/mddi/mddi_toshiba_smd.c steht in Zeile 1698:

pinfo->bpp = 18;

Und der wird ja laut config auch verwendet.

Weiß ich nicht. Ich denke aber, es wird zunächst mal drivers/video/msm/mddi_toshiba.c verwendet.

Dann ist noch interessant in drivers/video/msm/msm_fb.c der Abschnitt mit
#if defined(CONFIG_FB_MSM_MDP22)
snprintf(fix->id, sizeof(fix->id), "msmfb22_%x", (__u32) *id);
Da wird zumindest der Name gesetzt, den man im /sys/.../fb0/name finden kann. (msmfb22_1000 glaube ich. Anzahl der Nullen kan falsch sein, hab gerade das Galaxy nicht zur Hand um es auszulesen.)

In der Struktur 'fix', ist glaube ich auch irgendwo die Farbtiefe enthalten. Ich weiß aber noch nicht so recht, wo die Werte bezogen werden.
 
fexpop schrieb:
Weiß ich nicht. Ich denke aber, es wird zunächst mal drivers/video/msm/mddi_toshiba.c verwendet.
Nein. Ausm Makefile:
Code:
 78 ifeq ($(CONFIG_SAMSUNG_CAPELA),y)
 79 obj-$(CONFIG_FB_MSM_MDDI_TOSHIBA_HVGA) += panel/mddi/mddi_toshiba_smd.o
 80 endif
fexpop schrieb:
Dann ist noch interessant in drivers/video/msm/msm_fb.c der Abschnitt mit
#if defined(CONFIG_FB_MSM_MDP22)
snprintf(fix->id, sizeof(fix->id), "msmfb22_%x", (__u32) *id);
Da wird zumindest der Name gesetzt, den man im /sys/.../fb0/name finden kann. (msmfb22_1000 glaube ich. Anzahl der Nullen kan falsch sein, hab gerade das Galaxy nicht zur Hand um es auszulesen.)

In der Struktur 'fix', ist glaube ich auch irgendwo die Farbtiefe enthalten. Ich weiß aber noch nicht so recht, wo die Werte bezogen werden.

Interessant ist dort noch die Zeile:
Code:
 712         fix->visual = FB_VISUAL_TRUECOLOR;      // True Color
Die Farbtiefe wird dort aus mfd->fb_imgType gelesen, siehe auch das große switch() ein paar Zeilen weiter.

Um solche Dinge zu debuggen, wäre natürlich eine serielle Konsole hilfreich. Nach dem Kommentar in arch/arm/mach-msm/board-headset.c sollte es ja auf 2 Headset-Pins eine geben, aber meine gestrigen Versuche damit waren nicht wirklich erfolgreich...

Edit: und
Code:
 716         fix->accel = FB_ACCEL_NONE;     // FB_ACCEL_MSM needes to be added in fb.h
Hardware-Beschleunigung sollte also zumindest theoretisch möglich sein!
 
Zuletzt bearbeitet:
leromarinvit schrieb:
Nein. Ausm Makefile:
Code:
 78 ifeq ($(CONFIG_SAMSUNG_CAPELA),y)
 79 obj-$(CONFIG_FB_MSM_MDDI_TOSHIBA_HVGA) += panel/mddi/mddi_toshiba_smd.o
 80 endif

Ah, Riesendank! Ins Makefile hab ich Depp noch gar nicht geguckt :)
 
... und ihr hobby programmierer wundert euch, dass euer Galaxy macken hat? :D Wenn ihr drin rum fummelt - selbst schuld? :D
 
I7500 schrieb:
... und ihr hobby programmierer wundert euch, dass euer Galaxy macken hat? :D Wenn ihr drin rum fummelt - selbst schuld? :D

Von rumfummeln kann bei mir gar keine Rede sein. Bislang habe ich mir lediglich ein paar Dateien angesehen.

Schöne Grüße, Felix
 
@I7500: Komisch, aber von fexpop, leromarinvit und Psycholein kann ich mich an keine Antwort erinnern, bei denen sie die hier so oft beschriebenen Macken erwähnen - die Diskussionen um zugesicherte/beworbene Eigenschaften mal aussen vor.

EDIT: Vielleicht habe ich aber auch ein Gedächtnis wie ein Sieb ;)
 
I7500 trollt glaube ich nur ein wenig durch das Forum...
 
I7500 schrieb:
Deine mutter trollt durch die gegend mein lieber!

Ja das ist dann aber ne sache seitens dem Weltkonzern Samsung und nicht O2 oder Eplus... oder machen wirs anders!

Wenn Eplus jetzt das Galaxy bekommt - bitte anfangen die Eplus Shops schlecht zu reden und die Werbung ebenso zu bemängeln! :)

Kannst du auch was zu dem Thema beitragen?
Danke!

Soweit ich das sehe haben sich die drei nur den Quellcode angechaut, den man bei Samsung runterladen kann - da muss man nichts am Gerät basteln
 
I7500 schrieb:
Deine mutter trollt durch die gegend mein lieber!

Jetzt bleib mal ruhig und sachlich!

I7500 schrieb:
Ja das ist dann aber ne sache seitens dem Weltkonzern Samsung und nicht O2 oder Eplus... oder machen wirs anders!

Warum o2 aus der Sache eben nicht raus ist, habe ich an anderer Stelle mehrfach beschrieben

I7500 schrieb:
Wenn Eplus jetzt das Galaxy bekommt - bitte anfangen die Eplus Shops schlecht zu reden und die Werbung ebenso zu bemängeln! :)

Wenn Eplus genauso wirbt wie O2, dann werde ich auch sicherlich die Eplus Werbung bemängeln. Allerdings nicht mit so viel Elan, denn mit Eplus habe ich nicht auf Grund unlauterer Werbung einen Kaufvertrag abgeschlossen.

Ansonsten bleibt natürlich auch abzuwarten, ob Eplus ebenso schlecht auf Problemmeldungen und Fehlerberichte reagiert wie o2 (und Samsung).
 
Zuersteinmal: Lasst euch net von nem Troll den Thread Hijacken ;)
Zweitens: Wenn man Fehler macht, sollte man dazu auch stehen, ergo:
Scheine mich wohl verlesen zu haben - 3mal... peinlich.
Finde es klasse, wie hier die Probleme analysiert werden und bin mal gespannt ob es was hilft.
Steht denn nun eigentlich fest, ob die GPU Beschleunigung aktiviert ist oder nicht?
Und in wie weit würde das einen Performancezuwachs (wohl am ehesten für Spiel?) bedeuten?
 
Das3Zehn schrieb:
Finde es klasse, wie hier die Probleme analysiert werden und bin mal gespannt ob es was hilft.

Danke! Das tut auch mal gut :)
 
Ich kann mich dem Kommentar von Das3Zehn bedingungslos anschliessen.
Es ist gut zu wissen, dass wir in diesem Forum eine Handvoll technisch versierter Leute haben, welche sehr Hilfsbereit sind.

Langer Rede, kurzer Sinn: Ein grosses Lob an euch Jungs.
 
Kann man das nochmal kurz zusammenfassen, das ich habe mir das ganze hier kurz durchgelesen, kann das i7500 nun 16M Farben darstellen oder arbeitet es mit 65k?
 
Nein, es kann derzeit nur 65k Farben. Ob sich das jemals ändern wird, weiß allein Samsung. Ich habe hier im Forum ein kleines Progrämmchen gepostet, 'Galaxy Lie Detector', mit dem du dich leicht selbst überzeugen kannst.

Im zugehörigen Thread 'Galaxy Lie Detector - zeig her deine Farben' gibt es auch noch ein paar Erläuterungen.
 
Zuletzt bearbeitet von einem Moderator:

Ähnliche Themen

F
Antworten
5
Aufrufe
1.989
ludibubi
L
F
Antworten
1
Aufrufe
3.455
lety2000
L
G
  • godchilla
Antworten
6
Aufrufe
2.911
email.filtering
E
Zurück
Oben Unten