Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp1287570pxb; Fri, 13 Nov 2020 08:49:18 -0800 (PST) X-Google-Smtp-Source: ABdhPJxxUlzc6cLOhSl8xVnOdHRigchQqGYAFNhhMShgOf6VEK3seu/1lF6Q034zZCyqrhucIp9N X-Received: by 2002:a17:906:3bcf:: with SMTP id v15mr2859679ejf.244.1605286158566; Fri, 13 Nov 2020 08:49:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605286158; cv=none; d=google.com; s=arc-20160816; b=WqfZj5J80te12nCdQ4WUrYNBUTVTghOQPAmeSaKkVrrCEzMqccsvOpF5yxIMYkR7Pj Ke7YsbdYlfT47qVWWneNBRy1VTZh9lq5xEGKMpAWYorb9tE2eVIMkqqWv5lGAMzz+2uS GTloIVe1bjVKrEePEL6Dx/F9Zh3srAX21G2i0Jmq4inD7dJh8bfl/PMf4bgaVNJa1Ovq 3oHAjcDfkraFSGlu2sj2xRbYHMRoQ/hUYmmNgi850sdPTGFmEKecmFELY1wE0cJKJ+Z5 hSj83R7i0HEKnVUcbZimNrYAYVo6OVB9sbtQWlAd304Q1lQE6tI6bZGLZVaTu+mvAphP a++A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:ironport-sdr:ironport-sdr; bh=MsbRTVmMXS/U2H2QC5oMGFBZZK7/H9BVupwCGuZyp+8=; b=h34HPwxSHC3TPLFZZBD/fcRxPNvJ7fsrcM0h33IprcTfUgm5lvlVJ7/4LWV6Yep5jr xq7IfhIRq+O8zxQwCB4KRACIXLi1JxBeLlKAmae2vTuU5bfWNVLpq8IfWMMSYtj8nO/c crSKdPkMNiHD77wqEFGSYrClz6mXLoMm7O169AxMviIsokBG/CcSGZFhqhckpO3+qul7 KB0Ecmm/izJzYg63EW+KUldnVvNBGSTjASEJEgLfVx/VtOGgCm2RDzytym1IxP31AjgT N9VtB/xLcY1W6+TxD7ujJSiJnbm2/BKv8vkDgsXE+ktV3RhMALLbUJC163uzxrgSoeP6 L9Ug== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y10si6104085ejf.165.2020.11.13.08.48.54; Fri, 13 Nov 2020 08:49:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726376AbgKMQqu (ORCPT + 99 others); Fri, 13 Nov 2020 11:46:50 -0500 Received: from mga07.intel.com ([134.134.136.100]:5727 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726270AbgKMQqu (ORCPT ); Fri, 13 Nov 2020 11:46:50 -0500 IronPort-SDR: QgUDwMjSbOix0ZkcgZQqXzXdIdVZWJ4k0Lk2P3EWyAaFGzw5Z8hhwCQHD16Lpo9E3B9vR4zG72 AyRxh0nhCg3g== X-IronPort-AV: E=McAfee;i="6000,8403,9804"; a="234655770" X-IronPort-AV: E=Sophos;i="5.77,476,1596524400"; d="scan'208";a="234655770" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Nov 2020 08:46:49 -0800 IronPort-SDR: SBP/ncO8mWKAmSmC5sSvrhmXd/hySc0+229IUtAtc1IQFJvzLSgVWeL1L0YfShxDu+jukRzBGg MUZDtjz0uFrQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,476,1596524400"; d="scan'208";a="328926306" Received: from silpixa00400314.ir.intel.com (HELO silpixa00400314.ger.corp.intel.com) ([10.237.222.51]) by orsmga006.jf.intel.com with ESMTP; 13 Nov 2020 08:46:48 -0800 From: Giovanni Cabiddu To: herbert@gondor.apana.org.au Cc: linux-crypto@vger.kernel.org, qat-linux@intel.com, Giovanni Cabiddu Subject: [PATCH 0/3] crypto: qat - add qat_4xxx driver Date: Fri, 13 Nov 2020 16:46:40 +0000 Message-Id: <20201113164643.103383-1-giovanni.cabiddu@intel.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Add support for QAT 4xxx devices. The first patch reworks the logic that loads the firmware images to allow for for devices that require multiple firmware images to work. The second patch introduces an hook to program the vector routing table, which is introduced in QAT 4XXX, to allow to change the vector associated with the interrupt source. The third patch implements the QAT 4xxx driver. Giovanni Cabiddu (3): crypto: qat - target fw images to specific AEs crypto: qat - add hook to initialize vector routing table crypto: qat - add qat_4xxx driver drivers/crypto/qat/Kconfig | 11 + drivers/crypto/qat/Makefile | 1 + drivers/crypto/qat/qat_4xxx/Makefile | 4 + .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.c | 218 ++++++++++++ .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.h | 75 ++++ drivers/crypto/qat/qat_4xxx/adf_drv.c | 320 ++++++++++++++++++ drivers/crypto/qat/qat_common/Makefile | 1 + .../crypto/qat/qat_common/adf_accel_devices.h | 5 + .../crypto/qat/qat_common/adf_accel_engine.c | 58 +++- .../crypto/qat/qat_common/adf_cfg_common.h | 3 +- .../crypto/qat/qat_common/adf_gen4_hw_data.c | 101 ++++++ .../crypto/qat/qat_common/adf_gen4_hw_data.h | 99 ++++++ drivers/crypto/qat/qat_common/adf_isr.c | 3 + 13 files changed, 893 insertions(+), 6 deletions(-) create mode 100644 drivers/crypto/qat/qat_4xxx/Makefile create mode 100644 drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c create mode 100644 drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.h create mode 100644 drivers/crypto/qat/qat_4xxx/adf_drv.c create mode 100644 drivers/crypto/qat/qat_common/adf_gen4_hw_data.c create mode 100644 drivers/crypto/qat/qat_common/adf_gen4_hw_data.h -- 2.28.0