53 lines
1.4 KiB
C
Executable File
53 lines
1.4 KiB
C
Executable File
#ifndef SYS_LINUXBOOT_H
|
|
#define SYS_LINUXBOOT_H
|
|
|
|
typedef struct _FDT_INFO {
|
|
unsigned int linux_addr;
|
|
unsigned int linux_size;
|
|
unsigned int linuxtmp_addr;
|
|
unsigned int linuxtmp_size;
|
|
unsigned int bridge_addr;
|
|
unsigned int bridge_size;
|
|
// following are for check memory partition
|
|
unsigned int dram_addr;
|
|
unsigned int dram_size;
|
|
unsigned int fdt_addr;
|
|
unsigned int fdt_size;
|
|
unsigned int rtos_addr;
|
|
unsigned int rtos_size;
|
|
unsigned int hdal_addr;
|
|
unsigned int hdal_size;
|
|
unsigned int shmem_addr;
|
|
unsigned int shmem_size;
|
|
} FDT_INFO;
|
|
|
|
typedef struct _LINUXTMP_PARTITION {
|
|
unsigned int tmp_begin;
|
|
unsigned int tmp_curr;
|
|
unsigned int tmp_end;
|
|
unsigned int tmp2_begin; // if it available, means small dram.
|
|
unsigned int tmp2_curr; // use the memory 8MB - rtos_addr
|
|
unsigned int tmp2_end; // to store fdt and ramdisk
|
|
unsigned int fdt_addr;
|
|
unsigned int fdt_size;
|
|
unsigned int ramfs_addr;
|
|
unsigned int ramfs_size;
|
|
unsigned int bootargs_addr;
|
|
unsigned int bootargs_size;
|
|
unsigned int lz_linux_addr;
|
|
unsigned int lz_linux_size;
|
|
unsigned int nvtpack_addr;
|
|
unsigned int nvtpack_size;
|
|
} LINUXTMP_PARTITION;
|
|
|
|
typedef struct _LINUXBOOT_INFO {
|
|
FDT_INFO fdt_info;
|
|
LINUXTMP_PARTITION linuxtmp;
|
|
} LINUXBOOT_INFO;
|
|
|
|
int linuxboot_setup(LINUXBOOT_INFO *p_info);
|
|
void linuxboot_go(LINUXBOOT_INFO *p_linuxtmp);
|
|
int linuxboot_set_flash_preload(LINUXBOOT_INFO *p_info); //optional, for fastboot-ai on nor
|
|
void linuxboot_set_extra_bootarg(char* bootarg);
|
|
#endif
|