1.\" SPDX-License-Identifier: BSD-3-Clause 2.\" Copyright(c) 2007-2025 Intel Corporation 3.Dd June 2, 2025 4.Dt QAT 4 5.Os 6.Sh NAME 7.Nm qat 8.Nd Intel QuickAssist Technology driver 9.Sh SYNOPSIS 10To load the driver call: 11.Pp 12.Bl -item -compact 13.It 14kldload qat 15.El 16.Pp 17In order to load the driver on boot add these lines to 18.Xr loader.conf 5 selecting firmware(s) suitable for installed device(s) 19.Pp 20.Bl -item -compact 21.It 22qat_200xx_fw_load="YES" 23.It 24qat_c3xxx_fw_load="YES" 25.It 26qat_c4xxx_fw_load="YES" 27.It 28qat_c62x_fw_load="YES" 29.It 30qat_dh895xcc_fw_load="YES" 31.It 32qat_4xxx_fw_load="YES" 33.It 34qat_load="YES" 35.El 36.Sh DESCRIPTION 37The 38.Nm 39driver supports cryptography and compression acceleration of the 40Intel (R) QuickAssist Technology (QAT) devices. 41.Pp 42A complete API for offloading these operations is exposed in the kernel 43and may be used by any other entity directly. 44In addition to exposing a complete kernel API for 45offloading cryptography and compression operations, the 46.Nm 47driver also integrates with 48.Xr crypto 4 , 49allowing offloading supported operations to Intel QuickAssist Technology 50devices. 51.Sh HARDWARE 52The 53.Nm 54driver supports the following Intel QuickAssist Technology Engines: 55.Pp 56.Bl -bullet -compact 57.It 58Intel (R) C62x Chipset 59.It 60Intel (R) Atom C3000 processor product family 61.It 62Intel (R) QuickAssist Adapter 8960/Intel (R) QuickAssist Adapter 8970 63(formerly known as "Lewis Hill") 64.It 65Intel (R) Communications Chipset 8925 to 8955 Series 66.It 67Intel (R) Atom P5300 processor product family 68.It 69Intel (R) QAT 4xxx Series 70.El 71.Sh SYSCTL_VARIABLES 72The following 73.Xr sysctl 8 74variables may be used to reconfigure the 75.Nm 76device. 77For configuration persistence those variables may be set before loading 78the driver, either via 79.Xr kenv 1 80or 81.Xr loader.conf 5 . 82.Pp 83The specific device needs to be in the "down" state 84before changing the configuration. 85.Bl -tag -width indent 86.It Va dev.qat.X.state 87Show or set current state of the device. 88Possible values: "down", "up". 89.Pp 90NOTE: If the symmetric services are used for device the 91.Sy qat_ocf 92driver needs to be disabled prior the device reconfiguration. 93.It Va dev.qat_ocf.0.enable 94Enable/disable the QAT cryptographic framework connectivity. 95Enabled by default. 96.It Va dev.qat.X.cfg_services 97Override the device services enabled, may be one of: 98symmetric, asymmetric, data compression. 99Possible values: "sym", "asym", "dc", "sym;dc", "asym;dc", "sym;asym". 100Default services configured 101are "sym;asym" for even and "dc" for odd devices. 102.It Va dev.qat.X.cfg_mode 103Override the device mode configuration 104for kernel space and user space instances. 105Possible values: "ks", "us", "ks;us". 106Default value "ks;us". 107.It Va dev.qat.X.num_user_processes 108Override the number of uio user space processes 109that can connect to the QAT device. 110Default: 2 111.It Va dev.qat.X.disable_safe_dc_mode 112Override history buffer mitigation. 113Disabled by default. 114If enabled, decompression throughput increases but may result in a data leak if 115.Va dev.qat.X.num_user_processes 116is more than 1. 117Enable this option only if your system is not prone to user data leaks. 118.El 119.Pp 120The following 121.Xr sysctl 8 122variables are read-only: 123.Bl -tag -width indent 124.It Va dev.qat.X.frequency 125QAT device frequency value. 126.It Va dev.qat.X.mmp_version 127QAT MMP Library revision number. 128.It Va dev.qat.X.hw_version 129QAT hardware revision number. 130.It Va dev.qat.X.fw_version 131QAT firmware revision number. 132.It Va dev.qat.X.dev_cfg 133Summary of device specific configuration. 134.It Va dev.qat.X.heartbeat 135QAT device heartbeat status. 136Value '1' indicates that the device is operational. 137Value '0' means that the device is not responsive. 138Device requires restart. 139.It Va dev.qat.X.heartbeat_failed 140Number of QAT heartbeat failures received. 141.It Va dev.qat.X.heartbeat_sent 142Number of QAT heartbeat requests sent. 143.El 144.Sh SEE ALSO 145.Xr crypto 4 , 146.Xr ipsec 4 , 147.Xr pci 4 , 148.Xr crypto 7 , 149.Xr crypto 9 150.Pp 151For details of usage and supported operations and algorithms refer to 152the following documentation available from Intel Download Center 153.Lk https://downloadcenter.intel.com : 154.Pp 155.Bl -bullet -compact 156.It 157.Rs 158.%A Intel (R) 159.%T QuickAssist Technology API Programmer's Guide 160.Re 161.It 162.Rs 163.%A Intel (R) 164.%T QuickAssist Technology Cryptographic API Reference Manual 165.Re 166.It 167.Rs 168.%A Intel (R) 169.%T QuickAssist Technology Data Compression API Reference Manual 170.Re 171.It 172.Rs 173.%A Intel (R) 174.%T QuickAssist Technology Performance Optimization Guide 175.Re 176.El 177.Sh HISTORY 178A 179.Nm 180driver appeared in 181.Fx 13.0 . 182It was superseded in 183.Fx 14.0 184by the upstream driver. 185.Sh AUTHORS 186The 187.Nm 188driver was written by 189.An Intel (R) Corporation . 190