mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
[adm5120]: from now on, the kernel parses parameters passed by our lzma-loader
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7730 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -32,13 +32,12 @@
|
||||
|
||||
#include <asm/mach-adm5120/adm5120_info.h>
|
||||
|
||||
static char **prom_envp;
|
||||
|
||||
void setup_prom_printf(int);
|
||||
void prom_printf(char *, ...);
|
||||
void prom_meminit(void);
|
||||
|
||||
#define ADM5120_ENVC 1
|
||||
|
||||
char *adm5120_envp[2*ADM5120_ENVC] = {"memsize","0x001000000"};
|
||||
|
||||
#define READCSR(r) *(volatile unsigned long *)(0xB2600000+(r))
|
||||
#define WRITECSR(r,v) *(volatile unsigned long *)(0xB2600000+(r)) = v
|
||||
@@ -81,25 +80,24 @@ void prom_printf(char *fmt, ...)
|
||||
|
||||
char *prom_getenv(char *envname)
|
||||
{
|
||||
int i, index=0;
|
||||
char **env;
|
||||
char *ret;
|
||||
|
||||
i = strlen(envname);
|
||||
ret = NULL;
|
||||
|
||||
printk(KERN_INFO "GETENV: envname is %s\n", envname);
|
||||
if (prom_envp== NULL)
|
||||
return NULL;
|
||||
|
||||
while(index < (2*ADM5120_ENVC)) {
|
||||
if(strncmp(envname, adm5120_envp[index], i) == 0) {
|
||||
printk(KERN_INFO "GETENV: returning %s\n", adm5120_envp[index+1]);
|
||||
return(adm5120_envp[index+1]);
|
||||
for (env = prom_envp; *env != NULL; env++) {
|
||||
if (strcmp(envname, *env++) == 0) {
|
||||
ret = *env;
|
||||
break;
|
||||
}
|
||||
index += 2;
|
||||
}
|
||||
|
||||
printk(KERN_INFO "GETENV: not found.\n");
|
||||
return(NULL);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
extern char _image_cmdline;
|
||||
/*
|
||||
* initialize the prom module.
|
||||
@@ -108,6 +106,8 @@ void __init prom_init(void)
|
||||
{
|
||||
char *cmd;
|
||||
|
||||
prom_envp = (char **)fw_arg2;
|
||||
|
||||
adm5120_info_init();
|
||||
|
||||
/* you should these macros defined in include/asm/bootinfo.h */
|
||||
|
||||
Reference in New Issue
Block a user