feat(core) QAT init fix 98/42398/2
authorPeter Mikus <[email protected]>
Fri, 21 Feb 2025 11:14:44 +0000 (12:14 +0100)
committerPeter Mikus <[email protected]>
Tue, 25 Feb 2025 07:12:30 +0000 (07:12 +0000)
Signed-off-by: Peter Mikus <[email protected]>
Change-Id: I45198b17cfb6b62608bb03e6b1a4af0f939d10ae
(cherry picked from commit 7e053e65069df061748d625cea306075efdc75a8)

resources/libraries/python/QATUtil.py
topologies/available/lf_3n_emr_testbed28.yaml
topologies/available/lf_3n_emr_testbed29.yaml
topologies/available/lf_3n_icxd_testbed31.yaml
topologies/available/lf_3n_icxd_testbed32.yaml
topologies/available/lf_3n_snr_testbed39.yaml
topologies/available/lf_3na_spr_testbed21.yaml
topologies/available/lf_3nb_spr_testbed22.yaml

index e16221f..9c7f092 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2023 Cisco and/or its affiliates.
+# Copyright (c) 2025 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -51,28 +51,15 @@ class QATUtil:
         """
         DUTSetup.verify_kernel_module(node, device["module"], force_load=True)
 
-        current_driver = DUTSetup.get_pci_dev_driver(
-            node, device["pci_address"].replace(":", r"\:")
+        exec_cmd_no_error(
+            node, f"adf_ctl {device["qat_dev"]} restart",
+            sudo=True, message="Failed to reset crypto device!"
         )
-        if current_driver is not None:
-            DUTSetup.pci_driver_unbind(node, device["pci_address"])
-        # Bind to kernel driver.
-        DUTSetup.pci_driver_bind(node, device["pci_address"], device["driver"])
 
-        cmd = f"adf_ctl status | grep {device['pci_address']} | "
-        cmd += "awk '{print $1}'"
-        stdout, _ = exec_cmd_no_error(
-            node, cmd, sudo=True, message="Failed to check crypto device!"
+        exec_cmd_no_error(
+            node, f"adf_ctl {device["qat_dev"]} status",
+            sudo=True, retries=10, message="Failed to status crypto device!"
         )
-        if stdout.strip():
-            qat_dev = stdout.split("_")[-1]
-            conf_file = f"/etc/{device['driver']}_{qat_dev.strip()}.conf"
-            exec_cmd_no_error(
-                node, f"adf_ctl --config {conf_file} {stdout.strip()} restart",
-                sudo=True, message="Failed to restart crypto device!"
-            )
-        else:
-            raise ValueError("Crypto device error")
 
         # Initialize QAT VFs.
         if int(device["numvfs"]) > 0:
@@ -89,4 +76,4 @@ class QATUtil:
                 )
                 DUTSetup.pci_vf_driver_bind(
                     node, device["pci_address"], cvf, "vfio-pci"
-                )
+                )
\ No newline at end of file
index 7d9aff6..361a2e6 100644 (file)
@@ -48,9 +48,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:70:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
     interfaces:
       port1:
@@ -85,9 +86,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:ed:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev1
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
     interfaces:
       port1:
index 56d38a7..44e1415 100644 (file)
@@ -20,13 +20,6 @@ nodes:
         pci_address: "0000:6a:01.0"
         driver: idxd
         model: Intel-DSA
-    cryptodev:
-      device1:
-        pci_address: "0000:70:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
-        numvfs: 8
     interfaces:
       port1:
         # s41-t29-tg1-c4/p1 - 100GE port1 Intel E810-2C-Q2 2p100GE.
@@ -60,9 +53,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:70:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
     interfaces:
       port1:
@@ -97,9 +91,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:ed:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev1
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
     interfaces:
       port1:
index 3731188..67bca99 100644 (file)
@@ -42,9 +42,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:81:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
@@ -74,9 +75,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:81:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
index 7091a0c..e65bc9e 100644 (file)
@@ -42,9 +42,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:81:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
@@ -74,9 +75,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:81:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
index 3ea57a2..e15e704 100644 (file)
@@ -58,9 +58,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:f4:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
@@ -106,9 +107,10 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:f4:00.0"
-        driver: "c4xxx"
-        model: "HW_C4xxx"
-        module: "qat_c4xxx"
+        qat_dev: qat_dev0
+        driver: c4xxx
+        model: HW_C4xxx
+        module: qat_c4xxx
         numvfs: 8
     uio_driver: vfio-pci
     interfaces:
index 7661392..e6a42df 100644 (file)
@@ -27,16 +27,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:76:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:7a:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s53-t21-tg1-c4/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
@@ -122,16 +117,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:76:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:7a:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s52-t21-sut1-c4/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
@@ -201,16 +191,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:f3:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev1
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:f7:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s52-t21-sut2-c9/p1 - 200GE port1 Mellanox ConnectX7-2p200GE.
index 0d080e8..2ac433f 100644 (file)
@@ -27,16 +27,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:76:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:7a:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s55-t22-tg1-c4/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.
@@ -90,16 +85,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:76:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev0
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:7a:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s54-t22-sut1-c4/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.
@@ -153,16 +143,11 @@ nodes:
     cryptodev:
       device1:
         pci_address: "0000:f3:00.0"
-        driver: "4xxx"
-        model: "HW_4xxx"
-        module: "qat_4xxx"
+        qat_dev: qat_dev1
+        driver: 4xxx
+        model: HW_4xxx
+        module: qat_4xxx
         numvfs: 8
-      #device2:
-      #  pci_address: "0000:f7:00.0"
-      #  driver: "4xxx"
-      #  model: "HW_4xxx"
-      #  module: "qat_4xxx"
-      #  numvfs: 8
     interfaces:
       port1:
         # s54-t22-sut1-c9/p1 - 100GE port1 Intel E810-CQDA2 2p100GE.