| 
									
										
										
										
											2021-05-10 04:56:51 +02:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * SPDX-License-Identifier: Apache-2.0 | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2016-08-17 23:08:22 +08:00
										 |  |  | #ifndef __BOOT_CONFIG_H__
 | 
					
						
							|  |  |  | #define __BOOT_CONFIG_H__
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <stdint.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | extern "C" | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2016-10-19 17:05:37 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-03-14 22:03:04 +08:00
										 |  |  | #include "esp_flash_partitions.h"
 | 
					
						
							| 
									
										
										
										
											2017-04-24 16:21:27 +10:00
										 |  |  | #include "soc/soc.h"
 | 
					
						
							| 
									
										
										
										
											2016-10-19 17:05:37 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-17 23:08:22 +08:00
										 |  |  | #define SPI_SEC_SIZE 0x1000
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define SPI_ERROR_LOG "spi flash error"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-18 15:31:19 +10:00
										 |  |  | #define MAX_OTA_SLOTS 16
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-17 23:08:22 +08:00
										 |  |  | typedef struct { | 
					
						
							| 
									
										
										
										
											2016-10-19 17:05:37 +08:00
										 |  |  |     esp_partition_pos_t ota_info; | 
					
						
							|  |  |  |     esp_partition_pos_t factory; | 
					
						
							|  |  |  |     esp_partition_pos_t test; | 
					
						
							| 
									
										
										
										
											2017-05-18 15:31:19 +10:00
										 |  |  |     esp_partition_pos_t ota[MAX_OTA_SLOTS]; | 
					
						
							| 
									
										
										
										
											2016-08-17 23:08:22 +08:00
										 |  |  |     uint32_t app_count; | 
					
						
							|  |  |  |     uint32_t selected_subtype; | 
					
						
							|  |  |  | } bootloader_state_t; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | bool flash_encrypt(bootloader_state_t *bs); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-16 20:35:41 +05:00
										 |  |  | /* Indices used by index_to_partition are the OTA index
 | 
					
						
							|  |  |  |    number, or these special constants */ | 
					
						
							|  |  |  | #define FACTORY_INDEX (-1)
 | 
					
						
							|  |  |  | #define TEST_APP_INDEX (-2)
 | 
					
						
							|  |  |  | #define INVALID_INDEX (-99)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-17 23:08:22 +08:00
										 |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* __BOOT_CONFIG_H__ */
 |