📄 bootprog.c
字号:
#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=0x20800000,0x200000 init=/linuxrc console=ttyS0,115200 devfs=mount";
//char *linux_params = "root=/dev/mtdblock3 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -