]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - drivers/crypto/caam/Kconfig
brcm: adds support for BCM43341 wifi
[mirror_ubuntu-zesty-kernel.git] / drivers / crypto / caam / Kconfig
CommitLineData
8e8ec596
KP
1config CRYPTO_DEV_FSL_CAAM
2 tristate "Freescale CAAM-Multicore driver backend"
9e217795 3 depends on FSL_SOC || ARCH_MXC || ARCH_LAYERSCAPE
8e8ec596
KP
4 help
5 Enables the driver module for Freescale's Cryptographic Accelerator
6 and Assurance Module (CAAM), also known as the SEC version 4 (SEC4).
313ea293 7 This module creates job ring devices, and configures h/w
8e8ec596
KP
8 to operate as a DPAA component automatically, depending
9 on h/w feature availability.
10
11 To compile this driver as a module, choose M here: the module
12 will be called caam.
13
313ea293
RG
14config CRYPTO_DEV_FSL_CAAM_JR
15 tristate "Freescale CAAM Job Ring driver backend"
16 depends on CRYPTO_DEV_FSL_CAAM
17 default y
18 help
19 Enables the driver module for Job Rings which are part of
20 Freescale's Cryptographic Accelerator
21 and Assurance Module (CAAM). This module adds a job ring operation
22 interface.
23
24 To compile this driver as a module, choose M here: the module
25 will be called caam_jr.
26
8e8ec596
KP
27config CRYPTO_DEV_FSL_CAAM_RINGSIZE
28 int "Job Ring size"
313ea293 29 depends on CRYPTO_DEV_FSL_CAAM_JR
8e8ec596
KP
30 range 2 9
31 default "9"
32 help
33 Select size of Job Rings as a power of 2, within the
34 range 2-9 (ring size 4-512).
35 Examples:
36 2 => 4
37 3 => 8
38 4 => 16
39 5 => 32
40 6 => 64
41 7 => 128
42 8 => 256
43 9 => 512
44
45config CRYPTO_DEV_FSL_CAAM_INTC
46 bool "Job Ring interrupt coalescing"
313ea293 47 depends on CRYPTO_DEV_FSL_CAAM_JR
8e8ec596
KP
48 help
49 Enable the Job Ring's interrupt coalescing feature.
50
1a076689
KP
51 Note: the driver already provides adequate
52 interrupt coalescing in software.
53
8e8ec596
KP
54config CRYPTO_DEV_FSL_CAAM_INTC_COUNT_THLD
55 int "Job Ring interrupt coalescing count threshold"
56 depends on CRYPTO_DEV_FSL_CAAM_INTC
57 range 1 255
58 default 255
59 help
60 Select number of descriptor completions to queue before
61 raising an interrupt, in the range 1-255. Note that a selection
62 of 1 functionally defeats the coalescing feature, and a selection
63 equal or greater than the job ring size will force timeouts.
64
65config CRYPTO_DEV_FSL_CAAM_INTC_TIME_THLD
66 int "Job Ring interrupt coalescing timer threshold"
67 depends on CRYPTO_DEV_FSL_CAAM_INTC
68 range 1 65535
69 default 2048
70 help
71 Select number of bus clocks/64 to timeout in the case that one or
72 more descriptor completions are queued without reaching the count
73 threshold. Range is 1-65535.
74
75config CRYPTO_DEV_FSL_CAAM_CRYPTO_API
76 tristate "Register algorithm implementations with the Crypto API"
746f0690 77 depends on CRYPTO_DEV_FSL_CAAM_JR
8e8ec596 78 default y
596103cf 79 select CRYPTO_AEAD
8e8ec596 80 select CRYPTO_AUTHENC
596103cf 81 select CRYPTO_BLKCIPHER
8e8ec596
KP
82 help
83 Selecting this will offload crypto for users of the
84 scatterlist crypto API (such as the linux native IPSec
85 stack) to the SEC4 via job ring.
86
87 To compile this as a module, choose M here: the module
88 will be called caamalg.
045e3678
YK
89
90config CRYPTO_DEV_FSL_CAAM_AHASH_API
91 tristate "Register hash algorithm implementations with Crypto API"
746f0690 92 depends on CRYPTO_DEV_FSL_CAAM_JR
045e3678 93 default y
ae8488a5 94 select CRYPTO_HASH
045e3678
YK
95 help
96 Selecting this will offload ahash for users of the
97 scatterlist crypto API to the SEC4 via job ring.
98
99 To compile this as a module, choose M here: the module
100 will be called caamhash.
e24f7c9e 101
8c419778
TA
102config CRYPTO_DEV_FSL_CAAM_PKC_API
103 tristate "Register public key cryptography implementations with Crypto API"
746f0690 104 depends on CRYPTO_DEV_FSL_CAAM_JR
8c419778
TA
105 default y
106 select CRYPTO_RSA
107 help
108 Selecting this will allow SEC Public key support for RSA.
109 Supported cryptographic primitives: encryption, decryption,
110 signature and verification.
111 To compile this as a module, choose M here: the module
112 will be called caam_pkc.
113
e24f7c9e
YK
114config CRYPTO_DEV_FSL_CAAM_RNG_API
115 tristate "Register caam device for hwrng API"
746f0690 116 depends on CRYPTO_DEV_FSL_CAAM_JR
e24f7c9e
YK
117 default y
118 select CRYPTO_RNG
119 select HW_RANDOM
120 help
121 Selecting this will register the SEC4 hardware rng to
122 the hw_random API for suppying the kernel entropy pool.
123
124 To compile this as a module, choose M here: the module
125 will be called caamrng.
d4d8edf8 126
6c3af955
HG
127config CRYPTO_DEV_FSL_CAAM_IMX
128 def_bool SOC_IMX6 || SOC_IMX7D
129 depends on CRYPTO_DEV_FSL_CAAM
130
d4d8edf8
AP
131config CRYPTO_DEV_FSL_CAAM_DEBUG
132 bool "Enable debug output in CAAM driver"
133 depends on CRYPTO_DEV_FSL_CAAM
d4d8edf8
AP
134 help
135 Selecting this will enable printing of various debug
136 information in the CAAM driver.
8cea7b66
HG
137
138config CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC
37d84681 139 def_tristate CRYPTO_DEV_FSL_CAAM_CRYPTO_API