From: Andrey Smirnov <andrew.smirnov@gmail.com>
To: linux-crypto@vger.kernel.org
Cc: "Andrey Smirnov" <andrew.smirnov@gmail.com>,
"Chris Spencer" <christopher.spencer@sea.co.uk>,
"Cory Tusar" <cory.tusar@zii.aero>,
"Chris Healy" <cphealy@gmail.com>,
"Lucas Stach" <l.stach@pengutronix.de>,
"Horia Geantă" <horia.geanta@nxp.com>,
"Aymen Sghaier" <aymen.sghaier@nxp.com>,
"Leonard Crestez" <leonard.crestez@nxp.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH v8 00/16] crypto: caam - Add i.MX8MQ support
Date: Tue, 20 Aug 2019 13:23:46 -0700 [thread overview]
Message-ID: <20190820202402.24951-1-andrew.smirnov@gmail.com> (raw)
Everyone:
Picking up where Chris left off (I chatted with him privately
beforehead), this series adds support for i.MX8MQ to CAAM driver. Just
like [v1], this series is i.MX8MQ only.
Feedback is welcome!
Thanks,
Andrey Smirnov
Changes since [v7]:
- Series rebase on latest cryptodev-2.6 (198429631a85)
- "crypto: caam - force DMA address to 32-bit on 64-bit i.MX SoCs"
converted to use CTPR and MCFGR to determine CAAM pointer width
and renamed to "crypto: caam - select DMA address size at runtime"
- Patch adding corresponding DT node added to the series
Changes since [v6]:
- Fixed build problems in "crypto: caam - make CAAM_PTR_SZ dynamic"
- Collected Reviewied-by from Horia
- "crypto: caam - force DMA address to 32-bit on 64-bit i.MX SoCs"
is changed to check 'caam_ptr_sz' instead of using 'caam_imx'
- Incorporated feedback for "crypto: caam - request JR IRQ as the
last step" and "crypto: caam - simplfy clock initialization"
Changes since [v5]:
- Hunk replacing sizeof(*jrp->inpring) to SIZEOF_JR_INPENTRY in
"crypto: caam - don't hardcode inpentry size", lost in [v5], is
back
- Collected Tested-by from Iuliana
Changes since [v4]:
- Fixed missing sentinel element in "crypto: caam - simplfy clock
initialization"
- Squashed all of the devers related patches into a single one and
converted IRQ allocation to use devres while at it
- Added "crypto: caam - request JR IRQ as the last step" as
discussed
Changes since [v3]:
- Patchset changed to select DMA size at runtime in order to enable
support for both i.MX8MQ and Layerscape at the same time. I only
tested the patches on i.MX6,7 and 8MQ, since I don't have access
to any of the Layerscape HW. Any help in that regard would be
appareciated.
- Bulk clocks and their number are now stored as a part of struct
caam_drv_private to simplify allocation and cleanup code (no
special context needed)
- Renamed 'soc_attr' -> 'imx_soc_match' for clarity
Changes since [v2]:
- Dropped "crypto: caam - do not initialise clocks on the i.MX8" and
replaced it with "crypto: caam - simplfy clock initialization" and
"crypto: caam - add clock entry for i.MX8MQ"
Changes since [v1]
- Series reworked to continue using register based interface for
queueing RNG initialization job, dropping "crypto: caam - use job
ring for RNG instantiation instead of DECO"
- Added a patch to share DMA mask selection code
- Added missing Signed-off-by for authors of original NXP tree
commits that this sereis is based on
[v7] lore.kernel.org/r/20190812200739.30389-1-andrew.smirnov@gmail.com
[v6] lore.kernel.org/r/20190717152458.22337-1-andrew.smirnov@gmail.com
[v5] lore.kernel.org/r/20190715201942.17309-1-andrew.smirnov@gmail.com
[v4] lore.kernel.org/r/20190703081327.17505-1-andrew.smirnov@gmail.com
[v3] lore.kernel.org/r/20190617160339.29179-1-andrew.smirnov@gmail.com
[v2] lore.kernel.org/r/20190607200225.21419-1-andrew.smirnov@gmail.com
[v1] https://patchwork.kernel.org/cover/10825625/
Andrey Smirnov (16):
crypto: caam - move DMA mask selection into a function
crypto: caam - simplfy clock initialization
crypto: caam - convert caam_jr_init() to use devres
crypto: caam - request JR IRQ as the last step
crytpo: caam - make use of iowrite64*_hi_lo in wr_reg64
crypto: caam - use ioread64*_hi_lo in rd_reg64
crypto: caam - drop 64-bit only wr/rd_reg64()
crypto: caam - share definition for MAX_SDLEN
crypto: caam - make CAAM_PTR_SZ dynamic
crypto: caam - move cpu_to_caam_dma() selection to runtime
crypto: caam - drop explicit usage of struct jr_outentry
crypto: caam - don't hardcode inpentry size
crypto: caam - select DMA address size at runtime
crypto: caam - always select job ring via RSR on i.MX8MQ
crypto: caam - add clock entry for i.MX8MQ
arm64: dts: imx8mq: Add CAAM node
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 30 +++
drivers/crypto/caam/caamalg.c | 2 +-
drivers/crypto/caam/caamalg_qi2.h | 27 ---
drivers/crypto/caam/caamhash.c | 2 +-
drivers/crypto/caam/caampkc.c | 8 +-
drivers/crypto/caam/caamrng.c | 2 +-
drivers/crypto/caam/ctrl.c | 221 ++++++++++------------
drivers/crypto/caam/desc_constr.h | 47 ++++-
drivers/crypto/caam/error.c | 3 +
drivers/crypto/caam/intern.h | 32 +++-
drivers/crypto/caam/jr.c | 93 +++------
drivers/crypto/caam/pdb.h | 16 +-
drivers/crypto/caam/pkc_desc.c | 8 +-
drivers/crypto/caam/qi.h | 26 ---
drivers/crypto/caam/regs.h | 140 ++++++++++----
15 files changed, 359 insertions(+), 298 deletions(-)
--
2.21.0
next reply other threads:[~2019-08-20 20:24 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-20 20:23 Andrey Smirnov [this message]
2019-08-20 20:23 ` [PATCH v8 01/16] crypto: caam - move DMA mask selection into a function Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 02/16] crypto: caam - simplfy clock initialization Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 03/16] crypto: caam - convert caam_jr_init() to use devres Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 04/16] crypto: caam - request JR IRQ as the last step Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 05/16] crytpo: caam - make use of iowrite64*_hi_lo in wr_reg64 Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 06/16] crypto: caam - use ioread64*_hi_lo in rd_reg64 Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 07/16] crypto: caam - drop 64-bit only wr/rd_reg64() Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 08/16] crypto: caam - share definition for MAX_SDLEN Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 09/16] crypto: caam - make CAAM_PTR_SZ dynamic Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 10/16] crypto: caam - move cpu_to_caam_dma() selection to runtime Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 11/16] crypto: caam - drop explicit usage of struct jr_outentry Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 12/16] crypto: caam - don't hardcode inpentry size Andrey Smirnov
2019-08-20 20:23 ` [PATCH v8 13/16] crypto: caam - select DMA address size at runtime Andrey Smirnov
2019-08-20 20:29 ` Andrey Smirnov
2019-08-20 20:24 ` [PATCH v8 14/16] crypto: caam - always select job ring via RSR on i.MX8MQ Andrey Smirnov
2019-08-20 20:24 ` [PATCH v8 15/16] crypto: caam - add clock entry for i.MX8MQ Andrey Smirnov
2019-08-20 20:24 ` [PATCH v8 16/16] arm64: dts: imx8mq: Add CAAM node Andrey Smirnov
2019-08-26 8:38 ` [PATCH v8 00/16] crypto: caam - Add i.MX8MQ support Iuliana Prodan
2019-08-30 8:23 ` Herbert Xu
2019-08-30 9:15 ` Iuliana Prodan
2019-08-30 13:15 ` Herbert Xu
2019-08-30 13:35 ` Iuliana Prodan
2019-08-30 20:36 ` Andrey Smirnov
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=20190820202402.24951-1-andrew.smirnov@gmail.com \
--to=andrew.smirnov@gmail.com \
--cc=aymen.sghaier@nxp.com \
--cc=christopher.spencer@sea.co.uk \
--cc=cory.tusar@zii.aero \
--cc=cphealy@gmail.com \
--cc=horia.geanta@nxp.com \
--cc=l.stach@pengutronix.de \
--cc=leonard.crestez@nxp.com \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).