Contenu | Rechercher | Menus

Annonce

Ubuntu-fr vend de superbes t-shirts et de belles clés USB 32Go
Rendez-vous sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/03/2019, à 16:36

Laurentdur

Quelques question à porpos de la codification d'un driver graphique.

Salut!
Je cherche à coder un driver graphique car le driver graphique opensource (et le driver graphique propriétaire aussi) ne fonctionne pas.

Mais j'ai deux questions, la première concerne les fonctions, et la seconde, les données.

Si je comprend bien, linux charge le code binaire du driver dans la VRAM pour que le GPU puisse l'exécuter et côté application il faut donc charger des pointeurs sur les fonctions spécifique du driver avant d'appeler les fonctions opengl qui appellent les fonctions du driver.
Il faut donc coder une function opengl getFuncProcAdr ou un truc du genre, mais que doit faire cette fonction, renvoyer l'adresse de la fonction du driver qui se charge d'exécuter une tâche spécifique ? Ou bien il faut faire autre chose ? Et comment linux sait si le pointeur de fonction à appeler se trouve dans la RAM ou bien dans la VRAM ? Faut il que le pointeur sur la fonction du driver à appeler aie un nom propre ?

Il y a donc deux lib si je comprend bien, une qui tourne au niveau du GPU (celle du driver), et une autre qui tourne au niveau du CPU. (opengl)

Donc ça c'est ma première question.

La seconde question maintenant, pour transférer des données depuis la RAM vers la VRAM, il faut utiliser une lib (libdrm) qui permet de faire cela, mais comment faire l'inverse (car dans le cas des vertex arrays, il faut transférer des données depuis la RAM vers la VRAM), libdrm permet d'ouvrir une connection vers la puce graphique et y transférer des données et sous linux le nom de la puce c'est /dev/dri/card0.

Mais quel est le nom de la puce de la RAM ? Est ce que libdrm permet de faire des connections sur d'autres puces que la puce graphique ?
Merci.

Dernière modification par Laurentdur (Le 31/03/2019, à 16:37)

Hors ligne

#2 Le 31/03/2019, à 17:18

Laurentdur

Re : Quelques question à porpos de la codification d'un driver graphique.

Je crois savoir, en fait, en fonction de l'adresse le processeur sait vers quel périphérique aller.
Donc apparemment il suffit juste de passer un pointeur.

Hors ligne