diff options
Diffstat (limited to 'common')
| -rw-r--r-- | common/Makefile | 6 | ||||
| -rw-r--r-- | common/cmd_bdinfo.c | 3 | ||||
| -rw-r--r-- | common/cmd_ide.c | 4 | ||||
| -rw-r--r-- | common/cmd_mem.c | 43 | ||||
| -rw-r--r-- | common/cmd_mmc.c | 134 | ||||
| -rw-r--r-- | common/cmd_nvedit.c | 2 | ||||
| -rw-r--r-- | common/console.c | 287 | ||||
| -rw-r--r-- | common/env_flash.c | 4 | ||||
| -rw-r--r-- | common/env_nand.c | 10 | ||||
| -rw-r--r-- | common/fdt_support.c | 4 | ||||
| -rw-r--r-- | common/hush.c | 2 | ||||
| -rw-r--r-- | common/kgdb.c | 7 | ||||
| -rw-r--r-- | common/serial.c | 4 | ||||
| -rw-r--r-- | common/usb_storage.c | 5 | 
14 files changed, 300 insertions, 215 deletions
diff --git a/common/Makefile b/common/Makefile index 93e396307..f13cd11b9 100644 --- a/common/Makefile +++ b/common/Makefile @@ -35,11 +35,11 @@ COBJS-y += command.o  COBJS-y += devices.o  COBJS-y += dlmalloc.o  COBJS-y += exports.o -COBJS-y += hush.o +COBJS-$(CONFIG_SYS_HUSH_PARSER) += hush.o  COBJS-y += image.o  COBJS-y += memsize.o  COBJS-y += s_record.o -COBJS-y += serial.o +COBJS-$(CONFIG_SERIAL_MULTI) += serial.o  COBJS-y += xyzModem.o  # core command @@ -144,7 +144,7 @@ COBJS-$(CONFIG_DDR_SPD) += ddr_spd.o  COBJS-$(CONFIG_CMD_DOC) += docecc.o  COBJS-$(CONFIG_CONSOLE_MUX) += iomux.o  COBJS-y += flash.o -COBJS-y += kgdb.o +COBJS-$(CONFIG_CMD_KGDB) += kgdb.o  COBJS-$(CONFIG_LCD) += lcd.o  COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o  COBJS-$(CONFIG_UPDATE_TFTP) += update.o diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c index 8e9251d4a..b2d6f8479 100644 --- a/common/cmd_bdinfo.c +++ b/common/cmd_bdinfo.c @@ -283,6 +283,7 @@ int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  #if defined(CONFIG_SYS_MBAR)  	print_num ("mbar",		bd->bi_mbar_base);  #endif +	print_str ("cpufreq",		strmhz(buf, bd->bi_intfreq));  	print_str ("busfreq",		strmhz(buf, bd->bi_busfreq));  #ifdef CONFIG_PCI  	print_str ("pcifreq",		strmhz(buf, bd->bi_pcifreq)); @@ -322,7 +323,7 @@ int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  	puts ("\nip_addr     = ");  	print_IPaddr (bd->bi_ip_addr);  #endif -	printf ("\nbaudrate    = %d bps\n", bd->bi_baudrate); +	printf ("\nbaudrate    = %ld bps\n", bd->bi_baudrate);  	return 0;  } diff --git a/common/cmd_ide.c b/common/cmd_ide.c index c9b9a4799..8c6ed35b3 100644 --- a/common/cmd_ide.c +++ b/common/cmd_ide.c @@ -45,6 +45,10 @@  #include <mpc5xxx.h>  #endif +#ifdef CONFIG_MPC512X +#include <mpc512x.h> +#endif +  #include <ide.h>  #include <ata.h> diff --git a/common/cmd_mem.c b/common/cmd_mem.c index a203e0d3e..2d4fc2a41 100644 --- a/common/cmd_mem.c +++ b/common/cmd_mem.c @@ -29,9 +29,6 @@  #include <common.h>  #include <command.h> -#if defined(CONFIG_CMD_MMC) -#include <mmc.h> -#endif  #ifdef CONFIG_HAS_DATAFLASH  #include <dataflash.h>  #endif @@ -404,46 +401,6 @@ int do_mem_cp ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  	}  #endif -#if defined(CONFIG_CMD_MMC) -	if (mmc2info(dest)) { -		int rc; - -		puts ("Copy to MMC... "); -		switch (rc = mmc_write ((uchar *)addr, dest, count*size)) { -		case 0: -			putc ('\n'); -			return 1; -		case -1: -			puts ("failed\n"); -			return 1; -		default: -			printf ("%s[%d] FIXME: rc=%d\n",__FILE__,__LINE__,rc); -			return 1; -		} -		puts ("done\n"); -		return 0; -	} - -	if (mmc2info(addr)) { -		int rc; - -		puts ("Copy from MMC... "); -		switch (rc = mmc_read (addr, (uchar *)dest, count*size)) { -		case 0: -			putc ('\n'); -			return 1; -		case -1: -			puts ("failed\n"); -			return 1; -		default: -			printf ("%s[%d] FIXME: rc=%d\n",__FILE__,__LINE__,rc); -			return 1; -		} -		puts ("done\n"); -		return 0; -	} -#endif -  #ifdef CONFIG_HAS_DATAFLASH  	/* Check if we are copying from RAM or Flash to DataFlash */  	if (addr_dataflash(dest) && !addr_dataflash(addr)){ diff --git a/common/cmd_mmc.c b/common/cmd_mmc.c index 473825edd..73ec7bfc1 100644 --- a/common/cmd_mmc.c +++ b/common/cmd_mmc.c @@ -25,9 +25,10 @@  #include <command.h>  #include <mmc.h> +#ifndef CONFIG_GENERIC_MMC  int do_mmc (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  { -	if (mmc_init (1) != 0) { +	if (mmc_legacy_init (1) != 0) {  		printf ("No MMC card found\n");  		return 1;  	} @@ -39,3 +40,134 @@ U_BOOT_CMD(  	"init mmc card",  	NULL  ); +#endif /* !CONFIG_GENERIC_MMC */ + +static void print_mmcinfo(struct mmc *mmc) +{ +	printf("Device: %s\n", mmc->name); +	printf("Manufacturer ID: %x\n", mmc->cid[0] >> 24); +	printf("OEM: %x\n", (mmc->cid[0] >> 8) & 0xffff); +	printf("Name: %c%c%c%c%c \n", mmc->cid[0] & 0xff, +			(mmc->cid[1] >> 24), (mmc->cid[1] >> 16) & 0xff, +			(mmc->cid[1] >> 8) & 0xff, mmc->cid[1] & 0xff); + +	printf("Tran Speed: %d\n", mmc->tran_speed); +	printf("Rd Block Len: %d\n", mmc->read_bl_len); + +	printf("%s version %d.%d\n", IS_SD(mmc) ? "SD" : "MMC", +			(mmc->version >> 4) & 0xf, mmc->version & 0xf); + +	printf("High Capacity: %s\n", mmc->high_capacity ? "Yes" : "No"); +	printf("Capacity: %lld\n", mmc->capacity); + +	printf("Bus Width: %d-bit\n", mmc->bus_width); +} + +int do_mmcinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) +{ +	struct mmc *mmc; +	int dev_num; + +	if (argc < 2) +		dev_num = 0; +	else +		dev_num = simple_strtoul(argv[1], NULL, 0); + +	mmc = find_mmc_device(dev_num); + +	if (mmc) { +		mmc_init(mmc); + +		print_mmcinfo(mmc); +	} + +	return 0; +} + +U_BOOT_CMD(mmcinfo, 2, 0, do_mmcinfo, "mmcinfo <dev num>-- display MMC info\n", +		NULL); + +int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) +{ +	int rc = 0; + +	switch (argc) { +	case 3: +		if (strcmp(argv[1], "rescan") == 0) { +			int dev = simple_strtoul(argv[2], NULL, 10); +			struct mmc *mmc = find_mmc_device(dev); + +			mmc_init(mmc); + +			return 0; +		} + +	case 0: +	case 1: +	case 4: +		printf("Usage:\n%s\n", cmdtp->usage); +		return 1; + +	case 2: +		if (!strcmp(argv[1], "list")) { +			print_mmc_devices('\n'); +			return 0; +		} +		return 1; +	default: /* at least 5 args */ +		if (strcmp(argv[1], "read") == 0) { +			int dev = simple_strtoul(argv[2], NULL, 10); +			void *addr = (void *)simple_strtoul(argv[3], NULL, 16); +			u32 cnt = simple_strtoul(argv[5], NULL, 16); +			u32 n; +			u32 blk = simple_strtoul(argv[4], NULL, 16); +			struct mmc *mmc = find_mmc_device(dev); + +			printf("\nMMC read: dev # %d, block # %d, count %d ... ", +				dev, blk, cnt); + +			mmc_init(mmc); + +			n = mmc->block_dev.block_read(dev, blk, cnt, addr); + +			/* flush cache after read */ +			flush_cache((ulong)addr, cnt * 512); /* FIXME */ + +			printf("%d blocks read: %s\n", +				n, (n==cnt) ? "OK" : "ERROR"); +			return (n == cnt) ? 0 : 1; +		} else if (strcmp(argv[1], "write") == 0) { +			int dev = simple_strtoul(argv[2], NULL, 10); +			void *addr = (void *)simple_strtoul(argv[3], NULL, 16); +			u32 cnt = simple_strtoul(argv[5], NULL, 16); +			u32 n; +			struct mmc *mmc = find_mmc_device(dev); + +			int blk = simple_strtoul(argv[4], NULL, 16); + +			printf("\nMMC write: dev # %d, block # %d, count %d ... ", +				dev, blk, cnt); + +			mmc_init(mmc); + +			n = mmc->block_dev.block_write(dev, blk, cnt, addr); + +			printf("%d blocks written: %s\n", +				n, (n == cnt) ? "OK" : "ERROR"); +			return (n == cnt) ? 0 : 1; +		} else { +			printf("Usage:\n%s\n", cmdtp->usage); +			rc = 1; +		} + +		return rc; +	} +} + +U_BOOT_CMD( +	mmc, 6, 1, do_mmcops, +	"mmc	- MMC sub system\n", +	"mmc read <device num> addr blk# cnt\n" +	"mmc write <device num> addr blk# cnt\n" +	"mmc rescan <device num>\n" +	"mmc list - lists available devices\n"); diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c index 1fcb4c96a..02b18ec32 100644 --- a/common/cmd_nvedit.c +++ b/common/cmd_nvedit.c @@ -546,7 +546,7 @@ int getenv_r (char *name, char *buf, unsigned len)  	return (-1);  } -#if defined(CONFIG_CMD_ENV) && !defined(CONFIG_ENV_IS_NOWHERE) +#if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_ENV_IS_NOWHERE)  int do_saveenv (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  { diff --git a/common/console.c b/common/console.c index 89aeab69e..2add04788 100644 --- a/common/console.c +++ b/common/console.c @@ -40,15 +40,15 @@ int console_changed = 0;   * environment are used   */  #ifdef CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE -extern int overwrite_console (void); -#define OVERWRITE_CONSOLE overwrite_console () +extern int overwrite_console(void); +#define OVERWRITE_CONSOLE overwrite_console()  #else  #define OVERWRITE_CONSOLE 0  #endif /* CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE */  #endif /* CONFIG_SYS_CONSOLE_IS_IN_ENV */ -static int console_setfile (int file, device_t * dev) +static int console_setfile(int file, device_t * dev)  {  	int error = 0; @@ -61,7 +61,7 @@ static int console_setfile (int file, device_t * dev)  	case stderr:  		/* Start new device */  		if (dev->start) { -			error = dev->start (); +			error = dev->start();  			/* If it's not started dont use it */  			if (error < 0)  				break; @@ -106,7 +106,7 @@ int cd_count[MAX_FILES];   * only from fgetc() which assures it.   * No attempt is made to demultiplex multiple input sources.   */ -static int iomux_getc(void) +static int console_getc(int file)  {  	unsigned char ret; @@ -116,7 +116,7 @@ static int iomux_getc(void)  	return ret;  } -static int iomux_tstc(int file) +static int console_tstc(int file)  {  	int i, ret;  	device_t *dev; @@ -138,7 +138,7 @@ static int iomux_tstc(int file)  	return 0;  } -static void iomux_putc(int file, const char c) +static void console_putc(int file, const char c)  {  	int i;  	device_t *dev; @@ -150,7 +150,7 @@ static void iomux_putc(int file, const char c)  	}  } -static void iomux_puts(int file, const char *s) +static void console_puts(int file, const char *s)  {  	int i;  	device_t *dev; @@ -161,28 +161,68 @@ static void iomux_puts(int file, const char *s)  			dev->puts(s);  	}  } + +static inline void console_printdevs(int file) +{ +	iomux_printdevs(file); +} + +static inline void console_doenv(int file, device_t *dev) +{ +	iomux_doenv(file, dev->name); +} +#else +static inline int console_getc(int file) +{ +	return stdio_devices[file]->getc(); +} + +static inline int console_tstc(int file) +{ +	return stdio_devices[file]->tstc(); +} + +static inline void console_putc(int file, const char c) +{ +	stdio_devices[file]->putc(c); +} + +static inline void console_puts(int file, const char *s) +{ +	stdio_devices[file]->puts(s); +} + +static inline void console_printdevs(int file) +{ +	printf("%s\n", stdio_devices[file]->name); +} + +static inline void console_doenv(int file, device_t *dev) +{ +	console_setfile(file, dev); +}  #endif /* defined(CONFIG_CONSOLE_MUX) */  /** U-Boot INITIAL CONSOLE-NOT COMPATIBLE FUNCTIONS *************************/ -void serial_printf (const char *fmt, ...) +void serial_printf(const char *fmt, ...)  {  	va_list args;  	uint i;  	char printbuffer[CONFIG_SYS_PBSIZE]; -	va_start (args, fmt); +	va_start(args, fmt);  	/* For this to work, printbuffer must be larger than  	 * anything we ever want to print.  	 */ -	i = vsprintf (printbuffer, fmt, args); -	va_end (args); +	i = vsprintf(printbuffer, fmt, args); +	va_end(args); -	serial_puts (printbuffer); +	serial_puts(printbuffer);  } -int fgetc (int file) +int fgetc(int file)  {  	if (file < MAX_FILES) {  #if defined(CONFIG_CONSOLE_MUX) @@ -195,8 +235,8 @@ int fgetc (int file)  			 * check for that first.  			 */  			if (tstcdev != NULL) -				return iomux_getc(); -			iomux_tstc(file); +				return console_getc(file); +			console_tstc(file);  #ifdef CONFIG_WATCHDOG  			/*  			 * If the watchdog must be rate-limited then it should @@ -206,66 +246,54 @@ int fgetc (int file)  #endif  		}  #else -		return stdio_devices[file]->getc (); +		return console_getc(file);  #endif  	}  	return -1;  } -int ftstc (int file) +int ftstc(int file)  {  	if (file < MAX_FILES) -#if defined(CONFIG_CONSOLE_MUX) -		return iomux_tstc(file); -#else -		return stdio_devices[file]->tstc (); -#endif +		return console_tstc(file);  	return -1;  } -void fputc (int file, const char c) +void fputc(int file, const char c)  {  	if (file < MAX_FILES) -#if defined(CONFIG_CONSOLE_MUX) -		iomux_putc(file, c); -#else -		stdio_devices[file]->putc (c); -#endif +		console_putc(file, c);  } -void fputs (int file, const char *s) +void fputs(int file, const char *s)  {  	if (file < MAX_FILES) -#if defined(CONFIG_CONSOLE_MUX) -		iomux_puts(file, s); -#else -		stdio_devices[file]->puts (s); -#endif +		console_puts(file, s);  } -void fprintf (int file, const char *fmt, ...) +void fprintf(int file, const char *fmt, ...)  {  	va_list args;  	uint i;  	char printbuffer[CONFIG_SYS_PBSIZE]; -	va_start (args, fmt); +	va_start(args, fmt);  	/* For this to work, printbuffer must be larger than  	 * anything we ever want to print.  	 */ -	i = vsprintf (printbuffer, fmt, args); -	va_end (args); +	i = vsprintf(printbuffer, fmt, args); +	va_end(args);  	/* Send to desired file */ -	fputs (file, printbuffer); +	fputs(file, printbuffer);  }  /** U-Boot INITIAL CONSOLE-COMPATIBLE FUNCTION *****************************/ -int getc (void) +int getc(void)  {  #ifdef CONFIG_DISABLE_CONSOLE  	if (gd->flags & GD_FLG_DISABLE_CONSOLE) @@ -274,14 +302,14 @@ int getc (void)  	if (gd->flags & GD_FLG_DEVINIT) {  		/* Get from the standard input */ -		return fgetc (stdin); +		return fgetc(stdin);  	}  	/* Send directly to the handler */ -	return serial_getc (); +	return serial_getc();  } -int tstc (void) +int tstc(void)  {  #ifdef CONFIG_DISABLE_CONSOLE  	if (gd->flags & GD_FLG_DISABLE_CONSOLE) @@ -290,14 +318,14 @@ int tstc (void)  	if (gd->flags & GD_FLG_DEVINIT) {  		/* Test the standard input */ -		return ftstc (stdin); +		return ftstc(stdin);  	}  	/* Send directly to the handler */ -	return serial_tstc (); +	return serial_tstc();  } -void putc (const char c) +void putc(const char c)  {  #ifdef CONFIG_SILENT_CONSOLE  	if (gd->flags & GD_FLG_SILENT) @@ -311,14 +339,14 @@ void putc (const char c)  	if (gd->flags & GD_FLG_DEVINIT) {  		/* Send to the standard output */ -		fputc (stdout, c); +		fputc(stdout, c);  	} else {  		/* Send directly to the handler */ -		serial_putc (c); +		serial_putc(c);  	}  } -void puts (const char *s) +void puts(const char *s)  {  #ifdef CONFIG_SILENT_CONSOLE  	if (gd->flags & GD_FLG_SILENT) @@ -332,32 +360,32 @@ void puts (const char *s)  	if (gd->flags & GD_FLG_DEVINIT) {  		/* Send to the standard output */ -		fputs (stdout, s); +		fputs(stdout, s);  	} else {  		/* Send directly to the handler */ -		serial_puts (s); +		serial_puts(s);  	}  } -void printf (const char *fmt, ...) +void printf(const char *fmt, ...)  {  	va_list args;  	uint i;  	char printbuffer[CONFIG_SYS_PBSIZE]; -	va_start (args, fmt); +	va_start(args, fmt);  	/* For this to work, printbuffer must be larger than  	 * anything we ever want to print.  	 */ -	i = vsprintf (printbuffer, fmt, args); -	va_end (args); +	i = vsprintf(printbuffer, fmt, args); +	va_end(args);  	/* Print the string */ -	puts (printbuffer); +	puts(printbuffer);  } -void vprintf (const char *fmt, va_list args) +void vprintf(const char *fmt, va_list args)  {  	uint i;  	char printbuffer[CONFIG_SYS_PBSIZE]; @@ -365,20 +393,20 @@ void vprintf (const char *fmt, va_list args)  	/* For this to work, printbuffer must be larger than  	 * anything we ever want to print.  	 */ -	i = vsprintf (printbuffer, fmt, args); +	i = vsprintf(printbuffer, fmt, args);  	/* Print the string */ -	puts (printbuffer); +	puts(printbuffer);  }  /* test if ctrl-c was pressed */  static int ctrlc_disabled = 0;	/* see disable_ctrl() */  static int ctrlc_was_pressed = 0; -int ctrlc (void) +int ctrlc(void)  {  	if (!ctrlc_disabled && gd->have_console) { -		if (tstc ()) { -			switch (getc ()) { +		if (tstc()) { +			switch (getc()) {  			case 0x03:		/* ^C - Control C */  				ctrlc_was_pressed = 1;  				return 1; @@ -393,7 +421,7 @@ int ctrlc (void)  /* pass 1 to disable ctrlc() checking, 0 to enable.   * returns previous state   */ -int disable_ctrlc (int disable) +int disable_ctrlc(int disable)  {  	int prev = ctrlc_disabled;	/* save previous state */ @@ -406,7 +434,7 @@ int had_ctrlc (void)  	return ctrlc_was_pressed;  } -void clear_ctrlc (void) +void clear_ctrlc(void)  {  	ctrlc_was_pressed = 0;  } @@ -434,7 +462,8 @@ inline void dbg(const char *fmt, ...)  	i = vsprintf(printbuffer, fmt, args);  	va_end(args); -	if ((screen + sizeof(screen) - 1 - cursor) < strlen(printbuffer)+1) { +	if ((screen + sizeof(screen) - 1 - cursor) +	    < strlen(printbuffer) + 1) {  		memset(screen, 0, sizeof(screen));  		cursor = screen;  	} @@ -450,19 +479,19 @@ inline void dbg(const char *fmt, ...)  /** U-Boot INIT FUNCTIONS *************************************************/ -device_t *search_device (int flags, char *name) +device_t *search_device(int flags, char *name)  {  	device_t *dev;  	dev = device_get_by_name(name); -	if(dev && (dev->flags & flags)) +	if (dev && (dev->flags & flags))  		return dev;  	return NULL;  } -int console_assign (int file, char *devname) +int console_assign(int file, char *devname)  {  	int flag;  	device_t *dev; @@ -484,14 +513,14 @@ int console_assign (int file, char *devname)  	dev = search_device(flag, devname); -	if(dev) -		return console_setfile (file, dev); +	if (dev) +		return console_setfile(file, dev);  	return -1;  }  /* Called before relocation - use serial functions */ -int console_init_f (void) +int console_init_f(void)  {  	gd->have_console = 1; @@ -500,12 +529,12 @@ int console_init_f (void)  		gd->flags |= GD_FLG_SILENT;  #endif -	return (0); +	return 0;  }  #ifdef CONFIG_SYS_CONSOLE_IS_IN_ENV  /* Called after the relocation - use desired console functions */ -int console_init_r (void) +int console_init_r(void)  {  	char *stdinname, *stdoutname, *stderrname;  	device_t *inputdev = NULL, *outputdev = NULL, *errdev = NULL; @@ -525,14 +554,14 @@ int console_init_r (void)  	/* stdin stdout and stderr are in environment */  	/* scan for it */ -	stdinname  = getenv ("stdin"); -	stdoutname = getenv ("stdout"); -	stderrname = getenv ("stderr"); +	stdinname  = getenv("stdin"); +	stdoutname = getenv("stdout"); +	stderrname = getenv("stderr");  	if (OVERWRITE_CONSOLE == 0) {	/* if not overwritten by config switch */ -		inputdev  = search_device (DEV_FLAGS_INPUT,  stdinname); -		outputdev = search_device (DEV_FLAGS_OUTPUT, stdoutname); -		errdev    = search_device (DEV_FLAGS_OUTPUT, stderrname); +		inputdev  = search_device(DEV_FLAGS_INPUT,  stdinname); +		outputdev = search_device(DEV_FLAGS_OUTPUT, stdoutname); +		errdev    = search_device(DEV_FLAGS_OUTPUT, stderrname);  #ifdef CONFIG_CONSOLE_MUX  		iomux_err = iomux_doenv(stdin, stdinname);  		iomux_err += iomux_doenv(stdout, stdoutname); @@ -544,38 +573,26 @@ int console_init_r (void)  	}  	/* if the devices are overwritten or not found, use default device */  	if (inputdev == NULL) { -		inputdev  = search_device (DEV_FLAGS_INPUT,  "serial"); +		inputdev  = search_device(DEV_FLAGS_INPUT,  "serial");  	}  	if (outputdev == NULL) { -		outputdev = search_device (DEV_FLAGS_OUTPUT, "serial"); +		outputdev = search_device(DEV_FLAGS_OUTPUT, "serial");  	}  	if (errdev == NULL) { -		errdev    = search_device (DEV_FLAGS_OUTPUT, "serial"); +		errdev    = search_device(DEV_FLAGS_OUTPUT, "serial");  	}  	/* Initializes output console first */  	if (outputdev != NULL) { -#ifdef CONFIG_CONSOLE_MUX  		/* need to set a console if not done above. */ -		iomux_doenv(stdout, outputdev->name); -#else -		console_setfile (stdout, outputdev); -#endif +		console_doenv(stdout, outputdev);  	}  	if (errdev != NULL) { -#ifdef CONFIG_CONSOLE_MUX  		/* need to set a console if not done above. */ -		iomux_doenv(stderr, errdev->name); -#else -		console_setfile (stderr, errdev); -#endif +		console_doenv(stderr, errdev);  	}  	if (inputdev != NULL) { -#ifdef CONFIG_CONSOLE_MUX  		/* need to set a console if not done above. */ -		iomux_doenv(stdin, inputdev->name); -#else -		console_setfile (stdin, inputdev); -#endif +		console_doenv(stdin, inputdev);  	}  #ifdef CONFIG_CONSOLE_MUX @@ -586,59 +603,47 @@ done:  #ifndef CONFIG_SYS_CONSOLE_INFO_QUIET  	/* Print information */ -	puts ("In:    "); +	puts("In:    ");  	if (stdio_devices[stdin] == NULL) { -		puts ("No input devices available!\n"); +		puts("No input devices available!\n");  	} else { -#ifdef CONFIG_CONSOLE_MUX -		iomux_printdevs(stdin); -#else -		printf ("%s\n", stdio_devices[stdin]->name); -#endif +		console_printdevs(stdin);  	} -	puts ("Out:   "); +	puts("Out:   ");  	if (stdio_devices[stdout] == NULL) { -		puts ("No output devices available!\n"); +		puts("No output devices available!\n");  	} else { -#ifdef CONFIG_CONSOLE_MUX -		iomux_printdevs(stdout); -#else -		printf ("%s\n", stdio_devices[stdout]->name); -#endif +		console_printdevs(stdout);  	} -	puts ("Err:   "); +	puts("Err:   ");  	if (stdio_devices[stderr] == NULL) { -		puts ("No error devices available!\n"); +		puts("No error devices available!\n");  	} else { -#ifdef CONFIG_CONSOLE_MUX -		iomux_printdevs(stderr); -#else -		printf ("%s\n", stdio_devices[stderr]->name); -#endif +		console_printdevs(stderr);  	}  #endif /* CONFIG_SYS_CONSOLE_INFO_QUIET */  #ifdef CONFIG_SYS_CONSOLE_ENV_OVERWRITE  	/* set the environment variables (will overwrite previous env settings) */  	for (i = 0; i < 3; i++) { -		setenv (stdio_names[i], stdio_devices[i]->name); +		setenv(stdio_names[i], stdio_devices[i]->name);  	}  #endif /* CONFIG_SYS_CONSOLE_ENV_OVERWRITE */  #if 0  	/* If nothing usable installed, use only the initial console */  	if ((stdio_devices[stdin] == NULL) && (stdio_devices[stdout] == NULL)) -		return (0); +		return 0;  #endif -	return (0); +	return 0;  }  #else /* CONFIG_SYS_CONSOLE_IS_IN_ENV */  /* Called after the relocation - use desired console functions */ -int console_init_r (void) +int console_init_r(void)  {  	device_t *inputdev = NULL, *outputdev = NULL;  	int i; @@ -647,8 +652,10 @@ int console_init_r (void)  	device_t *dev;  #ifdef CONFIG_SPLASH_SCREEN -	/* suppress all output if splash screen is enabled and we have -	   a bmp to display                                            */ +	/* +	 * suppress all output if splash screen is enabled and we have +	 * a bmp to display +	 */  	if (getenv("splashimage") != NULL)  		gd->flags |= GD_FLG_SILENT;  #endif @@ -669,8 +676,8 @@ int console_init_r (void)  	/* Initializes output console first */  	if (outputdev != NULL) { -		console_setfile (stdout, outputdev); -		console_setfile (stderr, outputdev); +		console_setfile(stdout, outputdev); +		console_setfile(stderr, outputdev);  #ifdef CONFIG_CONSOLE_MUX  		console_devices[stdout][0] = outputdev;  		console_devices[stderr][0] = outputdev; @@ -679,7 +686,7 @@ int console_init_r (void)  	/* Initializes input console */  	if (inputdev != NULL) { -		console_setfile (stdin, inputdev); +		console_setfile(stdin, inputdev);  #ifdef CONFIG_CONSOLE_MUX  		console_devices[stdin][0] = inputdev;  #endif @@ -689,40 +696,40 @@ int console_init_r (void)  #ifndef CONFIG_SYS_CONSOLE_INFO_QUIET  	/* Print information */ -	puts ("In:    "); +	puts("In:    ");  	if (stdio_devices[stdin] == NULL) { -		puts ("No input devices available!\n"); +		puts("No input devices available!\n");  	} else { -		printf ("%s\n", stdio_devices[stdin]->name); +		printf("%s\n", stdio_devices[stdin]->name);  	} -	puts ("Out:   "); +	puts("Out:   ");  	if (stdio_devices[stdout] == NULL) { -		puts ("No output devices available!\n"); +		puts("No output devices available!\n");  	} else { -		printf ("%s\n", stdio_devices[stdout]->name); +		printf("%s\n", stdio_devices[stdout]->name);  	} -	puts ("Err:   "); +	puts("Err:   ");  	if (stdio_devices[stderr] == NULL) { -		puts ("No error devices available!\n"); +		puts("No error devices available!\n");  	} else { -		printf ("%s\n", stdio_devices[stderr]->name); +		printf("%s\n", stdio_devices[stderr]->name);  	}  #endif /* CONFIG_SYS_CONSOLE_INFO_QUIET */  	/* Setting environment variables */  	for (i = 0; i < 3; i++) { -		setenv (stdio_names[i], stdio_devices[i]->name); +		setenv(stdio_names[i], stdio_devices[i]->name);  	}  #if 0  	/* If nothing usable installed, use only the initial console */  	if ((stdio_devices[stdin] == NULL) && (stdio_devices[stdout] == NULL)) -		return (0); +		return 0;  #endif -	return (0); +	return 0;  }  #endif /* CONFIG_SYS_CONSOLE_IS_IN_ENV */ diff --git a/common/env_flash.c b/common/env_flash.c index 75ee8ddc8..00792cd38 100644 --- a/common/env_flash.c +++ b/common/env_flash.c @@ -34,10 +34,10 @@  DECLARE_GLOBAL_DATA_PTR; -#if defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_FLASH) +#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_FLASH)  #define CMD_SAVEENV  #elif defined(CONFIG_ENV_ADDR_REDUND) -#error Cannot use CONFIG_ENV_ADDR_REDUND without CONFIG_CMD_ENV & CONFIG_CMD_FLASH +#error Cannot use CONFIG_ENV_ADDR_REDUND without CONFIG_CMD_SAVEENV & CONFIG_CMD_FLASH  #endif  #if defined(CONFIG_ENV_SIZE_REDUND) && (CONFIG_ENV_SIZE_REDUND < CONFIG_ENV_SIZE) diff --git a/common/env_nand.c b/common/env_nand.c index 8af9e74aa..76569da0f 100644 --- a/common/env_nand.c +++ b/common/env_nand.c @@ -39,10 +39,10 @@  #include <malloc.h>  #include <nand.h> -#if defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_NAND) +#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_NAND)  #define CMD_SAVEENV  #elif defined(CONFIG_ENV_OFFSET_REDUND) -#error Cannot use CONFIG_ENV_OFFSET_REDUND without CONFIG_CMD_ENV & CONFIG_CMD_NAND +#error Cannot use CONFIG_ENV_OFFSET_REDUND without CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND  #endif  #if defined(CONFIG_ENV_SIZE_REDUND) && (CONFIG_ENV_SIZE_REDUND != CONFIG_ENV_SIZE) @@ -304,9 +304,11 @@ void env_relocate_spec (void)  	crc1_ok = (crc32(0, tmp_env1->data, ENV_SIZE) == tmp_env1->crc);  	crc2_ok = (crc32(0, tmp_env2->data, ENV_SIZE) == tmp_env2->crc); -	if(!crc1_ok && !crc2_ok) +	if(!crc1_ok && !crc2_ok) { +		free(tmp_env1); +		free(tmp_env2);  		return use_default(); -	else if(crc1_ok && !crc2_ok) +	} else if(crc1_ok && !crc2_ok)  		gd->env_valid = 1;  	else if(!crc1_ok && crc2_ok)  		gd->env_valid = 2; diff --git a/common/fdt_support.c b/common/fdt_support.c index a79bc085b..b54f8868d 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -646,8 +646,8 @@ int fdt_pci_dma_ranges(void *blob, int phb_off, struct pci_controller *hose) {  	for (r = 0; r < hose->region_count; r++) {  		u64 bus_start, phys_start, size; -		/* skip if !PCI_REGION_MEMORY */ -		if (!(hose->regions[r].flags & PCI_REGION_MEMORY)) +		/* skip if !PCI_REGION_SYS_MEMORY */ +		if (!(hose->regions[r].flags & PCI_REGION_SYS_MEMORY))  			continue;  		bus_start = (u64)hose->regions[r].bus_start; diff --git a/common/hush.c b/common/hush.c index 01b74d782..cf5782a7c 100644 --- a/common/hush.c +++ b/common/hush.c @@ -96,7 +96,6 @@  /*cmd_boot.c*/  extern int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);      /* do_bootd */  #endif -#ifdef CONFIG_SYS_HUSH_PARSER  #ifndef __U_BOOT__  #include <ctype.h>     /* isalpha, isdigit */  #include <unistd.h>    /* getpid */ @@ -3632,5 +3631,4 @@ U_BOOT_CMD(  );  #endif -#endif /* CONFIG_SYS_HUSH_PARSER */  /****************************************************************************/ diff --git a/common/kgdb.c b/common/kgdb.c index 888b96b68..862f3684e 100644 --- a/common/kgdb.c +++ b/common/kgdb.c @@ -92,8 +92,6 @@  #include <kgdb.h>  #include <command.h> -#if defined(CONFIG_CMD_KGDB) -  #undef KGDB_DEBUG  /* @@ -587,8 +585,3 @@ U_BOOT_CMD(  	"      program if it is executed (see the \"hello_world\"\n"  	"      example program in the U-Boot examples directory)."  ); -#else - -int kgdb_not_configured = 1; - -#endif diff --git a/common/serial.c b/common/serial.c index b38d1e762..09385d017 100644 --- a/common/serial.c +++ b/common/serial.c @@ -27,8 +27,6 @@  DECLARE_GLOBAL_DATA_PTR; -#if defined(CONFIG_SERIAL_MULTI) -  static struct serial_device *serial_devices = NULL;  static struct serial_device *serial_current = NULL; @@ -255,5 +253,3 @@ void serial_puts (const char *s)  	serial_current->puts (s);  } - -#endif /* CONFIG_SERIAL_MULTI */ diff --git a/common/usb_storage.c b/common/usb_storage.c index 51f078948..fec64f3c1 100644 --- a/common/usb_storage.c +++ b/common/usb_storage.c @@ -878,7 +878,6 @@ static int usb_inquiry(ccb *srb, struct us_data *ss)  	do {  		memset(&srb->cmd[0], 0, 12);  		srb->cmd[0] = SCSI_INQUIRY; -		srb->cmd[1] = srb->lun<<5;  		srb->cmd[4] = 36;  		srb->datalen = 36;  		srb->cmdlen = 12; @@ -902,7 +901,6 @@ static int usb_request_sense(ccb *srb, struct us_data *ss)  	ptr = (char *)srb->pdata;  	memset(&srb->cmd[0], 0, 12);  	srb->cmd[0] = SCSI_REQ_SENSE; -	srb->cmd[1] = srb->lun << 5;  	srb->cmd[4] = 18;  	srb->datalen = 18;  	srb->pdata = &srb->sense_buf[0]; @@ -922,7 +920,6 @@ static int usb_test_unit_ready(ccb *srb, struct us_data *ss)  	do {  		memset(&srb->cmd[0], 0, 12);  		srb->cmd[0] = SCSI_TST_U_RDY; -		srb->cmd[1] = srb->lun << 5;  		srb->datalen = 0;  		srb->cmdlen = 12;  		if (ss->transport(srb, ss) == USB_STOR_TRANSPORT_GOOD) @@ -942,7 +939,6 @@ static int usb_read_capacity(ccb *srb, struct us_data *ss)  	do {  		memset(&srb->cmd[0], 0, 12);  		srb->cmd[0] = SCSI_RD_CAPAC; -		srb->cmd[1] = srb->lun << 5;  		srb->datalen = 8;  		srb->cmdlen = 12;  		if (ss->transport(srb, ss) == USB_STOR_TRANSPORT_GOOD) @@ -957,7 +953,6 @@ static int usb_read_10(ccb *srb, struct us_data *ss, unsigned long start,  {  	memset(&srb->cmd[0], 0, 12);  	srb->cmd[0] = SCSI_READ10; -	srb->cmd[1] = srb->lun << 5;  	srb->cmd[2] = ((unsigned char) (start >> 24)) & 0xff;  	srb->cmd[3] = ((unsigned char) (start >> 16)) & 0xff;  	srb->cmd[4] = ((unsigned char) (start >> 8)) & 0xff;  |