summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/bcm/cipher.h
diff options
context:
space:
mode:
authorraveendra padasalagi <raveendra.padasalagi@broadcom.com>2017-07-21 11:17:39 +0530
committerHerbert Xu <herbert@gondor.apana.org.au>2017-08-03 13:52:43 +0800
commit9166c44358346c0a92b11fd4e24925efff791648 (patch)
treeb11c3196a20500547a4f0ac05e56064fdd540273 /drivers/crypto/bcm/cipher.h
parent6d2bce6a15753710836f99054826d5ae638dd04a (diff)
downloadlinux-stable-9166c44358346c0a92b11fd4e24925efff791648.tar.gz
linux-stable-9166c44358346c0a92b11fd4e24925efff791648.tar.bz2
linux-stable-9166c44358346c0a92b11fd4e24925efff791648.zip
crypto: brcm - Support more FlexRM rings than SPU engines.
Enhance code to generically support cases where DMA rings are greater than or equal to number of SPU engines. New hardware has underlying DMA engine-FlexRM with 32 rings which can be used to communicate to any of the available 10 SPU engines. Signed-off-by: Raveendra Padasalagi <raveendra.padasalagi@broadcom.com> Reviewed-by: Scott Branden <scott.branden@broadcom.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/bcm/cipher.h')
-rw-r--r--drivers/crypto/bcm/cipher.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/crypto/bcm/cipher.h b/drivers/crypto/bcm/cipher.h
index 51dca529ce8f..57a55eb2a255 100644
--- a/drivers/crypto/bcm/cipher.h
+++ b/drivers/crypto/bcm/cipher.h
@@ -427,10 +427,13 @@ struct spu_hw {
/* The number of SPUs on this platform */
u32 num_spu;
+
+ /* The number of SPU channels on this platform */
+ u32 num_chan;
};
struct device_private {
- struct platform_device *pdev[MAX_SPUS];
+ struct platform_device *pdev;
struct spu_hw spu;
@@ -470,12 +473,10 @@ struct device_private {
/* Number of ICV check failures for AEAD messages */
atomic_t bad_icv;
- struct mbox_client mcl[MAX_SPUS];
- /* Array of mailbox channel pointers, one for each channel */
- struct mbox_chan *mbox[MAX_SPUS];
+ struct mbox_client mcl;
- /* Driver initialized */
- bool inited;
+ /* Array of mailbox channel pointers, one for each channel */
+ struct mbox_chan **mbox;
};
extern struct device_private iproc_priv;