lkml.org 
[lkml]   [2022]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 398/667] crypto: qat - set CIPHER capability for QAT GEN2
    Date
    From: Giovanni Cabiddu <giovanni.cabiddu@intel.com>

    [ Upstream commit 547bde7bd4ecd78f36f98744e6c9a0999e52da5a ]

    Set the CIPHER capability for QAT GEN2 devices if the hardware supports
    it. This is done if both the CIPHER and the AUTHENTICATION engines are
    available on the device.

    Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
    Signed-off-by: Marco Chiappero <marco.chiappero@intel.com>
    Reviewed-by: Fiona Trahe <fiona.trahe@intel.com>
    Reviewed-by: Marco Chiappero <marco.chiappero@intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/crypto/qat/qat_common/adf_gen2_hw_data.c | 12 +++++++++---
    1 file changed, 9 insertions(+), 3 deletions(-)

    diff --git a/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c b/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
    index 9e560c7d4163..9c5871e1752a 100644
    --- a/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
    +++ b/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
    @@ -161,17 +161,23 @@ u32 adf_gen2_get_accel_cap(struct adf_accel_dev *accel_dev)
    u32 legfuses;
    u32 capabilities = ICP_ACCEL_CAPABILITIES_CRYPTO_SYMMETRIC |
    ICP_ACCEL_CAPABILITIES_CRYPTO_ASYMMETRIC |
    - ICP_ACCEL_CAPABILITIES_AUTHENTICATION;
    + ICP_ACCEL_CAPABILITIES_AUTHENTICATION |
    + ICP_ACCEL_CAPABILITIES_CIPHER;

    /* Read accelerator capabilities mask */
    pci_read_config_dword(pdev, ADF_DEVICE_LEGFUSE_OFFSET, &legfuses);

    - if (legfuses & ICP_ACCEL_MASK_CIPHER_SLICE)
    + /* A set bit in legfuses means the feature is OFF in this SKU */
    + if (legfuses & ICP_ACCEL_MASK_CIPHER_SLICE) {
    capabilities &= ~ICP_ACCEL_CAPABILITIES_CRYPTO_SYMMETRIC;
    + capabilities &= ~ICP_ACCEL_CAPABILITIES_CIPHER;
    + }
    if (legfuses & ICP_ACCEL_MASK_PKE_SLICE)
    capabilities &= ~ICP_ACCEL_CAPABILITIES_CRYPTO_ASYMMETRIC;
    - if (legfuses & ICP_ACCEL_MASK_AUTH_SLICE)
    + if (legfuses & ICP_ACCEL_MASK_AUTH_SLICE) {
    capabilities &= ~ICP_ACCEL_CAPABILITIES_AUTHENTICATION;
    + capabilities &= ~ICP_ACCEL_CAPABILITIES_CIPHER;
    + }

    if ((straps | fuses) & ADF_POWERGATE_PKE)
    capabilities &= ~ICP_ACCEL_CAPABILITIES_CRYPTO_ASYMMETRIC;
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-06-07 21:37    [W:2.509 / U:1.208 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site