Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 01-12-2018 19:53:24

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Hello.

Je suis un fan de graphisme, avec une bonne carte graphique et fan de console par dessus tout, par pur esthétisme. J'ai beaucoup entendu parler du frame buffer, mais force est de constater que je n'ai même pas de périphériques /dev/fbx .
Pourriez-vous m'aider à le monter ? Ça ne doit pas être si dur une fois qu'on sait faire.

Hardinfo donne comme informations:

Vendor    : NVIDIA Corporation
Renderer    : GeForce GTX 1050/PCIe/SSE2
Version   : 4.5.0 NVIDIA 384.130
VGA compatible controller   : NVIDIA Corporation GP107 [GeForce GTX 1050]


spci -vnn | egrep "VGA|3D|Display"

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP107 [GeForce GTX 1050] [10de:1c81] (rev a1) (prog-if 00 [VGA controller])



uname -a


X 1050] [10de:1c81] (rev a1) (prog-if 00 [VGA controller])



uname -a


Linux debian 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux

Hors ligne

#2 02-12-2018 15:42:57

raleur
Membre
Inscription : 03-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Un framebuffer est /dev/fb*, pas /dev/fd* qui est un lecteur de disquette.
Normalement un framebuffer est créé et activé automatiquement par tout pilote du noyau utilisant le "kernel mode setting" ou KMS comme le module nouveau qui gère les GPU Nvidia (on peut le voir par le passage de la console en résolution native) . Mais si tu utilises les pilotes propriétaires Nvidia, il ne gère peut-être pas le framebuffer ou KMS.

En ligne

#3 02-12-2018 16:11:28

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Oui, j'utilise le pilote propriétaire. Sans quoi, je n'aurai pu par exemple régler précisément la géométrie au millimètre près. Quelle solution il y a-t-il pour du beau graphisme dans la console ?

Hors ligne

#4 02-12-2018 16:15:42

raleur
Membre
Inscription : 03-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Je laisse les spécialistes des pilotes proprios Nvidia te répondre. Tu pourrais préciser ce détail dans le titre pour les attirer.

En ligne

#5 02-12-2018 17:37:03

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

J'ai trouvé cela sur archwiki, mais je ne comprend pas beaucoup ce qui est possible ou non de faire.

DRM kernel mode setting
nvidia 364.16 adds support for DRM (Direct Rendering Manager) kernel mode setting. To enable this feature, add the nvidia-drm.modeset=1 kernel parameter, and add nvidia, nvidia_modeset, nvidia_uvm and nvidia_drm to initramfs#MODULES.

Do not forget to run mkinitcpio every time there is a nvidia driver update. See #Pacman hook to automate these steps.

Warning: Enabling KMS causes GDM and GNOME to default to Wayland, which currently suffers from very poor performance: FS#53284. A workaround is to configure GDM to use Xorg (see GDM#Use Xorg backend) or to use the GNOME on Xorg session instead.
Note: The NVIDIA driver does not provide an fbdev driver for the high-resolution console for the kernel compiled-in vesafb module. However, the kernel compiled-in efifb module supports a high-resolution console on EFI systems. This method requires GRUB and is described in NVIDIA/Tips and tricks#Fixing terminal resolution.

Hors ligne

#6 02-12-2018 18:13:18

raleur
Membre
Inscription : 03-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

evanescente~ondine a écrit :

nvidia 364.16 adds support for DRM (Direct Rendering Manager) kernel mode setting. To enable this feature, add the nvidia-drm.modeset=1 kernel parameter


Il est possible d'activer KMS en passant le paramètre modeset=1 au module nvidia-drm, qui doit être chargé naturellement pour que ce paramètre ait un effet. J'ignore s'il est chargé automatiquement ou s'il faut le forcer. Tu peux vérifier sa présence dans la sortie de lsmod :

lsmod | grep nvidia


Je ne comprends pas la nécessité d'ajouter la liste de modules qui suit dans l'initramfs, qui ne contient normalement pas de modules graphiques.

On avertit que l'activation de KMS peut activer Wayland dans GDM et Gnome et causer une dégradation des performances. Et KMS n'est pas directement lié au framebuffer. A ce propos, il semble que le pilote Nvidia ne fournit pas de framebuffer :

evanescente~ondine a écrit :

The NVIDIA driver does not provide an fbdev driver for the high-resolution console for the kernel compiled-in vesafb module. However, the kernel compiled-in efifb module supports a high-resolution console on EFI systems.


Quant à la haute résolution du framebuffer EFI, d'une part il faut amorcer en mode EFI et d'autre part d'après mon expérience elle est plutôt aléatoire selon les machines. Je me suis souvent retrouvé en 800*600, quand ce n'est pas avec un affichage noir ou brouillé...

En ligne

#7 02-12-2018 18:38:37

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Résultat de votre commande:
nvidia_drm             45056  1
drm_kms_helper        155648  1 nvidia_drm
drm                   360448  4 nvidia_drm,drm_kms_helper
nvidia_modeset        860160  4 nvidia_drm
nvidia              13160448  235 nvidia_modeset

Dois-je conclure qu'il n'y aura pas de directfb pour moi avec cette carte ?

Hors ligne

#8 02-12-2018 19:10:59

raleur
Membre
Inscription : 03-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Le module nvidia_drm est déjà chargé, donc il suffit de spécifier le paramètre dans un fichier /etc/modprobe.d/*.conf si tu veux voir ce que ça fait.

options nvidia_drm modeset=1


Il y a peut-être déjà un fichier nvidia*.conf mis en place par le pilote propriétaire, voir ce qu'il contient et l'adapter au besoin.

Dernière modification par raleur (02-12-2018 20:15:47)

En ligne

#9 02-12-2018 19:39:51

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

J'ai ça dans nvidia.conf:

install nvidia modprobe -i nvidia-current $CMDLINE_OPTS

install nvidia-modeset modprobe nvidia ; modprobe -i nvidia-current-modeset $CMDLINE_OPTS

install nvidia-drm modprobe nvidia-current-modeset ; modprobe -i nvidia-current-drm $CMDLINE_OPTS

install nvidia-uvm modprobe nvidia ; modprobe -i nvidia-current-uvm $CMDLINE_OPTS

remove nvidia modprobe -r -i nvidia-drm nvidia-modeset nvidia-uvm nvidia

# These aliases are defined in *all* nvidia modules.
# Duplicating them here sets higher precedence and ensures the selected
# module gets loaded instead of a random first match if more than one
# version is installed. See #798207.
alias pci:v000010DEd00000E00sv*sd*bc04sc80i00*  nvidia
alias pci:v000010DEd00000AA3sv*sd*bc0Bsc40i00*  nvidia
alias pci:v000010DEd*sv*sd*bc03sc02i00*   nvidia
alias pci:v000010DEd*sv*sd*bc03sc00i00*   nvidia
 


Je marque quoi exactement ?

Hors ligne

#10 02-12-2018 19:41:04

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Et j'ai ça dans nvidia-kernel-common.conf:

alias char-major-195* nvidia
#options nvidia NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=44 NVreg_DeviceFileMode=0660
# To enable FastWrites and Sidebus addressing, uncomment these lines
options nvidia NVreg_EnableAGPSBA=1
options nvidia NVreg_EnableAGPFW=1

Hors ligne

#11 02-12-2018 19:48:32

Debian Alain
Adhérent(e)
Lieu : zone 51
Distrib. : W$10 / stable / ubuntu / F29 / testing
Noyau : Linux 4.19.0-5 amd 64 debian
(G)UI : Gnome wayland / Gdm3
Inscription : 11-03-2017

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

evanescente-ondine , je te vois t'embarquer dans cette histoire de frame buffer ... très bien .

mais c'est quoi exactement un frame buffer ?

est tu sûr d'en avoir besoin ?

tu va pas casser ta machine avec çà ?

j'ai trouvé çà :  https://fr.wikipedia.org/wiki/Framebuffer

grosso modo , ce serai une sorte de tampon d'affichage .

je vois pas bien l'intérêt , vu qu'il y a déjà de la ram dans les cartes video ...

1498812139.jpg Cats, funniest creatures in animal kingdom - Funny cat compilation
RYZEN7 1700X - PRIME X370 PRO - 16 Go DDR4 - RADEON PULSE RX 550 4GB DDR5 OC UEFI - CORSAIR RM750X - SSD crucial MX500 500GB

En ligne

#12 02-12-2018 20:19:10

raleur
Membre
Inscription : 03-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

evanescente~ondine a écrit :

Je marque quoi exactement ?


Tu ajoutes la ligne que j'ai indiquée (corrigée) dans le fichier nvidia-kernel-common.conf puisque c'est lui qui contient déjà des options. Ou bien dans un fichier à part, comme tu veux.

Note : les - et _ dans les noms de modules sont interchangeables.

Dernière modification par raleur (02-12-2018 20:20:12)

En ligne

#13 02-12-2018 21:09:52

evanescente~ondine
Membre
Distrib. : Debian 9 (stretch)
Noyau : Linux 4.9.0-3-amd64
(G)UI : mate
Inscription : 31-10-2014

Re : mettre en place le frame buffer (pas de /dev/fd0) puis directfb

Pour Alain: je veux du graphisme dans ma console. Quant à casser ma machine, pouah, je l'ai fait tant de fois, ça ne me dérange pas. Je ne ferai pas plus de dégats qu'une réinstallation partielle ou totale ne puisse réparer.
J'ai fait les changements, pas de /dev/fb
contenu de mon nvidia-kernel-common.conf:

alias char-major-195* nvidia
#options nvidia NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=44 NVreg_DeviceFileMode=0660
# To enable FastWrites and Sidebus addressing, uncomment these lines
options nvidia NVreg_EnableAGPSBA=1
options nvidia NVreg_EnableAGPFW=1
options nvidia_drm modeset=1

Dernière modification par evanescente~ondine (02-12-2018 21:27:34)

Hors ligne

Pied de page des forums