# Graphics support



## dalpets (Oct 18, 2019)

I have an integrated Intel HD graphics motherboard (Intel socket 1151, Strix B250G m/b) on which I have attempted to install FBSD 11.3, AMD64.

After I installed Xorg & Gnome 3 I get the following message.
         'Gnome shell requires acceleration to work. For this an Intel/ATI KMS enabled card is needed. For the Intel/ATI KMS driver the user needs to have read/write permissions on /dev/dri/cardN (usually N=0). If the Gnome shell is launched from gdm the gdm user also needs this access. Access can be granted by adding the user(s) to the video group `% pw groupmod video -m jerry`

So, the operating system doesn't see my integrated HD graphics. I have since read quite a few online posts & the handbook concerning video issues that seem to be far reaching, particularly in terms of FBSD versions & may well not be applicable to my specific problem, so I'm looking for some experienced direction as to how I might deal with the present outcome.

Do I have to get an Intel/ATI KMS enabled card, or is their some way to get my existing integrated graphics working? Does the Xorg package that I have recently used with an ootb working installation on another box still have any role  in getting this working?

Thank You very much for any help.


----------



## SirDice (Oct 18, 2019)

Have a look here: https://wiki.freebsd.org/Graphics

(wiki appears to be down right now, give it a couple of minutes)

Short, short version: Install graphics/drm-kmod


----------



## dalpets (Oct 18, 2019)

Thanks, but the Wiki only seems to refer to the two generations of support for this platform (Intel HD graphics) for version 12. I am using 11.3/64bit AMD. Anyhow, I will try  graphics/drm-kmod & see what happens.


----------



## SirDice (Oct 18, 2019)

The graphics/drm-kmod port/package has been designed to automatically install the correct modules for each FreeBSD version.


----------



## dalpets (Oct 20, 2019)

I have installed the kmod package & have duly noted that gdm(92) & video(44) are listed in /etc/group. I have run `pw groupmod video -m user`, but don’t know how to verify if I was successful, (`id_-Gn_username`didn't work for me). I presume that both the addition & verification methods are the same for video & gdm?

I don't think /dev/dri/card0 exists at present. How do I go about creating it with read/write permissions? Would `chmod 666` suffice for that purpose?

Thank You very much for your help


----------



## SirDice (Oct 21, 2019)

dalpets said:


> ( id_-Gn_username didn't work for me)


It's `id <username>`.


----------



## dalpets (Oct 21, 2019)

SirDice said:


> It's `id <username>`.


Thanks for that.

Could you please advise if my intention to give read write permissions to dri & gdm, as follows, should work.
`@root chmod 666 /dev/dri/card0
@root chmod 666 /etc/gdm.conf`

Thank You.


----------



## SirDice (Oct 21, 2019)

Never allow "others" write access, 666 should, like 777, never be used (only a few exceptions exist). Besides that, gdm.conf doesn't belong in /etc/. Set it to 644 or 640 in any case.

Files in /dev/ don't actually exist, they're "virtual" and created by devd(8). Setting permissions works, until you reboot. You need to do this with devfs.conf(5). But, you shouldn't need to touch the permissions on /dev/dri/card0.


----------



## dalpets (Oct 21, 2019)

SirDice said:


> Never allow "others" write access, 666 should, like 777, never be used (only a few exceptions exist). Besides that, gdm.conf doesn't belong in /etc/. Set it to 644 or 640 in any case.
> 
> Files in /dev/ don't actually exist, they're "virtual" and created by devd(8). Setting permissions works, until you reboot. You need to do this with devfs.conf(5). But, you shouldn't need to touch the permissions on /dev/dri/card0.


How about/usr/local/etc/gdm/locale.conf  for setting gdm permissions?
If dev files don't exist is there anyway to see their permissions eg.,`ls-l`
Thanks again.


----------



## k.jacker (Oct 22, 2019)

All CPUs supported by your Motherboard have Intel graphics HD500/600 series and are fully supported. It doesn't matter if you run FreeBSD 11.3- or 12.0-RELEASE.
Have you actually loaded the Driver? Just installing graphics/drm-kmod is not enough. The driver (kernel module) is /boot/modules/i915kms.ko. Load it.


----------



## dalpets (Oct 22, 2019)

Unfortunately system cannot find directory to execute command? Thanks.

`ls -l /boot/kernel/ | more 
-r-xr-xr-x  2 root  wheel     69176 Jul  5 14:20 i915.ko
-r-xr-xr-x  2 root  wheel   1024056 Jul  5 14:20 i915kms.ko


root@FreeBSD11:/ # kldload /boot/modules/i915kms.ko
kldload: can't load /boot/modules/i915kms.ko: No such file or directory


root@FreeBSD11:/ # kldload ./boot/modules/i915kms.ko
kldload: can't load ./boot/modules/i915kms.ko: No such file or directory`


----------



## SirDice (Oct 22, 2019)

Can you post the output from `uname -K`? And `pkg info -x drm-`?


----------



## dalpets (Oct 22, 2019)

SirDice said:


> Can you post the output from `uname -K`? And `pkg info -x drm-`?


`root@FreeBSD11:/home/Brenton # uname -K
1103000
root@FreeBSD11:/home/Brenton # pkg info -x drm-
libdrm-2.4.98_1,1`


----------



## Zhsk (Oct 22, 2019)

#kldload i915kms


----------



## dalpets (Oct 23, 2019)

dalpets said:


> `root@FreeBSD11:/home/Brenton # uname -K
> 1103000
> root@FreeBSD11:/home/Brenton # pkg info -x drm-
> libdrm-2.4.98_1,1`


Please disregard pkginfo output above and instead use the output below;
`root@fbsd:~pkg info -x drm-
drmfsbsd11.2-kmod-4.11g20190906
drm-kmod g201190710
libdrm-2.4.99,1`
why bsd 11.2 (should be 11.3)?
Apologies for the error. It was related to kvm console switching.


----------



## dalpets (Oct 23, 2019)

k.jacker said:


> All CPUs supported by your Motherboard have Intel graphics HD500/600 series and are fully supported. It doesn't matter if you run FreeBSD 11.3- or 12.0-RELEASE.
> Have you actually loaded the Driver? Just installing graphics/drm-kmod is not enough. The driver (kernel module) is /boot/modules/i915kms.ko. Load it.


Yes, now loaded, but see `pkg info -x drm-` error result(15).

Thanks very much for your help in what has been otherwise a negative piecemeal learning process. I say that because I have found that most of the many online textbooks do not contain this sort of granular information, for this or many other FBSD issues. They may as well not exist, except for unearthing them in the forums with helpful people such as yourself. There are a couple of online exceptions where the authors have gone out of their way to document granular detail. One such is at;





						Drm Kmod Primer
					

Getting Started With drm-kmod



					freebsddesktop.github.io


----------



## SirDice (Oct 23, 2019)

dalpets said:


> why bsd 11.2 (should be 11.3)?


Because the port/package is named that way. It's just part of the name, it has nothing to do with the FreeBSD minor version you actually have. To be honest I think the minor version shouldn't be part of the name, as it's intended to be used on _any_ 11 version.

graphics/drm-fbsd11.2-kmod


----------



## dalpets (Oct 23, 2019)

In forums Desktop> Usage>Window Managers> GNOME  "terminal app cannot run" post, thread startertony33, start dateJun 25, 2015
Sir Dice said 'Why don't you simply deinstall and reinstall GDM? That should fix the permissions'.  This implies that no extra configuration was necessary, however the initial error message I received on my installation attempt said that both video & gdm needed to have permissions set and moreover k.jacker in thread 10 says just installing graphics/drm-kmod is not enough & that the driver has to be loaded. 
I'm thoroughly confused!


----------



## SirDice (Oct 23, 2019)

That was a suggestion I made 4 years ago for a completely different and unrelated issue.


----------



## dalpets (Oct 23, 2019)

SirDice said:


> Can you post the output from `uname -K`? And `pkg info -x drm-`?


Do you have any help on my reply. Is the output OK? (15)
You said  'Besides that, gdm.conf doesn't belong in /etc/' (8) . Then where does it belong?
What is the correct command line path for chmod gdm? Does it include reference to gdm92?


----------

