Skip to content

Commit 2dc9ba8

Browse files
committed
Fixes #480: Add Nvidia Quadro RTX 8000.
1 parent 10f704d commit 2dc9ba8

File tree

4 files changed

+68
-2
lines changed

4 files changed

+68
-2
lines changed

_cards_gpu/nvidia-quadro-rtx-8000.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
layout: card
3+
title: "Nvidia Quadro RTX 8000"
4+
picture: "/images/gpu-nvidia-quadro-rtx-8000.jpg"
5+
functionality: "Partial"
6+
driver_required: "Yes"
7+
github_issue: "https://github.com/geerlingguy/raspberry-pi-pcie-devices/issues/480"
8+
buy_link: https://amzn.to/3Ke16pB
9+
videos: []
10+
---
11+
The Quadro RTX 8000 is supported (well, not really on ARM64) by both Nvidia's proprietary driver and the open source Nouveau driver in the Linux Kernel.
12+
13+
It will require a 1x to 16x adapter, or some other means of adapting the 16x-sized card pins into the 1x slot on the CM4 IO Board. You also need to supply at least 300W through the card's two PCIe power plugs.
14+
15+
There are two ways to try installing the driver:
16+
17+
### Proprietary Nvidia driver
18+
19+
After flashing the 64-bit Pi OS beta to my Pi, I made sure to upgrade everything on it, and install the kernel source, so the Nvidia driver would compile:
20+
21+
```
22+
sudo apt-get update
23+
sudo apt-get -y dist-upgrade
24+
sudo apt-get install -y raspberrypi-kernel-headers
25+
sudo reboot
26+
```
27+
28+
After rebooting, if you have X server running (e.g. you are logged in via GUI), you need to log out. If you're running this over SSH or serial connection, you can quit X server with: `sudo systemctl stop lightdm`.
29+
30+
Now, download Nvidia's latest [AARCH64 Driver for ARM 64-bit processors](https://www.nvidia.com/en-us/drivers/unix/linux-aarch64-archive/), make the downloaded `.run` file executable, and run it with `sudo`:
31+
32+
```
33+
chmod +x NVIDIA-Linux-aarch64-525.89.02.run
34+
sudo ./NVIDIA-Linux-aarch64-525.89.02.run
35+
```
36+
37+
> Note: I had to select 'show all OSes' when downloading the driver, to get the arm64 version—it seems like ARM64 is not a supported platform for the Quadro RTX 8000.
38+
39+
When I tried starting Xorg (with `startx`), I got a few errors and it would not launch. Luckily, the system didn't lock up, so that was nice.
40+
41+
The USB-C port on the back seemed to work, at least at USB 2.0 speeds. I plugged in a couple devices and they were immediately recognized by the Pi.
42+
43+
### Nouveau (open source) driver
44+
45+
To get the Nouveau driver loaded, you have to [recompile the Linux kernel for Pi OS](https://github.com/geerlingguy/raspberry-pi-pcie-devices/tree/master/extras/cross-compile).
46+
47+
Go to `Device Drivers` > `Graphics support` on the `menuconfig` step, and select the `Nouveau` driver to install.
48+
49+
If you want to be able to boot the Pi all the way, make sure to blacklist the `nouveau` kernel module:
50+
51+
```
52+
sudo nano /etc/modprobe.d/blacklist-nouveau.conf
53+
54+
# Put this inside the file and save it:
55+
blacklist nouveau
56+
```
57+
58+
Now, after a reboot, you can explicitly load the module and see what happens by following `dmesg` in another terminal session:
59+
60+
```
61+
sudo modprobe nouveau
62+
```
63+
64+
When I tried this, I got a kernel panic, but the Pi didn't lock up completely. I couldn't get past this stage due to memory access errors.
65+
66+
See the linked GitHub issue for more details.

extras/cross-compile/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ If you want to set it up manually instead, do this:
9393
The best option is to use the Automated script. Within the container, run the command:
9494
9595
```
96-
PI_ADDRESS=10.0.100.127 copykernel
96+
PI_ADDRESS=10.0.100.170 copykernel
9797
```
9898
9999
> Change the `PI_ADDRESS` here to the IP address of the Pi you're managing.

extras/cross-compile/inventory.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[pi]
2-
10.0.100.114 ansible_user=pi
2+
10.0.100.170 ansible_user=pi
33

44
[build_environment]
55
cross-compile ansible_connection=docker

images/gpu-nvidia-quadro-rtx-8000.jpg

205 KB
Loading

0 commit comments

Comments
 (0)