Re: [PATCH v7 04/14] crypto: add a new driver for Marvell's CESA
On Thu, Jun 18, 2015 at 03:46:20PM +0200, Boris Brezillon wrote: + dram = mv_mbus_dram_info_nooverlap(); This doesn't compile because it hasn't made it into mainline yet. I'm afraid this patch-set will have to wait until that happens. Cheers, -- Email: Herbert Xu herb...@gondor.apana.org.au Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line unsubscribe linux-crypto in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 00/14] crypto: add a new driver for Marvell's CESA
On Thu, Jun 18, 2015 at 03:46:16PM +0200, Boris Brezillon wrote: Hello, This patch series adds a new driver supporting Marvell's CESA IP. This driver addresses some limitations of the existing one. From a performance and CPU load point of view the most important limitation in the existing driver is the lack of DMA support, thus preventing us from chaining crypto operations. All applied to cryptodev. Thanks a lot! -- Email: Herbert Xu herb...@gondor.apana.org.au Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line unsubscribe linux-crypto in
[PATCH] arm: crypto: picoxcell: Update to the current clk API
The picoXcell hardware crypto accelerator driver was using an older version of the clk framework, and not (un)preparing the clock before enabling/disabling it. This change uses the handy clk_prepare_enable function to interact with the current clk framework correctly. Signed-off-by: Michael van der Westhuizen mich...@smart-africa.com --- drivers/crypto/picoxcell_crypto.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/crypto/picoxcell_crypto.c b/drivers/crypto/picoxcell_crypto.c index 5da5b98..c5a9e5d 100644 --- a/drivers/crypto/picoxcell_crypto.c +++ b/drivers/crypto/picoxcell_crypto.c @@ -1754,15 +1754,15 @@ static int spacc_probe(struct platform_device *pdev) return PTR_ERR(engine-clk); } - if (clk_enable(engine-clk)) { - dev_info(pdev-dev, unable to enable clk\n); + if (clk_prepare_enable(engine-clk)) { + dev_info(pdev-dev, unable to prepare/enable clk\n); clk_put(engine-clk); return -EIO; } err = device_create_file(pdev-dev, dev_attr_stat_irq_thresh); if (err) { - clk_disable(engine-clk); + clk_disable_unprepare(engine-clk); clk_put(engine-clk); return err; } @@ -1830,7 +1830,7 @@ static int spacc_remove(struct platform_device *pdev) crypto_unregister_alg(alg-alg); } - clk_disable(engine-clk); + clk_disable_unprepare(engine-clk); clk_put(engine-clk); return 0; -- 2.1.4 -- To unsubscribe from this list: send the line unsubscribe linux-crypto in
Re: [PATCH v7 04/14] crypto: add a new driver for Marvell's CESA
On Fri, Jun 19, 2015 at 10:40:15AM +0200, Gregory CLEMENT wrote: For this option you can use the branch mvebu/drivers located at git://git.infradead.org/linux-mvebu.git. In this branch there is the commit bus: mvebu-mbus: add mv_mbus_dram_info_nooverlap() but not only this one because it depends also on fixes which have been merged in this same branch. It looks like the parent of this changeset is already in the mainline so it's literally just a single patch. I'll try to pull it into cryptodev. Thanks, -- Email: Herbert Xu herb...@gondor.apana.org.au Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line unsubscribe linux-crypto in
Re: [PATCH] crypto: nx - add LE support to pSeries platform driver
On Thu, Jun 18, 2015 at 12:05:30PM -0400, Dan Streetman wrote: Add support to the nx-842-pseries.c driver for running in little endian mode. The pSeries platform NX 842 driver currently only works as big endian. This adds cpu_to_be*() and be*_to_cpu() in the appropriate places to work in LE mode also. Signed-off-by: Dan Streetman ddstr...@ieee.org Both patches applied. -- Email: Herbert Xu herb...@gondor.apana.org.au Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line unsubscribe linux-crypto in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 04/14] crypto: add a new driver for Marvell's CESA
Hi Thomas, Herbert, On 19/06/2015 10:24, Thomas Petazzoni wrote: Hello Herbert, On Fri, 19 Jun 2015 14:42:56 +0800, Herbert Xu wrote: On Thu, Jun 18, 2015 at 03:46:20PM +0200, Boris Brezillon wrote: + dram = mv_mbus_dram_info_nooverlap(); This doesn't compile because it hasn't made it into mainline yet. I'm afraid this patch-set will have to wait until that happens. We have two options here: 1/ We can ask the mach-mvebu maintainers to provide a branch with just the commit implementing mv_mbus_dram_info_nooverlap(), and you merge that branch into your tree as a dependency. For this option you can use the branch mvebu/drivers located at git://git.infradead.org/linux-mvebu.git. In this branch there is the commit bus: mvebu-mbus: add mv_mbus_dram_info_nooverlap() but not only this one because it depends also on fixes which have been merged in this same branch. This branch is immutable and have already been merged in arm-soc. Thanks, Gregory 2/ We temporarily revert back to using mv_mbus_dram_info(). For the vast majority of platforms, this is OK. It's only if you have 4 GB of RAM or more that it causes problem. And then we switch to mv_mbus_dram_info_nooverlap() as part of the -rc cycle. (2) is probably easier. Herbert, what do you think? Thomas -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- To unsubscribe from this list: send the line unsubscribe linux-crypto in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 04/14] crypto: add a new driver for Marvell's CESA
Hello Herbert, On Fri, 19 Jun 2015 14:42:56 +0800, Herbert Xu wrote: On Thu, Jun 18, 2015 at 03:46:20PM +0200, Boris Brezillon wrote: + dram = mv_mbus_dram_info_nooverlap(); This doesn't compile because it hasn't made it into mainline yet. I'm afraid this patch-set will have to wait until that happens. We have two options here: 1/ We can ask the mach-mvebu maintainers to provide a branch with just the commit implementing mv_mbus_dram_info_nooverlap(), and you merge that branch into your tree as a dependency. 2/ We temporarily revert back to using mv_mbus_dram_info(). For the vast majority of platforms, this is OK. It's only if you have 4 GB of RAM or more that it causes problem. And then we switch to mv_mbus_dram_info_nooverlap() as part of the -rc cycle. (2) is probably easier. Herbert, what do you think? Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com -- To unsubscribe from this list: send the line unsubscribe linux-crypto in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[cryptodev:master 269/278] drivers/crypto/marvell/cipher.c:298:60: sparse: incorrect type in argument 2 (different base types)
tree: git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master head: 2df6bb5d8b22bc06a6ea83e8b2a6bcf3bb445304 commit: db509a45339fd786de355b11db34ff7421488cb1 [269/278] crypto: marvell/cesa - add TDMA support reproduce: # apt-get install sparse git checkout db509a45339fd786de355b11db34ff7421488cb1 make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__ sparse warnings: (new ones prefixed by ) drivers/crypto/marvell/cipher.c:82:47: sparse: incorrect type in argument 3 (different address spaces) drivers/crypto/marvell/cipher.c:82:47:expected void *buf drivers/crypto/marvell/cipher.c:82:47:got void [noderef] asn:2* drivers/crypto/marvell/cesa.h:656:26: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:656:26:expected unsigned int [unsigned] [usertype] enc_len drivers/crypto/marvell/cesa.h:656:26:got restricted __le32 [usertype] noident drivers/crypto/marvell/cipher.c:90:17: sparse: incorrect type in argument 1 (different address spaces) drivers/crypto/marvell/cipher.c:90:17:expected void *to drivers/crypto/marvell/cipher.c:90:17:got void [noderef] asn:2*sram drivers/crypto/marvell/cipher.c:93:17: sparse: incorrect type in argument 1 (different address spaces) drivers/crypto/marvell/cipher.c:93:17:expected void *to drivers/crypto/marvell/cipher.c:93:17:got void [noderef] asn:2*sram drivers/crypto/marvell/cipher.c:110:49: sparse: incorrect type in argument 3 (different address spaces) drivers/crypto/marvell/cipher.c:110:49:expected void *buf drivers/crypto/marvell/cipher.c:110:49:got void [noderef] asn:2* drivers/crypto/marvell/cipher.c:137:9: sparse: incorrect type in argument 2 (different address spaces) drivers/crypto/marvell/cipher.c:137:9:expected void const *from drivers/crypto/marvell/cipher.c:137:9:got void [noderef] asn:2* drivers/crypto/marvell/cipher.c:235:41: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cipher.c:235:41:expected unsigned int [unsigned] noident drivers/crypto/marvell/cipher.c:235:41:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:656:26: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:656:26:expected unsigned int [unsigned] [usertype] enc_len drivers/crypto/marvell/cesa.h:656:26:got restricted __le32 [usertype] noident drivers/crypto/marvell/cipher.c:298:60: sparse: incorrect type in argument 2 (different base types) drivers/crypto/marvell/cipher.c:298:60:expected unsigned int [unsigned] [usertype] flags drivers/crypto/marvell/cipher.c:298:60:got restricted gfp_t [usertype] flags drivers/crypto/marvell/cesa.h:625:25: sparse: invalid assignment: = drivers/crypto/marvell/cesa.h:625:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:625:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:626:25: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:626:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:626:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:631:16: sparse: cast to restricted __le32 drivers/crypto/marvell/cipher.c:383:44: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cipher.c:383:44:expected unsigned int [unsigned] noident drivers/crypto/marvell/cipher.c:383:44:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:625:25: sparse: invalid assignment: = drivers/crypto/marvell/cesa.h:625:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:625:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:626:25: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:626:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:626:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:636:25: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:636:25:expected unsigned int [unsigned] [usertype] config drivers/crypto/marvell/cesa.h:636:25:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:636:25: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:636:25:expected unsigned int [unsigned] [usertype] config drivers/crypto/marvell/cesa.h:636:25:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:625:25: sparse: invalid assignment: = drivers/crypto/marvell/cesa.h:625:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:625:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:626:25: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:626:25:left
[cryptodev:master 272/278] drivers/crypto/marvell/hash.c:356:48: sparse: incorrect type in assignment (different base types)
tree: git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master head: 2df6bb5d8b22bc06a6ea83e8b2a6bcf3bb445304 commit: 7aeef693d18d359134f47bf7b6621ec303b570f9 [272/278] crypto: marvell/cesa - add MD5 support reproduce: # apt-get install sparse git checkout 7aeef693d18d359134f47bf7b6621ec303b570f9 make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__ sparse warnings: (new ones prefixed by ) drivers/crypto/marvell/hash.c:206:17: sparse: incorrect type in argument 1 (different address spaces) drivers/crypto/marvell/hash.c:206:17:expected void *to drivers/crypto/marvell/hash.c:206:17:got void [noderef] asn:2* drivers/crypto/marvell/hash.c:220:77: sparse: incorrect type in argument 3 (different address spaces) drivers/crypto/marvell/hash.c:220:77:expected void *buf drivers/crypto/marvell/hash.c:220:77:got void [noderef] asn:2* drivers/crypto/marvell/cesa.h:631:16: sparse: cast to restricted __le32 drivers/crypto/marvell/cesa.h:663:28: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:663:28:left side has type unsigned int drivers/crypto/marvell/cesa.h:663:28:right side has type restricted __le32 drivers/crypto/marvell/hash.c:248:33: sparse: incorrect type in argument 2 (different address spaces) drivers/crypto/marvell/hash.c:248:33:expected void const *from drivers/crypto/marvell/hash.c:248:33:got void [noderef] asn:2* drivers/crypto/marvell/hash.c:254:68: sparse: incorrect type in argument 2 (different address spaces) drivers/crypto/marvell/hash.c:254:68:expected unsigned char [usertype] *buf drivers/crypto/marvell/hash.c:254:68:got void [noderef] asn:2* drivers/crypto/marvell/cesa.h:670:29: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:670:29:left side has type unsigned int drivers/crypto/marvell/cesa.h:670:29:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:625:25: sparse: invalid assignment: = drivers/crypto/marvell/cesa.h:625:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:625:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:626:25: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:626:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:626:25:right side has type restricted __le32 drivers/crypto/marvell/hash.c:269:9: sparse: incorrect type in argument 1 (different address spaces) drivers/crypto/marvell/hash.c:269:9:expected void *to drivers/crypto/marvell/hash.c:269:9:got void [noderef] asn:2*sram drivers/crypto/marvell/cesa.h:625:25: sparse: invalid assignment: = drivers/crypto/marvell/cesa.h:625:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:625:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:626:25: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:626:25:left side has type unsigned int drivers/crypto/marvell/cesa.h:626:25:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:644:24: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:644:24:expected unsigned int [unsigned] [usertype] enc_p drivers/crypto/marvell/cesa.h:644:24:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:645:28: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:645:28:expected unsigned int [unsigned] [usertype] enc_key_p drivers/crypto/marvell/cesa.h:645:28:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:646:25: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:646:25:expected unsigned int [unsigned] [usertype] enc_iv drivers/crypto/marvell/cesa.h:646:25:got restricted __le32 [usertype] noident drivers/crypto/marvell/cesa.h:648:28: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:648:28:left side has type unsigned int drivers/crypto/marvell/cesa.h:648:28:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:650:29: sparse: invalid assignment: |= drivers/crypto/marvell/cesa.h:650:29:left side has type unsigned int drivers/crypto/marvell/cesa.h:650:29:right side has type restricted __le32 drivers/crypto/marvell/cesa.h:651:25: sparse: incorrect type in assignment (different base types) drivers/crypto/marvell/cesa.h:651:25:expected unsigned int [unsigned] [usertype] mac_iv drivers/crypto/marvell/cesa.h:651:25:got restricted __le32 [usertype] noident drivers/crypto/marvell/hash.c:309:9: sparse: incorrect type in argument 1 (different address spaces) drivers/crypto/marvell/hash.c:309:9:expected void *to drivers/crypto/marvell/hash.c:309:9:got void [noderef] asn:2*sram