blob: be79f0da95d94b9b28fdba7ae52f5d1a9b87976c [file] [log] [blame]
/*******************************************************************************
* Copyright 2016, MARVELL SEMICONDUCTOR, LTD. *
* THIS CODE CONTAINS CONFIDENTIAL INFORMATION OF MARVELL. *
* NO RIGHTS ARE GRANTED HEREIN UNDER ANY PATENT, MASK WORK RIGHT OR COPYRIGHT *
* OF MARVELL OR ANY THIRD PARTY. MARVELL RESERVES THE RIGHT AT ITS SOLE *
* DISCRETION TO REQUEST THAT THIS CODE BE IMMEDIATELY RETURNED TO MARVELL. *
* THIS CODE IS PROVIDED "AS IS". MARVELL MAKES NO WARRANTIES, EXPRESSED, *
* IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. *
* *
* MARVELL COMPRISES MARVELL TECHNOLOGY GROUP LTD. (MTGL) AND ITS SUBSIDIARIES, *
* MARVELL INTERNATIONAL LTD. (MIL), MARVELL TECHNOLOGY, INC. (MTI), MARVELL *
* SEMICONDUCTOR, INC. (MSI), MARVELL ASIA PTE LTD. (MAPL), MARVELL JAPAN K.K. *
* (MJKK), MARVELL ISRAEL LTD. (MSIL). *
*******************************************************************************/
#ifndef _LOAD_VT_H_
#define _LOAD_VT_H_
#include "gpt.h"
#define PARTITION_NOT_EXIST (-1)
//FIXME: u-boot use this format to set UTF16 charactors currently
#ifndef CONFIG_AB_BOOTFLOW
#define TZK_NORMAL_NAME "tz_en"
#define TZK_NORMALB_NAME "tz_en-B"
#define TZK_RECOVERY_NAME "tzk_recovery"
#define POST_BL_NAME "post-bootloader"
#define BL_NORMAL_NAME "post-bootloader"
#define BL_NORMALB_NAME "postbootloaderB"
#define BL_RECOVERY_NAME "bl_recovery"
#define MISC_NAME "misc"
#else
#define MISC_NAME "misc"
#define FRP_NAME "frp"
#define KERNEL_A_NAME "kernel_a"
#define KERNEL_B_NAME "kernel_b"
#define TZK_A_NAME "tz_en_a"
#define TZK_B_NAME "tz_en_b"
#define BL_A_NAME "bootloader_a"
#define BL_B_NAME "bootloader_b"
#define FASTBOOT_A_NAME "fastboot_a"
#define FASTBOOT_B_NAME "fastboot_b"
#define KEY_A_NAME "key_a"
#define KEY_B_NAME "key_b"
#define DTBO_A_NAME "dtbo_a"
#define DTBO_B_NAME "dtbo_b"
#endif
void dump_gpt_table(void);
int parse_gpt_table(struct gpt_hdr * hdr, struct gpt_ent * entry);
int get_gpt(void * tbuff);
int find_partition(const char * name);
int fetch_partition_info(int num, struct gpt_ent *gpte);
unsigned int get_gpt_entry_number();
long long read_image(struct gpt_ent *gpte, unsigned int image_size, unsigned char *image_buff);
long long read_image_from_offset(struct gpt_ent *gpte, unsigned int pt_offset, unsigned int size, unsigned char *image_buf);
//void set_flash_ts_param(char *param_buf);
long long read_image_by_ptname(const char *module_name, unsigned int image_size, unsigned char *image_buff);
int get_partition_info(void * tbuff);
#endif