> For the complete documentation index, see [llms.txt](https://asus-isg-aidc.gitbook.io/guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://asus-isg-aidc.gitbook.io/guide/v1.4.0/cli/commandreference/driver.md).

# Driver Installation

| Developer | Last modified |
| --------- | ------------- |
| AIDC Team | 2026/02/12    |

## Table of Contents

* [1. Overview](#overview)
* [2. Subcommands](#subcommands)
* [3. Quick Summary](#quick-summary)
* [4. Usage Examples](#usage-examples)

***

## 1. Overview <a href="#overview" id="overview"></a>

The `driver` command installs and manages hardware drivers on target nodes — including Mellanox OFED, DOCA (NIC and DPU modes), and NVIDIA GPU drivers.

```bash
aidc-cli driver <subcommand> [flags]
```

{% hint style="warning" %}
Driver installation may require a system reboot. Plan maintenance windows accordingly.
{% endhint %}

***

## 2. Subcommands <a href="#subcommands" id="subcommands"></a>

### 2.1 `mlnx-ofed` — Mellanox OFED Driver

Installs or uninstalls the Mellanox OpenFabrics Enterprise Distribution (OFED) driver.

```bash
aidc-cli driver mlnx-ofed -f <driver-path> [--fwreset] [--uninstall]
```

| Flag          | Short | Required | Description                                    |
| ------------- | :---: | :------: | ---------------------------------------------- |
| `--file`      |  `-f` |    ❌\*   | Driver archive path (without `.tgz` extension) |
| `--fwreset`   |  `-r` |     ❌    | Reset firmware after installation              |
| `--uninstall` |   —   |     ❌    | Uninstall the driver instead of installing     |

> \* `--file` is required for installation but not needed when `--uninstall` is specified.

{% hint style="info" %}
Please ensure that the OFED tarball downloaded from the official website (do not rename the file) is placed into the `/driver/ofed` directory. For the `-f` parameter, specify only the driver filename without the extension.

Example: `MLNX_OFED_LINUX-24.10-2.1.8.0-rhel8.10-x86_64.tgz`
{% endhint %}

**Example:**

```bash
aidc-cli driver mlnx-ofed -f MLNX_OFED_LINUX-24.04-0.6.6.0
```

***

### 2.2 `doca-host-nic` — DOCA Host NIC Driver

Installs the NVIDIA DOCA SDK driver in NIC mode.

```bash
aidc-cli driver doca-host-nic -f <driver-path> -m <pkg-mgr> [--fwreset]
```

| Flag        | Short | Required | Description                       |
| ----------- | :---: | :------: | --------------------------------- |
| `--file`    |  `-f` |     ✅    | DOCA driver file path             |
| `--pkg-mgr` |  `-m` |     ✅    | Package manager: `dnf` or `apt`   |
| `--fwreset` |  `-r` |     ❌    | Reset firmware after installation |

{% hint style="info" %}
Please ensure that the DOCA deb or rpm file downloaded from the official website (do not rename the file) is placed into the `/driver/doca` directory. For the `-f` parameter, specify only the driver filename without the extension.

Example: `doca-host-2.9.1-018000_24.10_rhel89.x86_64.rpm`

**Package recommendations:**

* **BlueField devices**: Use `doca-all` (recommended), `doca-networking` (smallest networking-only), `doca-ofed` (MLNX\_OFED-like), or `doca-roce` (ROCE only)
* **ConnectX devices**: Use `doca-ofed` (recommended), `doca-all` (future-proof/mixed deployments), or `doca-roce` (ROCE only)
  {% endhint %}

***

### 2.3 `doca-host-dpu` — DOCA Host DPU Driver

Installs the NVIDIA DOCA SDK driver in DPU mode.

```bash
aidc-cli driver doca-host-dpu -f <driver-path> -m <pkg-mgr> [--fwreset]
```

| Flag        | Short | Required | Description                       |
| ----------- | :---: | :------: | --------------------------------- |
| `--file`    |  `-f` |     ✅    | DOCA driver file path             |
| `--pkg-mgr` |  `-m` |     ✅    | Package manager: `dnf` or `apt`   |
| `--fwreset` |  `-r` |     ❌    | Reset firmware after installation |

***

### 2.4 `nv-gpu` — NVIDIA GPU Driver

Installs or uninstalls the NVIDIA GPU driver.

```bash
aidc-cli driver nv-gpu -f <driver-file> [--uninstall]
```

| Flag          | Short | Required | Description                        |
| ------------- | :---: | :------: | ---------------------------------- |
| `--file`      |  `-f` |     ✅    | NVIDIA GPU driver `.run` file path |
| `--uninstall` |   —   |     ❌    | Uninstall the driver               |

{% hint style="info" %}
Please ensure that the GPU `.run` file downloaded from the official website (do not rename the file) is placed into the `/driver/gpu` directory. The full filename including the `.run` extension must be specified. Only `.run` files are supported.

Example: `NVIDIA-Linux-x86_64-550.54.14.run`
{% endhint %}

{% hint style="danger" %}
`nv-gpu` installation will **force a system reboot** upon completion. Ensure all workloads are stopped and users are notified before running this command.
{% endhint %}

***

## 3. Quick Summary <a href="#quick-summary" id="quick-summary"></a>

| Subcommand      | Driver          | Key Flags                            |   Reboot  |
| --------------- | --------------- | ------------------------------------ | :-------: |
| `mlnx-ofed`     | Mellanox OFED   | `--file`, `--fwreset`, `--uninstall` |  Optional |
| `doca-host-nic` | DOCA (NIC mode) | `--file`, `--pkg-mgr`, `--fwreset`   |  Optional |
| `doca-host-dpu` | DOCA (DPU mode) | `--file`, `--pkg-mgr`, `--fwreset`   |  Optional |
| `nv-gpu`        | NVIDIA GPU      | `--file`, `--uninstall`              | ⚠️ Forced |

***

## 4. Usage Examples <a href="#usage-examples" id="usage-examples"></a>

```bash
# Install Mellanox OFED with firmware reset
aidc-cli driver mlnx-ofed -f MLNX_OFED_LINUX-24.04-0.6.6.0 --fwreset

# Install DOCA NIC driver (RHEL)
aidc-cli driver doca-host-nic -f doca-host-2.7.0 -m dnf

# Install DOCA DPU driver (Ubuntu)
aidc-cli driver doca-host-dpu -f doca-host-2.7.0 -m apt --fwreset

# Install NVIDIA GPU driver (triggers reboot!)
aidc-cli driver nv-gpu -f NVIDIA-Linux-x86_64-550.54.15.run

# Uninstall GPU driver
aidc-cli driver nv-gpu -f NVIDIA-Linux-x86_64-550.54.15.run --uninstall

# Install drivers on specific nodes
aidc-cli driver mlnx-ofed -f MLNX_OFED_LINUX-24.04-0.6.6.0 -l node01,node02
```
