blob: afab39fec4b0084fb44743aa71b35a1533081977 [file] [log] [blame]
George Becksteind82afbf2020-10-29 17:32:11 -04001{
2 "name": "mcuboot",
3 "config": {
4 "bootloader-build": {
5 "help": "Build the bootloader, in addition to the MCUboot library.",
6 "macro_name": "MCUBOOT_BOOTLOADER_BUILD",
7 "accepted_values": [true, false],
8 "value": true
9 },
10 "primary-slot-address": {
11 "help": "Start address of the primary (bootable) image slot. Target-dependent, please set on a per-target basis.",
12 "macro_name": "MCUBOOT_PRIMARY_SLOT_START_ADDR",
13 "required": true
14 },
15 "slot-size": {
16 "help": "Size of the primary (bootable) image slot, in bytes. Target-dependent, please set on a per-target basis.",
17 "macro_name": "MCUBOOT_SLOT_SIZE",
18 "required": true
19 },
20 "scratch-address": {
21 "help": "Start address of the scratch area. If needed, please set on a per-target basis.",
22 "macro_name": "MCUBOOT_SCRATCH_START_ADDR"
23 },
24 "scratch-size": {
25 "help": "Size of the scratch area, in bytes. If needed, please set on a per-target basis.",
26 "macro_name": "MCUBOOT_SCRATCH_SIZE"
27 },
George Becksteind82afbf2020-10-29 17:32:11 -040028 "validate-primary-slot": {
29 "help": "Always check the signature of the image in the primary slot before booting, even if no upgrade was performed. This is recommended if the boot time penalty is acceptable.",
30 "macro_name": "MCUBOOT_VALIDATE_PRIMARY_SLOT",
31 "accepted_values": [true, null],
32 "value": true
33 },
34 "signature-algorithm": {
35 "help": "The algorithm used for digital signing.",
36 "macro_name": "MCUBOOT_SIGNATURE_ALGORITHM",
37 "required": true,
George Becksteina80e7c62021-05-11 02:12:46 -040038 "accepted_values": ["SIGNATURE_TYPE_RSA", "SIGNATURE_TYPE_EC256", "SIGNATURE_TYPE_ED25519", "SIGNATURE_TYPE_NONE"],
George Becksteind82afbf2020-10-29 17:32:11 -040039 "value": "SIGNATURE_TYPE_RSA"
40 },
41 "rsa-signature-length": {
42 "help": "If RSA is used for signature algorithm, this specifies the length.",
43 "macro_name": "MCUBOOT_RSA_SIGNATURE_LENGTH",
44 "required": true,
45 "accepted_values": [2048, 3072],
46 "value": 2048
47 },
48 "crypto-backend": {
49 "help": "The crypto library backend. NOTE: TinyCrypt is currently only supported with GCC for Mbed-OS builds.",
50 "macro_name": "MCUBOOT_CRYPTO_BACKEND",
51 "required": true,
52 "accepted_values": ["MBEDTLS", "TINYCRYPT"],
53 "value": "MBEDTLS"
54 },
55 "overwrite-only": {
56 "help": "The default is to support A/B image swapping with rollback. A simpler code path, which only supports overwriting the existing image with the update image, is also available. (null to disable)",
57 "macro_name": "MCUBOOT_OVERWRITE_ONLY",
58 "accepted_values": [true, null],
59 "value": null
60 },
61 "overwrite-only-fast": {
62 "help": "Only erase and overwrite those primary slot sectors needed to install the new image, rather than the entire image slot.",
63 "macro_name": "MCUBOOT_OVERWRITE_ONLY_FAST",
64 "accepted_values": [true, null],
65 "value": null
66 },
Artur Tynecki41c568a2022-02-08 10:55:24 +010067 "log-enable": {
68 "help": "Enable MCUboot logging. Must also enable mbed-trace",
69 "macro_name": "MCUBOOT_HAVE_LOGGING",
70 "accepted_values": [true, null],
71 "value": null
72 },
George Becksteind82afbf2020-10-29 17:32:11 -040073 "log-level": {
74 "help": "Verbosity of MCUboot logging.",
75 "macro_name": "MCUBOOT_LOG_LEVEL",
76 "accepted_values": ["MCUBOOT_LOG_LEVEL_OFF", "MCUBOOT_LOG_LEVEL_ERROR", "MCUBOOT_LOG_LEVEL_WARN", "MCUBOOT_LOG_LEVEL_INFO", "MCUBOOT_LOG_LEVEL_DEBUG"],
77 "value": "MCUBOOT_LOG_LEVEL_OFF"
78 },
79 "log-bootloader-only": {
80 "help": "Exclude non-bootloader logs from Mbed OS (e.g. underlying storage).",
81 "macro_name": "MCUBOOT_LOG_BOOTLOADER_ONLY",
82 "accepted_values": [true, false],
83 "value": true
84 },
85 "max-img-sectors": {
86 "help": "Maximum number of flash sectors per image slot. Target-dependent, please set on a per-target basis.",
87 "macro_name": "MCUBOOT_MAX_IMG_SECTORS",
88 "required": true
89 },
90 "read-granularity": {
91 "help": "Granularity of read operations, in bytes. Enables a workaround if your block device does not support reading a single byte at a time. If this is used, it should be at least the value of your specific <blockdevice>->get_read_size() result.",
92 "macro_name": "MCUBOOT_READ_GRANULARITY",
93 "value": null
94 },
95 "hardware-key": {
96 "help": "Use hardware key (NOT TESTED)",
97 "macro_name": "MCUBOOT_HW_KEY",
98 "accepted_values": [true, null],
99 "value": null
100 },
101 "boot-swap-move": {
102 "help": "Boot swap using move (NOT TESTED)",
103 "macro_name": "MCUBOOT_SWAP_USING_MOVE",
104 "accepted_values": [true, null],
105 "value": null
106 },
107 "updateable-image-number": {
108 "help": "Updateable image number (NOT TESTED)",
109 "macro_name": "MCUBOOT_IMAGE_NUMBER"
110 },
111 "MCUBOOT_SWAP_SAVE_ENCTLV": {
112 "help": "Swap save enctlv (NOT TESTED)",
113 "macro_name": "MCUBOOT_IMAGE_NUMBER",
114 "value": null
115 },
116 "encrypt-rsa": {
117 "help": "Encrypt images using RSA (NOT TESTED)",
118 "macro_name": "MCUBOOT_ENCRYPT_RSA",
119 "accepted_values": [true, null],
120 "value": null
121 },
122 "encrypt-ec256": {
123 "help": "Encrypt images using EC256 (NOT TESTED)",
124 "macro_name": "MCUBOOT_ENCRYPT_EC256",
125 "accepted_values": [true, null],
126 "value": null
127 },
128 "encrypt-x25519": {
129 "help": "Encrypt images using X25519 (NOT TESTED)",
130 "macro_name": "MCUBOOT_ENCRYPT_X25519",
131 "accepted_values": [true, null],
132 "value": null
133 },
134 "bootstrap": {
135 "help": "Bootstrap (NOT TESTED)",
136 "macro_name": "MCUBOOT_BOOTSTRAP",
137 "value": null
138 },
139 "use-bench": {
140 "help": "Use bench (NOT TESTED)",
141 "macro_name": "MCUBOOT_USE_BENCH",
142 "value": null
143 },
144 "downgrade-prevention": {
145 "help": "Prevent downgrades (NOT TESTED)",
146 "macro_name": "MCUBOOT_DOWNGRADE_PREVENTION",
147 "value": null
148 },
149 "hw-rollback-protection": {
150 "help": "Hardware rollback protection (NOT TESTED)",
151 "macro_name": "MCUBOOT_HW_ROLLBACK_PROT",
152 "value": null
153 },
154 "measured-boot": {
155 "help": "Measured boot (NOT TESTED)",
156 "macro_name": "MCUBOOT_MEASURED_BOOT",
157 "value": null
158 },
159 "share-data": {
160 "help": "Share data (NOT TESTED)",
161 "macro_name": "MCUBOOT_DATA_SHARING",
162 "value": null
George Beckstein28779652020-12-15 13:54:51 -0500163 },
George Becksteincb09bd22021-08-23 13:03:54 -0400164 "share-data-base-address": {
165 "help": "Start of reserved RAM region for data shared between bootloader and application",
166 "macro_name": "MCUBOOT_SHARED_DATA_BASE",
167 "value": null
168 },
169 "share-data-size": {
170 "help": "Size of reserved RAM region for data shared between bootloader and application",
171 "macro_name": "MCUBOOT_SHARED_DATA_SIZE",
172 "value": null
173 },
George Beckstein28779652020-12-15 13:54:51 -0500174 "direct-xip": {
175 "help": "Enable ability to boot update candidates in-place.",
176 "macro_name": "MCUBOOT_DIRECT_XIP",
177 "value": null
178 },
179 "direct-xip-revert": {
180 "help": "Enable XIP revert mechanism. Only valid if direct-xip is also enabled.",
181 "macro_name": "MCUBOOT_DIRECT_XIP_REVERT",
182 "value": null
183 },
184 "xip-secondary-slot-address": {
185 "help": "Specify start address for secondary slot address in XIP-accessible memory. This is required if direct-xip is enabled.",
186 "value": null
George Becksteind82afbf2020-10-29 17:32:11 -0400187 }
188 }
189}