Blame view

kernel/linux-imx6_3.14.28/drivers/crypto/caam/Kconfig 5.18 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
  config CRYPTO_DEV_FSL_CAAM
  	tristate "Freescale CAAM-Multicore driver backend"
  	depends on FSL_SOC || ARCH_MXC
  	help
  	  Enables the driver module for Freescale's Cryptographic Accelerator
  	  and Assurance Module (CAAM), also known as the SEC version 4 (SEC4).
  	  This module creates job ring devices, and configures h/w
  	  to operate as a DPAA component automatically, depending
  	  on h/w feature availability.
  
  	  To compile this driver as a module, choose M here: the module
  	  will be called caam.
  
  config CRYPTO_DEV_FSL_CAAM_JR
  	tristate "Freescale CAAM Job Ring driver backend"
  	depends on CRYPTO_DEV_FSL_CAAM
  	default y
  	help
  	  Enables the driver module for Job Rings which are part of
  	  Freescale's Cryptographic Accelerator
  	  and Assurance Module (CAAM). This module adds a job ring operation
  	  interface.
  
  	  To compile this driver as a module, choose M here: the module
  	  will be called caam_jr.
  
  config CRYPTO_DEV_FSL_CAAM_RINGSIZE
  	int "Job Ring size"
  	depends on CRYPTO_DEV_FSL_CAAM_JR
  	range 2 9
  	default "9"
  	help
  	  Select size of Job Rings as a power of 2, within the
  	  range 2-9 (ring size 4-512).
  	  Examples:
  		2 => 4
  		3 => 8
  		4 => 16
  		5 => 32
  		6 => 64
  		7 => 128
  		8 => 256
  		9 => 512
  
  config CRYPTO_DEV_FSL_CAAM_INTC
  	bool "Job Ring interrupt coalescing"
  	depends on CRYPTO_DEV_FSL_CAAM_JR
  	default n
  	help
  	  Enable the Job Ring's interrupt coalescing feature.
  
  	  Note: the driver already provides adequate
  	  interrupt coalescing in software.
  
  config CRYPTO_DEV_FSL_CAAM_INTC_COUNT_THLD
  	int "Job Ring interrupt coalescing count threshold"
  	depends on CRYPTO_DEV_FSL_CAAM_INTC
  	range 1 255
  	default 255
  	help
  	  Select number of descriptor completions to queue before
  	  raising an interrupt, in the range 1-255. Note that a selection
  	  of 1 functionally defeats the coalescing feature, and a selection
  	  equal or greater than the job ring size will force timeouts.
  
  config CRYPTO_DEV_FSL_CAAM_INTC_TIME_THLD
  	int "Job Ring interrupt coalescing timer threshold"
  	depends on CRYPTO_DEV_FSL_CAAM_INTC
  	range 1 65535
  	default 2048
  	help
  	  Select number of bus clocks/64 to timeout in the case that one or
  	  more descriptor completions are queued without reaching the count
  	  threshold. Range is 1-65535.
  
  config CRYPTO_DEV_FSL_CAAM_CRYPTO_API
  	tristate "Register algorithm implementations with the Crypto API"
  	depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR
  	default y
  	select CRYPTO_ALGAPI
  	select CRYPTO_AUTHENC
  	help
  	  Selecting this will offload crypto for users of the
  	  scatterlist crypto API (such as the linux native IPSec
  	  stack) to the SEC4 via job ring.
  
  	  To compile this as a module, choose M here: the module
  	  will be called caamalg.
  
  config CRYPTO_DEV_FSL_CAAM_AHASH_API
  	tristate "Register hash algorithm implementations with Crypto API"
  	depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR
  	default y
  	select CRYPTO_HASH
  	help
  	  Selecting this will offload ahash for users of the
  	  scatterlist crypto API to the SEC4 via job ring.
  
  	  To compile this as a module, choose M here: the module
  	  will be called caamhash.
  
  config CRYPTO_DEV_FSL_CAAM_RNG_API
  	tristate "Register caam device for hwrng API"
  	depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR
  	default y
  	select CRYPTO_RNG
  	select HW_RANDOM
  	help
  	  Selecting this will register the SEC4 hardware rng to
  	  the hw_random API for suppying the kernel entropy pool.
  
  	  To compile this as a module, choose M here: the module
  	  will be called caamrng.
  
  config CRYPTO_DEV_FSL_CAAM_RNG_TEST
  	boolean "Test caam rng"
  	depends on CRYPTO_DEV_FSL_CAAM_RNG_API
  	default n
  	help
  	  Selecting this will enable a self-test to run for the
  	  caam RNG. This test is several minutes long and executes
  	  just before the RNG is registered with the hw_random API.
  
  config CRYPTO_DEV_FSL_CAAM_SM
  	tristate "CAAM Secure Memory / Keystore API (EXPERIMENTAL)"
  	default n
  	help
  	  Enables use of a prototype kernel-level Keystore API with CAAM
  	  Secure Memory for insertion/extraction of bus-protected secrets.
  
  config CRYPTO_DEV_FSL_CAAM_SM_SLOTSIZE
  	int "Size of each keystore slot in Secure Memory"
  	depends on CRYPTO_DEV_FSL_CAAM_SM
  	range 5 9
  	default 7
  	help
  	  Select size of allocation units to divide Secure Memory pages into
  	  (the size of a "slot" as referenced inside the API code).
  	  Established as powers of two.
  	  Examples:
  		5 => 32 bytes
  		6 => 64 bytes
  		7 => 128 bytes
  		8 => 256 bytes
  		9 => 512 bytes
  
  config CRYPTO_DEV_FSL_CAAM_SM_TEST
  	tristate "CAAM Secure Memory - Keystore Test/Example (EXPERIMENTAL)"
  	depends on CRYPTO_DEV_FSL_CAAM_SM
  	default n
  	help
  	  Example thread to exercise the Keystore API and to verify that
  	  stored and recovered secrets can be used for general purpose
  	  encryption/decryption.
  
  config CRYPTO_DEV_FSL_CAAM_SECVIO
  	tristate "CAAM/SNVS Security Violation Handler (EXPERIMENTAL)"
  	depends on CRYPTO_DEV_FSL_CAAM
  	default n
  	help
  	  Enables installation of an interrupt handler with registrable
            handler functions which can be specified to act on the consequences
            of a security violation.
  
  config CRYPTO_DEV_FSL_CAAM_DEBUG
  	bool "Enable debug output in CAAM driver"
  	depends on CRYPTO_DEV_FSL_CAAM
  	default n
  	help
  	  Selecting this will enable printing of various debug
  	  information in the CAAM driver.