Linux vga compatible controller

Difference between VGA compatible controller and 3D controller

Why is it that I don’t see my NVIDIA graphic adapter under VGA compatible controller but under 3D controller when I use lspci -vnn ? What’s the difference between the two and under which section should it actually be? Edit : Output Of lspci -k | grep -EA2 ‘VGA|3D’

00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) Subsystem: Dell Device 0662 Kernel driver in use: i915 -- 08:00.0 3D controller: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev a1) Subsystem: Dell GeForce 820M 

1 Answer 1

It depends on the adapter firmware how it declares itself to PCI bus.

Some Nvidia laptop adapters declare themselves as a 3D controller .

That does not make any practical difference.

The reason for that is probably because in an Optimus dual graphics systems, the Nvidia chip is not a real adapter. It outputs through the Intel adapter anyway and does only hardware acceleration.

You can install a proprietary driver in System Settings -> Software & Updates -> Additional Drivers (nvidia-352), or in terminal:

sudo apt-get install nvidia-352 

Both methods do the same. This will install the stable recommended driver.

If you need «the latest» drivers, you can install them by

sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-361 nvidia-prime 

Источник

lspci | grep VGA не определяет встроенную видеокарту

Вывод lspci | grep VGA и Вывод lspci (соответственно):

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] 
 00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:02.0 Display controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) 00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5) 00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5) 00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5) 00:1c.6 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 7 (rev b5) 00:1c.7 PCI bridge: Intel Corporation 82801 PCI Bridge (rev b5) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) 00:1f.0 ISA bridge: Intel Corporation Z68 Express Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] 01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series] 06:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller 07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06) 08:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 01)

То есть есть ещё что-то кроме:

00:02.0 Display controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 

Команда lspci ничего не «определяет». Она показывает то, что висит на шине и преобразует ID в человекочитаемый формат.

Читайте также:  Linux which java version change

inxi -Gx показывает что есть встроенная карта:

 Graphics: Card-1: Intel 2nd Generation Core Processor Family Integrated Graphics Controller bus-ID: 00:02.0 Card-2: Advanced Micro Devices [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] bus-ID: 01:00.0

Тебя смущает слово Corporation ?

А при чем здесь amdgpu? У тебя radeon (R5 230 на Terascale 2, т.е. amdgpu не заработает на нём никогда), это во-первых, а во-вторых, включена ли поддержка в ядре вот этого?:

00:02.0 Display controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 

Источник

Is my graphics card being used and if so why doesn’t it show as VGA compatible controller?

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b) 00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) 00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b) 00:14.0 USB controller: Intel Corporation Lynx Point-LP USB xHCI HC (rev 04) 00:16.0 Communication controller: Intel Corporation Lynx Point-LP HECI #0 (rev 04) 00:1b.0 Audio device: Intel Corporation Lynx Point-LP HD Audio Controller (rev 04) 00:1c.0 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 3 (rev e4) 00:1c.4 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 5 (rev e4) 00:1d.0 USB controller: Intel Corporation Lynx Point-LP USB EHCI #1 (rev 04) 00:1f.0 ISA bridge: Intel Corporation Lynx Point-LP LPC Controller (rev 04) 00:1f.2 SATA controller: Intel Corporation Lynx Point-LP SATA Controller 1 [AHCI mode] (rev 04) 00:1f.3 SMBus: Intel Corporation Lynx Point-LP SMBus Controller (rev 04) 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10) 02:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 840M] (rev a2) 

I must say in BIOS for graphics device I use «discrete» and not «UMA only». And when I look in the nvidia x server settings it says that it is being utilized at a certain % when i watch videos and stuff. My question is Is my nvidia graphics card being utilized or not? If yes, why does my system show vga compatible controller as being the intel graphics controller? If not, how do I enable the nvidia graphics card?

Читайте также:  Nat and iptables linux

Источник

how to check which graphic controller is in use

When I run glxgears I’ve got the following output (while application is running):

libGL error: failed to load driver: i965 libGL error: Try again with LIBGL_DEBUG=verbose for more details. XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0" after 2968 requests (2966 known processed) with 0 events remaining.

So I suppose it fails with intel VGA?

I have installed followed drivers:

  • intel-dri
  • xf86-video-intel 2.20 (X.org Intel i810/i830/i915/945G/G965+ video drivers)
  • xf86-video-nouveau

1 How can I check which controller is used by system/programs?

2 How can I ensure specific controller to be used?

3 How can I ensure that driver i965 is loaded, instead i915 (from the lshw output)? (the proper for my intel agp)

4 Why lshw shows clock: 33MHz? For GeForce 640M should be 625 MHz.

The 915 seems to be on a PCI bus (pci@0000:00:02.0), not on a PCIe bus. A PCI bus runs either at 33MHz or at 66MHz. (33Mhz for most PCs, 66 Mhz for workstations, servers, ancient apple G3 etc).

3 Answers 3

  1. To find out which graphics controller is currently used by system/programs use the following two commands:
grep LoadModule /var/log/Xorg.0.log grep Driver /etc/X11/xorg.conf 

SpeedyGonsales, when trying the second command, I get this: grep: /etc/X11/xorg.conf: No such file or directory. That means I dont have anything installed? what should I do? I thought I had just installed them using howopensource.com/2012/10/…

625 is not a bus frequency for PCIe; I think you are confused between the line speed, the plug speed, and the PCI bus speed. Line speed is bit per bit. While PCI bus is 32b width. So a PCI bus can stand 33MHz*32=1056Mb/s (shared between all devices). While PCIe v1 provides 2.5GT/s per line, but a transaction is not a bit ( a transaction is a bit on the data line, but, data lines need to transfert a lot of packet descriptions headers; so you may hope 2.3Gb/s per line).

But . PCIe is not mapped the same way; in fact, it’s dynamically routed and allocated. So, daughter cards are declared on a PCI bus (read it 32b 33MHz), but physically mapped on the PCI switch; and the switch may allocate more ressources (64b width) with unstated speed.

Читайте также:  Linux add service user

USB is about the same mess. USB3 are 5Gb/s rates, established over a hub that states 480Mb/s. The root hub can never declare more than «high speed» (480). So the device is mapped there. But, inside the «high speed link», you may use a «5Gb/s data rate». That’s why USB trees always show 2 trees when USB3 is around; and USB3 devices are double mapped. Mapping a USB3 device inside the USB2 tree is required, amongst other things, for power management (to compute the total current consumed per branch after adding other USB2 devices).

That’s why I am not surprised, or worried to see a 625MHz item below a 33MHz bus.

Or maybe 625 is the RAM speed, unrelated to PCI bus at all.

To know if a card is handled by a driver:

$ lspci | grep -E "VGA|3D" | cut -f1 -d" " | while read id ; do lspci -v -s $id ; done | grep -i -e "VGA" -e "3D" -e "Kernel driver" -e "Kernel module" 01:05.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RS880 [Radeon HD 4200] (prog-if 00 [VGA controller]) Kernel driver in use: radeon Kernel modules: radeon 02:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV710 [Radeon HD 4350/4550] (prog-if 00 [VGA controller]) Kernel driver in use: radeon Kernel modules: radeon 03:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV710 [Radeon HD 4350/4550] (prog-if 00 [VGA controller]) Kernel driver in use: radeon Kernel modules: radeon # lspci | grep -E "VGA|3D" | cut -f1 -d" " | while read id ; do lspci -v -s $id ; done | grep -i -e "VGA" -e "3D" -e "Kernel driver" -e "Kernel module" 00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller]) Kernel driver in use: i915 Kernel modules: i915 01:00.0 VGA compatible controller: NVIDIA Corporation GF108GLM [NVS 5200M] (rev a1) (prog-if 00 [VGA controller]) Kernel driver in use: nvidia Kernel modules: nvidia 

To know which card is the default one for X:

$ cat /var/log/Xorg.0.log | grep "PCI:" [ 4328.398] (--) PCI: (0:1:5:0) 1002:9710:1458:d000 rev 0, Mem @ 0xd8000000/134217728, 0xfdae0000/65536, 0xfd900000/1048576, I/O @ 0x0000ae00/256 [ 4328.398] (--) PCI:*(0:2:0:0) 1002:954f:1462:1618 rev 0, Mem @ 0xb0000000/268435456, 0xfd6e0000/65536, I/O @ 0x0000ee00/256, BIOS @ 0x. /131072 [ 4328.398] (--) PCI: (0:3:0:0) 1002:954f:1462:1618 rev 0, Mem @ 0xc0000000/268435456, 0xfdfe0000/65536, I/O @ 0x0000de00/256, BIOS @ 0x. /131072 # cat /var/log/Xorg.0.log | grep "PCI:" [ 30.924] (--) PCI:*(0@0:2:0) 8086:0166:1028:0534 rev 9, Mem @ 0xf6400000/4194304, 0xd0000000/268435456, I/O @ 0x0000f000/64, BIOS @ 0x. /131072 [ 30.924] (--) PCI: (1@0:0:0) 10de:0dfc:1028:1534 rev 161, Mem @ 0xf5000000/16777216, 0xe0000000/268435456, 0xf0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x. /524288 

But, Kernel will show driver in use even if X does not handle the card at all.

xorg.conf may (should hugely) help, but, I have already reported a dozen bugs against Xorg about the fact it may ignore the conf, and not even saying it (nor why).

Источник

Оцените статью
Adblock
detector