NVIDIA 3070 + AMD Graphics Card?

I got a new AMD graphics card to increase the number of monitors that I can use with my system.

I’ve been running an NVIDIA 3070 with 3 monitors, but needed 6 for work purposes. This is the card that I got: Card. Currently, Manjaro detects the card, but does not detect the other 3 monitors plugged in.

How can I use both of these cards to drive the 6 (total) monitors?

Here is mhwd:

And a snapshot from xrandr:

sarah@MidnightStarSign:~$ xrandr

Screen 0: minimum 8 x 8, current 3840 x 2160, maximum 32767 x 32767
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  74.99    59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1440x576      50.00  
   1440x480      59.94  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1280x720      60.00    59.94    50.00  
   1152x864      75.00  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    72.81    59.94    59.93  
HDMI-0 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00 +  74.99*   59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1440x576      50.00  
   1440x480      59.94  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1280x720      60.00    59.94    50.00  
   1152x864      75.00  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    72.81    59.94    59.93  
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected primary 1920x1080+0+1080 (normal left inverted right x axis y axis) 598mm x 336mm
   1920x1080     60.00*+ 119.98   119.88   100.00    99.93    84.90    59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1280x800      59.81  
   1280x720      60.00    59.94    50.00  
   1152x864      75.00  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    59.94    59.93  
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)
System:
  Kernel: 5.10.70-1-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0 
  parameters: BOOT_IMAGE=/@/boot/vmlinuz-5.10-x86_64 
  root=UUID=6ce26050-4dcc-47b7-a937-45467d8b8d61 rw rootflags=subvol=@ quiet 
  cryptdevice=UUID=466d5812-64c7-4a28-bcc4-a1a5adfa9450:luks-466d5812-64c7-4a28-bcc4-a1a5adfa9450 
  root=/dev/mapper/luks-466d5812-64c7-4a28-bcc4-a1a5adfa9450 apparmor=1 
  security=apparmor 
  resume=/dev/mapper/luks-81b2dc57-06f5-4471-b484-77c3a516f307 
  udev.log_priority=3 
  Desktop: KDE Plasma 5.22.5 tk: Qt 5.15.2 wm: kwin_x11 vt: 1 dm: SDDM 
  Distro: Manjaro Linux base: Arch Linux 
Machine:
  Type: Desktop Mobo: ASUSTeK model: PRIME X570-PRO v: Rev X.0x 
  serial: <filter> UEFI: American Megatrends v: 3001 date: 12/04/2020 
Battery:
  Message: No system battery data found. Is one present? 
Memory:
  RAM: total: 62.78 GiB used: 11.89 GiB (18.9%) 
  RAM Report: permissions: Unable to run dmidecode. Root privileges required. 
CPU:
  Info: 16-Core model: AMD Ryzen 9 5950X bits: 64 type: MT MCP arch: Zen 3 
  family: 19 (25) model-id: 21 (33) stepping: 0 microcode: A201009 cache: 
  L2: 8 MiB bogomips: 217675 
  Speed: 2732 MHz min/max: 2200/3400 MHz boost: enabled Core speeds (MHz): 
  1: 2732 2: 2262 3: 2607 4: 2682 5: 2761 6: 2821 7: 2982 8: 2825 9: 2300 
  10: 2382 11: 2360 12: 2311 13: 2220 14: 2315 15: 2820 16: 2267 17: 2308 
  18: 2548 19: 2792 20: 2879 21: 2880 22: 2899 23: 2783 24: 2307 25: 3436 
  26: 2862 27: 2524 28: 2296 29: 2311 30: 2784 31: 2859 32: 2588 
  Flags: 3dnowprefetch abm adx aes aperfmperf apic arat avic avx avx2 bmi1 
  bmi2 bpext cat_l3 cdp_l3 clflush clflushopt clwb clzero cmov cmp_legacy 
  constant_tsc cpb cpuid cqm cqm_llc cqm_mbm_local cqm_mbm_total cqm_occup_llc 
  cr8_legacy cx16 cx8 de decodeassists erms extapic extd_apicid f16c 
  flushbyasid fma fpu fsgsbase fsrm fxsr fxsr_opt ht hw_pstate ibpb ibrs ibs 
  invpcid irperf lahf_lm lbrv lm mba mca mce misalignsse mmx mmxext monitor 
  movbe msr mtrr mwaitx nonstop_tsc nopl npt nrip_save nx ospke osvw 
  overflow_recov pae pat pausefilter pclmulqdq pdpe1gb perfctr_core 
  perfctr_llc perfctr_nb pfthreshold pge pku pni popcnt pse pse36 rdpid rdpru 
  rdrand rdseed rdt_a rdtscp rep_good sep sha_ni skinit smap smca smep ssbd 
  sse sse2 sse4_1 sse4_2 sse4a ssse3 stibp succor svm svm_lock syscall tce 
  topoext tsc tsc_scale umip v_vmsave_vmload vaes vgif vmcb_clean vme vmmcall 
  vpclmulqdq wbnoinvd wdt xgetbv1 xsave xsavec xsaveerptr xsaveopt xsaves 
  Vulnerabilities: Type: itlb_multihit status: Not affected 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, IBRS_FW, 
  STIBP: always-on, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: NVIDIA GA104 [GeForce RTX 3070] vendor: ASUSTeK driver: nvidia 
  v: 470.63.01 alternate: nouveau,nvidia_drm bus-ID: 0a:00.0 
  chip-ID: 10de:2484 class-ID: 0300 
  Device-2: AMD Cape Verde PRO [Radeon HD 7750/8740 / R7 250E] 
  vendor: VISIONTEK driver: radeon v: kernel alternate: amdgpu bus-ID: 0b:00.0 
  chip-ID: 1002:683f class-ID: 0300 
  Device-3: Microdia USB 2.0 Camera type: USB driver: snd-usb-audio,uvcvideo 
  bus-ID: 7-2:3 chip-ID: 0c45:6367 class-ID: 0102 serial: <filter> 
  Display: x11 server: X.Org 1.20.13 compositor: kwin_x11 driver: 
  loaded: nvidia display-ID: :0 screens: 1 
  Screen-1: 0 s-res: 3840x2160 s-dpi: 91 s-size: 1070x602mm (42.1x23.7") 
  s-diag: 1228mm (48.3") 
  Monitor-1: DP-1 res: 1920x1080 hz: 60 dpi: 93 size: 527x296mm (20.7x11.7") 
  diag: 604mm (23.8") 
  Monitor-2: HDMI-0 res: 1920x1080 dpi: 93 size: 527x296mm (20.7x11.7") 
  diag: 604mm (23.8") 
  Monitor-3: DP-3 res: 1920x1080 hz: 60 dpi: 82 size: 598x336mm (23.5x13.2") 
  diag: 686mm (27") 
  OpenGL: renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2 
  v: 4.6.0 NVIDIA 470.63.01 direct render: Yes 
Audio:
  Device-1: NVIDIA GA104 High Definition Audio vendor: ASUSTeK 
  driver: snd_hda_intel v: kernel bus-ID: 0a:00.1 chip-ID: 10de:228b 
  class-ID: 0403 
  Device-2: AMD Oland/Hainan/Cape Verde/Pitcairn HDMI Audio [Radeon HD 7000 
  Series] 
  vendor: VISIONTEK driver: snd_hda_intel v: kernel bus-ID: 0b:00.1 
  chip-ID: 1002:aab0 class-ID: 0403 
  Device-3: AMD Starship/Matisse HD Audio vendor: ASUSTeK 
  driver: snd_hda_intel v: kernel bus-ID: 0d:00.4 chip-ID: 1022:1487 
  class-ID: 0403 
  Device-4: JMTek LLC. Plugable USB Audio Device type: USB 
  driver: hid-generic,snd-usb-audio,usbhid bus-ID: 3-1:2 chip-ID: 0c76:120b 
  class-ID: 0300 serial: <filter> 
  Device-5: ASUSTek ASUS AI Noise-Cancelling Mic Adapter type: USB 
  driver: hid-generic,snd-usb-audio,usbhid bus-ID: 5-5:5 chip-ID: 0b05:194e 
  class-ID: 0300 serial: <filter> 
  Device-6: Schiit Audio Schiit Modi 3+ type: USB driver: snd-usb-audio 
  bus-ID: 7-1:2 chip-ID: 30be:1014 class-ID: 0102 
  Device-7: Microdia USB 2.0 Camera type: USB driver: snd-usb-audio,uvcvideo 
  bus-ID: 7-2:3 chip-ID: 0c45:6367 class-ID: 0102 serial: <filter> 
  Sound Server-1: ALSA v: k5.10.70-1-MANJARO running: yes 
  Sound Server-2: JACK v: 1.9.19 running: no 
  Sound Server-3: PulseAudio v: 15.0 running: yes 
  Sound Server-4: PipeWire v: 0.3.38 running: no 
Network:
  Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel 
  port: f000 bus-ID: 06:00.0 chip-ID: 8086:1539 class-ID: 0200 
  IF: enp6s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
  IP v4: <filter> type: dynamic noprefixroute scope: global 
  broadcast: <filter> 
  IP v6: <filter> type: noprefixroute scope: link 
  Device-2: Microsoft XBOX ACC type: USB driver: mt76x2u bus-ID: 1-1.4:4 
  chip-ID: 045e:02fe class-ID: 0000 serial: <filter> 
  IF: wlp5s0u1u4 state: down mac: <filter> 
  WAN IP: <filter> 
Bluetooth:
  Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) type: USB 
  driver: btusb v: 0.8 bus-ID: 3-5.3:7 chip-ID: 0a12:0001 class-ID: e001 
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends 
Logical:
  Message: No logical block device data found. 
  Device-1: luks-c847cf9f-c6b5-4624-a25e-4531e318851a maj-min: 254:2 
  type: LUKS dm: dm-2 size: 3.64 TiB 
  Components: 
  p-1: sda1 maj-min: 8:1 size: 3.64 TiB 
  Device-2: luks-466d5812-64c7-4a28-bcc4-a1a5adfa9450 maj-min: 254:0 
  type: LUKS dm: dm-0 size: 864.75 GiB 
  Components: 
  p-1: nvme0n1p2 maj-min: 259:2 size: 864.75 GiB 
  Device-3: luks-81b2dc57-06f5-4471-b484-77c3a516f307 maj-min: 254:1 
  type: LUKS dm: dm-1 size: 66.26 GiB 
  Components: 
  p-1: nvme0n1p3 maj-min: 259:3 size: 66.26 GiB 
RAID:
  Message: No RAID data found. 
Drives:
  Local Storage: total: 9.11 TiB used: 2.4 TiB (26.3%) 
  SMART Message: Unable to run smartctl. Root privileges required. 
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital 
  model: WDS100T3X0C-00SJG0 size: 931.51 GiB block-size: physical: 512 B 
  logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> 
  rev: 111110WD temp: 50.9 C scheme: GPT 
  ID-2: /dev/nvme1n1 maj-min: 259:4 vendor: Western Digital 
  model: WDS100T2B0C-00PXH0 size: 931.51 GiB block-size: physical: 512 B 
  logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> 
  rev: 211070WD temp: 41.9 C scheme: GPT 
  ID-3: /dev/sda maj-min: 8:0 vendor: Western Digital 
  model: WD4005FZBX-00K5WB0 size: 3.64 TiB block-size: physical: 4096 B 
  logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 7200 serial: <filter> 
  rev: 1A01 scheme: GPT 
  ID-4: /dev/sdb maj-min: 8:16 vendor: Western Digital 
  model: WD4005FZBX-00K5WB0 size: 3.64 TiB block-size: physical: 4096 B 
  logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 7200 serial: <filter> 
  rev: 1A01 scheme: GPT 
  ID-5: /dev/sdc maj-min: 8:32 type: USB vendor: Toshiba model: TransMemory 
  size: 14.92 GiB block-size: physical: 512 B logical: 512 B type: N/A 
  serial: <filter> rev: 1.00 scheme: MBR 
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure? 
  Message: No optical or floppy data found. 
Partition:
  ID-1: / raw-size: 864.75 GiB size: 767 GiB (88.70%) used: 739.35 GiB (96.4%) 
  fs: btrfs dev: /dev/dm-0 maj-min: 254:0 
  mapped: luks-466d5812-64c7-4a28-bcc4-a1a5adfa9450 label: N/A 
  uuid: 6ce26050-4dcc-47b7-a937-45467d8b8d61 
  ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%) 
  used: 26.1 MiB (5.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1 label: N/A 
  uuid: 4B3B-683F 
  ID-3: /home raw-size: 864.75 GiB size: 767 GiB (88.70%) 
  used: 739.35 GiB (96.4%) fs: btrfs dev: /dev/dm-0 maj-min: 254:0 
  mapped: luks-466d5812-64c7-4a28-bcc4-a1a5adfa9450 label: N/A 
  uuid: 6ce26050-4dcc-47b7-a937-45467d8b8d61 
  ID-4: /run/media/sarah/ConvergentRefuge raw-size: 3.64 TiB 
  size: 3.64 TiB (100.00%) used: 1.29 TiB (35.6%) fs: btrfs dev: /dev/dm-2 
  maj-min: 254:2 mapped: luks-c847cf9f-c6b5-4624-a25e-4531e318851a 
  label: ConvergentRefuge uuid: 7d295e73-4143-4eb1-9d22-75a06b1d2984 
  ID-5: /run/media/sarah/MSS_EXtended raw-size: 731.51 GiB 
  size: 731.16 GiB (99.95%) used: 389 GiB (53.2%) fs: xfs dev: /dev/nvme1n1p1 
  maj-min: 259:5 label: MSS EXtended 
  uuid: 20339e0b-8343-433e-9209-ac67e31d9d73 
  ID-6: /run/user/1000/keybase/kbfs raw-size: N/A size: 250 GiB 
  used: 0 KiB (0.0%) fs: fuse dev: /dev/fuse 
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) 
  ID-1: swap-1 type: partition size: 64 GiB used: 0 KiB (0.0%) priority: -2 
  dev: /dev/dm-1 maj-min: 254:1 
  mapped: luks-81b2dc57-06f5-4471-b484-77c3a516f307 label: N/A 
  uuid: c5112526-26fb-473c-b7ab-bb9ef049aa38 
Unmounted:
  ID-1: /dev/nvme1n1p2 maj-min: 259:6 size: 16 MiB fs: <superuser required> 
  label: N/A uuid: N/A 
  ID-2: /dev/nvme1n1p3 maj-min: 259:7 size: 199.98 GiB fs: ntfs label: N/A 
  uuid: E658FD3258FD025B 
  ID-3: /dev/sdb1 maj-min: 8:17 size: 3.64 TiB fs: ntfs label: JerichoVariance 
  uuid: 1AB22D5664889CBD 
  ID-4: /dev/sdc1 maj-min: 8:33 size: 2.97 GiB fs: iso9660 
  ID-5: /dev/sdc2 maj-min: 8:34 size: 4 MiB fs: vfat label: MISO_EFI 
  uuid: 97EE-3EF6 
USB:
  Hub-1: 1-0:1 info: Full speed (or root) Hub ports: 1 rev: 2.0 
  speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900 
  Hub-2: 1-1:2 info: VIA Labs Hub ports: 4 rev: 2.1 speed: 480 Mb/s 
  power: 100mA chip-ID: 2109:3431 class-ID: 0900 
  Hub-3: 1-1.2:3 info: VIA Labs VL813 Hub ports: 4 rev: 2.1 speed: 480 Mb/s 
  chip-ID: 2109:2813 class-ID: 0900 
  Device-1: 1-1.4:4 info: Microsoft XBOX ACC type: Network driver: mt76x2u 
  interfaces: 1 rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 045e:02fe 
  class-ID: 0000 serial: <filter> 
  Hub-4: 2-0:1 info: Full speed (or root) Hub ports: 4 rev: 3.0 speed: 5 Gb/s 
  chip-ID: 1d6b:0003 class-ID: 0900 
  Hub-5: 2-2:2 info: VIA Labs VL813 Hub ports: 4 rev: 3.0 speed: 5 Gb/s 
  chip-ID: 2109:0813 class-ID: 0900 
  Hub-6: 3-0:1 info: Full speed (or root) Hub ports: 6 rev: 2.0 
  speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900 
  Device-1: 3-1:2 info: JMTek LLC. Plugable USB Audio Device type: Audio,HID 
  driver: hid-generic,snd-usb-audio,usbhid interfaces: 4 rev: 1.1 
  speed: 12 Mb/s power: 100mA chip-ID: 0c76:120b class-ID: 0300 
  serial: <filter> 
  Hub-7: 3-2:3 info: Terminus FE 2.1 7-port Hub ports: 7 rev: 2.0 
  speed: 480 Mb/s power: 100mA chip-ID: 1a40:0201 class-ID: 0900 
  Device-1: 3-2.1:5 info: Sunplus Innovation Gaming mouse [Philips SPK9304] 
  type: Mouse driver: hid-generic,usbhid interfaces: 1 rev: 2.0 
  speed: 1.5 Mb/s power: 98mA chip-ID: 1bcf:08a0 class-ID: 0301 
  Device-2: 3-2.3:8 info: Future Devices FT232 Serial (UART) IC 
  type: <vendor specific> driver: ftdi_sio interfaces: 1 rev: 2.0 
  speed: 12 Mb/s power: 90mA chip-ID: 0403:6001 class-ID: 0000 
  serial: <filter> 
  Device-3: 3-2.4:9 
  info: Toshiba TransMemory-Mini / Kingston DataTraveler 2.0 Stick 
  type: Mass Storage driver: usb-storage interfaces: 1 rev: 2.0 
  speed: 480 Mb/s power: 100mA chip-ID: 0930:6544 class-ID: 0806 
  serial: <filter> 
  Device-4: 3-2.5:10 info: Microdia Backlit Gaming Keyboard 
  type: Keyboard,Mouse driver: hid-generic,usbhid interfaces: 2 rev: 2.0 
  speed: 12 Mb/s power: 400mA chip-ID: 0c45:652f class-ID: 0301 
  Hub-8: 3-2.7:11 info: Terminus Hub ports: 4 rev: 2.0 speed: 480 Mb/s 
  power: 100mA chip-ID: 1a40:0101 class-ID: 0900 
  Device-1: 3-2.7.4:12 info: Texas Instruments TI-Nspire Calculator 
  type: <vendor specific> driver: N/A interfaces: 1 rev: 2.0 speed: 12 Mb/s 
  power: 500mA chip-ID: 0451:e012 class-ID: 0000 
  Hub-9: 3-5:4 info: Genesys Logic Hub ports: 4 rev: 2.0 speed: 480 Mb/s 
  power: 100mA chip-ID: 05e3:0608 class-ID: 0900 
  Device-1: 3-5.3:7 info: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) 
  type: Bluetooth driver: btusb interfaces: 2 rev: 2.0 speed: 12 Mb/s 
  power: 100mA chip-ID: 0a12:0001 class-ID: e001 
  Hub-10: 3-6:6 info: Genesys Logic Hub ports: 4 rev: 2.0 speed: 480 Mb/s 
  power: 100mA chip-ID: 05e3:0608 class-ID: 0900 
  Hub-11: 4-0:1 info: Full speed (or root) Hub ports: 4 rev: 3.1 
  speed: 10 Gb/s chip-ID: 1d6b:0003 class-ID: 0900 
  Hub-12: 5-0:1 info: Full speed (or root) Hub ports: 6 rev: 2.0 
  speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900 
  Device-1: 5-1:2 info: Microsoft Xbox One Controller (Firmware 2015) 
  type: <vendor specific> driver: xpad interfaces: 3 rev: 2.0 speed: 12 Mb/s 
  power: 500mA chip-ID: 045e:02dd class-ID: ff00 serial: <filter> 
  Device-2: 5-2:3 info: W. H. Freeman IOLab USB Dongle 
  type: Abstract (modem),CDC-Data driver: cdc_acm interfaces: 2 rev: 2.0 
  speed: 12 Mb/s power: 50mA chip-ID: 1881:0400 class-ID: 0a00 
  serial: <filter> 
  Device-3: 5-4:4 info: ASUSTek AURA LED Controller type: HID 
  driver: hid-generic,usbhid interfaces: 2 rev: 2.0 speed: 12 Mb/s power: 16mA 
  chip-ID: 0b05:18f3 class-ID: 0300 serial: <filter> 
  Device-4: 5-5:5 info: ASUSTek ASUS AI Noise-Cancelling Mic Adapter 
  type: Audio,HID driver: hid-generic,snd-usb-audio,usbhid interfaces: 4 
  rev: 1.1 speed: 12 Mb/s power: 100mA chip-ID: 0b05:194e class-ID: 0300 
  serial: <filter> 
  Hub-13: 6-0:1 info: Full speed (or root) Hub ports: 4 rev: 3.1 
  speed: 10 Gb/s chip-ID: 1d6b:0003 class-ID: 0900 
  Hub-14: 7-0:1 info: Full speed (or root) Hub ports: 4 rev: 2.0 
  speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900 
  Device-1: 7-1:2 info: Schiit Audio Schiit Modi 3+ type: Audio 
  driver: snd-usb-audio interfaces: 2 rev: 2.0 speed: 480 Mb/s power: 500mA 
  chip-ID: 30be:1014 class-ID: 0102 
  Device-2: 7-2:3 info: Microdia USB 2.0 Camera type: Video,Audio 
  driver: snd-usb-audio,uvcvideo interfaces: 4 rev: 2.0 speed: 480 Mb/s 
  power: 500mA chip-ID: 0c45:6367 class-ID: 0102 serial: <filter> 
  Hub-15: 8-0:1 info: Full speed (or root) Hub ports: 4 rev: 3.1 
  speed: 10 Gb/s chip-ID: 1d6b:0003 class-ID: 0900 
Sensors:
  System Temperatures: cpu: 38.1 C mobo: N/A 
  Fan Speeds (RPM): N/A 
  GPU: device: nvidia screen: :0.0 temp: 41 C fan: 0% device: radeon 
  temp: 37.0 C 
Info:
  Processes: 728 Uptime: 37m wakeups: 0 Init: systemd v: 249 tool: systemctl 
  Compilers: gcc: 11.1.0 alt: 10 clang: 12.0.1 Packages: 2206 pacman: 2188 
  lib: 491 flatpak: 3 snap: 15 Shell: Bash v: 5.1.8 running-in: yakuake 
  inxi: 3.3.06

Hello @Sarah :wink:

Something like that should work:

file: /etc/X11/xorg.conf.d/ 20-reverse-prime.conf

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "radeon"
    Inactive "nvidia"
    Option "AllowNVIDIAGPUScreens"
EndSection

Section "Device"
    Identifier "radeon"
    Driver "modesetting"
    BusID "PCI:0:1:0"
EndSection

Section "Screen"
    Identifier "radeon"
    Device "radeon"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:1:0:0"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
EndSection

file: /etc/X11/xorg.conf.d/ 21-prime.conf

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "radeon"
EndSection

Section "Device"
	Identifier	"nvidia"
	driver		"nvidia"
	BusID		"PCI:1:0:0"
EndSection

Section "Screen"
    Identifier     "nvidia"
    Device         "nvidia"
    Option "AllowEmptyInitialConfiguration"
EndSection

Section "Device"
	Identifier	"radeon"
	driver		"modesetting"
	BusID		"PCI:0:1:0"
EndSection

Section "Screen"
    Identifier     "radeon"
    Device         "radeon"
EndSection

These 2 configs switches the GPU (I just change the number to a lower one for higher priority). Both GPUs have the screen output active. At least it worked for me with the radeon driver, not tested with the amdgpu driver.

:warning: BusID needs to be checked and changed if necessary.

Ah, so switching to the video-hybrid-amd-nvidia-prime driver won’t be good enough?

Effectively video-hybrid-amd-nvidia-prime just sets no configs at all and therefore it always run with the radeon card as main and offloading can be done with prime-run.

Is that good for my use case?

I don’t want the graphics calculations for something like a game to be done on that really weak GPU.
Will that even merge the monitors?

Look: If nothing has been set, then the nvidia gpu will not be used for xorg, but xorg will configure the radeon card automatically.
That means: Only the outputs of the radeon card will be available, nvidia outputs will be effectively not there. The nvidia card can only be used for offloading.

No idea what you mean with “merge”, but with this config, the outputs of my iGPU (radeon) and my dGPU (nvdia) are working. That means: I can plugin a monitor on any output and it will display a picture.

That sounds interesting.

Does “offloading” include GPU calculations for other things such as games?

As I understand the second half of your post, offloading should include monitors plugged into the NVIDIA GPU as well right (essentially that “plug in monitor → OS recognizes and xorg can use” as you said)? Or would this require a xorg config profile to be written for it?

As I understood here:

  1. 3 monitors are plugged in on the nvidia card
  2. 3 monitors are plugged in on the radeon card.

Is that correct?

And as i see you have video-nvidia installed, then the radeon card’s outputs are offline. Correct?

Therefore you need to make the outputs of the radeon card active with the modsetting driver.

Offloading is ONLY for GPU calculation, not for the screen output. When running the radeon card as main and the nvidia is not configured, you can offload any application with prime-run <command>.

Nvidia must explicitly always be instructed to use the outputs through a configuration.

Ok maybe a bit more simple:

  1. If the nvidia driver is set in xorg, then all applications and screens are running through the nvidia card.
  2. modesetting in this case just passthrough the calculated screen through the CPU to the output of the radeon card. It just displays the screen, nothing more.

Ah, I see.

Thank you so much for this post, I feel that I learned a lot from it about how the drivers, and GPU interact.

I’m just curious as to how to construct your original post. What should i use to find a number like "“PCI:0:1:0”? lspci seems like a good start, but it gives 00.1 or a similar format.

For example I have this one:

01:00.0 VGA compatible controller: NVIDIA Corporation GP107 [GeForce GTX 1050 Ti] (rev a1)

01:00.0BusID "PCI:1:0:0"

I have something similar:

sarah@MidnightStarSign:~$ lspci | grep VGA
0a:00.0 VGA compatible controller: NVIDIA Corporation GA104 [GeForce RTX 3070] (rev a1)
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde PRO [Radeon HD 7750/8740 / R7 250E]

Shall I assume that 0a is hexadecimal for 10?
So the code would be: PCI:10:0:0?

Yes you can convert it like that or just say: PCI:A:0:0 and PCI:B:0:0

I tried the configuration that you recommended, but it led to a grey screen that didn’t load SDDM. So I reverted the changes by renaming the config files to .OLD and rebooted :slight_smile:
Here was the configuration at the time while the provisional session was running:

Ok, here was my 20-reverse-prime.conf:

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "radeon"
    Inactive "nvidia"
    Option "AllowNVIDIAGPUScreens"
EndSection

Section "Device"
    Identifier "radeon"
    Driver "modesetting"
    BusID "PCI:B:0:0"
EndSection

Section "Screen"
    Identifier "radeon"
    Device "radeon"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:A:0:0"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
EndSection

And here is my 21-prime.conf:

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "radeon"
EndSection

Section "Device"
	Identifier	"nvidia"
	driver		"nvidia"
	BusID		"PCI:A:0:0"
EndSection

Section "Screen"
    Identifier     "nvidia"
    Device         "nvidia"
    Option "AllowEmptyInitialConfiguration"
EndSection

Section "Device"
	Identifier	"radeon"
	driver		"modesetting"
	BusID		"PCI:B:0:0"
EndSection

Section "Screen"
    Identifier     "radeon"

And they’re in the correct directory:

root@MidnightStarSign:/etc/X11/xorg.conf.d# ls 2*  
20-reverse-prime.conf  21-prime.conf

I have rebooted the system now, here are my graphics cards from lspci:

sarah@MidnightStarSign:~$ lspci | grep VGA
0a:00.0 VGA compatible controller: NVIDIA Corporation GA104 [GeForce RTX 3070] (rev a1)
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde PRO [Radeon HD 7750/8740 / R7 250E]

And my current driver configuration:

Did I do something wrong?

Maybe modesetting driver is not installed?

ls /lib/xorg/modules/drivers

Also, to be safe, keep sure you have added the nvidia and radeon driver to the initramfs:

Replace MODULES=() with:

MODULES=(radeon amdgpu nvidia nvidia_modeset nvidia_uvm nvidia_drm)

at /etc/mkinitcpio.conf with an editor.

Then run sudo mkinitcpio -P to update the initramfs.

Also explicitly set the mode for each driver at the kernel parameter:

file: /etc/default/grub

radeon.modeset=1 nvdia-drm.modeset=1

and run sudo update-grub.

or/and the late load:

file: /etc/modprobe.d/enable-kms.conf

options radeon modeset=1
options nvdia-drm modeset=1

If nothing helps, try run plasma with

startx /usr/bin/startplasma-x11

and if that failes, investigate the logs:

  • /var/log
  • ~/.local/share/xorg/

It appears to be:

sarah@MidnightStarSign:~$ ls /lib/xorg/modules/drivers    
amdgpu_drv.so  intel_drv.so        nouveau_drv.so  radeon_drv.so
ati_drv.so     modesetting_drv.so  nvidia_drv.so   vmware_drv.so

Modifications Done (I rebuilt the init file, but couldn’t figure out how to edit the grub file since update-grub returned an error. I opted to modify /etc/modprobe.d/enable-kms.conf instead):

I wasn’t able to set the modesetting driver in the grub default file and got the grey screen again. I ten tried to launch the X server using the command that you specified, but got this error (the log file was wiped, so I couldn’t copy it):

@Sarah Argh… I thought you are not a newbie on linux… ok well…

Please run this command on the terminal:

curl -s "https://gitlab.com/-/snippets/2174072/raw/main/gpu-report.sh" | bash

This collect all necessary configs and logs.

Script can be read here: GPU Report ($2174072) · Snippets · Snippets · GitLab

With that you can upload it and it will print a short link on the terminal:

curl -s "https://gitlab.com/-/snippets/2174072/raw/main/gpu-report.sh" | bash -s -- upload

It will upload it after quitting the view with Q.

Please post the link here.

I wouldn’t consider myself to be a newbie, but clearly your skill far exceeds my own :smiley:

https://0x0.st/-E3g.txt

  1. file: /etc/default/grub
GRUB_CMDLINE_LINUX="radeon.modeset=1 nvdia-drm.modeset=1"
  1. file: /etc/mkinitcpio.conf

Please don’t do it like that:

#MODULES=(piix ide_disk reiserfs)
MODULES=(radeon amdgpu nvidia nvidia_modeset nvidia_uvm nvidia_drm)
MODULES="crc32c"

:warning: If 2 variables with the same name are there, then the content of the last variable will overwrite the previous.

This is correct:

MODULES=(crc32c radeon amdgpu nvidia nvidia_modeset nvidia_uvm nvidia_drm)
  1. Your last error was clearly a parsing error:
[   294.125] Parse error on line 1 of section Screen in file /etc/X11/xorg.conf.d/30-touchpad.conf
	"Section" is not a valid keyword in this section.
[   294.125] (EE) Problem parsing the config file
[   294.125] (EE) Error parsing the config file
[   294.125] (EE) 

I guess because you missed the EndSection here:

And that is why when parsing 30-touchpad after reading 21-prime.conf, this error occurs. Please correct it.

I appled all the changes, and managed to avoid the “grey screen” graphics error, but the screen isn’t available for the OS to use despite being plugged in and wired to the AMD GPU (shows up when BIOS boots, but not during OS boot).

Here is the most recent log that i just took: https://0x0.st/-6Fw.txt

Your configs 20-reverse-prime.conf and 21-prime.conf are not gathered with the script. Set another priority like: 99-reverse-prime.conf and 99-prime.conf, so that 90-mhwd-gpu.conf will be parsed first.

On the logs it looks like the 2 last starts of xorg just use nvdia only and the oldest log only loads radeon… No idea at this point. I would rather say, the configuration is wrong.

1 Like