feat(infra): Add QAT install 22/39122/2
authorpmikus <peter.mikus@protonmail.ch>
Thu, 22 Jun 2023 08:36:23 +0000 (08:36 +0000)
committerPeter Mikus <peter.mikus@protonmail.ch>
Thu, 22 Jun 2023 08:37:56 +0000 (08:37 +0000)
Signed-off-by: pmikus <peter.mikus@protonmail.ch>
Change-Id: Ifc461460b2f0f8c7ca17ab32fbf7df52cb356c29

16 files changed:
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.93.yaml
fdio.infra.ansible/inventories/lf_inventory/host_vars/10.30.51.94.yaml
fdio.infra.ansible/roles/intel/defaults/main.yaml
fdio.infra.ansible/roles/intel/tasks/main.yaml
fdio.infra.ansible/roles/intel/tasks/qat.yaml [new file with mode: 0644]
topologies/available/lf_2n_spr_testbed23.yaml
topologies/available/lf_3na_spr_testbed21.yaml
topologies/available/lf_3nb_spr_testbed22.yaml

index 0814b0f..5de65e4 100644 (file)
@@ -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
index 0fc3c87..ac7f819 100644 (file)
@@ -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
index a0a8323..90e56f5 100644 (file)
@@ -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
index fb89c3b..43b9a26 100644 (file)
@@ -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
index 4e84477..d0c8da8 100644 (file)
@@ -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
index f1ccfc8..477d5b2 100644 (file)
@@ -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
index be2b118..660db20 100644 (file)
@@ -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
index 45b229d..e3d4378 100644 (file)
@@ -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
index 7f0640a..80c8d38 100644 (file)
   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: >
     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 (file)
index 0000000..6854755
--- /dev/null
@@ -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
index 26906a8..bf11a03 100644 (file)
@@ -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.
index dce5ad4..73dc9ba 100644 (file)
@@ -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.
index 2afe151..f8e9708 100644 (file)
@@ -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.