diff options
Diffstat (limited to 'common/cmd_bootm.c')
| -rw-r--r-- | common/cmd_bootm.c | 99 | 
1 files changed, 0 insertions, 99 deletions
| diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c index 8dbab02b8..08a014f44 100644 --- a/common/cmd_bootm.c +++ b/common/cmd_bootm.c @@ -108,9 +108,6 @@ static boot_os_fn do_bootm_qnxelf;  int do_bootvx (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);  int do_bootelf (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);  #endif -#if defined(CONFIG_ARTOS) && defined(CONFIG_PPC) -static boot_os_fn do_bootm_artos; -#endif  ulong load_addr = CFG_LOAD_ADDR;	/* Default Load Address */  static bootm_headers_t images;		/* pointers to os/initrd/fdt images */ @@ -455,11 +452,6 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  	    break;  #endif -#ifdef CONFIG_ARTOS -	case IH_OS_ARTOS: -	    do_bootm_artos (0, argc, argv, &images); -	    break; -#endif  	}  	show_boot_progress (-9); @@ -1152,94 +1144,3 @@ static int do_bootm_qnxelf(int flag, int argc, char *argv[],  	return 1;  }  #endif - -#if defined(CONFIG_ARTOS) && defined(CONFIG_PPC) -static int do_bootm_artos (int flag, int argc, char *argv[], -			   bootm_headers_t *images) -{ -	ulong top; -	char *s, *cmdline; -	char **fwenv, **ss; -	int i, j, nxt, len, envno, envsz; -	bd_t *kbd; -	void (*entry)(bd_t *bd, char *cmdline, char **fwenv, ulong top); - -#if defined(CONFIG_FIT) -	if (!images->legacy_hdr_valid) { -		fit_unsupported_reset ("ARTOS"); -		return 1; -	} -#endif - -	/* -	 * Booting an ARTOS kernel image + application -	 */ - -	/* this used to be the top of memory, but was wrong... */ -#ifdef CONFIG_PPC -	/* get stack pointer */ -	asm volatile ("mr %0,1" : "=r"(top) ); -#endif -	debug ("## Current stack ends at 0x%08lX ", top); - -	top -= 2048;		/* just to be sure */ -	if (top > CFG_BOOTMAPSZ) -		top = CFG_BOOTMAPSZ; -	top &= ~0xF; - -	debug ("=> set upper limit to 0x%08lX\n", top); - -	/* first check the artos specific boot args, then the linux args*/ -	if ((s = getenv( "abootargs")) == NULL && (s = getenv ("bootargs")) == NULL) -		s = ""; - -	/* get length of cmdline, and place it */ -	len = strlen (s); -	top = (top - (len + 1)) & ~0xF; -	cmdline = (char *)top; -	debug ("## cmdline at 0x%08lX ", top); -	strcpy (cmdline, s); - -	/* copy bdinfo */ -	top = (top - sizeof (bd_t)) & ~0xF; -	debug ("## bd at 0x%08lX ", top); -	kbd = (bd_t *)top; -	memcpy (kbd, gd->bd, sizeof (bd_t)); - -	/* first find number of env entries, and their size */ -	envno = 0; -	envsz = 0; -	for (i = 0; env_get_char (i) != '\0'; i = nxt + 1) { -		for (nxt = i; env_get_char (nxt) != '\0'; ++nxt) -			; -		envno++; -		envsz += (nxt - i) + 1;	/* plus trailing zero */ -	} -	envno++;	/* plus the terminating zero */ -	debug ("## %u envvars total size %u ", envno, envsz); - -	top = (top - sizeof (char **) * envno) & ~0xF; -	fwenv = (char **)top; -	debug ("## fwenv at 0x%08lX ", top); - -	top = (top - envsz) & ~0xF; -	s = (char *)top; -	ss = fwenv; - -	/* now copy them */ -	for (i = 0; env_get_char (i) != '\0'; i = nxt + 1) { -		for (nxt = i; env_get_char (nxt) != '\0'; ++nxt) -			; -		*ss++ = s; -		for (j = i; j < nxt; ++j) -			*s++ = env_get_char (j); -		*s++ = '\0'; -	} -	*ss++ = NULL;	/* terminate */ - -	entry = (void (*)(bd_t *, char *, char **, ulong))images->ep; -	(*entry) (kbd, cmdline, fwenv, top); - -	return 1; -} -#endif |