d84c802f91a37b02c13f521c2f03a49a9efabcce
[openwrt.git] / package / kernel / linux / modules / crypto.mk
1 #
2 # Copyright (C) 2006-2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 CRYPTO_MENU:=Cryptographic API modules
9
10 CRYPTO_MODULES = \
11         ALGAPI2=crypto_algapi \
12         BLKCIPHER2=crypto_blkcipher
13
14 crypto_confvar=CONFIG_CRYPTO_$(word 1,$(subst =,$(space),$(1)))
15 crypto_file=$(LINUX_DIR)/crypto/$(word 2,$(subst =,$(space),$(1))).ko
16 crypto_name=$(if $(findstring y,$($(call crypto_confvar,$(1)))),,$(word 2,$(subst =,$(space),$(1))))
17
18 define AddDepends/crypto
19   SUBMENU:=$(CRYPTO_MENU)
20   DEPENDS+= $(1)
21 endef
22
23 define KernelPackage/crypto-aead
24   TITLE:=CryptoAPI AEAD support
25   KCONFIG:= \
26         CONFIG_CRYPTO_AEAD \
27         CONFIG_CRYPTO_AEAD2
28   FILES:=$(LINUX_DIR)/crypto/aead.ko
29   AUTOLOAD:=$(call AutoLoad,09,aead,1)
30   $(call AddDepends/crypto, +LINUX_4_3:kmod-crypto-null +LINUX_4_4:kmod-crypto-null)
31 endef
32
33 $(eval $(call KernelPackage,crypto-aead))
34
35
36 define KernelPackage/crypto-hash
37   TITLE:=CryptoAPI hash support
38   KCONFIG:=CONFIG_CRYPTO_HASH
39   FILES:=$(LINUX_DIR)/crypto/crypto_hash.ko
40   AUTOLOAD:=$(call AutoLoad,02,crypto_hash,1)
41   $(call AddDepends/crypto)
42 endef
43
44 $(eval $(call KernelPackage,crypto-hash))
45
46
47 define KernelPackage/crypto-manager
48   TITLE:=CryptoAPI algorithm manager
49   DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
50   KCONFIG:= \
51         CONFIG_CRYPTO_MANAGER \
52         CONFIG_CRYPTO_MANAGER2
53   FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
54   AUTOLOAD:=$(call AutoLoad,09,cryptomgr,1)
55   $(call AddDepends/crypto)
56 endef
57
58 $(eval $(call KernelPackage,crypto-manager))
59
60
61 define KernelPackage/crypto-pcompress
62   TITLE:=CryptoAPI Partial (de)compression operations
63   KCONFIG:= \
64         CONFIG_CRYPTO_PCOMP=y \
65         CONFIG_CRYPTO_PCOMP2
66   FILES:=$(LINUX_DIR)/crypto/pcompress.ko
67   AUTOLOAD:=$(call AutoLoad,09,pcompress)
68   $(call AddDepends/crypto)
69 endef
70
71 $(eval $(call KernelPackage,crypto-pcompress))
72
73
74 define KernelPackage/crypto-user
75   TITLE:=CryptoAPI userspace interface
76   DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
77   KCONFIG:= \
78         CONFIG_CRYPTO_USER_API \
79         CONFIG_CRYPTO_USER_API_HASH \
80         CONFIG_CRYPTO_USER_API_SKCIPHER
81   FILES:= \
82         $(LINUX_DIR)/crypto/af_alg.ko \
83         $(LINUX_DIR)/crypto/algif_hash.ko \
84         $(LINUX_DIR)/crypto/algif_skcipher.ko
85   AUTOLOAD:=$(call AutoLoad,09,af_alg algif_hash algif_skcipher)
86   $(call AddDepends/crypto)
87 endef
88
89 $(eval $(call KernelPackage,crypto-user))
90
91
92 define KernelPackage/crypto-wq
93   TITLE:=CryptoAPI work queue handling
94   KCONFIG:=CONFIG_CRYPTO_WORKQUEUE
95   FILES:=$(LINUX_DIR)/crypto/crypto_wq.ko
96   AUTOLOAD:=$(call AutoLoad,09,crypto_wq)
97   $(call AddDepends/crypto)
98 endef
99 $(eval $(call KernelPackage,crypto-wq))
100
101 define KernelPackage/crypto-rng
102   TITLE:=CryptoAPI random number generation
103   DEPENDS:=+kmod-crypto-hash
104   KCONFIG:= \
105         CONFIG_CRYPTO_DRBG_MENU \
106         CONFIG_CRYPTO_DRBG \
107         CONFIG_CRYPTO_JITTERENTROPY \
108         CONFIG_CRYPTO_RNG2
109   FILES:= \
110         $(LINUX_DIR)/crypto/drbg.ko@ge4.2 \
111         $(LINUX_DIR)/crypto/jitterentropy_rng.ko@ge4.2 \
112         $(LINUX_DIR)/crypto/krng.ko@lt4.2 \
113         $(LINUX_DIR)/crypto/rng.ko
114   AUTOLOAD:=$(call AutoLoad,09,drbg@ge4.2 jitterentropy_rng@ge4.2 krng@lt4.2 rng)
115   $(call AddDepends/crypto)
116 endef
117
118 $(eval $(call KernelPackage,crypto-rng))
119
120
121 define KernelPackage/crypto-iv
122   TITLE:=CryptoAPI initialization vectors
123   DEPENDS:=+kmod-crypto-manager +kmod-crypto-rng +kmod-crypto-wq
124   KCONFIG:= CONFIG_CRYPTO_BLKCIPHER2
125   FILES:= \
126         $(LINUX_DIR)/crypto/eseqiv.ko \
127         $(LINUX_DIR)/crypto/chainiv.ko
128   AUTOLOAD:=$(call AutoLoad,10,eseqiv chainiv)
129   $(call AddDepends/crypto)
130 endef
131
132 $(eval $(call KernelPackage,crypto-iv))
133
134 define KernelPackage/crypto-seqiv
135   TITLE:=CryptoAPI Sequence Number IV Generator
136   DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng
137   KCONFIG:=CONFIG_CRYPTO_SEQIV
138   FILES:=$(LINUX_DIR)/crypto/seqiv.ko
139   AUTOLOAD:=$(call AutoLoad,09,seqiv)
140   $(call AddDepends/crypto)
141 endef
142
143 $(eval $(call KernelPackage,crypto-seqiv))
144
145
146 define KernelPackage/crypto-hw-talitos
147   TITLE:=Freescale integrated security engine (SEC) driver
148   DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc
149   KCONFIG:= \
150         CONFIG_CRYPTO_HW=y \
151         CONFIG_CRYPTO_DEV_TALITOS
152   FILES:= \
153         $(LINUX_DIR)/drivers/crypto/talitos.ko
154   AUTOLOAD:=$(call AutoLoad,09,talitos)
155   $(call AddDepends/crypto)
156 endef
157
158 $(eval $(call KernelPackage,crypto-hw-talitos))
159
160
161 define KernelPackage/crypto-hw-padlock
162   TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
163   DEPENDS:=+kmod-crypto-manager
164   KCONFIG:= \
165         CONFIG_CRYPTO_HW=y \
166         CONFIG_CRYPTO_DEV_PADLOCK \
167         CONFIG_CRYPTO_DEV_PADLOCK_AES \
168         CONFIG_CRYPTO_DEV_PADLOCK_SHA
169   FILES:= \
170         $(LINUX_DIR)/drivers/crypto/padlock-aes.ko \
171         $(LINUX_DIR)/drivers/crypto/padlock-sha.ko
172   AUTOLOAD:=$(call AutoLoad,09,padlock-aes padlock-sha)
173   $(call AddDepends/crypto)
174 endef
175
176 $(eval $(call KernelPackage,crypto-hw-padlock))
177
178
179 define KernelPackage/crypto-hw-geode
180   TITLE:=AMD Geode hardware crypto module
181   DEPENDS:=+kmod-crypto-manager
182   KCONFIG:= \
183         CONFIG_CRYPTO_HW=y \
184         CONFIG_CRYPTO_DEV_GEODE
185   FILES:=$(LINUX_DIR)/drivers/crypto/geode-aes.ko
186   AUTOLOAD:=$(call AutoLoad,09,geode-aes)
187   $(call AddDepends/crypto)
188 endef
189
190 $(eval $(call KernelPackage,crypto-hw-geode))
191
192
193 define KernelPackage/crypto-hw-hifn-795x
194   TITLE:=HIFN 795x crypto accelerator
195   DEPENDS:=+kmod-random-core +kmod-crypto-manager
196   KCONFIG:= \
197         CONFIG_CRYPTO_HW=y \
198         CONFIG_CRYPTO_DEV_HIFN_795X \
199         CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
200   FILES:=$(LINUX_DIR)/drivers/crypto/hifn_795x.ko
201   AUTOLOAD:=$(call AutoLoad,09,hifn_795x)
202   $(call AddDepends/crypto,+kmod-crypto-des)
203 endef
204
205 $(eval $(call KernelPackage,crypto-hw-hifn-795x))
206
207
208 define KernelPackage/crypto-hw-ppc4xx
209   TITLE:=AMCC PPC4xx hardware crypto module
210   DEPENDS:=@TARGET_ppc40x||TARGET_ppc44x
211   KCONFIG:= \
212         CONFIG_CRYPTO_HW=y \
213         CONFIG_CRYPTO_DEV_PPC4XX
214   FILES:=$(LINUX_DIR)/drivers/crypto/amcc/crypto4xx.ko
215   AUTOLOAD:=$(call AutoLoad,90,crypto4xx)
216   $(call AddDepends/crypto,+kmod-crypto-manager +kmod-crypto-hash)
217 endef
218
219 define KernelPackage/crypto-hw-ppc4xx/description
220   Kernel support for the AMCC PPC4xx HW crypto engine.
221 endef
222
223 $(eval $(call KernelPackage,crypto-hw-ppc4xx))
224
225
226 define KernelPackage/crypto-hw-omap
227   TITLE:=TI OMAP hardware crypto modules
228   DEPENDS:=@TARGET_omap
229   KCONFIG:= \
230         CONFIG_CRYPTO_HW=y \
231         CONFIG_CRYPTO_DEV_OMAP_AES \
232         CONFIG_CRYPTO_DEV_OMAP_DES \
233         CONFIG_CRYPTO_DEV_OMAP_SHAM
234 ifneq ($(wildcard $(LINUX_DIR)/drivers/crypto/omap-des.ko),)
235   FILES:= \
236         $(LINUX_DIR)/drivers/crypto/omap-aes.ko \
237         $(LINUX_DIR)/drivers/crypto/omap-des.ko \
238         $(LINUX_DIR)/drivers/crypto/omap-sham.ko
239   AUTOLOAD:=$(call AutoLoad,90,omap-aes omap-des omap-sham)
240 else
241   FILES:= \
242         $(LINUX_DIR)/drivers/crypto/omap-aes.ko \
243         $(LINUX_DIR)/drivers/crypto/omap-sham.ko
244   AUTOLOAD:=$(call AutoLoad,90,omap-aes omap-sham)
245 endif
246   $(call AddDepends/crypto,+kmod-crypto-manager +kmod-crypto-hash)
247 endef
248
249 define KernelPackage/crypto-hw-omap/description
250   Kernel support for the TI OMAP HW crypto engine.
251 endef
252
253 $(eval $(call KernelPackage,crypto-hw-omap))
254
255
256 define KernelPackage/crypto-authenc
257   TITLE:=Combined mode wrapper for IPsec
258   DEPENDS:=+kmod-crypto-manager +LINUX_4_4:kmod-crypto-null
259   KCONFIG:=CONFIG_CRYPTO_AUTHENC
260   FILES:=$(LINUX_DIR)/crypto/authenc.ko
261   AUTOLOAD:=$(call AutoLoad,09,authenc)
262   $(call AddDepends/crypto)
263 endef
264
265 $(eval $(call KernelPackage,crypto-authenc))
266
267 define KernelPackage/crypto-cbc
268   TITLE:=Cipher Block Chaining CryptoAPI module
269   DEPENDS:=+kmod-crypto-manager
270   KCONFIG:=CONFIG_CRYPTO_CBC
271   FILES:=$(LINUX_DIR)/crypto/cbc.ko
272   AUTOLOAD:=$(call AutoLoad,09,cbc)
273   $(call AddDepends/crypto)
274 endef
275
276 $(eval $(call KernelPackage,crypto-cbc))
277
278 define KernelPackage/crypto-ctr
279   TITLE:=Counter Mode CryptoAPI module
280   DEPENDS:=+kmod-crypto-manager +kmod-crypto-seqiv +kmod-crypto-iv
281   KCONFIG:=CONFIG_CRYPTO_CTR
282   FILES:=$(LINUX_DIR)/crypto/ctr.ko
283   AUTOLOAD:=$(call AutoLoad,09,ctr)
284   $(call AddDepends/crypto)
285 endef
286
287 $(eval $(call KernelPackage,crypto-ctr))
288
289 define KernelPackage/crypto-ccm
290  TITLE:=Support for Counter with CBC MAC (CCM)
291  DEPENDS:=+kmod-crypto-ctr +kmod-crypto-aead
292  KCONFIG:=CONFIG_CRYPTO_CCM
293  FILES:=$(LINUX_DIR)/crypto/ccm.ko
294  AUTOLOAD:=$(call AutoLoad,09,ccm)
295  $(call AddDepends/crypto)
296 endef
297
298 $(eval $(call KernelPackage,crypto-ccm))
299
300 define KernelPackage/crypto-pcbc
301   TITLE:=Propagating Cipher Block Chaining CryptoAPI module
302   DEPENDS:=+kmod-crypto-manager
303   KCONFIG:=CONFIG_CRYPTO_PCBC
304   FILES:=$(LINUX_DIR)/crypto/pcbc.ko
305   AUTOLOAD:=$(call AutoLoad,09,pcbc)
306   $(call AddDepends/crypto)
307 endef
308
309 $(eval $(call KernelPackage,crypto-pcbc))
310
311 define KernelPackage/crypto-crc32c
312   TITLE:=CRC32c CRC module
313   DEPENDS:=+kmod-crypto-hash
314   KCONFIG:=CONFIG_CRYPTO_CRC32C
315   FILES:=$(LINUX_DIR)/crypto/crc32c_generic.ko
316   AUTOLOAD:=$(call AutoLoad,04,crc32c_generic,1)
317   $(call AddDepends/crypto)
318 endef
319
320 $(eval $(call KernelPackage,crypto-crc32c))
321
322
323 define KernelPackage/crypto-des
324   TITLE:=DES/3DES cipher CryptoAPI module
325   KCONFIG:=CONFIG_CRYPTO_DES
326   FILES:=$(LINUX_DIR)/crypto/des_generic.ko
327   AUTOLOAD:=$(call AutoLoad,09,des_generic)
328   $(call AddDepends/crypto)
329 endef
330
331 $(eval $(call KernelPackage,crypto-des))
332
333
334 define KernelPackage/crypto-deflate
335   TITLE:=Deflate compression CryptoAPI module
336   DEPENDS:=+kmod-lib-zlib
337   KCONFIG:=CONFIG_CRYPTO_DEFLATE
338   FILES:=$(LINUX_DIR)/crypto/deflate.ko
339   AUTOLOAD:=$(call AutoLoad,09,deflate)
340   $(call AddDepends/crypto)
341 endef
342
343 $(eval $(call KernelPackage,crypto-deflate))
344
345
346 define KernelPackage/crypto-fcrypt
347   TITLE:=FCRYPT cipher CryptoAPI module
348   KCONFIG:=CONFIG_CRYPTO_FCRYPT
349   FILES:=$(LINUX_DIR)/crypto/fcrypt.ko
350   AUTOLOAD:=$(call AutoLoad,09,fcrypt)
351   $(call AddDepends/crypto)
352 endef
353
354 $(eval $(call KernelPackage,crypto-fcrypt))
355
356 define KernelPackage/crypto-ecb
357   TITLE:=Electronic CodeBook CryptoAPI module
358   DEPENDS:=+kmod-crypto-manager
359   KCONFIG:=CONFIG_CRYPTO_ECB
360   FILES:=$(LINUX_DIR)/crypto/ecb.ko
361   AUTOLOAD:=$(call AutoLoad,09,ecb)
362   $(call AddDepends/crypto)
363 endef
364
365 $(eval $(call KernelPackage,crypto-ecb))
366
367
368 define KernelPackage/crypto-hmac
369   TITLE:=HMAC digest CryptoAPI module
370   DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
371   KCONFIG:=CONFIG_CRYPTO_HMAC
372   FILES:=$(LINUX_DIR)/crypto/hmac.ko
373   AUTOLOAD:=$(call AutoLoad,09,hmac)
374   $(call AddDepends/crypto)
375 endef
376
377 $(eval $(call KernelPackage,crypto-hmac))
378
379
380 define KernelPackage/crypto-cmac
381   TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
382   DEPENDS:=+kmod-crypto-hash
383   KCONFIG:=CONFIG_CRYPTO_CMAC
384   FILES:=$(LINUX_DIR)/crypto/cmac.ko
385   AUTOLOAD:=$(call AutoLoad,09,cmac)
386   $(call AddDepends/crypto)
387 endef
388
389 $(eval $(call KernelPackage,crypto-cmac))
390
391
392 define KernelPackage/crypto-gcm
393   TITLE:=GCM/GMAC CryptoAPI module
394   DEPENDS:=+kmod-crypto-ctr +kmod-crypto-ghash +kmod-crypto-null
395   KCONFIG:=CONFIG_CRYPTO_GCM
396   FILES:=$(LINUX_DIR)/crypto/gcm.ko
397   AUTOLOAD:=$(call AutoLoad,09,gcm)
398   $(call AddDepends/crypto)
399 endef
400
401 $(eval $(call KernelPackage,crypto-gcm))
402
403
404 define KernelPackage/crypto-gf128
405   TITLE:=GF(2^128) multiplication functions CryptoAPI module
406   KCONFIG:=CONFIG_CRYPTO_GF128MUL
407   FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
408   AUTOLOAD:=$(call AutoLoad,09,gf128mul)
409   $(call AddDepends/crypto)
410 endef
411
412 $(eval $(call KernelPackage,crypto-gf128))
413
414
415 define KernelPackage/crypto-ghash
416   TITLE:=GHASH digest CryptoAPI module
417   DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-hash
418   KCONFIG:=CONFIG_CRYPTO_GHASH
419   FILES:=$(LINUX_DIR)/crypto/ghash-generic.ko
420   AUTOLOAD:=$(call AutoLoad,09,ghash-generic)
421   $(call AddDepends/crypto)
422 endef
423
424 $(eval $(call KernelPackage,crypto-ghash))
425
426
427 define KernelPackage/crypto-md4
428   TITLE:=MD4 digest CryptoAPI module
429   DEPENDS:=+kmod-crypto-hash
430   KCONFIG:=CONFIG_CRYPTO_MD4
431   FILES:=$(LINUX_DIR)/crypto/md4.ko
432   AUTOLOAD:=$(call AutoLoad,09,md4)
433   $(call AddDepends/crypto)
434 endef
435
436 $(eval $(call KernelPackage,crypto-md4))
437
438
439 define KernelPackage/crypto-md5
440   TITLE:=MD5 digest CryptoAPI module
441   DEPENDS:=+kmod-crypto-hash
442   KCONFIG:= \
443         CONFIG_CRYPTO_MD5 \
444         CONFIG_CRYPTO_MD5_OCTEON
445   FILES:=$(LINUX_DIR)/crypto/md5.ko
446   AUTOLOAD:=$(call AutoLoad,09,md5)
447   $(call AddDepends/crypto)
448 endef
449
450 define KernelPackage/crypto-md5/octeon
451   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-md5.ko
452   AUTOLOAD:=$(call AutoLoad,09,octeon-md5)
453 endef
454
455 $(eval $(call KernelPackage,crypto-md5))
456
457
458 define KernelPackage/crypto-michael-mic
459   TITLE:=Michael MIC keyed digest CryptoAPI module
460   DEPENDS:=+kmod-crypto-hash
461   KCONFIG:=CONFIG_CRYPTO_MICHAEL_MIC
462   FILES:=$(LINUX_DIR)/crypto/michael_mic.ko
463   AUTOLOAD:=$(call AutoLoad,09,michael_mic)
464   $(call AddDepends/crypto)
465 endef
466
467 $(eval $(call KernelPackage,crypto-michael-mic))
468
469
470 define KernelPackage/crypto-sha1
471   TITLE:=SHA1 digest CryptoAPI module
472   DEPENDS:=+kmod-crypto-hash
473   KCONFIG:= \
474         CONFIG_CRYPTO_SHA1 \
475         CONFIG_CRYPTO_SHA1_OCTEON
476   FILES:=$(LINUX_DIR)/crypto/sha1_generic.ko
477   AUTOLOAD:=$(call AutoLoad,09,sha1_generic)
478   $(call AddDepends/crypto)
479 endef
480
481 define KernelPackage/crypto-sha1/octeon
482   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha1.ko
483   AUTOLOAD:=$(call AutoLoad,09,octeon-sha1)
484 endef
485
486 $(eval $(call KernelPackage,crypto-sha1))
487
488
489 define KernelPackage/crypto-sha256
490   TITLE:=SHA224 SHA256 digest CryptoAPI module
491   DEPENDS:=+kmod-crypto-hash
492   KCONFIG:= \
493         CONFIG_CRYPTO_SHA256 \
494         CONFIG_CRYPTO_SHA256_OCTEON
495   FILES:=$(LINUX_DIR)/crypto/sha256_generic.ko
496   AUTOLOAD:=$(call AutoLoad,09,sha256_generic)
497   $(call AddDepends/crypto)
498 endef
499
500 define KernelPackage/crypto-sha256/octeon
501   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha256.ko
502   AUTOLOAD:=$(call AutoLoad,09,octeon-sha256)
503 endef
504
505 $(eval $(call KernelPackage,crypto-sha256))
506
507
508 define KernelPackage/crypto-sha512
509   TITLE:=SHA512 digest CryptoAPI module
510   DEPENDS:=+kmod-crypto-hash
511   KCONFIG:= \
512         CONFIG_CRYPTO_SHA512 \
513         CONFIG_CRYPTO_SHA512_OCTEON
514   FILES:=$(LINUX_DIR)/crypto/sha512_generic.ko
515   AUTOLOAD:=$(call AutoLoad,09,sha512_generic)
516   $(call AddDepends/crypto)
517 endef
518
519 define KernelPackage/crypto-sha512/octeon
520   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha512.ko
521   AUTOLOAD:=$(call AutoLoad,09,octeon-sha512)
522 endef
523
524 $(eval $(call KernelPackage,crypto-sha512))
525
526
527 define KernelPackage/crypto-misc
528   TITLE:=Other CryptoAPI modules
529   DEPENDS:=+kmod-crypto-manager
530   KCONFIG:= \
531         CONFIG_CRYPTO_ANUBIS \
532         CONFIG_CRYPTO_BLOWFISH \
533         CONFIG_CRYPTO_CAMELLIA \
534         CONFIG_CRYPTO_CAST5 \
535         CONFIG_CRYPTO_CAST6 \
536         CONFIG_CRYPTO_FCRYPT \
537         CONFIG_CRYPTO_KHAZAD \
538         CONFIG_CRYPTO_SERPENT \
539         CONFIG_CRYPTO_TEA \
540         CONFIG_CRYPTO_TGR192 \
541         CONFIG_CRYPTO_TWOFISH \
542         CONFIG_CRYPTO_TWOFISH_COMMON \
543         CONFIG_CRYPTO_TWOFISH_586 \
544         CONFIG_CRYPTO_WP512
545   FILES:= \
546         $(LINUX_DIR)/crypto/anubis.ko \
547         $(LINUX_DIR)/crypto/camellia_generic.ko \
548         $(LINUX_DIR)/crypto/cast_common.ko \
549         $(LINUX_DIR)/crypto/cast5_generic.ko \
550         $(LINUX_DIR)/crypto/cast6_generic.ko \
551         $(LINUX_DIR)/crypto/khazad.ko \
552         $(LINUX_DIR)/crypto/tea.ko \
553         $(LINUX_DIR)/crypto/tgr192.ko \
554         $(LINUX_DIR)/crypto/twofish_common.ko \
555         $(LINUX_DIR)/crypto/wp512.ko \
556         $(LINUX_DIR)/crypto/twofish_generic.ko \
557         $(LINUX_DIR)/crypto/blowfish_common.ko \
558         $(LINUX_DIR)/crypto/blowfish_generic.ko \
559         $(LINUX_DIR)/crypto/serpent_generic.ko
560   $(call AddDepends/crypto)
561 endef
562
563 ifndef CONFIG_TARGET_x86_64
564   define KernelPackage/crypto-misc/x86
565     FILES+=$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko
566   endef
567 endif
568
569 $(eval $(call KernelPackage,crypto-misc))
570
571
572 define KernelPackage/crypto-ocf
573   TITLE:=OCF modules
574   DEPENDS:=+@OPENSSL_ENGINE_CRYPTO @!TARGET_uml +kmod-crypto-manager
575   KCONFIG:= \
576         CONFIG_OCF_OCF \
577         CONFIG_OCF_CRYPTODEV \
578         CONFIG_OCF_CRYPTOSOFT \
579         CONFIG_OCF_FIPS=y \
580         CONFIG_OCF_RANDOMHARVEST=y
581   FILES:= \
582         $(LINUX_DIR)/crypto/ocf/ocf.ko \
583         $(LINUX_DIR)/crypto/ocf/cryptodev.ko \
584         $(LINUX_DIR)/crypto/ocf/cryptosoft.ko
585   AUTOLOAD:=$(call AutoLoad,09, \
586         ocf \
587         cryptodev \
588         cryptosoft \
589   )
590   $(call AddDepends/crypto)
591 endef
592
593 $(eval $(call KernelPackage,crypto-ocf))
594
595
596 define KernelPackage/crypto-ocf-hifn7751
597   TITLE:=OCF support for Hifn 6500/7751/7811/795x, Invertex AEON and NetSec 7751 devices
598   DEPENDS:=+@OPENSSL_ENGINE_CRYPTO @PCI_SUPPORT @!TARGET_uml kmod-crypto-ocf
599   KCONFIG:=CONFIG_OCF_HIFN
600   FILES:=$(LINUX_DIR)/crypto/ocf/hifn/hifn7751.ko
601   AUTOLOAD:=$(call AutoLoad,10,hifn7751)
602   $(call AddDepends/crypto)
603 endef
604
605 $(eval $(call KernelPackage,crypto-ocf-hifn7751))
606
607
608 define KernelPackage/crypto-ocf-hifnhipp
609   TITLE:=OCF support for Hifn 7855/8155 devices
610   DEPENDS:=+@OPENSSL_ENGINE_CRYPTO @PCI_SUPPORT @!TARGET_uml kmod-crypto-ocf
611   KCONFIG:=CONFIG_OCF_HIFNHIPP
612   FILES:=$(LINUX_DIR)/crypto/ocf/hifn/hifnHIPP.ko
613   AUTOLOAD:=$(call AutoLoad,10,hifnHIPP)
614   $(call AddDepends/crypto)
615 endef
616
617 $(eval $(call KernelPackage,crypto-ocf-hifnhipp))
618
619
620 define KernelPackage/crypto-null
621   TITLE:=Null CryptoAPI module
622   KCONFIG:=CONFIG_CRYPTO_NULL
623   FILES:=$(LINUX_DIR)/crypto/crypto_null.ko
624   AUTOLOAD:=$(call AutoLoad,09,crypto_null)
625   $(call AddDepends/crypto, +kmod-crypto-hash)
626 endef
627
628 $(eval $(call KernelPackage,crypto-null))
629
630
631 define KernelPackage/crypto-test
632   TITLE:=Test CryptoAPI module
633   KCONFIG:=CONFIG_CRYPTO_TEST
634   FILES:=$(LINUX_DIR)/crypto/tcrypt.ko
635   $(call AddDepends/crypto,+kmod-crypto-manager)
636 endef
637
638 $(eval $(call KernelPackage,crypto-test))
639
640
641 define KernelPackage/crypto-xts
642   TITLE:=XTS cipher CryptoAPI module
643   DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager
644   KCONFIG:=CONFIG_CRYPTO_XTS
645   FILES:=$(LINUX_DIR)/crypto/xts.ko
646   AUTOLOAD:=$(call AutoLoad,09,xts)
647   $(call AddDepends/crypto)
648 endef
649
650 $(eval $(call KernelPackage,crypto-xts))
651
652
653 define KernelPackage/crypto-mv-cesa
654   TITLE:=Marvell crypto engine
655   DEPENDS:=+kmod-crypto-manager @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
656   KCONFIG:=CONFIG_CRYPTO_DEV_MV_CESA
657   FILES:=$(LINUX_DIR)/drivers/crypto/mv_cesa.ko
658   AUTOLOAD:=$(call AutoLoad,09,mv_cesa)
659   $(call AddDepends/crypto)
660 endef
661
662 $(eval $(call KernelPackage,crypto-mv-cesa))