QAT(4)                 FreeBSD Kernel Interfaces Manual                 QAT(4)

NAME

     qat - Intel QuickAssist Technology compression and crypto 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.

     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.

HARDWARE

     The qat driver supports the following Intel QuickAssist Technology
     Engines:

     o   Intel (R) C62x Chipset
     o   Intel (R) Atom C3000 processor product family
     o   Intel (R) QuickAssist Adapter 8960/Intel (R) QuickAssist Adapter 8970
         (formerly known as "Lewis Hill")
     o   Intel (R) Communications Chipset 8925 to 8955 Series
     o   Intel (R) Atom P5300 processor product family
     o   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.

     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.

     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

     crypto(4), ipsec(4), pci(4), crypto(7), crypto(9)

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

     o   Intel (R), QuickAssist Technology API Programmer's Guide.
     o   Intel (R), QuickAssist Technology Cryptographic API Reference Manual.
     o   Intel (R), QuickAssist Technology Data Compression API Reference
         Manual.
     o   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.

AUTHORS

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

FreeBSD 15.1-STABLE-HBSD         May 17, 2026                           QAT(4)