QAT(4)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 14.5, freebsd 15.1, nixpkgs unstable

πŸŽ€ NAME πŸŽ€ β€” qat(4)

Okay bestie, this is the Kernel Interfaces Manual page for qat(4), and it’s literally the Intel QuickAssist Technology driver. Main character energy for hardware acceleration. πŸ’…

qat β€” Intel QuickAssist Technology driver


✨ SYNOPSIS ✨

To load the driver call:

kldload qat

In order to load the driver on boot add these lines to loader.conf(5) selecting firmware(s) suitable for installed device(s)

qat_200xx_fw_load="YES"
qat_c3xxx_fw_load="YES"
qat_c4xxx_fw_load="YES"
qat_c62x_fw_load="YES"
qat_dh895xcc_fw_load="YES"
qat_4xxx_fw_load="YES"
qat_load="YES"

πŸ¦‹ DESCRIPTION πŸ¦‹

The qat driver supports cryptography and compression acceleration of the Intel (R) QuickAssist Technology (QAT) devices. Slay. πŸ”₯

A complete API for offloading these operations is exposed in the kernel and may be used by any other entity directly. In addition to exposing a complete kernel API for offloading cryptography and compression operations, the qat driver also integrates with crypto(4), allowing offloading supported operations to Intel QuickAssist Technology devices. It’s giving kernel-level teamwork, honestly. 🫢


πŸ”₯ HARDWARE πŸ”₯

The qat driver supports the following Intel QuickAssist Technology Engines:

  • Intel (R) C62x Chipset
  • Intel (R) Atom C3000 processor product family
  • Intel (R) QuickAssist Adapter 8960/Intel (R) QuickAssist Adapter 8970 (formerly known as "Lewis Hill")
  • Intel (R) Communications Chipset 8925 to 8955 Series
  • Intel (R) Atom P5300 processor product family
  • Intel (R) QAT 4xxx Series

🌸 SYSCTL_VARIABLES 🌸

The following sysctl(8) variables may be used to reconfigure the qat device. For configuration persistence those variables may be set before loading the driver, either via kenv(1) or loader.conf(5).

⚠️ The specific device needs to be in the "down" state before changing the configuration. No cap, check the vibe first.
  • dev.qat.X.state β€” Show or set current state of the device. Possible values: "down", "up".
😭 NOTE: If the symmetric services are used for device the qat_ocf driver needs to be disabled prior the device reconfiguration.
  • dev.qat_ocf.0.enable β€” Enable/disable the QAT cryptographic framework connectivity. Enabled by default. 🫢
  • dev.qat.X.cfg_services β€” Override the device services enabled, may be one of: symmetric, asymmetric, data compression. Possible values: "sym", "asym", "dc", "sym;dc", "asym;dc", "sym;asym". Default services configured are "sym;asym" for even and "dc" for odd devices. πŸŽ€
  • dev.qat.X.cfg_mode β€” Override the device mode configuration for kernel space and user space instances. Possible values: "ks", "us", "ks;us". Default value "ks;us".
  • dev.qat.X.num_user_processes β€” Override the number of uio user space processes that can connect to the QAT device. Default: 2.
  • dev.qat.X.disable_safe_dc_mode β€” Override history buffer mitigation. Disabled by default. If enabled, decompression throughput increases but may result in a data leak if dev.qat.X.num_user_processes is more than 1. Enable this option only if your system is not prone to user data leaks. Bestie, this is the risky one β€” read it twice. πŸ’€

The following sysctl(8) variables are read-only:

  • dev.qat.X.frequency β€” QAT device frequency value.
  • dev.qat.X.mmp_version β€” QAT MMP Library revision number.
  • dev.qat.X.hw_version β€” QAT hardware revision number.
  • dev.qat.X.fw_version β€” QAT firmware revision number.
  • dev.qat.X.dev_cfg β€” Summary of device specific configuration.
  • dev.qat.X.heartbeat β€” QAT device heartbeat status. Value '1' indicates that the device is operational. Value '0' means that the device is not responsive. Device requires restart. πŸ’€
  • dev.qat.X.heartbeat_failed β€” Number of QAT heartbeat failures received.
  • dev.qat.X.heartbeat_sent β€” Number of QAT heartbeat requests sent.

🌈 SEE ALSO 🌈

For details of usage and supported operations and algorithms refer to the following documentation available from Intel Download Center https://downloadcenter.intel.com:

  • Intel (R), QuickAssist Technology API Programmer's Guide.
  • Intel (R), QuickAssist Technology Cryptographic API Reference Manual.
  • Intel (R), QuickAssist Technology Data Compression API Reference Manual.
  • Intel (R), QuickAssist Technology Performance Optimization Guide.

πŸ•°οΈ HISTORY πŸ•°οΈ

A qat driver appeared in FreeBSD 13.0. It was superseded in FreeBSD 14.0 by the upstream driver. Era by era, icon behavior. ✨


πŸ‘‘ AUTHORS πŸ‘‘

The qat driver was written by Intel (R) Corporation.


πŸ’‹ Cute sign-off time: this page is from Debian, dated June 2, 2025, and the manual is QAT(4). Periodt. 🫢

πŸ“¦ where this page comes from