Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp2737931iog; Mon, 27 Jun 2022 01:41:14 -0700 (PDT) X-Google-Smtp-Source: AGRyM1s4PjmEWLmmn5rrZC1X6B9rzQv2+dXPSGD02/fY5uLcUEFW98u7VJEw/p9xjneNZePljk0q X-Received: by 2002:a05:6a00:996:b0:505:b6d2:abc8 with SMTP id u22-20020a056a00099600b00505b6d2abc8mr13533581pfg.11.1656319274688; Mon, 27 Jun 2022 01:41:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656319274; cv=none; d=google.com; s=arc-20160816; b=Wit68NZVPJwMnCyBXG66XjQDSHfv4W+zRFnkae0edup1qnLkxxJ5UB/NrMUWVvcuTT /8iMpl3PkTpge3hmLVqE3Qldxjud/qnoyZDcsPPv9ZEjUVGIOIUaqkEjzgasC/DFD/Y6 zKyQ9oDiBjc9HLPT24IfWXmNKR5l0zW9rq4g/UZ6T5avCqJ4XMg0RdEhfN0ZDo0Pp+S4 earsECbX91lCwGlZqKuVVCM2a5XokzWwCJuc90lcCdlqnxz3Sdv34YEo3RVCOtBrlj9v IGzkZ9juHBeDjp+JW2Xf/ftXLYPlCPTceoIlvvSeD7BE1mgGHWtC9RLZ5AqALV7ZonM5 R+mw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:organization :mime-version:message-id:date:subject:cc:to:from:dkim-signature; bh=vMMt/3J4vTXr7r2QjKVGlfQ8qqwlCBCii3Sloik1qcE=; b=CUK9A5RZbsfV6MeIn3YbFelgdQXJ/yRA1sg3RdGbXIcJnc1XK2OEZcruF8lRWd5HJb bSG8+UJdny+YAdkrv1SRwEhDcBnlS2qb0gXlUw5MUGUrTMsIyII2WXXdoZdU83UqLvxI 9wBaEGJ5FEHU2HxEX0E5J+MTiFfG8PBfK8m15t02hN94QGAf+nznwWzc7LQc6xK+FSJy KMXTcBm4j1chMYmrzc1VhwzFqFDT8jZKWqjF1/u8hwq/OpnpyGypognofwmQeslLqWXy MsCSEHm795FRYOg7yzJN3GbowPa321a8xQaSpg3Yr5OybCP8YFBm1GIL03LX+FNsvX3E guBQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="nm/5UBuz"; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s11-20020a170902a50b00b00158f777bbbfsi12695791plq.559.2022.06.27.01.40.51; Mon, 27 Jun 2022 01:41:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="nm/5UBuz"; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232413AbiF0IhD (ORCPT + 99 others); Mon, 27 Jun 2022 04:37:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34666 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230096AbiF0IhC (ORCPT ); Mon, 27 Jun 2022 04:37:02 -0400 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EB9FE62D7 for ; Mon, 27 Jun 2022 01:37:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1656319021; x=1687855021; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=71QXNitUJf8VGQSG8HobloIOpiD0NWxSgI8d4UZNpjI=; b=nm/5UBuzFEZtUsZ0zqEDz95qT+Uar/BwCOxoGjXdR7p3EggeCaZ465ZN PLJA3PcY49xAU75wqRC3hbU2BWgMEEpHWnqv0OQrrpb1tJHtL2Z5JDzq1 JRn5dWijt8uWG5rvpseN0l9wgBtDifnyshws4JUjEA2Y00hM5o9PHxLHc OobPDxceT1TvN0r9Kfmpjs4egxNhX89kImc6DTKxnDd/d5Yu9VhJ7EhEY 0h/i13Dn8BFnsU9PHqpwDiyfF/ncHIoKniC27Pna0fk3zKlm7wsNiEpZg pi8JK3KbZF1mH6vGKyFuXJXYliw89YkJKGP7jusjsk4II35M2nEcWi4c2 g==; X-IronPort-AV: E=McAfee;i="6400,9594,10390"; a="282488913" X-IronPort-AV: E=Sophos;i="5.92,225,1650956400"; d="scan'208";a="282488913" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jun 2022 01:37:00 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,225,1650956400"; d="scan'208";a="657595503" Received: from silpixa00400314.ir.intel.com (HELO silpixa00400314.ger.corp.intel.com) ([10.237.222.76]) by fmsmga004.fm.intel.com with ESMTP; 27 Jun 2022 01:36:58 -0700 From: Giovanni Cabiddu To: herbert@gondor.apana.org.au Cc: linux-crypto@vger.kernel.org, qat-linux@intel.com, Vlad Dronov , Giovanni Cabiddu Subject: [PATCH v2 0/4] crypto: qat - enable configuration for 4xxx Date: Mon, 27 Jun 2022 09:36:48 +0100 Message-Id: <20220627083652.880303-1-giovanni.cabiddu@intel.com> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 Organization: Intel Research and Development Ireland Ltd - Co. Reg. #308263 - Collinstown Industrial Park, Leixlip, County Kildare - Ireland Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org qat_4xxx devices can be configured to allow either crypto or compression operations. By default, devices are configured statically according to following rule: - odd numbered devices assigned to compression services - even numbered devices assigned to crypto services This set exposes two attributes in sysfs that allow to report and change the state and the configuration of a QAT 4xxx device. The first, /sys/bus/pci/devices//qat/state, allows to bring a device down in order to change the configuration, and bring it up again. The second, /sys/bus/pci/devices//qat/cfg_services, allows to inspect the current configuration of a device (i.e. crypto or compression) and change it. # cat /sys/bus/pci/devices//qat/state up # cat /sys/bus/pci/devices//qat/cfg_services sym;asym # echo down > /sys/bus/pci/devices//qat/state # echo dc > /sys/bus/pci/devices//qat/cfg_services # echo up > /sys/bus/pci/devices//qat/state # cat /sys/bus/pci/devices//qat/state dc Changes from v1: - Updated target kernel version in documentation (from 5.19 to 5.20). - Fixed commit message in patch #1 and updated documentation in patch #4 after review from Vladis Dronov. Giovanni Cabiddu (4): crypto: qat - expose device state through sysfs for 4xxx crypto: qat - change behaviour of adf_cfg_add_key_value_param() crypto: qat - relocate and rename adf_sriov_prepare_restart() crypto: qat - expose device config through sysfs for 4xxx Documentation/ABI/testing/sysfs-driver-qat | 61 ++++++ .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.c | 1 + .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.h | 1 + drivers/crypto/qat/qat_4xxx/adf_drv.c | 6 +- drivers/crypto/qat/qat_common/Makefile | 1 + .../crypto/qat/qat_common/adf_accel_devices.h | 1 + drivers/crypto/qat/qat_common/adf_cfg.c | 41 +++- .../crypto/qat/qat_common/adf_common_drv.h | 3 + drivers/crypto/qat/qat_common/adf_init.c | 26 +++ drivers/crypto/qat/qat_common/adf_sriov.c | 28 +-- drivers/crypto/qat/qat_common/adf_sysfs.c | 191 ++++++++++++++++++ 11 files changed, 331 insertions(+), 29 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-driver-qat create mode 100644 drivers/crypto/qat/qat_common/adf_sysfs.c -- 2.36.1