blob: 9ed56632fcde21469b194711121ef391506b9d73 [file] [log] [blame]
Ruchika Gupta29c1a6b2015-01-23 16:01:55 +05301config FSL_CAAM
2 bool "Freescale Crypto Driver Support"
Tom Rini5bdd9192017-05-15 12:17:49 -04003 select SHA_HW_ACCEL
Alexandru Gagniuc650b7862021-09-02 19:54:21 -05004 # hw_sha1() under drivers/crypto, and needed with SHA_HW_ACCEL
Gaurav Jaine31dab82022-03-24 11:50:25 +05305 select MISC if DM
Alexandru Gagniuc650b7862021-09-02 19:54:21 -05006 imply SPL_CRYPTO if (ARM && SPL)
Simon Glass027608e2017-05-17 03:25:25 -06007 imply CMD_HASH
Ruchika Gupta29c1a6b2015-01-23 16:01:55 +05308 help
9 Enables the Freescale's Cryptographic Accelerator and Assurance
10 Module (CAAM), also known as the SEC version 4 (SEC4). The driver uses
11 Job Ring as interface to communicate with CAAM.
York Sun92c36e22016-12-28 08:43:30 -080012
Tom Rinia01b0092022-07-31 21:08:26 -040013config SYS_FSL_MAX_NUM_OF_SEC
14 int "Number of job rings in the CAAM"
15 depends on FSL_CAAM
16 default 1
17
Ye Li3c3e9a12021-03-25 17:30:36 +080018config CAAM_64BIT
19 bool
Gaurav Jaindb4dd6a2022-03-24 11:50:33 +053020 default y if PHYS_64BIT && !ARCH_IMX8M && !ARCH_IMX8
Ye Li3c3e9a12021-03-25 17:30:36 +080021 help
22 Select Crypto driver for 64 bits CAAM version
23
York Sun92c36e22016-12-28 08:43:30 -080024config SYS_FSL_HAS_SEC
25 bool
26 help
27 Enable Freescale Secure Boot and Trusted Architecture
28
29config SYS_FSL_SEC_COMPAT_2
30 bool
31 help
32 Secure boot and trust architecture compatible version 2
33
34config SYS_FSL_SEC_COMPAT_4
35 bool
36 help
37 Secure boot and trust architecture compatible version 4
38
39config SYS_FSL_SEC_COMPAT_5
40 bool
41 help
42 Secure boot and trust architecture compatible version 5
43
44config SYS_FSL_SEC_COMPAT_6
45 bool
46 help
47 Secure boot and trust architecture compatible version 6
48
York Sunfa4199422016-12-28 08:43:31 -080049config SYS_FSL_SEC_BE
50 bool "Big-endian access to Freescale Secure Boot"
51
York Sun92c36e22016-12-28 08:43:30 -080052config SYS_FSL_SEC_COMPAT
53 int "Freescale Secure Boot compatibility"
54 depends on SYS_FSL_HAS_SEC
55 default 2 if SYS_FSL_SEC_COMPAT_2
56 default 4 if SYS_FSL_SEC_COMPAT_4
57 default 5 if SYS_FSL_SEC_COMPAT_5
58 default 6 if SYS_FSL_SEC_COMPAT_6
York Sunfa4199422016-12-28 08:43:31 -080059
60config SYS_FSL_SEC_LE
61 bool "Little-endian access to Freescale Secure Boot"
Michael Walleb258eb22020-06-27 22:58:53 +020062
63if FSL_CAAM
64
Emanuele Ghidoli04a04022024-03-28 11:30:12 +010065config FSL_CAAM_JR_NTZ_ACCESS
66 bool "Give CAAM Job Ring access to non-secure world"
67 help
68 It is needed when OP-TEE is not used and Freescale CAAM Job Ring linux
69 driver is used.
70
Michael Walleb258eb22020-06-27 22:58:53 +020071config FSL_CAAM_RNG
Marek Vasut7a0a2372024-04-26 01:02:09 +020072 bool "Enable CAAM Random Number Generator support"
Michael Walleb258eb22020-06-27 22:58:53 +020073 depends on DM_RNG
74 default y
75 help
76 Enable support for the hardware based random number generator
77 module of the CAAM. The random data is fetched from the DRGB
78 using the prediction resistance flag which means the DRGB is
79 reseeded from the TRNG every time random data is generated.
80
Marek Vasut00dac702024-04-26 01:02:08 +020081config SPL_FSL_CAAM_RNG
82 bool "Enable CAAM Random Number Generator support in SPL"
83 depends on SPL_DM_RNG
84 help
85 This option is an SPL-variant of the FSL_CAAM_RNG option.
86 See the help of FSL_CAAM_RNG for details.
87
Michael Walleb258eb22020-06-27 22:58:53 +020088endif
Kshitiz Varshney8428a492022-12-22 09:50:27 +010089
90config FSL_DCP_RNG
Marek Vasut7a0a2372024-04-26 01:02:09 +020091 bool "Enable DCP Random Number Generator support"
Kshitiz Varshney8428a492022-12-22 09:50:27 +010092 depends on DM_RNG
Kshitiz Varshney8428a492022-12-22 09:50:27 +010093 help
94 Enable support for the hardware based random number generator
95 module of the DCP. It uses the True Random Number Generator (TRNG)
96 and a Pseudo-Random Number Generator (PRNG) to achieve a true
97 randomness and cryptographic strength.