📄 bios.h
字号:
#ifndef __BIOS_H#define __BIOS_H/* partition */#define PART_MAX_NUM 8/* partition flag */#define PART_FLAG_NONE 0#define PART_FLAG_DISK 1#define PART_FLAG_NET 2/* partition type */#define PART_TYPE_RO 0#define PART_TYPE_RW 1/* image type */#define IMAGE_OTHER 0#define IMAGE_UCLINUX 1/* uclinux parameters */#define UCLINUX_EXEC_ADDR 0x00008000#define UCLINUX_PARAM_ADDR 0x00000100/* string buffer */#define CMD_LENGTH 128#define PASSWD_LENGTH 16/* user flags */#define USERFLAG_NONE 0#define USERFLAG_MEMORY 1#define USERFLAG_BIOS 2/* boot modes */#define BOOT_MENU 0#define BOOT_BIOS_SETUP 1#define BOOT_RUN_FDISK 2#define BOOT_LOAD_IMAGE 3#define BOOT_UPDATE_IMAGE 4#define BOOT_REBOOT 5/* setup operations */#define SETUP_CPU 0#define SETUP_ROM 1#define SETUP_DRAM 2#define SETUP_EXTIO 3#define SETUP_ETH 4#define SETUP_BOOT_MODE 5#define SETUP_PASSWD 6#define SETUP_LOAD_DEF 7/* eth operations */#define ETH_DISPLAY_IP 0#define ETH_DISPLAY_MAC 1#define ETH_SET_IP 2#define ETH_SET_MAC 3/* fdisk operations */#define FDISK_DISPLAY_PART 0#define FDISK_DISPLAY_PARAM 1#define FDISK_CREATE_PART 2#define FDISK_DELETE_PART 3#define FDISK_SET_BOOT 4/* vendor and device id */#define COMPEX_VENDOR_ID 0x11F6#define IRE201_DEVICE_ID 0x8000#define NP15B_DEVICE_ID 0x8001#define BTE201_DEVICE_ID 0x8002#define GENERAL_VENDOR_ID 0x5555#define GENERAL_DEVICE_ID 0xaaaa#define NONE_VENDOR_ID 0x0000#define NONE_DEVICE_ID 0x0000typedef int (BIOSCALL)(unsigned long id, unsigned long arg);typedef int (GUNZIP)(unsigned char *inbuf, unsigned long *insize, \ unsigned char *outbuf, unsigned long *outsize);struct partition_struct { /* partition */ unsigned char flag; unsigned char type; unsigned long offset; unsigned long size; /* parameter */ unsigned char image_type; unsigned char gzipped_image; unsigned long exec_addr; unsigned long param_addr; char command_line[CMD_LENGTH];};struct partition_table_struct { int boot_partition; struct partition_struct partition[PART_MAX_NUM];};struct sys_regs_struct { unsigned long extdbwth; unsigned long romcon[6]; unsigned long dramcon[4]; unsigned long refextcon;};struct sys_dram_cfg { unsigned long size; unsigned long width; unsigned long flag; unsigned long refresh; /* dram options */ unsigned char trcd; unsigned char trp; unsigned char can; /* refresh options */ unsigned char ref_trc; unsigned char ref_period;};struct sys_rom_cfg { unsigned long size; unsigned long width; unsigned long flag; /* sram/rom options */ unsigned char pmc; unsigned char tpa; unsigned char tacc;};struct sys_ext_cfg { unsigned long width; unsigned long flag; /* options */ unsigned char tcos; unsigned char tacs; unsigned char tcoh; unsigned char tacc;};struct sys_cpu_cfg { unsigned long reg_syscfg; unsigned long reg_clkcon; /* cache/write buffer */ unsigned char cache_size; unsigned char wbuf_on; /* clock */ unsigned char clk_div;};struct sys_iop_cfg { unsigned long iopmod; unsigned long iopcon; unsigned long iopdata;};struct sys_eth_cfg { unsigned char mac_addr[6]; unsigned long ip_addr;};struct system_table_struct { unsigned long vendor_id; unsigned long device_id; unsigned long rev; unsigned long system_table_size; unsigned long partition_table_offset; unsigned long partition_table_size; unsigned long default_table_offset; struct sys_rom_cfg rom_table[6]; struct sys_dram_cfg dram_table[4]; struct sys_ext_cfg ext_table[4]; struct sys_cpu_cfg cpu; struct sys_iop_cfg iop; struct sys_eth_cfg eth; unsigned long bios_size; unsigned long startup_mode; char password[PASSWD_LENGTH];};struct flash_erase_struct { unsigned long addr; unsigned long size;};struct flash_read_struct { unsigned long from; unsigned long len; unsigned long retlen; unsigned char *buf;};struct flash_write_struct { unsigned long to; unsigned long len; unsigned long retlen; unsigned char *buf;};struct biosapi_init_struct { unsigned long rom_base; unsigned long dram_base; unsigned long system_table_offset; struct system_table_struct *system_table;};struct config_table_struct { unsigned short vendor_id; unsigned short device_id; unsigned long rev; unsigned long system_table_offset; unsigned long system_table_size; unsigned long partition_table_offset; unsigned long partition_table_size; unsigned long default_table_offset; unsigned long bios_offset; unsigned long bios_size; unsigned long rom_base; unsigned long rom_size; unsigned long dram_base; unsigned long dram_size; unsigned long startup_mode; unsigned long userflag;};#endif /* __BIOS_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -