return 0;
}
+static char ar71xx_cmdline_buf[COMMAND_LINE_SIZE] __initdata;
static void __init ar71xx_prom_append_cmdline(const char *name,
const char *value)
{
- char buf[COMMAND_LINE_SIZE];
-
- snprintf(buf, sizeof(buf), " %s=%s", name, value);
- strlcat(arcs_cmdline, buf, sizeof(arcs_cmdline));
+ snprintf(ar71xx_cmdline_buf, sizeof(ar71xx_cmdline_buf),
+ " %s=%s", name, value);
+ strlcat(arcs_cmdline, ar71xx_cmdline_buf, sizeof(arcs_cmdline));
}
static const char * __init ar71xx_prom_find_env(char **envp, const char *name)
return ret;
}
+#ifdef CONFIG_IMAGE_CMDLINE_HACK
+extern char __image_cmdline[];
+
+static int __init ar71xx_use__image_cmdline(void)
+{
+ char *p = __image_cmdline;
+ int replace = 0;
+
+ if (*p == '-') {
+ replace = 1;
+ p++;
+ }
+
+ if (*p == '\0')
+ return 0;
+
+ if (replace) {
+ strlcpy(arcs_cmdline, p, sizeof(arcs_cmdline));
+ } else {
+ strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline));
+ strlcat(arcs_cmdline, p, sizeof(arcs_cmdline));
+ }
+
+ return 1;
+}
+#else
+static inline int ar71xx_use__image_cmdline(void) { return 0; }
+#endif
+
static int __init ar71xx_prom_init_myloader(void)
{
struct myloader_info *mylo;
char mac_buf[32];
- char *mac;
+ unsigned char *mac;
mylo = myloader_get_info();
if (!mylo)
ar71xx_prom_append_cmdline("ethaddr", mac_buf);
- return 1;
-}
-
-#ifdef CONFIG_IMAGE_CMDLINE_HACK
-extern char __image_cmdline[];
-
-static int __init ar71xx_use__image_cmdline(void)
-{
- char *p = __image_cmdline;
- int replace = 0;
-
- if (*p == '-') {
- replace = 1;
- p++;
- }
-
- if (*p == '\0')
- return 0;
-
- if (replace) {
- strlcpy(arcs_cmdline, p, sizeof(arcs_cmdline));
- } else {
- strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline));
- strlcat(arcs_cmdline, p, sizeof(arcs_cmdline));
- }
+ ar71xx_use__image_cmdline();
return 1;
}
-#else
-static int inline ar71xx_use__image_cmdline(void) { return 0; }
-#endif
static __init void ar71xx_prom_init_cmdline(int argc, char **argv)
{