# After having removed one NVIDIA graphic card from my PC,all the INTEL devices appeared without the proper driver attached...



## ziomario (Oct 30, 2021)

Hello to everyone.

I've just removed the NVIDIA GTX 1060 from the rest of my hardwares and now the PCI devices occupied slots are changed. Actually,after having removed the GTX 1060,I have one only graphic card on my PC,that's the RTX 2080 ti. So,I've passed from this situation :


```
001:00:0: NVIDIA product 1e04 (TU102 [GeForce RTX 2080 Ti, revision 0xa1)
001:00:1: NVIDIA product 10f7 (TU102 High Definition Audio Controller, revision 0xa1)
001:00:2: NVIDIA product 1ad6 (TU102 USB 3.1 Host Controller, xHCI, revision 0xa1)
001:00:3: NVIDIA product 1ad7 (TU102 USB Type-C UCSI Controller, revision 0xa1)


002:00:0: NVIDIA GeForce GTX 1060 3GB (VGA display, revision 0xa1)
002:00:1: NVIDIA product 10f1 (mixed mode multimedia, revision 0xa1)
```

to this situation :



```
ppt0@pci0:2:0:0:        class=0x030000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1e04 subvendor=0x19da subdevice=0x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 [GeForce RTX 2080 Ti]'
    class      = display
    subclass   = VGA

ppt1@pci0:2:0:1:        class=0x040300 rev=0xa1 hdr=0x00 vendor=0x10de device=0x10f7 subvendor=0x19da subdevice=0x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 High Definition Audio Controller'
    class      = multimedia
    subclass   = HDA

ppt2@pci0:2:0:2:        class=0x0c0330 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1ad6 subvendor=0x19da subdevice=0x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 USB 3.1 Host Controller'
    class      = serial bus
    subclass   = USB

ppt3@pci0:2:0:3:        class=0x0c8000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1ad7 subvendor=0x19da subdevice=0x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 USB Type-C UCSI Controller'
    class      = serial bus
```


in short terms now the RTX 2080 ti occupies slots from 2:0:0 to 2:0:3. This because an NVIDIA developer told me that's a better idea that the card doesn't occupy the root bus. Good. Now the problem that came up. Check the devices below :


```
root@marietto:/usr/home/marietto # pciconf -v -l

none0@pci0:0:18:0:      class=0x118000 rev=0x10 hdr=0x00 vendor=0x8086 device=0xa379 subvendor=0x1458 subdevice=0x8888
    vendor     = 'Intel Corporation'
    device     = 'Cannon Lake PCH Thermal Controller'
    class      = dasp

none1@pci0:0:20:2:      class=0x050000 rev=0x10 hdr=0x00 vendor=0x8086 device=0xa36f subvendor=0x8086 subdevice=0x7270
    vendor     = 'Intel Corporation'
    device     = 'Cannon Lake PCH Shared SRAM'
    class      = memory
    subclass   = RAM

none2@pci0:0:22:0:      class=0x078000 rev=0x10 hdr=0x00 vendor=0x8086 device=0xa360 subvendor=0x1458 subdevice=0x1c3a
    vendor     = 'Intel Corporation'
    device     = 'Cannon Lake PCH HECI Controller'
    class      = simple comms

none3@pci0:0:31:5:      class=0x0c8000 rev=0x10 hdr=0x00 vendor=0x8086 device=0xa324 subvendor=0x8086 subdevice=0x7270
    vendor     = 'Intel Corporation'
    device     = 'Cannon Lake PCH SPI Controller'
    class      = serial bus
```

After having removed the GTX 1060 the resolution of my screen has been determined at 1024x768 and some Intel devices are called none. I can't change it in xfce and in KDE 5. Why ???? someone could explain the reason and can explain how can I reattach the correct driver without reinstalling FreeBSD from scratch ? thanks.


----------



## Tieks (Oct 30, 2021)

The GTX 1060 is supported by x11/nvidia-driver-390 iirc. That RTX card is afaik a later model, probably supported by the latest x11/nvidia-driver. If so, deinstall the 390 and install the latest version.


----------



## ziomario (Oct 30, 2021)

The solution : since my primary gpu is the intel,I've reconfigued xorg with :


```
X -configure
```

and it produced a xorg.conf file like this,that worked : (while X on Linux does the re-configuration automatically,on FreeBSD the command above should be issued.


```
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" RightOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
    ModulePath   "/usr/local/lib/xorg/modules"
    FontPath     "/usr/local/share/fonts/misc/"
    FontPath     "/usr/local/share/fonts/TTF/"
    FontPath     "/usr/local/share/fonts/OTF/"
    FontPath     "/usr/local/share/fonts/Type1/"
    FontPath     "/usr/local/share/fonts/100dpi/"
    FontPath     "/usr/local/share/fonts/75dpi/"
    FontPath     "catalogue:/usr/local/etc/X11/fontpath.d"
EndSection

Section "Module"
    Load  "glx"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/sysmouse"
    Option        "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
EndSection

Section "Monitor"
    Identifier   "Monitor1"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "Accel"                  # [<bool>]
        #Option     "AccelMethod"            # <str>
        #Option     "Backlight"              # <str>
        #Option     "CustomEDID"             # <str>
        #Option     "DRI"                    # <str>
        #Option     "Present"                # [<bool>]
        #Option     "ColorKey"               # <i>
        #Option     "VideoKey"               # <i>
        #Option     "Tiling"                 # [<bool>]
        #Option     "LinearFramebuffer"      # [<bool>]
        #Option     "HWRotation"             # [<bool>]
        #Option     "VSync"                  # [<bool>]
        #Option     "PageFlip"               # [<bool>]
        #Option     "SwapbuffersWait"        # [<bool>]
        #Option     "TripleBuffer"           # [<bool>]
        #Option     "XvPreferOverlay"        # [<bool>]
        #Option     "HotPlug"                # [<bool>]
        #Option     "ReprobeOutputs"         # [<bool>]
        #Option     "XvMC"                   # [<bool>]
        #Option     "ZaphodHeads"            # <str>
        #Option     "VirtualHeads"           # <i>
        #Option     "TearFree"               # [<bool>]
        #Option     "PerCrtcPixmaps"         # [<bool>]
        #Option     "FallbackDebug"          # [<bool>]
        #Option     "DebugFlushBatches"      # [<bool>]
        #Option     "DebugFlushCaches"       # [<bool>]
        #Option     "DebugWait"              # [<bool>]
        #Option     "BufferCache"            # [<bool>]
    Identifier  "Card0"
    Driver      "intel"
    BusID       "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"               # [<bool>]
        #Option     "kmsdev"                 # <str>
        #Option     "ShadowFB"               # [<bool>]
        #Option     "AccelMethod"            # <str>
        #Option     "PageFlip"               # [<bool>]
        #Option     "ZaphodHeads"            # <str>
        #Option     "DoubleShadow"           # [<bool>]
        #Option     "Atomic"                 # [<bool>]
    Identifier  "Card1"
    Driver      "modesetting"
    BusID       "PCI:2:0:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "Screen"
    Identifier "Screen1"
    Device     "Card1"
    Monitor    "Monitor1"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection
```


----------



## Phishfry (Oct 30, 2021)

ziomario said:


> This because an NVIDIA developer told me that's a better idea that the card doesn't occupy the root bus.


Never heard of this and I do not feel it is right.
What is the root bus? 0:0:0 ? 1:0:0 ?

You will find that anytime you mess with PCI cards it will wreck your PCI address settings and thusly PPT settings.
Start adding cards with PCI PEX Bridge chips and it can get pretty wild. Same with PCIe bifurication.

I keep a legend in my /boot/loader.conf with every card, its PID/VID, and what slot it is in.
Frequently I am re-arranging the legend because of shuffling cards around.

```
## Pass thru devices ##
pptdevs="3/0/0 4/1/0 4/5/0 4/7/0 4/9/0 6/0/0 8/0/0 9/0/0 9/0/1 10/0/0 11/1/0 11/5/0 11/7/0 11/9/0 12/0/0 13/0/0 14/0/0 15/0/0"
pptdevs2="129/0/0 129/0/1 130/0/0 130/0/1 133/0/0 133/0/1 133/0/2 133/0/3 135/0/0 135/0/1"

### CPU1 devices: ###
#pptdevs="1/0/0"   ### NVMe0 PM1725a Dell AIC ### SLOT 3 ###
#pptdevs="2/0/0"   ### MPS0 SAS2308 ### SLOT1 ###
#pptdevs="3/0/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="4/1/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="4/5/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="4/7/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="4/9/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="6/0/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="8/0/0"   ### USB Controller 44V  ### SLOT 2 ###
#pptdevs="0/0/0"   ### USB Controller 42V  ### SLOT 4 ###
#pptdevs="14/0/0"  ### USB Controller 42V  ### SLOT 4 ###
#pptdevs="16/0/0"  ### USB Controller 42V  ### SLOT 4 ###
#pptdevs="9/0/0"   ### MSI   VID=1462 PID=8c93 GT710 VGA passthru ### SLOT 5 ###

### CPU2 devices: ###
#pptdevs="129/0/0  ### PNY   VID=118a PID=196e GT710 VGA passthru ### SLOT 10 ###
#pptdevs="130/0/0" ### Dell  VID=1028 PID=1083 GT730 VGA passthru ### SLOT 11 ###
#pptdevs="133/0/0 133/0/1 133/0/2 133/0/3 135/0/0 135/0/1" ### Intel NIC ### SLOT 8 ###
#pptdevs="137/0/0  ### Chelsio T-540 ### SLOT 9 ###
#pptdevs="139/0/0 140/0/1 140/0/2 Supermicro SLG3-2E4 hosting 141/0/0-nvme1 142/0/0 nvme2 ### SLOT 6
#pptdevs="143/0/0 144/0/1 144/0/2 Supermicro SLG3-2E4 hosting 145/0/0-nvme3 146/0/0 nvme4 ### SLOT 7
#
```


----------



## ziomario (Nov 4, 2021)

Is really so complicated to remap all the ppt devices ?


----------



## malavon (Nov 4, 2021)

Tieks said:


> The GTX 1060 is supported by x11/nvidia-driver-390 iirc. That RTX card is afaik a later model, probably supported by the latest x11/nvidia-driver. If so, deinstall the 390 and install the latest version.


Note sure where this is coming from, but it's a big piece of misinformation. Even my old and venerable GTX 770 is still using the 'normal' port.  I know you're trying to be helpful, but I really needed to point this out for other people reading this.

ziomario are you sure you didn't have an xorg.conf file - or better, xorg.conf.d/<somefilename>.conf (e.g. driver-intel.conf) files? Normally the video card should be detected automatically by the driver, but when you have multiple video cards (even amongst different drivers) it's commonly needed to supply a "BusId" in the configuration file.
e.g. from my system, which also has a built-in Intel card and a NVIDIA card:


```
Section "Device"
        Identifier      "NvidiaGpu0"
        Driver          "nvidia"
        # Specify BusID in case of multiple cards
        # Find out with "pciconf -lv | grep -B3"
        BusID           "PCI:1:0:0"
        # Might no longer be needed, probably a bug in version X
        #Option         "IgnoreEDIDChecksum" "DFP"
EndSection
```

So I suspect that you simply have simply overwritten your xorg.conf or _have overridden_ your xorg.conf.d files with the new xorg.conf. I assume here - from a quick glance on the man page - that xorg.conf takes precedence.


----------



## Tieks (Nov 4, 2021)

malavon said:


> Note sure where this is coming from, but it's a big piece of misinformation. Even my old and venerable GTX 770 is still using the 'normal' port.


Sorry, but you are the one spreading nonsense. You'll find the list of cards supported by version 390 here (tab supported products), you will find the GTX1060 and even your own GTX770 there. Card RTX2080ti is supported by their latest production branch version 470, see the list here (tab supported products).
If OP switches from GTX1060 to RTX2080 he has to change the driver.


----------



## shkhln (Nov 4, 2021)

Tieks said:


> If OP switches from GTX1060 to RTX2080 he has to change the driver.


Did OP actually imply 390 anywhere?


----------



## shkhln (Nov 4, 2021)

By the way, for people with poor reading comprehension skills: OP is being typically silly and listed exactly 0 (zero) Intel video devices. Every driver that is supposed to be attached _is_ actually attached, otherwise there wouldn't be anything on display.


----------



## malavon (Nov 4, 2021)

Tieks said:


> Sorry, but you are the one spreading nonsense. You'll find the list of cards supported by version 390 here (tab supported products), you will find the GTX1060 and even your own GTX770 there. Card RTX2080ti is supported by their latest production branch version 470, see the list here (tab supported products).
> If OP switches from GTX1060 to RTX2080 he has to change the driver.


I'll clarify, but I'll add first that technically you are correct. Yes, you can use the 390 range with the GTX1060 & GTX770. But the correct driver to use is the 4xx range, which also lists the GTX1060 & GTX770 (check it). Anyone using an NVIDIA card made in the last more or less 10 years should be using the 4xx driver, not the 390. 4xx is where new development happens, features are added and bug fixes are introduced. 390 is the driver meant for older cards, which the 4xx has no longer support for, and is no longer actively maintained. It is also not a question of stable driver vs beta driver.
When NVIDIA introduces a new driver version, the new driver still supports most of the hardware that the older driver supports. That's why there's an overlap in hardware support.
Note that OP mentioned that his RTX2080 did work correctly after generating an xorg.conf file, so he did not have to install another driver package.


shkhln said:


> By the way, for people with poor reading comprehension skills: OP is being typically silly and listed exactly 0 (zero) Intel video devices.


I think it's just because he didn't post all output of pciconf, but not sure. He does however say he has a (CPU) graphics. It may also be disabled in the BIOS I guess.
Quick edit: actually his automatically generated xorg.conf does list an Intel device.

OP
That said, again, the reason it now works is because the BusId is correct after it had changed by removing the other video card.
Also, it's better to not configure anything unless you have to (which I do because I haven't disabled my Intel GPU in the BIOS). And _if_ you have to it's much more maintainable to use the xorg.conf.d directory. See the manual, section "5.4.4.2. Single or Multiple Files".


----------



## shkhln (Nov 4, 2021)

malavon said:


> Note that OP mentioned that his RTX2080 did work correctly after generating an xorg.conf file, so he did not have to install another driver package.


OP mentioned Intel. RTX 2080 is under control of ppt (a dummy driver for devices intended to be used in PCI passthrough mode with bhyve) and thus unusable.


----------



## Tieks (Nov 4, 2021)

shkhln said:


> Did OP actually imply 390 anywhere?


OP states in his first post "... after having removed the GTX 1060,I have one only graphic card on my PC,that's the RTX 2080 ti". Card GTX1060 implies legacy version 390, RTX2080 needs current version 470.

I see that the makefile of x11/nvidia-driver tests for different versions. So this current port may install the right *legacy* version for you, thus causing the misunderstanding here.


----------



## shkhln (Nov 4, 2021)

Tieks said:


> Card GTX1060 implies legacy version 390, RTX2080 needs current version 470.


Since apparently you know where Nvidia lists supported devices for 470 you might as well look at that list. Would you?



Tieks said:


> I see that the makefile of x11/nvidia-driver tests for different versions. So this current port may install the right *legacy* version for you, thus causing the misunderstanding here.


No, port makefiles can't test hardware.


----------



## Tieks (Nov 4, 2021)

shkhln said:


> Since apparently you know where Nvidia lists supported devices for 470 you might as well look at that list. Would you?


I did. I guess that GTX1060 is probably at least 8 years old. The installed driver for it could be much older that the current 470 version. Now how do you find out whether that installed version supports RTX2080 too? That's why I wrote "if so, deinstall the 390 version". Trial & error may work too, though.


----------



## shkhln (Nov 4, 2021)

GTX 1060 is a 5 years old video card, but that is besides the point. What does the list of supported devices for 470 say about it?


----------



## Tieks (Nov 4, 2021)

shkhln said:


> What the list of supported devices for 470 says about it?


That's irrelevant because version 470 is fairly new, that is, less than 5 years old. There may be an older driver version installed, you'll have to find out if that one supports the new card.


----------



## Alain De Vos (Nov 4, 2021)

Can you post the output of,

```
pciconf -lv | egrep -i "RTX|GTX|2080|1060"
```
And your current relevant driver lines in loader.conf (should be none) & rc.conf


----------



## ziomario (Nov 4, 2021)

My apologies. I totally forgot that my everyday graphic card is the *CoffeeLake-S GT2 [UHD Graphics 630]* chipset integrated with the motherboard :


```
vgapci0@pci0:0:2:0:     class=0x030000 rev=0x02 hdr=0x00 vendor=0x8086 device=0x3e98 subvendor=0x1458 subdevice=0xd000
    vendor     = 'Intel Corporation'
device     = 'CoffeeLake-S GT2 [UHD Graphics 630]'
class      = display
subclass   = VGA
```


----------



## malavon (Nov 5, 2021)

Tieks said:


> I see that the makefile of x11/nvidia-driver tests for different versions. So this current port may install the right *legacy* version for you, thus causing the misunderstanding here.


Seriously, no. That's a serious bit of misinformation born from misunderstanding what you see in the Makefile (look up what a slave port is). When you install x11/nvidia-driver it's not going to look at your hardware and decide to install x11/nvidia-driver-390. *Everyone with an NVIDIA card supported by x11/nvidia-driver should be installing that package/port and no other driver version.* 
Even 5 years ago, or whatever, when the 390.x range was the latest, the port was called x11/nvidia-driver. No one except for people with deprecated hardware (or i386 platform) should ever install an different package. 
To give you an example, I have another machine with a GTX 560. Up to a certain moment in time that machine had x11/nvidia-driver installed. Then, when NVIDIA deprecated the hardware I had to manually replace it with x11/nvidia-driver-390.


Tieks said:


> That's irrelevant because version 470 is fairly new, that is, less than 5 years old. There may be an older driver version installed, you'll have to find out if that one supports the new card.


Well no, like I said earlier the GTX 2080 worked without installing another driver version. So OP already had the right package installed. Which, again, is the right package for anyone else with an NVIDIA card to have installed. 

And to end with a quote the FreeBSD handbook: Kernel support for NVIDIA cards is found in either the x11/nvidia-driver port or the x11/nvidia-driver-xxx port. Modern cards use the former. Legacy cards use the -xxx ports, where xxx is one of 304, 340 or 390 indicating the version of the driver. For those, fill in the -xxx using the Supported NVIDIA GPU Products page. This page lists the devices supported by different versions of the driver. Legacy drivers run on both i386 and amd64. The current driver only supports amd64.


----------



## malavon (Nov 5, 2021)

@ziomario
Did you take a look at the multiple file configuration I posted? It really makes Xorg configuration much easier. Also, you can omit most of what you have in xorg.conf now as well.
To give you a quick overview of what I have:

```
> ll /usr/local/etc/X11/xorg.conf.d/
total 18
-rw-r--r--  1 root  wheel   223B 12 nov.  2019 driver-intel.conf.bak
-rw-r--r--  1 root  wheel   285B 29 aug. 19:42 driver-nvidia.conf
-rw-r--r--  1 root  wheel   133B 26 feb.  2020 keyboard-be.conf
-rw-r--r--  1 root  wheel   154B 26 feb.  2020 keyboard-zap.conf
```
Note that in my configuration the Intel driver has been disabled (by renaming the file) because the NVIDIA driver (at least at the time I configured this) didn't cooperate with the Intel driver. Since I had to choose one, I obviously chose the discrete video card. Not sure if that's still the case though, haven't tested it in a while.
As you can see from my configuration I only have a small piece of config for the video card and in my case the keyboard as well, including a config to make ctrl+alt+backspace into a general 'zap X' (kill the xorg process) key combination. 
There is no /usr/local/etc/X11/xorg.conf in my case.


----------



## Tieks (Nov 5, 2021)

malavon said:
			
		

> the GTX 2080 worked without installing another driver version.



No need to check a driver version, folks. Trial & error works!

I own a GTX1050 card that I bought around 2014. I used to run it with legacy driver 390 until a fresh install some time ago. At that point I found out that the latest driver supported my card too, so I installed that.

OP said he replaced an older GTX1060 with a newer RTX2080. He didn't say which driver he was using. I realised that, like me, he could still be using the 390 version that does not support his new card. Merely trying to help I wrote: "If so, deinstall the 390 and install the latest version.". According to you that is "a big piece of misinformation". Please explain that without beating about the bush this time. Does that new card suddenly work with the old 390 driver perhaps? Where did I advise a wrong driver?

And you state to see even more misinformation. It seems that a make utility to run a compiler can not run a utility to set some #define's for that compiler. That's new to me. Is that a new Linux development or yet another straw man argument?

Why do you think accusing others of spreading misinformation will make you look better?


----------



## ziomario (Nov 6, 2021)

Alain De Vos said:


> Can you post the output of,
> 
> ```
> pciconf -lv | egrep -i "RTX|GTX|2080|1060"
> ...




```
vgapci0@pci0:0:2:0:     class=0x030000 rev=0x02 hdr=0x00 vendor=0x8086 device=0x3e98 subvendor=0x1458 subdevice=0
xd000
    vendor     = 'Intel Corporation'
    device     = 'CoffeeLake-S GT2 [UHD Graphics 630]'
    class      = display
    subclass   = VGA

ppt0@pci0:2:0:0:        class=0x030000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1e04 subvendor=0x19da subdevice=0
x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 [GeForce RTX 2080 Ti]'
    class      = display
    subclass   = VGA

ppt1@pci0:2:0:1:        class=0x040300 rev=0xa1 hdr=0x00 vendor=0x10de device=0x10f7 subvendor=0x19da subdevice=0
x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 High Definition Audio Controller'
    class      = multimedia
    subclass   = HDA

ppt2@pci0:2:0:2:        class=0x0c0330 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1ad6 subvendor=0x19da subdevice=0
x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 USB 3.1 Host Controller'
    class      = serial bus
    subclass   = USB

ppt3@pci0:2:0:3:        class=0x0c8000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1ad7 subvendor=0x19da subdevice=0
x2503
    vendor     = 'NVIDIA Corporation'
    device     = 'TU102 USB Type-C UCSI Controller'
    class      = serial bus
```


----------



## malavon (Nov 7, 2021)

I'm going to keep this as brief as possible (sic) because it's derailing this thread. OP, I'm sorry. I will try to help you where I can now that also your question has become a bit clearer to me.
Tieks You feel insulted, I get it. Written words are hard to interpret and on top of that I'm not exactly a very empathic person. If you want any further clarifications, please take it up with me via PM. I'm also sorry if I'm coming across as pedantic. To make things clearer I've mixed your reply up a bit.

To start off let's start with the definition of misinformation: incorrect or misleading information.


Tieks said:


> Why do you think accusing others of spreading misinformation will make you look better?


I'm not accusing anyone of anything, I'm simply observing that "incorrect or misleading information" has been posted as far as I read said information. Also, please, I don't need to make myself look better with a forum post. Don't get on your horse before reading the rest though, please.


Tieks said:


> And you state to see even more misinformation. It seems that a make utility to run a compiler can not run a utility to set some #define's for that compiler. That's new to me. Is that a new Linux development or yet another straw man argument?


That's exactly why I'm saying this is misinformation: we're not just talking about a make utility that checks a bunch of defines. We're talking about the Ports system, which has very clear defined rules. Ports do not check for which video card is in a system and then decide to install a different port so as to "help" the user. They're not supposed to, they're not allowed to. A single port - or package - installed on two different systems should operate in the exact same fashion. If it didn't the whole Ports system would be extremely unpredictable.
Don't conflagrate the Makefile (or any other build file/system, e.g. CMakeLists.txt for CMake) that'll build the software with the Makefile from the port itself. The latter is very strictly defined to what it can and cannot do. In this case installing another version based on the video card would be in the port's Makefile, not in the Makefile supplied by NVIDIA.

Now, why is this important you may ask? Well, I've been on this forum long enough to know that one day someone is going to read this, try it and then make his/her first post on this forum titled "Ports system bug: nvidia driver no longer checks for hardware". In that post that user is going to explain how he once read on this forum how it's supposed to work, can't remember where though, tried it and then found out it doesn't work that way. And then the very first reply on his post is going to be: "stop trolling please".
I'm being so adamant about this because it has happened before and will happen again.


Tieks said:


> No need to check a driver version, folks. Trial & error works!


Following the recommended method of operation generally works better. What I said - or at least meant - is that OP already had a detected RTX2080. That would only be possible if he already had the right port/package installed, right?


Tieks said:


> I own a GTX1050 card that I bought around 2014. I used to run it with legacy driver 390 until a fresh install some time ago. At that point I found out that the latest driver supported my card too, so I installed that.
> 
> OP said he replaced an older GTX1060 with a newer RTX2080. He didn't say which driver he was using. I realised that, like me, he could still be using the 390 version that does not support his new card. Merely trying to help I wrote: "If so, deinstall the 390 and install the latest version.". According to you that is "a big piece of misinformation". Please explain that without beating about the bush this time. Does that new card suddenly work with the old 390 driver perhaps? Where did I advise a wrong driver?


Back in 2014 when you installed a GTX1050 card, you have had to install x11/nvidia-driver. At that time the driver version for _that port _was at 34x.x (link to the ports history)_. _It was only at the end of 2019 that _that port _was updated to version 4xx (link to more recent history). So, if you have x11/nvidia-driver-390 installed then it means that _you_ at some moment in time have made a decision to stick with the 3xx branch of the driver by uninstalling x11/nvidia-driver and installing x11/nvidia-driver-390. Nothing wrong with that, but ... and I quote your statement:


Tieks said:


> The GTX 1060 is supported by x11/nvidia-driver-390 iirc.


When I read that I read that that's the version that one is supposed to install for a GTX10xx. Hoewever from the official NVIDIA forum (although Linux, but it still goes): "Current production branch release: 470.82.00".  A quick quote from the official NVIDIA forum "*Support for Fermi-based GPUs* Fermi-based GPUs (added Wikipedia link) are no longer be supported starting with release 396."
So unless you're using a Fermi-based card or older the official recommendation is to use the newest driver.

Now, again you may ask why that is misleading information towards another user. In the end, it'll work, right? Well, maybe. It might work, but not entirely. Maybe the user wants to run a Vulkan program (supported only in the 4xx branch). The forums - both FreeBSD and NVIDIA - make it clear that Vulkan is supported. And yet it doesn't work. A proactive user will find that the driver he's using simply doesn't support Vulkan and maybe even find out that he could just install the new driver without issues. But for someone who has little experience with FreeBSD and is just trying to make do with whatever information he comes across and might - wrongfully - conclude that FreeBSD is the wrong choice for his hardware.

Or if the user hits a nasty bug that we - on the FreeBSD forum - know nothing about then we'll first have to establish why he's currently using an old driver, persuade the user that the information he read earlier is wrong and then he'll no doubt hit the nvidia.ko vs nvidia-modeset.ko issue. The first thing he may very well be posting is "it doesn't work anymore, why is it so hard to configure a simple videocard?".

Misinformation isn't always willful and may very well come from a misunderstanding. I've misinformed people on this very forum as well and regret that. You mean well, I know and I'm not dissing you for the effort. Just trying to, you know, help you get as much good _and persisting_ information across.

btw. quick heads up to all, from 495.x a bunch of older GPU's will no longer be supported anymore (including my GTX770).


----------



## Tieks (Nov 7, 2021)

malavon said:
			
		

> ... (lots of text to avoid a question)



The question is, why is "if you still use the legacy driver, deinstall it and use the latest" such a "big piece of misinformation"? You even advise the latest version yourself. To admit a mistake is difficult, it shows.
Btw, if you're interested in the quality of the forum: Try to avoid producing TLDR's next time.


----------

