mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-22 11:13:07 +00:00
361e13f1d5
This adds a general board file based on MT7623 SoCs from MediaTek. As this u-boot is loaded by MTK proprietary preloader, there is no low level initializtion codes. Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
99 lines
1.5 KiB
C
99 lines
1.5 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright (C) 2018 MediaTek Inc.
|
|
*/
|
|
|
|
#ifndef __PRELOADER_H_
|
|
#define __PRELOADER_H_
|
|
|
|
enum forbidden_mode {
|
|
F_FACTORY_MODE = 0x0001
|
|
};
|
|
|
|
union lk_hdr {
|
|
struct {
|
|
u32 magic;
|
|
u32 size;
|
|
char name[32];
|
|
u32 loadaddr;
|
|
};
|
|
|
|
u8 data[512];
|
|
};
|
|
|
|
struct sec_limit {
|
|
unsigned int magic_num;
|
|
enum forbidden_mode forbid_mode;
|
|
};
|
|
|
|
enum bootmode {
|
|
NORMAL_BOOT = 0,
|
|
META_BOOT = 1,
|
|
RECOVERY_BOOT = 2,
|
|
SW_REBOOT = 3,
|
|
FACTORY_BOOT = 4,
|
|
ADVMETA_BOOT = 5,
|
|
ATE_FACTORY_BOOT = 6,
|
|
ALARM_BOOT = 7,
|
|
|
|
KERNEL_POWER_OFF_CHARGING_BOOT = 8,
|
|
LOW_POWER_OFF_CHARGING_BOOT = 9,
|
|
|
|
FAST_BOOT = 99,
|
|
DOWNLOAD_BOOT = 100,
|
|
UNKNOWN_BOOT
|
|
};
|
|
|
|
enum boot_reason {
|
|
BR_POWER_KEY = 0,
|
|
BR_USB,
|
|
BR_RTC,
|
|
BR_WDT,
|
|
BR_WDT_BY_PASS_PWK,
|
|
BR_TOOL_BY_PASS_PWK,
|
|
BR_2SEC_REBOOT,
|
|
BR_UNKNOWN
|
|
};
|
|
|
|
enum meta_com_type {
|
|
META_UNKNOWN_COM = 0,
|
|
META_UART_COM,
|
|
META_USB_COM
|
|
};
|
|
|
|
struct da_info_t {
|
|
u32 addr;
|
|
u32 arg1;
|
|
u32 arg2;
|
|
u32 len;
|
|
u32 sig_len;
|
|
};
|
|
|
|
struct boot_argument {
|
|
u32 magic;
|
|
enum bootmode boot_mode;
|
|
u32 e_flag;
|
|
u32 log_port;
|
|
u32 log_baudrate;
|
|
u8 log_enable;
|
|
u8 part_num;
|
|
u8 reserved[2];
|
|
u32 dram_rank_num;
|
|
u32 dram_rank_size[4];
|
|
u32 boot_reason;
|
|
enum meta_com_type meta_com_type;
|
|
u32 meta_com_id;
|
|
u32 boot_time;
|
|
struct da_info_t da_info;
|
|
struct sec_limit sec_limit;
|
|
union lk_hdr *part_info;
|
|
u8 md_type[4];
|
|
u32 ddr_reserve_enable;
|
|
u32 ddr_reserve_success;
|
|
u32 chip_ver;
|
|
char pl_version[8];
|
|
};
|
|
|
|
#define BOOT_ARGUMENT_MAGIC 0x504c504c
|
|
|
|
#endif /* __PRELOADER_H_ */
|