aboutsummaryrefslogtreecommitdiffstats
path: root/fdio.infra.ansible/roles/intel
diff options
context:
space:
mode:
Diffstat (limited to 'fdio.infra.ansible/roles/intel')
-rw-r--r--fdio.infra.ansible/roles/intel/defaults/main.yaml108
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/dsa.yaml39
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/i40e.yaml16
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/iavf.yaml14
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/ice.yaml54
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/main.yaml99
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/qat1.yaml54
-rw-r--r--fdio.infra.ansible/roles/intel/tasks/qat2.yaml57
8 files changed, 352 insertions, 89 deletions
diff --git a/fdio.infra.ansible/roles/intel/defaults/main.yaml b/fdio.infra.ansible/roles/intel/defaults/main.yaml
index 7f35be3d89..9a3c5c0f0c 100644
--- a/fdio.infra.ansible/roles/intel/defaults/main.yaml
+++ b/fdio.infra.ansible/roles/intel/defaults/main.yaml
@@ -1,5 +1,5 @@
---
-# file: roles/intel/defaults/main.yaml
+# file: defaults/main.yaml
packages: "{{ packages_base + packages_by_distro[ansible_distribution | lower] + packages_by_arch[ansible_machine] }}"
@@ -8,7 +8,34 @@ packages_base:
packages_by_distro:
ubuntu:
- - []
+ - "build-essential"
+ - "autoconf"
+ - "automake"
+ - "autotools-dev"
+ - "libtool"
+ - "pkgconf"
+ - "asciidoc"
+ - "xmlto"
+ - "uuid-dev"
+ - "libjson-c-dev"
+ - "libkeyutils-dev"
+ - "libz-dev"
+ - "libssl-dev"
+ - "debhelper"
+ - "devscripts"
+ - "debmake"
+ - "quilt"
+ - "fakeroot"
+ - "lintian"
+ - "asciidoctor"
+ - "file"
+ - "gnupg"
+ - "patch"
+ - "patchutils"
+ - "libboost-dev"
+ - "libboost-regex-dev"
+# - "libudev-dev" http://security.ubuntu.com/ubuntu/pool/main/s/systemd/
+ - "yasm"
packages_by_arch:
aarch64:
@@ -21,43 +48,64 @@ intel_download_url: "https://downloadmirror.intel.com"
intel_extract_dir: "/opt"
intel_700_compatibility_matrix:
- dpdk21.02:
- # https://doc.dpdk.org/guides/rel_notes/release_21_02.html
- i40e: "2.14.13"
- iavf: "4.1.1"
- nvm: "8.00"
- dpdk22.03:
- # https://doc.dpdk.org/guides/rel_notes/release_22_03.html
- i40e: "2.17.15"
- iavf: "4.3.19"
- nvm: "8.30"
+ dpdk22.07:
+ # https://doc.dpdk.org/guides/rel_notes/release_22_07.html
+ i40e: "2.19.3"
+ iavf: "4.5.3"
+ nvm: "8.70"
+ dpdk23.11:
+ # https://doc.dpdk.org/guides/rel_notes/release_23_11.html
+ i40e: "2.23.17"
+ iavf: "4.9.5"
+ nvm: "9.30"
intel_800_compatibility_matrix:
- dpdk21.02:
- # https://doc.dpdk.org/guides/rel_notes/release_21_02.html
- ice: "1.4.11"
- ddp: "1.3.28.0"
- iavf: "4.1.1"
- nvm: "2.40"
dpdk22.03:
- # https://doc.dpdk.org/guides/rel_notes/release_22_03.html
- ice: "1.8.3"
- ddp: "1.3.35.0"
- iavf: "4.3.19"
- nvm: "3.20"
+ # custom for vpp_device
+ ice: "1.13.7"
+ ddp: "1.3.45.0"
+ iavf: "4.9.5"
+ nvm: "4.40"
+ dpdk22.07:
+ # https://doc.dpdk.org/guides/rel_notes/release_22_07.html
+ ice: "1.9.7"
+ ddp: "1.3.37.0"
+ iavf: "4.5.3"
+ nvm: "4.00"
+ dpdk23.11:
+ # https://doc.dpdk.org/guides/rel_notes/release_23_11.html
+ ice: "1.13.7"
+ ddp: "1.3.45.0"
+ iavf: "4.9.5"
+ nvm: "4.40"
+
+intel_dsa_compatibility_matrix:
+ dsa: "4.0"
+
+intel_qat_compatibility_matrix:
+ qat2: "1.0.20-00008"
+ qat1: "4.22.0-00001"
intel_i40e_url:
- "2.14.13": "i40e%20stable/2.14.13/i40e-2.14.13.tar.gz/download"
- "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"
+ "2.23.17": "i40e%20stable/2.23.17/i40e-2.23.17.tar.gz/download"
intel_ice_url:
- "1.4.11": "ice%20stable/1.4.11/ice-1.4.11.tar.gz/download"
- "1.8.3": "ice%20stable/1.8.3/ice-1.8.3.tar.gz/download"
+ "1.9.7": "ice%20stable/1.9.7/ice-1.9.7.tar.gz/download"
+ "1.13.7": "ice%20stable/1.13.7/ice-1.13.7.tar.gz/download"
intel_iavf_url:
- "4.1.1": "iavf%20stable/4.1.1/iavf-4.1.1.tar.gz/download"
"4.3.19": "iavf%20stable/4.3.19/iavf-4.3.19.tar.gz/download"
+ "4.5.3": "iavf%20stable/4.5.3/iavf-4.5.3.tar.gz/download"
+ "4.9.5": "iavf%20stable/4.9.5/iavf-4.9.5.tar.gz/download"
intel_ddp_url:
- "1.3.28.0": "30467/eng/800%20series%20comms%20binary%20package%201.3.28.0.zip"
- "1.3.35.0": "727568/ice_comms-1.3.35.0.zip"
+ "1.3.37.0": "738733/800%20Series%20DDP%20Comms%20Package%201.3.37.0.zip"
+ "1.3.45.0": "785846/738693_ice_comms-1.3.45.0.zip"
+
+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"
+ "4.22.0-00001": "780675/QAT.L.4.22.0-00001.tar.gz"
diff --git a/fdio.infra.ansible/roles/intel/tasks/dsa.yaml b/fdio.infra.ansible/roles/intel/tasks/dsa.yaml
new file mode 100644
index 0000000000..2f038b0e9f
--- /dev/null
+++ b/fdio.infra.ansible/roles/intel/tasks/dsa.yaml
@@ -0,0 +1,39 @@
+---
+# file: tasks/dsa.yaml
+
+- name: Get DSA Driver
+ ansible.builtin.uri:
+ url: "{{ intel_dsa_url[dsa] }}"
+ follow_redirects: "all"
+ force: true
+ dest: "{{ intel_extract_dir }}/accel-config-v{{ dsa }}.tar.gz"
+ mode: "0644"
+ failed_when: false
+ tags:
+ - intel-inst
+
+- name: Extract DSA Driver
+ ansible.builtin.unarchive:
+ remote_src: true
+ src: "{{ intel_extract_dir }}/accel-config-v{{ dsa }}.tar.gz"
+ dest: "{{ intel_extract_dir }}/"
+ creates: "{{ intel_extract_dir }}/idxd-config-accel-config-v{{ dsa }}"
+ register: intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Install DSA Driver
+ ansible.builtin.command: "{{ item }}"
+ args:
+ chdir: "{{ intel_extract_dir }}/idxd-config-accel-config-v{{ dsa }}"
+ become: true
+ with_items:
+ - "./autogen.sh"
+ - "./configure CFLAGS='-g -O2' --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib64"
+ - "make"
+ - "make check"
+ - "make install"
+ when:
+ - intel_driver_extracted
+ tags:
+ - intel-inst
diff --git a/fdio.infra.ansible/roles/intel/tasks/i40e.yaml b/fdio.infra.ansible/roles/intel/tasks/i40e.yaml
index 2299a3b1b8..8b069bf9b2 100644
--- a/fdio.infra.ansible/roles/intel/tasks/i40e.yaml
+++ b/fdio.infra.ansible/roles/intel/tasks/i40e.yaml
@@ -1,8 +1,8 @@
---
-# file: roles/intel/tasks/i40e.yaml
+# file: tasks/i40e.yaml
-- name: Inst - Get i40e Network Adapter Driver
- uri:
+- name: Get i40e Network Adapter Driver
+ ansible.builtin.uri:
url: "{{ intel_sourceforge_download_url }}/{{ intel_i40e_url[i40e] }}"
follow_redirects: "all"
force: true
@@ -12,8 +12,8 @@
tags:
- intel-inst
-- name: Inst - Extract i40e Network Adapter Driver
- unarchive:
+- name: Extract i40e Network Adapter Driver
+ ansible.builtin.unarchive:
remote_src: true
src: "{{ intel_extract_dir }}/i40e-{{ i40e }}.tar.gz"
dest: "{{ intel_extract_dir }}/"
@@ -22,14 +22,14 @@
tags:
- intel-inst
-- name: Inst - i40e Network Adapter Driver
- command: "{{ item }}"
+- name: Install i40e Network Adapter Driver
+ ansible.builtin.command: "{{ item }}"
args:
chdir: "{{ intel_extract_dir }}/i40e-{{ i40e }}/src"
become: true
with_items:
- "make install"
- - "modprobe -r i40e"
+ #- "modprobe -r i40e"
- "modprobe i40e"
when:
- intel_driver_extracted
diff --git a/fdio.infra.ansible/roles/intel/tasks/iavf.yaml b/fdio.infra.ansible/roles/intel/tasks/iavf.yaml
index 44040cfd7e..127e31bee2 100644
--- a/fdio.infra.ansible/roles/intel/tasks/iavf.yaml
+++ b/fdio.infra.ansible/roles/intel/tasks/iavf.yaml
@@ -1,8 +1,8 @@
---
-# file: roles/intel/tasks/iavf.yaml
+# file: tasks/iavf.yaml
-- name: Inst - Get iavf Network Adapter Driver
- uri:
+- name: Get iavf Network Adapter Driver
+ ansible.builtin.uri:
url: "{{ intel_sourceforge_download_url }}/{{ intel_iavf_url[iavf] }}"
follow_redirects: "all"
force: true
@@ -12,8 +12,8 @@
tags:
- intel-inst
-- name: Inst - Extract iavf Network Adapter Driver
- unarchive:
+- name: Extract iavf Network Adapter Driver
+ ansible.builtin.unarchive:
remote_src: true
src: "{{ intel_extract_dir }}/iavf-{{ iavf }}.tar.gz"
dest: "{{ intel_extract_dir }}/"
@@ -22,8 +22,8 @@
tags:
- intel-inst
-- name: Inst - iavf Network Adapter Driver
- command: "{{ item }}"
+- name: Install iavf Network Adapter Driver
+ ansible.builtin.command: "{{ item }}"
args:
chdir: "{{ intel_extract_dir }}/iavf-{{ iavf }}/src"
become: true
diff --git a/fdio.infra.ansible/roles/intel/tasks/ice.yaml b/fdio.infra.ansible/roles/intel/tasks/ice.yaml
index 2386c8390c..c773a65a34 100644
--- a/fdio.infra.ansible/roles/intel/tasks/ice.yaml
+++ b/fdio.infra.ansible/roles/intel/tasks/ice.yaml
@@ -1,8 +1,8 @@
---
-# file: roles/intel/tasks/ice.yaml
+# file: tasks/ice.yaml
-- name: Inst - Get ice Network Adapter Driver
- uri:
+- name: Get ice Network Adapter Driver
+ ansible.builtin.uri:
url: "{{ intel_sourceforge_download_url }}/{{ intel_ice_url[ice] }}"
follow_redirects: "all"
force: true
@@ -12,8 +12,8 @@
tags:
- intel-inst
-- name: Inst - Extract ice Network Adapter Driver
- unarchive:
+- name: Extract ice Network Adapter Driver
+ ansible.builtin.unarchive:
remote_src: true
src: "{{ intel_extract_dir }}/ice-{{ ice }}.tar.gz"
dest: "{{ intel_extract_dir }}/"
@@ -22,30 +22,30 @@
tags:
- intel-inst
-- name: Inst - ice Network Adapter Driver
- command: "{{ item }}"
+- name: Install ice Network Adapter Driver
+ ansible.builtin.command: "{{ item }}"
args:
chdir: "{{ intel_extract_dir }}/ice-{{ ice }}/src"
become: true
with_items:
- "make install"
- - "modprobe -r ice"
+ #- "modprobe -r ice"
- "modprobe ice"
when:
- intel_driver_extracted
tags:
- intel-inst
-- name: Inst - Get Dynamic Device Personalization (DDP) Package
- get_url:
+- name: Get Dynamic Device Personalization (DDP) Package
+ ansible.builtin.get_url:
url: "{{ intel_download_url }}/{{ intel_ddp_url[ddp] }}"
dest: "{{ intel_extract_dir }}/800-Series-Comms-Binary-Package-{{ ddp }}.zip"
mode: 0644
tags:
- intel-inst
-- name: Inst - Extract Dynamic Device Personalization (DDP) Package
- unarchive:
+- name: Extract Dynamic Device Personalization (DDP) Package
+ ansible.builtin.unarchive:
remote_src: true
src: "{{ intel_extract_dir }}/800-Series-Comms-Binary-Package-{{ ddp }}.zip"
dest: "{{ intel_extract_dir }}/"
@@ -54,17 +54,17 @@
tags:
- intel-inst
-#- name: Inst - Extract Dynamic Device Personalization (DDP) Package
-# unarchive:
-# remote_src: true
-# src: "{{ intel_extract_dir }}/ice_comms-{{ ddp }}.zip"
-# dest: "{{ intel_extract_dir }}/"
-# register: intel_driver_extracted
-# tags:
-# - intel-inst
-#
-- name: Inst - Copy Dynamic Device Personalization (DDP) Package
- copy:
+- name: Extract Dynamic Device Personalization (DDP) Package
+ ansible.builtin.unarchive:
+ remote_src: true
+ src: "{{ intel_extract_dir }}/ice_comms-{{ ddp }}.zip"
+ dest: "{{ intel_extract_dir }}/"
+ register: intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Copy Dynamic Device Personalization (DDP) Package
+ ansible.builtin.copy:
src: "{{ intel_extract_dir }}/ice_comms-{{ ddp }}.pkg"
dest: "/lib/firmware/updates/intel/ice/ddp/ice-{{ ddp }}.pkg"
remote_src: true
@@ -72,16 +72,16 @@
tags:
- intel-inst
-- name: Inst - Link Dynamic Device Personalization (DDP) Package
- file:
+- name: Link Dynamic Device Personalization (DDP) Package
+ ansible.builtin.file:
src: "ice-{{ ddp }}.pkg"
dest: "/lib/firmware/updates/intel/ice/ddp/ice.pkg"
state: link
tags:
- intel-inst
-- name: Inst - Extract Dynamic Device Personalization (DDP) Package (cleanup)
- file:
+- name: Extract Dynamic Device Personalization (DDP) Package (cleanup)
+ ansible.builtin.file:
path: "{{ item }}"
state: absent
with_items:
diff --git a/fdio.infra.ansible/roles/intel/tasks/main.yaml b/fdio.infra.ansible/roles/intel/tasks/main.yaml
index 62d8d90499..d7598deca7 100644
--- a/fdio.infra.ansible/roles/intel/tasks/main.yaml
+++ b/fdio.infra.ansible/roles/intel/tasks/main.yaml
@@ -1,8 +1,8 @@
---
-# file: roles/intel/tasks/main.yaml
+# file: tasks/main.yaml
-- name: Inst - Update Package Cache (APT)
- apt:
+- name: Update Package Cache (APT)
+ ansible.builtin.apt:
update_cache: true
cache_valid_time: 3600
when:
@@ -10,31 +10,55 @@
tags:
- intel-inst-drivers
-- name: Inst - Prerequisites
- package:
+- name: Install Prerequisites
+ ansible.builtin.package:
name: "{{ packages | flatten(levels=1) }}"
state: latest
tags:
- intel-inst-drivers
-- name: Inst - Check Presence of Intel Ethernet 700 Series
- shell: "lspci -d 8086:1583; lspci -d 8086:1585; lspci -d 8086:1572; lspci -d 8086:158a; lspci -d 8086:158b"
+- name: Check Presence of Intel Ethernet 700 Series
+ ansible.builtin.shell: "lspci -d 8086:1583; lspci -d 8086:1585; lspci -d 8086:1572; lspci -d 8086:158a; lspci -d 8086:158b"
register: intel_700_pcis
failed_when: false
changed_when: false
tags:
- intel-inst-drivers
-- name: Inst - Check Presence of Intel Ethernet 800 Series
- shell: "lspci -d 8086:1592; lspci -d 8086:1891"
+- name: Check Presence of Intel Ethernet 800 Series
+ ansible.builtin.shell: "lspci -d 8086:1592; lspci -d 8086:1891; lspci -d 8086:188c"
register: intel_800_pcis
failed_when: false
changed_when: false
tags:
- intel-inst-drivers
-- name: Inst - Get Intel Ethernet 700 Series driver versions
- set_fact:
+- name: Check Presence of Intel DSA
+ ansible.builtin.shell: "lspci -d 8086:0b25"
+ register: intel_dsa_pcis
+ failed_when: false
+ changed_when: false
+ tags:
+ - intel-inst-drivers
+
+- name: Check Presence of Intel C4XXX
+ ansible.builtin.shell: "lspci -d 8086:18a0"
+ register: intel_qat1_pcis
+ failed_when: false
+ changed_when: false
+ tags:
+ - intel-inst-drivers
+
+- name: Check Presence of Intel 4XXX
+ ansible.builtin.shell: "lspci -d 8086:4942"
+ register: intel_qat2_pcis
+ failed_when: false
+ changed_when: false
+ tags:
+ - intel-inst-drivers
+
+- name: Get Intel Ethernet 700 Series driver versions
+ ansible.builtin.set_fact:
i40e: "{{ intel_700_compatibility_matrix[intel_700_matrix]['i40e'] }}"
iavf: "{{ intel_700_compatibility_matrix[intel_700_matrix]['iavf'] }}"
nvm: "{{ intel_700_compatibility_matrix[intel_700_matrix]['nvm'] }}"
@@ -43,8 +67,8 @@
tags:
- intel-inst-drivers
-- name: Inst - Get Intel Ethernet 800 Series driver versions
- set_fact:
+- name: Get Intel Ethernet 800 Series driver versions
+ ansible.builtin.set_fact:
ice: "{{ intel_800_compatibility_matrix[intel_800_matrix]['ice'] }}"
ddp: "{{ intel_800_compatibility_matrix[intel_800_matrix]['ddp'] }}"
iavf: "{{ intel_800_compatibility_matrix[intel_800_matrix]['iavf'] }}"
@@ -54,7 +78,24 @@
tags:
- intel-inst-drivers
-- name: Inst - Driver Intel Ethernet 700 Series
+- name: Get Intel DSA driver versions
+ ansible.builtin.set_fact:
+ dsa: "{{ intel_dsa_compatibility_matrix['dsa'] }}"
+ when: >
+ intel_dsa_matrix is defined
+ tags:
+ - intel-inst-drivers
+
+- name: Get Intel QAT driver versions
+ ansible.builtin.set_fact:
+ qat1: "{{ intel_qat_compatibility_matrix['qat1'] }}"
+ qat2: "{{ intel_qat_compatibility_matrix['qat2'] }}"
+ when: >
+ intel_qat_matrix is defined
+ tags:
+ - intel-inst-drivers
+
+- name: Driver Intel Ethernet 700 Series
import_tasks: i40e.yaml
when: >
intel_700_pcis.stdout_lines | length > 0 and
@@ -62,7 +103,7 @@
tags:
- intel-inst-drivers
-- name: Inst - Driver Intel Ethernet 800 Series
+- name: Driver Intel Ethernet 800 Series
import_tasks: ice.yaml
when: >
intel_800_pcis.stdout_lines | length > 0 and
@@ -70,12 +111,36 @@
tags:
- intel-inst-drivers
-- name: Inst - Driver Intel iAVF
+- name: Driver Intel iAVF
import_tasks: iavf.yaml
when: >
(intel_700_pcis.stdout_lines | length > 0 and
- intel_700_matrix is defined ) or
+ intel_700_matrix is defined) or
(intel_800_pcis.stdout_lines | length > 0 and
intel_800_matrix is defined)
tags:
- intel-inst-drivers
+
+- name: Driver Intel DSA
+ import_tasks: dsa.yaml
+ when: >
+ intel_dsa_pcis.stdout_lines | length > 0 and
+ intel_dsa_matrix is defined
+ tags:
+ - intel-inst-drivers
+
+- name: Driver Intel QAT 1.x
+ import_tasks: qat1.yaml
+ when: >
+ intel_qat1_pcis.stdout_lines | length > 0 and
+ intel_qat_matrix is defined
+ tags:
+ - intel-inst-drivers
+
+- name: Driver Intel QAT 2.x
+ import_tasks: qat2.yaml
+ when: >
+ intel_qat2_pcis.stdout_lines | length > 0 and
+ intel_qat_matrix is defined
+ tags:
+ - intel-inst-drivers \ No newline at end of file
diff --git a/fdio.infra.ansible/roles/intel/tasks/qat1.yaml b/fdio.infra.ansible/roles/intel/tasks/qat1.yaml
new file mode 100644
index 0000000000..701c0c1bf1
--- /dev/null
+++ b/fdio.infra.ansible/roles/intel/tasks/qat1.yaml
@@ -0,0 +1,54 @@
+---
+# file: tasks/qat1.yaml
+
+- name: Get QAT 1.x Driver
+ ansible.builtin.uri:
+ url: "{{ intel_download_url }}/{{ intel_qat_url[qat1] }}"
+ follow_redirects: "all"
+ force: true
+ dest: "{{ intel_extract_dir }}/QAT.L.{{ qat1 }}.tar.gz"
+ mode: "0644"
+ failed_when: false
+ tags:
+ - intel-inst
+
+- name: Create a Directory For QAT 1.x Driver
+ ansible.builtin.file:
+ path: "{{ intel_extract_dir }}/QAT.L.{{ qat1 }}/"
+ state: "directory"
+ mode: "0755"
+ tags:
+ - intel-inst
+
+- name: Extract QAT 1.x Driver
+ ansible.builtin.unarchive:
+ remote_src: true
+ src: "{{ intel_extract_dir }}/QAT.L.{{ qat1 }}.tar.gz"
+ dest: "{{ intel_extract_dir }}/QAT.L.{{ qat1 }}/"
+ register: intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Install QAT1.x Driver
+ ansible.builtin.command: "{{ item }}"
+ args:
+ chdir: "{{ intel_extract_dir }}/QAT.L.{{ qat1 }}"
+ become: true
+ with_items:
+ - "./configure --enable-icp-sriov=host --enable-icp-sym-only"
+ - "make"
+ - "make install"
+ when:
+ - intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Load Kernel Modules By Default
+ ansible.builtin.lineinfile:
+ path: "/etc/modules"
+ state: "present"
+ line: "{{ item }}"
+ with_items:
+ - "qat_c4xxx"
+ tags:
+ - intel-inst \ No newline at end of file
diff --git a/fdio.infra.ansible/roles/intel/tasks/qat2.yaml b/fdio.infra.ansible/roles/intel/tasks/qat2.yaml
new file mode 100644
index 0000000000..a560f16b2c
--- /dev/null
+++ b/fdio.infra.ansible/roles/intel/tasks/qat2.yaml
@@ -0,0 +1,57 @@
+---
+# file: tasks/qat2.yaml
+
+- name: Get QAT 2.x Driver
+ ansible.builtin.uri:
+ url: "{{ intel_download_url }}/{{ intel_qat_url[qat2] }}"
+ follow_redirects: "all"
+ force: true
+ dest: "{{ intel_extract_dir }}/QAT20.L.{{ qat2 }}.tar.gz"
+ mode: "0644"
+ failed_when: false
+ tags:
+ - intel-inst
+
+- name: Create a Directory For QAT 2.x Driver
+ ansible.builtin.file:
+ path: "{{ intel_extract_dir }}/QAT20.L.{{ qat2 }}/"
+ state: "directory"
+ mode: "0755"
+ tags:
+ - intel-inst
+
+- name: Extract QAT 2.x Driver
+ ansible.builtin.unarchive:
+ remote_src: true
+ src: "{{ intel_extract_dir }}/QAT20.L.{{ qat2 }}.tar.gz"
+ dest: "{{ intel_extract_dir }}/QAT20.L.{{ qat2 }}/"
+ register: intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Install QAT 2.x Driver
+ ansible.builtin.command: "{{ item }}"
+ args:
+ chdir: "{{ intel_extract_dir }}/QAT20.L.{{ qat2 }}"
+ become: true
+ with_items:
+ - "wget http://security.ubuntu.com/ubuntu/pool/main/s/systemd/libudev-dev_249.11-0ubuntu3.7_amd64.deb"
+ - "dpkg -i ./libudev-dev_249.11-0ubuntu3.7_amd64.deb"
+ - "./configure --enable-icp-sriov=host --enable-icp-sym-only"
+ - "make"
+ - "make install"
+ - "apt remove -y libudev-dev"
+ when:
+ - intel_driver_extracted
+ tags:
+ - intel-inst
+
+- name: Load Kernel Modules By Default
+ ansible.builtin.lineinfile:
+ path: "/etc/modules"
+ state: "present"
+ line: "{{ item }}"
+ with_items:
+ - "qat_4xxx"
+ tags:
+ - intel-inst \ No newline at end of file