WXK
2024-09-18 05e2e954bd127de378a9d1dfbb0ed95d725aad63
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
/*
 * Copyright (c) 2022 Shanghai Panchip Microelectronics Co.,Ltd.
 *
 * SPDX-License-Identifier: Apache-2.0
 */
 
#ifndef IMAGE_MAP_CONFIG__H
#define IMAGE_MAP_CONFIG__H
 
#define CONFIG_BARE_IMAGE                 1
#define CONFIG_OTA_IN_BOOTLOADER         0
 
 
 
#define SIZE_512K                         0x7F000
#define SIZE_1M                            0xFF000
#define SIZE_BOOTLOADER                    0xA000
#define SIZE_FIXED_APP_IMAGE            0x37000
#define SIZE_FIXED_USER_FLASH            0x7000
 
 
/* bare program which means it can work without bootloader
 * note image start at 0 address,and user can modify CONFIG_USER_FLASH_EXTENDED_SIZE size
 */
#if (CONFIG_BARE_IMAGE)
#define SIZE_IMAGE_HEADER                 0
#define CONFIG_USER_FLASH_EXTENDED_SIZE (0) /* user can change the value */
#define APP_IMAGE_START 0x00000000
#define APP_IMAGE_SIZE    (SIZE_512K - SIZE_FIXED_USER_FLASH - CONFIG_USER_FLASH_EXTENDED_SIZE)
 
/* ota in bootloader and there are have no backup area. so it can expand image size user can use
 * note it does not support ble ota
 */
#elif (CONFIG_OTA_IN_BOOTLOADER)
#define SIZE_IMAGE_HEADER                 512
#define CONFIG_IMAGE_EXTENDED_SIZE        (120 * 1024)    /* user can change the value */    
#define CONFIG_USER_FLASH_EXTENDED_SIZE (100 * 1024)    /* user can change the value */
#define APP_IMAGE_START 0x0000A000
#define APP_IMAGE_SIZE    (SIZE_FIXED_APP_IMAGE + CONFIG_IMAGE_EXTENDED_SIZE)
#if (APP_IMAGE_SIZE + CONFIG_USER_FLASH_EXTENDED_SIZE + SIZE_BOOTLOADER > SIZE_512K) /* todo author:chao */
    #error config ota in bootloader flash map over 508K
#endif
 
/* ota in bootloader and there are have a backup area. 
 * note it is used to adapt to condition that use want to ota in ble ways
 */
#else
#define SIZE_IMAGE_HEADER                 512
#define CONFIG_USER_FLASH_EXTENDED_SIZE (0)        /* user can change the value */
#define APP_IMAGE_START 0x0000A000
#define APP_IMAGE_SIZE    (SIZE_FIXED_APP_IMAGE - CONFIG_USER_FLASH_EXTENDED_SIZE)
#endif
 
#endif