blob: 9bbc2563df3b2074cdc9d689622775678367394a [file] [log] [blame]
qi.wang720127e2023-11-15 21:40:13 +08001#ifndef _ZAPPER_BOOT_COMMON_H_
2#define _ZAPPER_BOOT_COMMON_H_
3
4/* Start---uboot command parameters---*/
5
linyang.lie3b0a712024-05-16 16:48:25 +08006#define NO_DETAIL (0)
7#define NEED_DETAIL (1)
qi.wang720127e2023-11-15 21:40:13 +08008/* End---uboot command parameters---*/
9
10/* Start---ZAPPER USB parameters---*/
11#define MAX_USB_FILES (50)
12
linyang.lie3b0a712024-05-16 16:48:25 +080013#define MAX_NAMES (50) //zapper file max name number
qi.wang720127e2023-11-15 21:40:13 +080014
linyang.lie3b0a712024-05-16 16:48:25 +080015#define NAME_LENGTH (256) //zapper file max name length
qi.wang720127e2023-11-15 21:40:13 +080016
17#define CMD_USB_START "usb start "
18
linyang.lie3b0a712024-05-16 16:48:25 +080019#define CMD_USB_LS "fatls usb 0" //The usb flash port corresponds to usb 0
qi.wang720127e2023-11-15 21:40:13 +080020
21
22/* End---ZAPPER USB parameters---*/
23
24
25/* Start---ZAPPER return value---*/
linyang.lie3b0a712024-05-16 16:48:25 +080026#define ZAPPER_FOUND_SDL (1)
27#define ZAPPER_NON_SDL (0)
qi.wang720127e2023-11-15 21:40:13 +080028
linyang.lie3b0a712024-05-16 16:48:25 +080029#define ZAPPER_ERROR (1)
30#define ZAPPER_SUCCESS (0)
qi.wang720127e2023-11-15 21:40:13 +080031
32/* End---ZAPPER return value---*/
33
34/* Start---ZAPPER Info in nand---*/
linyang.lie3b0a712024-05-16 16:48:25 +080035#define BBCB_HEADER_LENGTH (12)
36#define UK_HEADER_LENGTH (538)
37#define KERNEL_HEADER_LENGTH (538)
38#define WORK100_HEADER_LENGTH (538)
39#define WORK200_HEADER_LENGTH (538)
40#define WORK300_HEADER_LENGTH (538)
qi.wang720127e2023-11-15 21:40:13 +080041
linyang.lie3b0a712024-05-16 16:48:25 +080042#define BBCB_LENGTH (24)
43#define UK_LENGTH (528)
44//#define KERNEL_LENGTH (7690240)
45//#define KERNEL_LENGTH (12582912) //MAX LENGTH
46#define KERNEL_LENGTH (12) //MAX LENGTH
47#define WORK100_LENGTH (4096) //MAX LENGTH
48#define WORK200_LENGTH (4096) //MAX LENGTH
49#define WORK300_LENGTH (4096) //MAX LENGTH
qi.wang720127e2023-11-15 21:40:13 +080050
linyang.lid0a9d992024-04-15 21:07:10 +080051/****** LoaderPartition ******/
linyang.lie3b0a712024-05-16 16:48:25 +080052#define LD_HEADER_LENGTH (12)
qi.wang720127e2023-11-15 21:40:13 +080053
linyang.lid0a9d992024-04-15 21:07:10 +080054/* Size of Download info */
55#define LD_AREA_DOWNLOAD_INFO_SIZE (14) /* size of download_info, same with downloader loadercore */
56/* Size of OTA parameters. */
linyang.lie3b0a712024-05-16 16:48:25 +080057#define OTA_PARAMETER_SIZE (98) /* included in shared-mem, same with downloader loadercore */
qi.wang720127e2023-11-15 21:40:13 +080058
linyang.lie3b0a712024-05-16 16:48:25 +080059/* Size definition for lc_shared_memory_st */
60#define LD_SHARED_MEM_OTA_PARAMETER_SIZE (3 * OTA_PARAMETER_SIZE)
61#define LD_SHARED_MEM_DOWNLOADINDICATOR_SIZE (1)
62#define LD_SHARED_MEM_RESERVED_SIZE (1)
63#define LD_SHARED_MEM_MIGRATIONINFO_SIZE (4)
64#define LD_SHARED_MEM_LASTDOWNLOADSTATUS_SIZE (5)
65#define LD_SHARED_MEM_INPUTDEVICE_SIZE (1)
66#define LD_SHARED_MEM_PORT_SIZE (2)
67#define LD_SHARED_MEM_CRC_SIZE (4)
68
69/* Size of shared-mem, same with downloader loadercore */
70#define LD_SHARED_MEM_SIZE (LD_SHARED_MEM_OTA_PARAMETER_SIZE + LD_SHARED_MEM_DOWNLOADINDICATOR_SIZE + LD_SHARED_MEM_RESERVED_SIZE + \
71 LD_SHARED_MEM_MIGRATIONINFO_SIZE + LD_SHARED_MEM_LASTDOWNLOADSTATUS_SIZE + LD_SHARED_MEM_INPUTDEVICE_SIZE + LD_SHARED_MEM_PORT_SIZE + \
72 LD_SHARED_MEM_CRC_SIZE) //312
qi.wang720127e2023-11-15 21:40:13 +080073
linyang.li1304a392024-04-20 16:36:22 +080074/* = LDR_SHARED_MEM_SIZE + LDR_AREA_DOWNLOAD_INFO_SIZE */
linyang.lie3b0a712024-05-16 16:48:25 +080075#define LD_LENGTH (LD_SHARED_MEM_SIZE + LD_AREA_DOWNLOAD_INFO_SIZE) //326
linyang.li1304a392024-04-20 16:36:22 +080076
linyang.lie3b0a712024-05-16 16:48:25 +080077/* Size definition for lc_ldflag_shared_data_st */
78#define EC_LENGTH (4)
79#define LD_MODIFY_FLAG_LENGTH (1)
80#define LD_REBOOT_FLAG_LENGTH (1)
81#define LD_DOWNLOAD_MODE_LENGTH (1)
82#define LD_STANDBY_FLAG_LENGTH (1)
83#define LD_ODU_BACKUP_LENGTH (1)
84#define LD_SHARE_DATA_CRC_LENGTH (4)
85
86#define LD_SHARED_DATA_LENGTH (EC_LENGTH + LD_MODIFY_FLAG_LENGTH + LD_REBOOT_FLAG_LENGTH + LD_DOWNLOAD_MODE_LENGTH + \
87 LD_STANDBY_FLAG_LENGTH + LD_ODU_BACKUP_LENGTH + LD_SHARE_DATA_CRC_LENGTH) //13
linyang.lid0a9d992024-04-15 21:07:10 +080088
89/* LD_HEADER_LENGTH(12) + LD_LENGTH(variable) + EC_LENGTH(4) + Modifyflag(1) + RebootFlag(1) + DownloadMode(1) */
linyang.lie3b0a712024-05-16 16:48:25 +080090#define LDFLAG_LENGTH (LD_HEADER_LENGTH + LD_LENGTH + LD_SHARED_DATA_LENGTH)
linyang.lid0a9d992024-04-15 21:07:10 +080091
92/****** LoaderPartition ******/
93
linyang.lie3b0a712024-05-16 16:48:25 +080094#define HWCONFIG_LENGTH (36) //BBCB_HEADER + BBCB_PAYLOAD
95#define LDSEC_LENGTH (1066) //UK_HEADER + UK_PAYLOAD
qi.wang720127e2023-11-15 21:40:13 +080096
97
linyang.lie3b0a712024-05-16 16:48:25 +080098#define ZAPPER_FLASH_MAX_ADDRESS (0x8000000) //nand flash max address
99#define ZAPPER_FLASH_DEV (0x0) //nand 0
qi.wang720127e2023-11-15 21:40:13 +0800100
101/* End---ZAPPER Info in nand---*/
102
103/* Start---ZAPPER key config ---*/
linyang.lie3b0a712024-05-16 16:48:25 +0800104#define KEY_DETECT_PERIOD (500) //ms
qi.wang720127e2023-11-15 21:40:13 +0800105/* End---ZAPPER key config---*/
106
107#endif