Received: by 2002:a25:ca44:0:0:0:0:0 with SMTP id a65csp1888107ybg; Thu, 30 Jul 2020 05:29:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx9FPTvggsuCzXcdgpAYMibPrZb4YwfBbFmiWPX/NleYsy28xEnqiNjXvB0w0WOhC+INorr X-Received: by 2002:aa7:d387:: with SMTP id x7mr2395814edq.219.1596112144074; Thu, 30 Jul 2020 05:29:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596112144; cv=none; d=google.com; s=arc-20160816; b=YDR4ztSAvtT93KdOcZHaRE4TwkpfJGvmeeOV8sWCdKhX0IW+86n6s/nFNWzOgU+Yku LJ51USiP+LQIAk68ADSv/d4pV30dEGjIzRZerlm8jVN7P7ikxiG1te8DQJeBW2RsJ6fW 8ncKZObdLqxRERDg0re0HbWWNhivep5w+Q2i4ZM3W3FNug7Nbm6Ci9JJII9Is2GL3iZJ X6O238YfPqf26MF3lhEA0/6Xi6IEokeogUMApYkervHYlCRYp1e5ftT3OUFj68XR0WD1 Zf4kcLUy5m5M3+fJDoQbhTmKVRzHNGnAqZGsDM6fzel9mzTqGpc59lwe8JDU2LResHdE PM/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:ironport-sdr:ironport-sdr; bh=JGnQompHZ91c1xtFCd8o+aXtjSYsh2ulL3q7OZVQEXA=; b=jHFcRi8RMBR2HgZLvHUPRh2fbWSrqSqUfuqXrn2yfNU+pSxGNjrhHdyMCD2j2GYlHa sN17u0M4f0tIYrhyfjSKbhcPYV/iRghq0S4eaPheJJ3Dy8lKMjAj6bGFBgoncdv4yx/g NgUygxljCRAZziv3cOyffxRWJXMkhTz1beAg1ID8qT97ceZzABzuavPEIy4e3CVEFx6r CZsv7I0nVJfH41xfNg3bvSb1iC0p6NyqTOWUOELiidMJMjee0mF1NcNz60ORpbxcW47H p5OSTQgCnupYRO/5AvV5Ncyzm7mar6la2LEf6GRVCwB8QXca3RZyj7fifbfG+IYJeu/6 X44g== 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 lo6si2809816ejb.584.2020.07.30.05.28.29; Thu, 30 Jul 2020 05:29:04 -0700 (PDT) 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 S1726631AbgG3M2K (ORCPT + 99 others); Thu, 30 Jul 2020 08:28:10 -0400 Received: from mga12.intel.com ([192.55.52.136]:18766 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726615AbgG3M2J (ORCPT ); Thu, 30 Jul 2020 08:28:09 -0400 IronPort-SDR: tipnjiX28NsBeT5hYv0TcCpnd7amAXR+WhYngICPKer3yR18vKazCChSyM6X3eFU5prUrfXo1K S8xUdz6U/BeA== X-IronPort-AV: E=McAfee;i="6000,8403,9697"; a="131144071" X-IronPort-AV: E=Sophos;i="5.75,414,1589266800"; d="scan'208";a="131144071" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jul 2020 05:28:09 -0700 IronPort-SDR: Yqml/qFxzpsSC8f9AXGqHo0F8GQ09AcI+3pdJ8PbkqTN5pTsJNx9G+mk32oHtY8c5eluh1w34d w1sh8PoBHlwg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,414,1589266800"; d="scan'208";a="286843312" Received: from silpixa00400314.ir.intel.com (HELO silpixa00400314.ger.corp.intel.com) ([10.237.222.51]) by orsmga003.jf.intel.com with ESMTP; 30 Jul 2020 05:28:08 -0700 From: Giovanni Cabiddu To: herbert@gondor.apana.org.au Cc: linux-crypto@vger.kernel.org, qat-linux@intel.com, Giovanni Cabiddu Subject: [PATCH] crypto: qat - add delay before polling mailbox Date: Thu, 30 Jul 2020 13:27:42 +0100 Message-Id: <20200730122742.216566-1-giovanni.cabiddu@intel.com> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org The mailbox CSR register has a write latency and requires a delay before being read. This patch replaces readl_poll_timeout with read_poll_timeout that allows to sleep before read. The initial sleep was removed when the mailbox poll loop was replaced with readl_poll_timeout. Fixes: a79d471c6510 ("crypto: qat - update timeout logic in put admin msg") Signed-off-by: Giovanni Cabiddu --- drivers/crypto/qat/qat_common/adf_admin.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/crypto/qat/qat_common/adf_admin.c b/drivers/crypto/qat/qat_common/adf_admin.c index 1c8ca151a963..ec9b390276d6 100644 --- a/drivers/crypto/qat/qat_common/adf_admin.c +++ b/drivers/crypto/qat/qat_common/adf_admin.c @@ -131,9 +131,10 @@ static int adf_put_admin_msg_sync(struct adf_accel_dev *accel_dev, u32 ae, memcpy(admin->virt_addr + offset, in, ADF_ADMINMSG_LEN); ADF_CSR_WR(mailbox, mb_offset, 1); - ret = readl_poll_timeout(mailbox + mb_offset, status, - status == 0, ADF_ADMIN_POLL_DELAY_US, - ADF_ADMIN_POLL_TIMEOUT_US); + ret = read_poll_timeout(ADF_CSR_RD, status, status == 0, + ADF_ADMIN_POLL_DELAY_US, + ADF_ADMIN_POLL_TIMEOUT_US, true, + mailbox, mb_offset); if (ret < 0) { /* Response timeout */ dev_err(&GET_DEV(accel_dev), -- 2.26.2