diff mbox

[OpenWrt-Devel,v2] kernel: crypto: add fsl CAAM package

Message ID 1454961133-7162-1-git-send-email-psidhu@gateworks.com
State Accepted
Headers show

Commit Message

Pushpal Sidhu Feb. 8, 2016, 7:52 p.m. UTC
Kernel package enables the Freescale CAAM (crypto accelerator and assurance
module, aka SEC4). Sets kernel defaults for ringsize, intc, and debug.

Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>
---
v2 changes:
 - Move package location up before crypto-hw-talitos for alphabetical reasons
 - added TARGET_mpc85xx to depends list
 - renamed package from crypto-fsl-caam to crypto-hw-caam

 package/kernel/linux/modules/crypto.mk | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

Comments

John Crispin Feb. 12, 2016, 8:09 a.m. UTC | #1
On 08/02/2016 20:52, Pushpal Sidhu wrote:
> Kernel package enables the Freescale CAAM (crypto accelerator and assurance
> module, aka SEC4). Sets kernel defaults for ringsize, intc, and debug.
> 
> Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>
> ---
> v2 changes:
>  - Move package location up before crypto-hw-talitos for alphabetical reasons
>  - added TARGET_mpc85xx to depends list
>  - renamed package from crypto-fsl-caam to crypto-hw-caam
> 
>  package/kernel/linux/modules/crypto.mk | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
> 
> diff --git a/package/kernel/linux/modules/crypto.mk b/package/kernel/linux/modules/crypto.mk
> index a47a1b6..ce3191f 100644
> --- a/package/kernel/linux/modules/crypto.mk
> +++ b/package/kernel/linux/modules/crypto.mk
> @@ -145,6 +145,32 @@ endef
>  $(eval $(call KernelPackage,crypto-seqiv))
>  
>  
> +define KernelPackage/crypto-hw-caam
> +  TITLE:=Freescale CAAM driver (SEC4)
> +  DEPENDS:=@TARGET_imx6||TARGET_mpc85xx +kmod-crypto-aead +kmod-crypto-authenc +kmod-crypto-hash +kmod-random-core
> +  KCONFIG:= \
> +	CONFIG_CRYPTO_HW=y \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_JR \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 \
> +	CONFIG_CRYPTO_DEV_FSL_CAAM_INTC=n \

i assume these are the irqs, why are they turned of ? it seems odd.

	John




> +	CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG=n
> +  FILES:= \
> +	$(LINUX_DIR)/drivers/crypto/caam/caam.ko \
> +	$(LINUX_DIR)/drivers/crypto/caam/caamalg.ko \
> +	$(LINUX_DIR)/drivers/crypto/caam/caamhash.ko \
> +	$(LINUX_DIR)/drivers/crypto/caam/caam_jr.ko \
> +	$(LINUX_DIR)/drivers/crypto/caam/caamrng.ko
> +  AUTOLOAD:=$(call AutoLoad,09,caam caamalg caamhash caam_jr caamrng)
> +  $(call AddDepends/crypto)
> +endef
> +
> +$(eval $(call KernelPackage,crypto-hw-caam))
> +
> +
>  define KernelPackage/crypto-hw-talitos
>    TITLE:=Freescale integrated security engine (SEC) driver
>    DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc
>
Pushpal Sidhu Feb. 12, 2016, 5:14 p.m. UTC | #2
John,

On Fri, Feb 12, 2016 at 12:09 AM, John Crispin <blogic@openwrt.org> wrote:
>
>
>
> On 08/02/2016 20:52, Pushpal Sidhu wrote:
> > Kernel package enables the Freescale CAAM (crypto accelerator and assurance
> > module, aka SEC4). Sets kernel defaults for ringsize, intc, and debug.
> >
> > Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>
> > ---
> > v2 changes:
> >  - Move package location up before crypto-hw-talitos for alphabetical reasons
> >  - added TARGET_mpc85xx to depends list
> >  - renamed package from crypto-fsl-caam to crypto-hw-caam
> >
> >  package/kernel/linux/modules/crypto.mk | 26 ++++++++++++++++++++++++++
> >  1 file changed, 26 insertions(+)
> >
> > diff --git a/package/kernel/linux/modules/crypto.mk b/package/kernel/linux/modules/crypto.mk
> > index a47a1b6..ce3191f 100644
> > --- a/package/kernel/linux/modules/crypto.mk
> > +++ b/package/kernel/linux/modules/crypto.mk
> > @@ -145,6 +145,32 @@ endef
> >  $(eval $(call KernelPackage,crypto-seqiv))
> >
> >
> > +define KernelPackage/crypto-hw-caam
> > +  TITLE:=Freescale CAAM driver (SEC4)
> > +  DEPENDS:=@TARGET_imx6||TARGET_mpc85xx +kmod-crypto-aead +kmod-crypto-authenc +kmod-crypto-hash +kmod-random-core
> > +  KCONFIG:= \
> > +     CONFIG_CRYPTO_HW=y \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_JR \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 \
> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_INTC=n \
>
> i assume these are the irqs, why are they turned of ? it seems odd.
>
>         John

No, the INTC is specifically "Interrupt Coalescing" for the job ring.
A note in the Kconfig states this:

 Note: the driver already provides adequate
          interrupt coalescing in software.

I assume this is why it's defaulted to 'N'.

- Pushpal

> > +     CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG=n
> > +  FILES:= \
> > +     $(LINUX_DIR)/drivers/crypto/caam/caam.ko \
> > +     $(LINUX_DIR)/drivers/crypto/caam/caamalg.ko \
> > +     $(LINUX_DIR)/drivers/crypto/caam/caamhash.ko \
> > +     $(LINUX_DIR)/drivers/crypto/caam/caam_jr.ko \
> > +     $(LINUX_DIR)/drivers/crypto/caam/caamrng.ko
> > +  AUTOLOAD:=$(call AutoLoad,09,caam caamalg caamhash caam_jr caamrng)
> > +  $(call AddDepends/crypto)
> > +endef
> > +
> > +$(eval $(call KernelPackage,crypto-hw-caam))
> > +
> > +
> >  define KernelPackage/crypto-hw-talitos
> >    TITLE:=Freescale integrated security engine (SEC) driver
> >    DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc
> >
diff mbox

Patch

diff --git a/package/kernel/linux/modules/crypto.mk b/package/kernel/linux/modules/crypto.mk
index a47a1b6..ce3191f 100644
--- a/package/kernel/linux/modules/crypto.mk
+++ b/package/kernel/linux/modules/crypto.mk
@@ -145,6 +145,32 @@  endef
 $(eval $(call KernelPackage,crypto-seqiv))
 
 
+define KernelPackage/crypto-hw-caam
+  TITLE:=Freescale CAAM driver (SEC4)
+  DEPENDS:=@TARGET_imx6||TARGET_mpc85xx +kmod-crypto-aead +kmod-crypto-authenc +kmod-crypto-hash +kmod-random-core
+  KCONFIG:= \
+	CONFIG_CRYPTO_HW=y \
+	CONFIG_CRYPTO_DEV_FSL_CAAM \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_JR \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_INTC=n \
+	CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG=n
+  FILES:= \
+	$(LINUX_DIR)/drivers/crypto/caam/caam.ko \
+	$(LINUX_DIR)/drivers/crypto/caam/caamalg.ko \
+	$(LINUX_DIR)/drivers/crypto/caam/caamhash.ko \
+	$(LINUX_DIR)/drivers/crypto/caam/caam_jr.ko \
+	$(LINUX_DIR)/drivers/crypto/caam/caamrng.ko
+  AUTOLOAD:=$(call AutoLoad,09,caam caamalg caamhash caam_jr caamrng)
+  $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-hw-caam))
+
+
 define KernelPackage/crypto-hw-talitos
   TITLE:=Freescale integrated security engine (SEC) driver
   DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc