blob: b5dabda8da0062c70a4f8f88c8d2878e51cf4f18 [file] [log] [blame]
Raphael Vicente Rosa86e56912022-02-01 17:49:05 +01001---
2# qat tasks/qat.yml
3#
4# SPDX-FileCopyrightText: © 2022 Open Networking Foundation <support@opennetworking.org>
5# SPDX-Lqatnse-Identifier: Apache-2.0
6
7- name: Blacklist kernel QAT drivers
8 blockinfile:
9 create: true
10 dest: /etc/modprobe.d/blacklist-intel_qat.conf
11 mode: 0644
12 block: |
13 # Blacklist kernel QAT drivers
14 blacklist qat_c62x
15 blacklist qat_c62xvf
16 blacklist qat_c6xx
17 blacklist qat_c6xxvf
18 blacklist qat_c3xxx
19 blacklist qat_c3xxxvf
20 blacklist qat_d15xx
21 blacklist qat_d15xxvf
22 blacklist qat_c4xxx
23 blacklist qat_c4xxxvf
24 blacklist intel_qat
25 backup: true
26 notify: reboot qat
27
28- name: Flush handlers
29 meta: flush_handlers
30
31- name: Install QAT driver compile requirements
32 apt:
33 name:
34 - "libboost-all-dev"
35 - "pciutils-dev"
36 - "libssl-dev"
37 - "build-essential"
38 - "pkg-config"
39 - "yasm"
40 state: "present"
41 update_cache: true
42
43- name: Create root folder for QAT driver
44 file:
45 path: "{{ sriov_qat_driver_dir }}"
46 state: directory
47 owner: root
48 group: root
49 mode: "0644"
50
51- name: Download QAT driver .tgz file
52 get_url:
53 url: "{{ sriov_qat_latest_url }}"
54 dest: "{{ sriov_qat_driver_dir }}/{{ sriov_qat_latest_name }}"
55 owner: "root"
56 group: "root"
57 mode: "0644"
58 checksum: "{{ sriov_qat_checksum }}"
59
60- name: Create qat directory in /usr/src
61 file:
62 path: "/usr/src/qat-{{ sriov_qat_version }}"
63 state: directory
64 owner: "root"
65 group: "root"
66 mode: "0755"
67
68- name: Decompress qat archive
69 unarchive:
70 remote_src: true
71 src: "{{ sriov_qat_driver_dir }}/{{ sriov_qat_latest_name }}"
72 dest: "/usr/src/qat-{{ sriov_qat_version }}"
73 owner: "root"
74 group: "root"
75 extra_opts:
76 - "--strip-components=1" # remove initial directory name
77 creates: "/usr/src/qat-{{ sriov_qat_version }}/README"
78
79- name: Copy over qat dkms.conf
80 template:
81 src: "qat_dkms.conf.j2"
82 dest: "/usr/src/qat-{{ sriov_qat_version }}/dkms.conf"
83 owner: "root"
84 group: "root"
85 mode: "0644"
86
87- name: add qat to DKMS
88 command:
89 cmd: "dkms add -m qat -v {{ sriov_qat_version }}"
90 chdir: "/usr/src/qat-{{ sriov_qat_version }}"
91 creates: "/var/lib/dkms/qat/{{ sriov_qat_version }}/source/README"
92
93- name: build qat using DKMS
94 command:
95 cmd: "dkms build -m qat -v {{ sriov_qat_version }}"
96 chdir: "/usr/src/qat-{{ sriov_qat_version }}"
97
98- name: install qat modules with DKMS
99 command:
100 cmd: "dkms install -m qat -v {{ sriov_qat_version }}"
101 chdir: "/usr/src/qat-{{ sriov_qat_version }}"
102
103- name: Create sriov_qat system servqat
104 template:
105 src: "{{ item.src }}"
106 dest: "{{ item.dest }}"
107 mode: "{{ item.mode }}"
108 owner: root
109 group: root
110 loop:
111 - {
112 src: "sriov_qat.sh.j2",
113 dest: "/usr/local/bin/sriov_qat.sh",
114 mode: "a+x",
115 }
116 - {
117 src: "sriov_qat.service.j2",
118 dest: "/etc/systemd/system/sriov_qat.service",
119 mode: 644,
120 }
121 notify: enable sriov_qat.service