-
Notifications
You must be signed in to change notification settings - Fork 3
/
hisi_partition.h
298 lines (288 loc) · 13.4 KB
/
hisi_partition.h
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
/*
* Copyright (c) Huawei Technologies Co., Ltd. 2016-2020. All rights reserved.
* Description: partition table common head file
* Author: gengjianfeng
* Create: 2016-03-30
*/
#ifndef _HISI_PARTITION_TABLE_H_
#define _HISI_PARTITION_TABLE_H_
enum {
EMMC_USER_PART = 0x0,
EMMC_BOOT_MAJOR_PART = 0x1,
EMMC_BOOT_BACKUP_PART = 0x2,
};
enum {
UFS_PART_0 = 0x0,
UFS_PART_1 = 0x1,
UFS_PART_2 = 0x2,
UFS_PART_3 = 0x3,
UFS_PART_4 = 0x4,
};
#define PART_NAMELEN (36)
#define MAX_UFS_LUN (8)
#define UFS_OFFSET_128KB (128*1024)
#define UFS_PTABLE_SIZE_17KB (17*1024)
#define PART_DDRTEST_START (24*1024*1024+668*1024)
#if ((defined CONFIG_HISI_PARTITION_HI3650) || (defined CONFIG_HISI_PARTITION_HI6250))
/*ptable*/
#define SECBOOT_PTN_PTABLE_START (0)
#define SECBOOT_PTN_PTABLE_SIZE (512 * 1024)
#define SECBOOT_PTN_PTABLE_FLAGS (EMMC_USER_PART)
/*xloader*/
#define SECBOOT_PTN_XLOADER_START (0)
#define SECBOOT_PTN_XLOADER_SIZE (256 * 1024)
#define SECBOOT_PTN_XLOADER_FLAGS (EMMC_BOOT_MAJOR_PART)
/*vrl*/
#define SECBOOT_PTN_VRL_START (512 * 1024)
#define SECBOOT_PTN_VRL_SIZE (256 * 1024)
#define SECBOOT_PTN_VRL_FLAGS (EMMC_USER_PART)
/*vrl backup*/
#define SECBOOT_PTN_VRL_BACKUP_START (768 * 1024)
#define SECBOOT_PTN_VRL_BACKUP_SIZE (256 * 1024)
#define SECBOOT_PTN_VRL_BACKUP_FLAGS (EMMC_USER_PART)
/*fastboot*/
#define SECBOOT_PTN_FASTBOOT_START (2048 * 1024)
#define SECBOOT_PTN_FASTBOOT_SIZE (4096 * 1024)
#define SECBOOT_PTN_FASTBOOT_FLAGS (EMMC_USER_PART)
#endif
#ifndef CONFIG_USER_MODE
#define HIBENCH_ENG_STORAGE_START 0x600000000
#define HIBENCH_SLT_STORAGE_START 0x640000000
#endif
/*partition macro definition*/
#define PART_XLOADER "xloader"
#define PART_XLOADER_INSE "xloader_inse"
#define PART_PTABLE "ptable"
#define PART_VRL "vrl"
#define PART_VRL_BACKUP "vrl_backup"
#define PART_FW_LPM3 "fw_lpm3"
#define PART_FRP "frp"
#define PART_FASTBOOT "fastboot"
#define PART_MODEMNVM_FACTORY "modemnvm_factory"
#define PART_NVME "nvme"
#define PART_OEMINFO "oeminfo"
#define PART_MODEMNVM_BACKUP "modemnvm_backup"
#define PART_MODEMNVM_IMG "modemnvm_img"
#define PART_MODEMNVM_SYSTEM "modemnvm_system"
#define PART_SECURE_STORAGE "secure_storage"
#define PART_3RDMODEMNVM "3rdmodemnvm"
#define PART_3RDMODEMNVMBKP "3rdmodemnvmbkp"
#define PART_PERSIST "persist"
#define PART_MODEM_OM "modem_om"
#define PART_SPLASH "splash"
#define PART_SPLASH2 "splash2"
#define PART_MISC "misc"
#define PART_MODEMNVM_UPDATE "modemnvm_update"
#define PART_KPATCH "kpatch"
#define PART_ERECOVERY "erecovery"
#define PART_ERECOVERY_KERNEL "erecovery_kernel"
#define PART_ERECOVERY_RAMDISK "erecovery_ramdisk"
#define PART_ERECOVERY_VENDOR "erecovery_vendor"
#define PART_TEEOS "teeos"
#define PART_TRUSTFIRMWARE "trustfirmware"
#define PART_EXT_SENSORHUB "ext_sensorhub"
#define PART_SENSORHUB "sensorhub"
#define PART_FW_HIFI "fw_hifi"
#define PART_KERNEL "kernel"
#define PART_RAMDISK "ramdisk"
#define PART_RECOVERY "recovery"
#define PART_RECOVERY_RAMDISK "recovery_ramdisk"
#define PART_RECOVERY_VENDOR "recovery_vendor"
#define PART_DTS "dts"
#define PART_DTO "dto"
#define PART_DTBO "dtbo"
#define PART_MODEM "modem"
#define PART_MODEM_DSP "modem_dsp"
#define PART_MODEM_DTB "modem_dtb"
#define PART_MODEM_FW "modem_fw"
#define PART_MODEM_VENDOR "modem_verdor"
#define PART_DFX "dfx"
#define PART_3RDMODEM "3rdmodem"
#define PART_CACHE "cache"
#define PART_HISITEST0 "hisitest0"
#define PART_HISITEST1 "hisitest1"
#define PART_HISITEST2 "hisitest2"
#define PART_SYSTEM "system"
#define PART_CUST "cust"
#define PART_ODM "odm"
#define PART_VARIABLE "variable"
#define PART_EFI "efi"
#define PART_ROOT "root"
#define PART_HOME "home"
#define PART_HYPERHOLD "hyperhold"
#define PART_USERDATA "userdata"
#define PART_USERDATA2 "userdata2"
#define PART_RESERVED "reserved"
#define PART_RESERVED0 "reserved0"
#define PART_RESERVED1 "reserved1"
#define PART_RESERVED2 "reserved2"
#define PART_RESERVED3 "reserved3"
#define PART_RESERVED4 "reserved4"
#define PART_RESERVED5 "reserved5"
#define PART_HIBENCH_IMG "hibench_img"
#define PART_RESERVED6 "reserved6"
#define PART_RESERVED7 "reserved7"
#define PART_RESERVED8 "reserved8"
#define PART_RESERVED9 "reserved9"
#define PART_RESERVED10 "reserved10"
#define PART_RESERVED11 "reserved11"
#define PART_RESERVED12 "reserved12"
#define PART_FW_UFSDEV "fw_ufsdev"
#define PART_HHEE "hhee"
#define PART_HHEE_A "hhee_a"
#define PART_ISP_BOOT "isp_boot"
#define PART_ISP_FIRMWARE "isp_firmware"
#define PART_ISP_DTS "isp_dts"
#define PART_HISEE_FS "hisee_fs"
#define PART_HISEE_FS_A "hisee_fs_a"
#define PART_HISEE_IMG "hisee_img"
#define PART_VECTOR "vector"
#define PART_VERSION "version"
#define PART_VENDOR "vendor"
#define PART_VERSION "version"
#define PART_PRODUCT "product"
#define PART_PRELOAD "preload"
#define PART_METADATA "metadata"
#define PART_PREAS "preas"
#define PART_PREAVS "preavs"
#define PART_HKRR "hkrr"
#define PART_PRETS "prets"
#define PART_PRETVS "pretvs"
/*AB*/
#define PART_PTABLE_LU2 "ptable_lu2"
#define PART_PTABLE_LU3 "ptable_lu3"
#define PART_PTABLE_LU4 "ptable_lu4"
#define PART_PTABLE_LU5 "ptable_lu5"
#define PART_PTABLE_LU6 "ptable_lu6"
#define PART_XLOADER_A "xloader_a"
#define PART_XLOADER_INSE_A "xloader_inse_a"
#define PART_XLOADER_B "xloader_b"
#define PART_XLOADER_INSE_B "xloader_inse_b"
#define PART_PTABLE_ENHANCED "ptable_enhanced"
#define PART_PTABLE_PROTECT_A "ptable_protect_a"
#define PART_PTABLE_PROTECT_B "ptable_protect_b"
#define PART_PTABLE_NORMAL "ptable_normal"
#define PART_FW_LPM3_A "fw_lpm3_a"
#define PART_FW_LPM3_B "fw_lpm3_b"
#define PART_FASTBOOT_A "fastboot_a"
#define PART_FASTBOOT_B "fastboot_b"
#define PART_ERECOVERY_KERNEL_A "erecovery_kernel_a"
#define PART_ERECOVERY_KERNEL_B "erecovery_kernel_b"
#define PART_ERECOVERY_RAMDISK_A "erecovery_ramdisk_a"
#define PART_ERECOVERY_RAMDISK_B "erecovery_ramdisk_b"
#define PART_ERECOVERY_VENDOR_A "erecovery_vendor_a"
#define PART_ERECOVERY_VENDOR_B "erecovery_vendor_b"
#define PART_TEEOS_A "teeos_a"
#define PART_TEEOS_B "teeos_b"
#define PART_TRUSTFIRMWARE_A "trustfirmware_a"
#define PART_TRUSTFIRMWARE_B "trustfirmware_b"
#define PART_SENSORHUB_A "sensorhub_a"
#define PART_SENSORHUB_B "sensorhub_b"
#define PART_FW_HIFI_A "fw_hifi_a"
#define PART_FW_HIFI_B "fw_hifi_b"
#define PART_KERNEL_A "kernel_a"
#define PART_KERNEL_B "kernel_b"
#define PART_RAMDISK_A "ramdisk_a"
#define PART_RAMDISK_B "ramdisk_b"
#define PART_RECOVERY_VENDOR_B "recovery_vendor_b"
#define PART_RECOVERY_VENDOR_A "recovery_vendor_a"
#define PART_RECOVERY_RAMDISK_A "recovery_ramdisk_a"
#define PART_RECOVERY_RAMDISK_B "recovery_ramdisk_b"
#define PART_MODEMNVM_UPDATE_A "modemnvm_update_a"
#define PART_MODEMNVM_UPDATE_B "modemnvm_update_b"
#define PART_DTS_A "dts_a"
#define PART_DTS_B "dts_b"
#define PART_DTO_A "dto_a"
#define PART_DTO_B "dto_b"
#define PART_MODEM_FW_A "modem_fw_a"
#define PART_MODEM_FW_B "modem_fw_b"
#define PART_SYSTEM_A "system_a"
#define PART_SYSTEM_B "system_b"
#define PART_CUST_A "cust_a"
#define PART_CUST_B "cust_b"
#define PART_ODM_A "odm_a"
#define PART_ODM_B "odm_b"
#define PART_RESERVED2_A "reserved2_a"
#define PART_RESERVED2_B "reserved2_b"
#define PART_RESERVED3_A "reserved3_a"
#define PART_RESERVED3_B "reserved3_b"
#define PART_RESERVED4_A "reserved4_a"
#define PART_RESERVED4_B "reserved4_b"
#define PART_ISP_BOOT_A "isp_boot_a"
#define PART_ISP_BOOT_B "isp_boot_b"
#define PART_ISP_FIRMWARE_A "isp_firmware_a"
#define PART_ISP_FIRMWARE_B "isp_firmware_b"
#define PART_ISP_DTS_A "isp_dts_a"
#define PART_ISP_DTS_B "isp_dts_b"
#define PART_HISEE_FS_A "hisee_fs_a"
#define PART_HISEE_FS_B "hisee_fs_b"
#define PART_HISEE_IMG_A "hisee_img_a"
#define PART_HISEE_IMG_B "hisee_img_b"
#define PART_VECTOR_A "vector_a"
#define PART_VECTOR_B "vector_b"
#define PART_VERSION_A "version_a"
#define PART_VERSION_B "version_b"
#define PART_VENDOR_A "vendor_a"
#define PART_VENDOR_B "vendor_b"
#define PART_PRODUCT_A "product_a"
#define PART_PRODUCT_B "product_b"
#define PART_BOOTFAIL_INFO "bootfail_info"
#define PART_RRECORD "rrecord"
#define PART_PATCH "patch"
#define PART_PATCH_A "patch_a"
#define PART_PATCH_B "patch_b"
#define PART_MODEM_SECURE "modem_secure"
#define PART_DDR_PARA "ddr_para"
#define PART_HISEE_ENCOS "hisee_encos"
#define PART_HIBENCH_DATA "hibench_data"
#define PART_HIBENCH_LOG "hibench_log"
#define PART_HIBENCH_LPM3 "hibench_lpm3"
#define PART_MODEMNVM_CUST_A "modemnvm_cust_a"
#define PART_MODEMNVM_CUST "modemnvm_cust"
#define PART_HDCP "hdcp"
#define PART_HDCP_A "hdcp_a"
#define PART_VERITYKEY "veritykey"
#define PART_CTF "certification"
#define PART_VBMETA_A "vbmeta_a"
#define PART_VBMETA "vbmeta"
#define PART_RECOVERY_VBMETA "recovery_vbmeta"
#define PART_RECOVERY_VBMETA_A "recovery_vbmeta_a"
#define PART_ERECOVERY_VBMETA "erecovery_vbmeta"
#define PART_ERECOVERY_VBMETA_A "erecovery_vbmeta_a"
#define PART_FLASH_AGEING "flash_ageing"
#define PART_ENG_SYSTEM_A "eng_system_a"
#define PART_ENG_VENDOR_A "eng_vendor_a"
#define PART_ENG_SYSTEM "eng_system"
#define PART_ENG_VENDOR "eng_vendor"
#define PART_PRELOAD_A "preload_a"
#define PART_PRELOAD_B "preload_b"
#define PART_IVP "ivp"
#define PART_LOWPOWER_PARA "lowpower_para"
#define PART_BATT_TP_PARA "batt_tp_para"
#define PART_MODEM_PATCH_NV_A "modem_patch_nv_a"
#define PART_MODEM_PATCH_NV "modem_patch_nv"
#define PART_MODEM_DRIVER_A "modem_driver_a"
#define PART_MODEM_DRIVER "modem_driver"
#define PART_HIEPS "hieps"
#define PART_HIEPS_A "hieps_a"
#define PART_HIEPS_B "hieps_b"
#define PART_DICE "dice"
#define PART_NPU "npu"
#define PART_BL2 "bl2"
#define PART_VBMETA_SYSTEM "vbmeta_system"
#define PART_VBMETA_VENDOR "vbmeta_vendor"
#define PART_VBMETA_ODM "vbmeta_odm"
#define PART_VBMETA_CUST "vbmeta_cust"
#define PART_HW_PRODUCT "hw_product"
#define PART_VBMETA_HW_PRODUCT "vbmeta_hw_product"
#define PART_BOOT "boot"
#define PART_SUPER "super"
#define PART_FTTEST "fttest"
#define PART_DDRTEST "ddrtest"
#define PART_HW_PRODUCT_A "hw_product_a"
#define PART_HW_PRODUCT_B "hw_product_b"
#define PART_SECURITY_DTB "security_dtb"
#define PART_FW_DTB "fw_dtb"
#define PART_SECFLASH_AGEING "secflash_ageing"
#define PART_TOC "toc"
#endif