Guten Morgen,
Joe58 hat geschrieben: 16.07.2018 18:37:57
Das für die Mali GPU benötigte ump Modul funktioniert zweifelsfrei mit dem bereits gelieferten Mali Modul zusammen.
@schorsch_76
Ich habe das ump Modul kompiliert gehabt und es funktionierte zusammen mit dem mitgeliferten/vorkompilierten mali.ko Modul zusammen.
ump (vorkompiliert) + mali (vorkompiliert) = geht, ist ja klar kommt ja von dem Hersteller
ump (vorkompiliert + mali (selbst kompiliert) = geht nicht
ump (selbst kompiliert) + mali (vorkompiliert) = geht
Ich weiß, dass ich zuerst das ump Modul kompilieren muss und dann das mali Modul. Es scheint, aber dennoch keine Verbindung zu denen aufzubauen. Evtl muss ich den Pfad angeben, aber wo?
@niemand
Kernel Module müssen meines Wissens nach GPL konform sein. Es gibt auch eine Begründung und zwar, steckt der property Teil als Bibliothek und das ist der Treiber für die Mali GPU.
Bei NVIDIA läuft es ähnlich ab, das Modul ist GPL konform und der Treiber ist property und kann dann mithilfe des quelloffenen Modules auf der Hardware zugreifen.
Also GPL konform ist der Quellcode über den ich rede
hier definitiv nicht. Als wenn der Quellcode in einem äußerst bekloppten Zustand sein darf, nur damit "Einsteiger" diesen nicht kompiliert bekommen (Mali).
Die Quellen des Mali Modules befinden sich innderhalb des Archives hier: drivers/amlogic/mali
Das Modul befindet sich
hier innerhalb des Kernel Images. Man muss zum auspacken nur den 64 Bytes U-Boot Header ausschneiden und dann den Rest unlzma und dann das CPIO Archiv von dem ersten 0707 UTF-8 bis zum TRAILER ausschneiden.
Ich packe das bald auf github, sonst bleibt das so umständlich, folgende Datei: /drivers/amlogic/ump/include/ump/ump_kernel_interface.h
Code: Alles auswählen
* Use @ref ump_dd_reference_release "ump_dd_reference_release" when there is no longer any
* use for the retrieved handle.
Wie in deinem ersten Link @schorsch_76
Code: Alles auswählen
* @ref ump_handle_create_from_secure_id "ump_handle_create_from_secure_id"
* functions in order to access this UMP memory, for instance from another process.
Code: Alles auswählen
* @param num_blocks The number of blocks to return in the blocks array. Use the function
* @ref ump_dd_phys_block_count_get "ump_dd_phys_block_count_get" first to determine the number of blocks required.
*
Ich glaube das die Mali Treiber während der Kompilation gesucht werden???, das heißt ich muss die Mali (Bibliotheken) Treiber an einem Ort packen? Das wäre jetzt für mich die Erklärung, ich glaub bei der Kompilierung wird dann automatisch aus den Treibern geholt, was gebraucht wird... meine Vermutung.
Beste Grüße,
Johannes