📄 param.c
字号:
#include "PaRAM.h"
#include "UART.h"
#include "Fat.h"
#include <string.h>
void setup_linux_param(unsigned int param_base)
{
param_struct *params = (param_struct *)param_base;
// char *linux_cmd;
// linux_cmd=ReadCmd((unsigned char *)"CmdLine",(unsigned char *)"ini");
char linux_cmd[]="root=1f02 init=/linuxrc console=ttyS0,115200";
//char linux_cmd[]="root=/dev/ram rw initrd=0x30800000,0x400000 ramdisk_size=0x400000 consloe=ttyS0,115200 mem=64M";
//char linux_cmd[]="noinitrd root=/dev/nfs rw nfsroot=192.168.1.22:/home/working/nfs/rootfs ip=192.168.1.2:192.168.1.22::255.255.255.0 console=ttySAC0,115200 init=/linuxrc mem=64M";
//char linux_cmd[]="mem=64M initrd=0x30800000,0x400000 root=/dev/ram0 rw console=ttyS0 115200";
//char linux_cmd[]="initrd=0x30800000,0x400000 root=/dev/ram init=/linuxrc console=ttyS0 115200";
//char linux_cmd[]="noinitrd root=/dev/bon/3 init=/linuxrc console=ttyS0";
Uart_Printf(0,"Setup linux parameters at 0x%08lx\n", param_base);
memset(params, 0, sizeof(param_struct));
params->u1.s.page_size = LINUX_PAGE_SIZE;
params->u1.s.nr_pages = (DRAM_SIZE >> LINUX_PAGE_SHIFT);
// params->u1.s.ramdisk_size = 0x400000;
// params->u1.s.rootdev = rootdev;
// params->u1.s.flags = 0;
/* params->u1.s.initrd_start = ?;
params->u1.s.initrd_size = ?;
params->u1.s.rd_start = ?;
*/
#if 0
params->u1.s.page_size = LINUX_PAGE_SIZE;
params->u1.s.nr_pages = (DRAM_SIZE >> LINUX_PAGE_SHIFT);
params->u1.s.ramdisk_size = 0;
params->u1.s.rootdev = rootdev;
params->u1.s.flags = 0;
/* TODO */
/* If use ramdisk */
#endif
/* set linux command line */
memcpy(params->commandline, linux_cmd, strlen(linux_cmd) + 1);
Uart_Printf(0,"linux command line is: \"%s\"\n\n", linux_cmd);
//call_linux(0,193 , 0x30008000);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -