bootprog.c
来自「YL9200开发板的BIOS9200源码」· C语言 代码 · 共 35 行
C
35 行
#include "def.h"
#include "config.h"
#include "console.h"
#include "params.h"
#include "slib.h"
void start_kernel(U32 address, U32 initrd)
{
int i;
void (*run)(int zero, int arch);
//set mem=32m console=ttyS0 in 2.4.21, mem=31m console=ttyS4 in 2.4.19
// char *linux_params = "root=/dev/ram rw mem=31m initrd=0x21000000,0x200000 init=/linuxrc console=ttyS0,115200";
char *linux_params = "root=/dev/mtdblock4 rootfstype=yaffs mem=32m load_ramdisk=0 init=/linuxrc console=ttyS0,115200 devfs=mount";
// char *linux_params = "ramdisk_size=8192 init=/linuxrc console=ttyS0,115200, devfs=mount";
struct param_struct *params = (struct param_struct *)0x20000100;
for(i=0; i<(sizeof(struct param_struct)>>2); i++)
((U32 *)params)[i] = 0;
params->u1.s.page_size = LINUX_PAGE_SIZE;
params->u1.s.nr_pages = (0x2000000 >> LINUX_PAGE_SHIFT);
for(i=0; linux_params[i]; i++)
params->commandline[i] = linux_params[i];
putch('\n');
delay(10);
DisableInt();
MMU_DisableICache();
MMU_InvalidateICache();
run = (void (*)(int, int))address;
run(0, LINUX_MACHINE_ID);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?