aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpmikus <peter.mikus@protonmail.ch>2023-06-22 08:36:23 +0000
committerPeter Mikus <peter.mikus@protonmail.ch>2023-06-22 08:37:56 +0000
commit575941328d025997c20ee30e7f85835a9510415e (patch)
tree3cc4758577ecc441fcadc97f0d56bd25619c17cf
parent7445da8209eded96134c6288ce5d83443a6c7d2b (diff)
feat(infra): Add QAT install
Signed-off-by: pmikus <peter.mikus@protonmail.ch> Change-Id: Ifc461460b2f0f8c7ca17ab32fbf7df52cb356c29
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml3
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml3
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml1
-rw-r--r--fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml1
-rw-r--r--fdio.infra.ansible/roles/intel/defaults/main.yaml9
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/main.yaml15
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/qat.yaml44
-rw-r--r--topologies/available/lf_2n_spr_testbed23.yaml2
-rw-r--r--topologies/available/lf_3na_spr_testbed21.yaml21
-rw-r--r--topologies/available/lf_3nb_spr_testbed22.yaml21
16 files changed, 124 insertions, 2 deletions
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml
index 0814b0f4db..5de65e4c6e 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml
@@ -31,4 +31,5 @@ cpu_microarchitecture: "sapphirerapids"
docker_sut: true
mellanox_matrix: "dpdk23.03"
-intel_dsa_matrix: true \ No newline at end of file
+intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml
index b74d6d66e9..a470d3f68d 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml
@@ -32,3 +32,4 @@ docker_tg: true
mellanox_matrix: "dpdk23.03"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml
index 3fe10c8327..c0880c5721 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml
@@ -32,3 +32,4 @@ docker_sut: true
intel_800_matrix: "dpdk23.03"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml
index d9bced7c78..c468b914fd 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml
@@ -32,3 +32,4 @@ docker_tg: true
intel_800_matrix: "dpdk22.07"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml
index 0fc3c878bf..ac7f819c43 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml
@@ -32,4 +32,5 @@ docker_sut: true
intel_800_matrix: "dpdk23.03"
mellanox_matrix: "dpdk23.03"
-intel_dsa_matrix: true \ No newline at end of file
+intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml
index a0a832385c..90e56f5185 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml
@@ -33,3 +33,4 @@ docker_tg: true
intel_800_matrix: "dpdk22.07"
mellanox_matrix: "dpdk22.07"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml
index fb89c3bd19..43b9a266a1 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml
@@ -33,3 +33,4 @@ docker_sut: true
intel_800_matrix: "dpdk23.03"
mellanox_matrix: "dpdk23.03"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml
index 4e84477f01..d0c8da82d4 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml
@@ -33,3 +33,4 @@ docker_tg: true
intel_800_matrix: "dpdk22.07"
mellanox_matrix: "dpdk22.07"
intel_dsa_matrix: true
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml
index f1ccfc8453..477d5b27bf 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml
@@ -30,3 +30,4 @@ inventory_ipmi_hostname: "10.30.50.93"
cpu_microarchitecture: "snowridge"
intel_800_matrix: "dpdk23.03"
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml
index be2b118283..660db20e11 100644
--- a/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml
+++ b/fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml
@@ -30,3 +30,4 @@ inventory_ipmi_hostname: "10.30.50.94"
cpu_microarchitecture: "snowridge"
intel_800_matrix: "dpdk23.03"
+intel_qat_matrix: true \ No newline at end of file
diff --git a/fdio.infra.ansible/roles/intel/defaults/main.yaml b/fdio.infra.ansible/roles/intel/defaults/main.yaml
index 45b229db94..e3d4378e00 100644
--- a/fdio.infra.ansible/roles/intel/defaults/main.yaml
+++ b/fdio.infra.ansible/roles/intel/defaults/main.yaml
@@ -32,6 +32,9 @@ packages_by_distro:
- "gnupg"
- "patch"
- "patchutils"
+ - "libboost-all-dev"
+ - "libudev-dev"
+ - "yasm"
packages_by_arch:
aarch64:
@@ -83,6 +86,9 @@ intel_800_compatibility_matrix:
intel_dsa_compatibility_matrix:
dsa: "4.0"
+intel_qat_compatibility_matrix:
+ qat: "1.0.20-00008"
+
intel_i40e_url:
"2.17.15": "i40e%20stable/2.17.15/i40e-2.17.15.tar.gz/download"
"2.19.3": "i40e%20stable/2.19.3/i40e-2.19.3.tar.gz/download"
@@ -104,3 +110,6 @@ intel_ddp_url:
intel_dsa_url:
"4.0": "https://github.com/intel/idxd-config/archive/refs/tags/accel-config-v4.0.tar.gz"
+
+intel_qat_url:
+ "1.0.20-00008": "777529/QAT20.L.1.0.20-00008.tar.gz" \ No newline at end of file
diff --git a/fdio.infra.ansible/roles/intel/tasks/main.yaml b/fdio.infra.ansible/roles/intel/tasks/main.yaml
index 7f0640a8d6..80c8d38998 100644
--- a/fdio.infra.ansible/roles/intel/tasks/main.yaml
+++ b/fdio.infra.ansible/roles/intel/tasks/main.yaml
@@ -70,6 +70,14 @@
tags:
- intel-inst-drivers
+- name: Get Intel QAT driver versions
+ ansible.builtin.set_fact:
+ qat: "{{ intel_qat_compatibility_matrix['qat'] }}"
+ when: >
+ intel_qat_matrix is defined
+ tags:
+ - intel-inst-drivers
+
- name: Driver Intel Ethernet 700 Series
import_tasks: i40e.yaml
when: >
@@ -103,3 +111,10 @@
intel_dsa_matrix is defined
tags:
- intel-inst-drivers
+
+- name: Driver Intel QAT
+ import_tasks: qat.yaml
+ when: >
+ intel_qat_matrix is defined
+ tags:
+ - intel-inst-drivers \ No newline at end of file
diff --git a/fdio.infra.ansible/roles/intel/tasks/qat.yaml b/fdio.infra.ansible/roles/intel/tasks/qat.yaml
new file mode 100644
index 0000000000..6854755f4e
--- /dev/null
+++ b/fdio.infra.ansible/roles/intel/tasks/qat.yaml
@@ -0,0 +1,44 @@
+---
+# file: tasks/qat.yaml
+
+- name: Get QAT Driver
+ ansible.builtin.uri:
+ url: "{{ intel_download_url }}/{{ intel_qat_url[qat] }}"
+ follow_redirects: "all"
+ force: true
+ dest: "{{ intel_extract_dir }}/QAT20.L.{{ qat }}.tar.gz"
+ mode: "0644"
+ failed_when: false
+ tags:
+ - intel-inst
+
+- name: Create a Directory For QAT Driver
+ ansible.builtin.file:
+ path: "{{ intel_extract_dir }}/QAT20.L.{{ qat }}/"
+ state: "directory"
+ mode: "0755"
+ tags:
+ - intel-inst
+
+- name: Extract QAT Driver
+ ansible.builtin.unarchive:
+ remote_src: true
+ src: "{{ intel_extract_dir }}/QAT20.L.{{ qat }}.tar.gz"
+ dest: "{{ intel_extract_dir }}/QAT20.L.{{ qat }}/"
+ register: intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Install QAT Driver
+ ansible.builtin.command: "{{ item }}"
+ args:
+ chdir: "{{ intel_extract_dir }}/QAT20.L.{{ qat }}"
+ become: true
+ with_items:
+ - "./configure --enable-icp-sriov=host --enable-icp-sym-only"
+ - "make"
+ - "make install"
+ when:
+ - intel_driver_extracted
+ tags:
+ - intel-inst \ No newline at end of file
diff --git a/topologies/available/lf_2n_spr_testbed23.yaml b/topologies/available/lf_2n_spr_testbed23.yaml
index 26906a8e52..bf11a03147 100644
--- a/topologies/available/lf_2n_spr_testbed23.yaml
+++ b/topologies/available/lf_2n_spr_testbed23.yaml
@@ -24,6 +24,7 @@ nodes:
pci_address: "0000:f2:01.0"
driver: idxd
model: Intel-DSA
+ cryptodev: "0000:f3:00.0"
interfaces:
port1:
# s57-t23-tg1-c2/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
@@ -138,6 +139,7 @@ nodes:
pci_address: "0000:f2:01.0"
driver: idxd
model: Intel-DSA
+ cryptodev: "0000:f3:00.0"
interfaces:
port1:
# s56-t23-sut1-c2/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
diff --git a/topologies/available/lf_3na_spr_testbed21.yaml b/topologies/available/lf_3na_spr_testbed21.yaml
index dce5ad456a..73dc9bad44 100644
--- a/topologies/available/lf_3na_spr_testbed21.yaml
+++ b/topologies/available/lf_3na_spr_testbed21.yaml
@@ -24,6 +24,7 @@ nodes:
pci_address: "0000:f2:01.0"
driver: idxd
model: Intel-DSA
+ cryptodev: "0000:76:00.0"
interfaces:
port1:
# s53-t21-tg1-c4/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
@@ -97,6 +98,16 @@ nodes:
username: testuser
password: Csit1234
uio_driver: vfio-pci
+ bus:
+ device1:
+ pci_address: "0000:75:01.0"
+ driver: idxd
+ model: Intel-DSA
+ device2:
+ pci_address: "0000:f2:01.0"
+ driver: idxd
+ model: Intel-DSA
+ cryptodev: "0000:76:00.0"
interfaces:
port1:
# s52-t21-sut1-c4/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
@@ -154,6 +165,16 @@ nodes:
username: testuser
password: Csit1234
uio_driver: vfio-pci
+ bus:
+ device1:
+ pci_address: "0000:75:01.0"
+ driver: idxd
+ model: Intel-DSA
+ device2:
+ pci_address: "0000:f2:01.0"
+ driver: idxd
+ model: Intel-DSA
+ cryptodev: "0000:f3:00.0"
interfaces:
port1:
# s52-t21-sut2-c9/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
diff --git a/topologies/available/lf_3nb_spr_testbed22.yaml b/topologies/available/lf_3nb_spr_testbed22.yaml
index 2afe151620..f8e9708283 100644
--- a/topologies/available/lf_3nb_spr_testbed22.yaml
+++ b/topologies/available/lf_3nb_spr_testbed22.yaml
@@ -24,6 +24,7 @@ nodes:
pci_address: "0000:f2:01.0"
driver: idxd
model: Intel-DSA
+ cryptodev: "0000:76:00.0"
interfaces:
port1:
# s55-t22-tg1-c4/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.
@@ -65,6 +66,16 @@ nodes:
username: testuser
password: Csit1234
uio_driver: vfio-pci
+ bus:
+ device1:
+ pci_address: "0000:75:01.0"
+ driver: idxd
+ model: Intel-DSA
+ device2:
+ pci_address: "0000:f2:01.0"
+ driver: idxd
+ model: Intel-DSA
+ cryptodev: "0000:76:00.0"
interfaces:
port1:
# s54-t22-sut1-c4/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.
@@ -106,6 +117,16 @@ nodes:
username: testuser
password: Csit1234
uio_driver: vfio-pci
+ bus:
+ device1:
+ pci_address: "0000:75:01.0"
+ driver: idxd
+ model: Intel-DSA
+ device2:
+ pci_address: "0000:f2:01.0"
+ driver: idxd
+ model: Intel-DSA
+ cryptodev: "0000:f3:00.0"
interfaces:
port1:
# s54-t22-sut1-c9/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.