mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ladvine D Almeida <Ladvine.DAlmeida@synopsys.com>
To: "Vinayak Holikatti <vinholikatti@gmail.com>; \"James E.J.
	Bottomley\" <jejb@linux.vnet.ibm.com>; \"Martin K. Petersen\""
	<martin.petersen@oracle.com>
Cc: <linux-kernel@vger.kernel.org>,
	"linux-scsi@vger.kernel.org;Manjunath M Bettegowda
	<manjumb@synopsys.com>; Prabu Thangamuthu <prabut@synopsys.com>;
	Tejas Joglekar <joglekar@synopsys.com>; Joao Pinto"
	<Joao.Pinto@synopsys.com>
Subject: [PATCH 0/5] scsi: ufs: UFS Host Controller crypto changes
Date: Mon, 28 May 2018 14:37:14 +0100	[thread overview]
Message-ID: <192fedba-4f7d-8230-2152-b618787fd934@synopsys.com> (raw)


This patch series enables the inline encryption capability of the
UFS Host Controller. The Inline Encryption feature got considerable
performance improvements over the SW algorithms and crypto accelarators
that the crypto transformation on 512 bytes chunks in the device mapper
layer can be avoided and bio can be submitted directly to the block device 
drivers which performs the encryption inline to hardware.

The UFS Host Controller driver detects the crypto capability in the HW
during the init stage and registers an algorithm to the Linux Kernel
Cryptography Framework(LKCF). The UFS HC has multiple key slots in
the hardware  for storing the keys, the crypto support manages these
key slots in hardware.

The Inline Encryption support also requires enhancements in the
block layer for associating the crypto information to the
individual block I/O requests. Separate patch is sent to the block layer
community for the same.

Configuration and usage of the Inline Encryption support for the
Disk Encryption requires minor enhancement in the DM-Crypt 
subsystem. The I/O requests are submitted directly with the
crypto information to the block level device drivers without
actually performing the transformation in this layer. Separate patch is
sent to the device mapper layer community for the same.

The feature is tested and performance comparisions are done with
Synopsys UFS Controller IP on Synopsys HAPS-70 FPGA-based Prototyping
solution.

Ladvine D Almeida (5):
  scsi: ufs: Add crypto source file for UFS HC driver
  scsi: ufs: Add crypto header file for UFS HC driver
  scsi: ufs: Add Kconfig for UFS HC driver crypto support
  scsi: ufs: Add crypto masks for UFS HC driver
  scsi: ufs: Add hooks in UFS HC driver for crypto support

 drivers/scsi/ufs/Kconfig         |  15 ++
 drivers/scsi/ufs/Makefile        |   6 +-
 drivers/scsi/ufs/ufshcd-crypto.c | 520 +++++++++++++++++++++++++++++++++++++++
 drivers/scsi/ufs/ufshcd-crypto.h | 156 ++++++++++++
 drivers/scsi/ufs/ufshcd.c        |  63 ++++-
 drivers/scsi/ufs/ufshcd.h        |  29 +++
 drivers/scsi/ufs/ufshci.h        |   2 +
 7 files changed, 784 insertions(+), 7 deletions(-)
 create mode 100644 drivers/scsi/ufs/ufshcd-crypto.c
 create mode 100644 drivers/scsi/ufs/ufshcd-crypto.h

-- 
2.7.4

                 reply	other threads:[~2018-05-28 13:37 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=192fedba-4f7d-8230-2152-b618787fd934@synopsys.com \
    --to=ladvine.dalmeida@synopsys.com \
    --cc=Joao.Pinto@synopsys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®