Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[pandora-kernel.git] / arch / mips / alchemy / common / prom.c
index 18b310b..c29511b 100644 (file)
@@ -43,29 +43,15 @@ int prom_argc;
 char **prom_argv;
 char **prom_envp;
 
-char * __init_or_module prom_getcmdline(void)
-{
-       return &(arcs_cmdline[0]);
-}
-
 void prom_init_cmdline(void)
 {
-       char *cp;
-       int actr;
-
-       actr = 1; /* Always ignore argv[0] */
+       int i;
 
-       cp = &(arcs_cmdline[0]);
-       while (actr < prom_argc) {
-               strcpy(cp, prom_argv[actr]);
-               cp += strlen(prom_argv[actr]);
-               *cp++ = ' ';
-               actr++;
+       for (i = 1; i < prom_argc; i++) {
+               strlcat(arcs_cmdline, prom_argv[i], COMMAND_LINE_SIZE);
+               if (i < (prom_argc - 1))
+                       strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE);
        }
-       if (cp != &(arcs_cmdline[0])) /* get rid of trailing space */
-               --cp;
-       if (prom_argc > 1)
-               *cp = '\0';
 }
 
 char *prom_getenv(char *envname)
@@ -121,14 +107,12 @@ static inline void str2eaddr(unsigned char *ea, unsigned char *str)
 int prom_get_ethernet_addr(char *ethernet_addr)
 {
        char *ethaddr_str;
-       char *argptr;
 
        /* Check the environment variables first */
        ethaddr_str = prom_getenv("ethaddr");
        if (!ethaddr_str) {
                /* Check command line */
-               argptr = prom_getcmdline();
-               ethaddr_str = strstr(argptr, "ethaddr=");
+               ethaddr_str = strstr(arcs_cmdline, "ethaddr=");
                if (!ethaddr_str)
                        return -1;