diff options
Diffstat (limited to 'include/configs')
52 files changed, 2243 insertions, 111 deletions
| diff --git a/include/configs/M54455EVB.h b/include/configs/M54455EVB.h index 1bc2c5a0a..536b7556f 100644 --- a/include/configs/M54455EVB.h +++ b/include/configs/M54455EVB.h @@ -238,7 +238,7 @@  /* FPGA - Spartan 2 */  /* experiment -#define CONFIG_FPGA		CONFIG_SYS_SPARTAN3 +#define CONFIG_FPGA  #define CONFIG_FPGA_COUNT	1  #define CONFIG_SYS_FPGA_PROG_FEEDBACK  #define CONFIG_SYS_FPGA_CHECK_CTRLC diff --git a/include/configs/MERGERBOX.h b/include/configs/MERGERBOX.h index c296e3cf0..30fb6c2ff 100644 --- a/include/configs/MERGERBOX.h +++ b/include/configs/MERGERBOX.h @@ -606,7 +606,7 @@   * FPGA   */  #define CONFIG_FPGA_COUNT	1 -#define CONFIG_FPGA		CONFIG_SYS_ALTERA_CYCLON2 +#define CONFIG_FPGA  #define CONFIG_FPGA_ALTERA  #define CONFIG_FPGA_CYCLON2 diff --git a/include/configs/MVBC_P.h b/include/configs/MVBC_P.h index 6850965fb..72714688e 100644 --- a/include/configs/MVBC_P.h +++ b/include/configs/MVBC_P.h @@ -310,7 +310,7 @@  #undef FPGA_DEBUG  #undef CONFIG_SYS_FPGA_PROG_FEEDBACK -#define CONFIG_FPGA		CONFIG_SYS_ALTERA_CYCLON2 +#define CONFIG_FPGA  #define CONFIG_FPGA_ALTERA	1  #define CONFIG_FPGA_CYCLON2	1  #define CONFIG_FPGA_COUNT	1 diff --git a/include/configs/MVBLM7.h b/include/configs/MVBLM7.h index a99ad3c44..a9c00acc9 100644 --- a/include/configs/MVBLM7.h +++ b/include/configs/MVBLM7.h @@ -499,7 +499,7 @@  	""  #define CONFIG_FPGA_COUNT	1 -#define CONFIG_FPGA		CONFIG_SYS_ALTERA_CYCLON2 +#define CONFIG_FPGA  #define CONFIG_FPGA_ALTERA  #define CONFIG_FPGA_CYCLON2 diff --git a/include/configs/MVSMR.h b/include/configs/MVSMR.h index bf2f44ec6..5d2ff1480 100644 --- a/include/configs/MVSMR.h +++ b/include/configs/MVSMR.h @@ -280,7 +280,7 @@  #undef FPGA_DEBUG  #undef CONFIG_SYS_FPGA_PROG_FEEDBACK -#define CONFIG_FPGA		CONFIG_SYS_XILINX_SPARTAN2 +#define CONFIG_FPGA  #define CONFIG_FPGA_XILINX	1  #define CONFIG_FPGA_SPARTAN2	1  #define CONFIG_FPGA_COUNT	1 diff --git a/include/configs/ac14xx.h b/include/configs/ac14xx.h index ac7e87738..7cb10fb01 100644 --- a/include/configs/ac14xx.h +++ b/include/configs/ac14xx.h @@ -368,6 +368,11 @@  #define CONFIG_SYS_I2C_SLAVE		0x7F  /* + * IIM - IC Identification Module + */ +#undef CONFIG_FSL_IIM + +/*   * EEPROM configuration for Atmel AT24C01:   * 8-bit addresses, 30ms write delay, 32-Byte Page Write Mode   */ diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index ef00306a5..f01913421 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -17,6 +17,7 @@  #define __CONFIG_AM335X_EVM_H  #define CONFIG_AM33XX +#define CONFIG_OMAP  #include <asm/arch/omap.h> @@ -196,7 +197,6 @@  					+ (8 * 1024 * 1024))  #define CONFIG_SYS_LOAD_ADDR		0x81000000 /* Default load address */ -#define CONFIG_SYS_HZ			1000 /* 1ms clock */  #define CONFIG_MMC  #define CONFIG_GENERIC_MMC @@ -260,12 +260,11 @@   /* Platform/Board specific defs */  #define CONFIG_SYS_TIMERBASE		0x48040000	/* Use Timer2 */  #define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */ -#define CONFIG_SYS_HZ			1000 +#define CONFIG_SYS_HZ			1000	/* 1ms clock */  /* NS16550 Configuration */  #define CONFIG_SYS_NS16550  #define CONFIG_SYS_NS16550_SERIAL -#define CONFIG_SERIAL_MULTI  #define CONFIG_SYS_NS16550_REG_SIZE	(-4)  #define CONFIG_SYS_NS16550_CLK		(48000000)  #define CONFIG_SYS_NS16550_COM1		0x44e09000	/* Base EVM has UART0 */ @@ -295,6 +294,9 @@  #define CONFIG_SYS_BAUDRATE_TABLE	{ 110, 300, 600, 1200, 2400, \  4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 } +/* CPU */ +#define CONFIG_ARCH_CPU_INIT +  #define CONFIG_ENV_OVERWRITE		1  #define CONFIG_SYS_CONSOLE_INFO_QUIET @@ -360,11 +362,7 @@  #define CONFIG_SYS_NAND_ECCSIZE		512  #define CONFIG_SYS_NAND_ECCBYTES	14 -#define CONFIG_SYS_NAND_ECCSTEPS	4 -#define	CONFIG_SYS_NAND_ECCTOTAL	(CONFIG_SYS_NAND_ECCBYTES * \ -						CONFIG_SYS_NAND_ECCSTEPS) - -#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE  #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000 diff --git a/include/configs/aria.h b/include/configs/aria.h index b4253996a..5318aaf99 100644 --- a/include/configs/aria.h +++ b/include/configs/aria.h @@ -383,7 +383,7 @@  /*   * IIM - IC Identification Module   */ -#undef CONFIG_IIM +#undef CONFIG_FSL_IIM  /*   * EEPROM configuration for Atmel AT24C32A-10TQ-2.7: diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h index ebcc69afa..43289446b 100644 --- a/include/configs/at91sam9260ek.h +++ b/include/configs/at91sam9260ek.h @@ -105,6 +105,8 @@  #define CONFIG_CMD_PING		1  #define CONFIG_CMD_DHCP		1  #define CONFIG_CMD_NAND		1 +#define CONFIG_CMD_MMC +#define CONFIG_CMD_FAT  #define CONFIG_CMD_USB		1  /* @@ -128,6 +130,24 @@  	(ATMEL_BASE_SRAM1 + 0x1000 - GENERATED_GBL_DATA_SIZE)  #endif +/* + * The (arm)linux board id set by generic code depending on configured board + * (see boards.cfg for different boards) + */ +#ifdef CONFIG_AT91SAM9G20 +	/* the sam9g20 variants have two different board ids */ +# ifdef CONFIG_AT91SAM9G20EK_2MMC +	/* we may be setup for the 2MMC variant of at91sam9g20ek */ +#  define CONFIG_MACH_TYPE MACH_TYPE_AT91SAM9G20EK_2MMC +# else +	/* or the normal at91sam9g20ek */ +#  define CONFIG_MACH_TYPE MACH_TYPE_AT91SAM9G20EK +# endif +#else +	/* otherwise default to good old at91sam9260ek */ +# define CONFIG_MACH_TYPE MACH_TYPE_AT91SAM9260EK +#endif +  /* DataFlash */  #ifndef CONFIG_AT91SAM9G20EK_2MMC  #define CONFIG_ATMEL_DATAFLASH_SPI @@ -158,6 +178,18 @@  #define CONFIG_SYS_NAND_READY_PIN	AT91_PIN_PC13  #endif +/* MMC */ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_GENERIC_ATMEL_MCI +#endif + +/* FAT */ +#ifdef CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif +  /* NOR flash - no real flash on this board */  #define CONFIG_SYS_NO_FLASH			1 @@ -170,13 +202,11 @@  /* USB */  #define CONFIG_USB_ATMEL  #define CONFIG_USB_OHCI_NEW		1 -#define CONFIG_DOS_PARTITION		1  #define CONFIG_SYS_USB_OHCI_CPU_INIT		1  #define CONFIG_SYS_USB_OHCI_REGS_BASE		0x00500000	/* AT91SAM9260_UHP_BASE */  #define CONFIG_SYS_USB_OHCI_SLOT_NAME		"at91sam9260"  #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS	2  #define CONFIG_USB_STORAGE		1 -#define CONFIG_CMD_FAT			1  #define CONFIG_SYS_LOAD_ADDR			0x22000000	/* load address */ @@ -211,7 +241,7 @@  				"mtdparts=atmel_nand:-(root) "		\  				"rw rootfstype=jffs2" -#else /* CONFIG_SYS_USE_NANDFLASH */ +#elif defined(CONFIG_SYS_USE_NANDFLASH)  /* bootstrap + u-boot + env + linux in nandflash */  #define CONFIG_ENV_IS_IN_NAND	1 @@ -226,6 +256,22 @@  	"512k(dtb),6M(kernel)ro,-(rootfs) "				\  	"root=/dev/mtdblock7 rw rootfstype=jffs2" +#else	/* CONFIG_SYS_USE_MMC */ +/* bootstrap + u-boot + env + linux in mmc */ +#define CONFIG_ENV_IS_IN_MMC +/* For FAT system, most cases it should be in the reserved sector */ +#define CONFIG_ENV_OFFSET		0x2000 +#define CONFIG_ENV_SIZE			0x1000 +#define CONFIG_SYS_MMC_ENV_DEV		0 + +#define CONFIG_BOOTCOMMAND						\ +	"fatload mmc 0:1 0x22000000 uImage; bootm" +#define CONFIG_BOOTARGS							\ +	"console=ttyS0,115200 earlyprintk "				\ +	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\ +	"256k(env),256k(env_redundant),256k(spare),"			\ +	"512k(dtb),6M(kernel)ro,-(rootfs) "				\ +	"root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait"  #endif  #define CONFIG_SYS_PROMPT		"U-Boot> " diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h new file mode 100644 index 000000000..8d2673dac --- /dev/null +++ b/include/configs/at91sam9n12ek.h @@ -0,0 +1,232 @@ +/* + * (C) Copyright 2013 Atmel Corporation. + * Josh Wu <josh.wu@atmel.com> + * + * Configuation settings for the AT91SAM9N12-EK boards. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __AT91SAM9N12_CONFIG_H_ +#define __AT91SAM9N12_CONFIG_H_ + +/* + * SoC must be defined first, before hardware.h is included. + * In this case SoC is defined in boards.cfg. + */ +#include <asm/hardware.h> + +#define CONFIG_SYS_TEXT_BASE		0x26f00000 + +#define CONFIG_ARM926EJS +#define CONFIG_AT91FAMILY + +/* ARM asynchronous clock */ +#define CONFIG_SYS_AT91_SLOW_CLOCK	32768		/* slow clock xtal */ +#define CONFIG_SYS_AT91_MAIN_CLOCK	16000000	/* main clock xtal */ +#define CONFIG_SYS_HZ			1000 + +/* Misc CPU related */ +#define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */ +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_DISPLAY_CPUINFO + +#define CONFIG_OF_LIBFDT + +/* general purpose I/O */ +#define CONFIG_AT91_GPIO + +/* serial console */ +#define CONFIG_ATMEL_USART +#define CONFIG_USART_BASE		ATMEL_BASE_DBGU +#define CONFIG_USART_ID			ATMEL_ID_SYS +#define CONFIG_BAUDRATE			115200 + +/* LCD */ +#define CONFIG_LCD +#define LCD_BPP				LCD_COLOR16 +#define LCD_OUTPUT_BPP			24 +#define CONFIG_LCD_LOGO +#define CONFIG_LCD_INFO +#define CONFIG_LCD_INFO_BELOW_LOGO +#define CONFIG_SYS_WHITE_ON_BLACK +#define CONFIG_ATMEL_HLCD +#define CONFIG_ATMEL_LCD_RGB565 +#define CONFIG_SYS_CONSOLE_IS_IN_ENV + +#define CONFIG_BOOTDELAY		3 + +/* + * BOOTP options + */ +#define CONFIG_BOOTP_BOOTFILESIZE +#define CONFIG_BOOTP_BOOTPATH +#define CONFIG_BOOTP_GATEWAY +#define CONFIG_BOOTP_HOSTNAME + +/* NOR flash - no real flash on this board */ +#define CONFIG_SYS_NO_FLASH + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> +#undef CONFIG_CMD_FPGA + +#define CONFIG_CMD_BOOTZ +#define CONFIG_CMD_PING +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_NAND +#define CONFIG_CMD_SF +#define CONFIG_CMD_MMC +#define CONFIG_CMD_FAT + +#define CONFIG_NR_DRAM_BANKS		1 +#define CONFIG_SYS_SDRAM_BASE		0x20000000 +#define CONFIG_SYS_SDRAM_SIZE		0x08000000 + +/* + * Initial stack pointer: 4k - GENERATED_GBL_DATA_SIZE in internal SRAM, + * leaving the correct space for initial global data structure above + * that address while providing maximum stack area below. + */ +# define CONFIG_SYS_INIT_SP_ADDR \ +	(ATMEL_BASE_SRAM + 0x1000 - GENERATED_GBL_DATA_SIZE) + +/* DataFlash */ +#ifdef CONFIG_CMD_SF +#define CONFIG_ATMEL_SPI +#define CONFIG_SPI_FLASH +#define CONFIG_SPI_FLASH_ATMEL +#define CONFIG_SF_DEFAULT_SPEED		30000000 +#define CONFIG_ENV_SPI_MODE		SPI_MODE_3 +#define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3 +#endif + +/* NAND flash */ +#ifdef CONFIG_CMD_NAND +#define CONFIG_NAND_ATMEL +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_BASE		0x40000000 +#define CONFIG_SYS_NAND_MASK_ALE	(1 << 21) +#define CONFIG_SYS_NAND_MASK_CLE	(1 << 22) +#define CONFIG_SYS_NAND_ENABLE_PIN	AT91_PIO_PORTD, 4 +#define CONFIG_SYS_NAND_READY_PIN	AT91_PIO_PORTD, 5 + +/* PMECC & PMERRLOC */ +#define CONFIG_ATMEL_NAND_HWECC +#define CONFIG_ATMEL_NAND_HW_PMECC +#define CONFIG_PMECC_CAP		2 +#define CONFIG_PMECC_SECTOR_SIZE	512 +#define CONFIG_PMECC_INDEX_TABLE_OFFSET	0x8000 +#endif + +#define CONFIG_MTD_PARTITIONS +#define CONFIG_MTD_DEVICE +#define CONFIG_CMD_MTDPARTS +#define MTDIDS_DEFAULT			"nand0=atmel_nand" +#define MTDPARTS_DEFAULT						\ +	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\ +	"256k(env),256k(env_redundant),256k(spare),"			\ +	"512k(dtb),6M(kernel)ro,-(rootfs)" + +#define CONFIG_EXTRA_ENV_SETTINGS                                       \ +	"console=console=ttyS0,115200\0"                                \ +	"mtdparts="MTDPARTS_DEFAULT"\0"					\ +	"bootargs_nand=rootfstype=ubifs ubi.mtd=7 root=ubi0:rootfs rw\0"\ +	"bootargs_mmc=root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait\0" + +/* MMC */ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_GENERIC_ATMEL_MCI +#endif + +/* FAT */ +#ifdef CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif + +#define CONFIG_SYS_LOAD_ADDR		0x22000000 /* load address */ + +#define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE +#define CONFIG_SYS_MEMTEST_END		0x26e00000 + +#ifdef CONFIG_SYS_USE_SPIFLASH + +/* bootstrap + u-boot + env + linux in dataflash on CS0 */ +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_OFFSET		0x5000 +#define CONFIG_ENV_SIZE			0x3000 +#define CONFIG_ENV_SECT_SIZE		0x1000 +#define CONFIG_BOOTCOMMAND						\ +	"setenv bootargs ${console} ${mtdparts} ${bootargs_nand};"	\ +	"sf probe 0; sf read 0x22000000 0x100000 0x300000; "		\ +	"bootm 0x22000000" + +#elif defined(CONFIG_SYS_USE_NANDFLASH) + +/* bootstrap + u-boot + env + linux in nandflash */ +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_OFFSET		0xc0000 +#define CONFIG_ENV_OFFSET_REDUND	0x100000 +#define CONFIG_ENV_SIZE			0x20000		/* 1 sector = 128 kB */ +#define CONFIG_BOOTCOMMAND						\ +	"setenv bootargs ${console} ${mtdparts} ${bootargs_nand};"	\ +	"nand read 0x21000000 0x180000 0x080000;"			\ +	"nand read 0x22000000 0x200000 0x400000;"			\ +	"bootm 0x22000000 - 0x21000000" + +#else /* CONFIG_SYS_USE_MMC */ + +/* bootstrap + u-boot + env + linux in mmc */ +#define CONFIG_ENV_IS_IN_MMC +/* For FAT system, most cases it should be in the reserved sector */ +#define CONFIG_ENV_OFFSET		0x2000 +#define CONFIG_ENV_SIZE			0x1000 +#define CONFIG_SYS_MMC_ENV_DEV		0 +#define CONFIG_BOOTCOMMAND						\ +	"setenv bootargs ${console} ${mtdparts} ${bootargs_mmc};"	\ +	"fatload mmc 0:1 0x21000000 dtb;"				\ +	"fatload mmc 0:1 0x22000000 uImage;"				\ +	"bootm 0x22000000 - 0x21000000" + +#endif + +#define CONFIG_SYS_PROMPT	"U-Boot> " +#define CONFIG_SYS_CBSIZE	256 +#define CONFIG_SYS_MAXARGS	16 +#define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \ +					+ 16) +#define CONFIG_SYS_LONGHELP +#define CONFIG_CMDLINE_EDITING +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_HUSH_PARSER + +/* + * Size of malloc() pool + */ +#define CONFIG_SYS_MALLOC_LEN	(4 * 1024 * 1024) +#define CONFIG_STACKSIZE	(32 * 1024)	/* regular stack */ + +#endif diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h index 726714dd2..c6e357a8c 100644 --- a/include/configs/cm_t35.h +++ b/include/configs/cm_t35.h @@ -135,12 +135,12 @@  #define CONFIG_CMD_CACHE  #define CONFIG_CMD_EXT2		/* EXT2 Support			*/  #define CONFIG_CMD_FAT		/* FAT support			*/ -#define CONFIG_CMD_JFFS2	/* JFFS2 Support		*/  #define CONFIG_CMD_MTDPARTS	/* Enable MTD parts commands */  #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */ +#define CONFIG_MTD_PARTITIONS  #define MTDIDS_DEFAULT		"nand0=nand"  #define MTDPARTS_DEFAULT	"mtdparts=nand:512k(x-loader),"\ -				"1920k(u-boot),128k(u-boot-env),"\ +				"1920k(u-boot),256k(u-boot-env),"\  				"4m(kernel),-(fs)"  #define CONFIG_CMD_I2C		/* I2C serial bus support	*/ @@ -182,14 +182,6 @@  #define CONFIG_SYS_MAX_NAND_DEVICE	1		/* Max number of NAND */  							/* devices */ -#define CONFIG_JFFS2_NAND -/* nand device jffs2 lives on */ -#define CONFIG_JFFS2_DEV		"nand0" -/* start of jffs2 partition */ -#define CONFIG_JFFS2_PART_OFFSET	0x680000 -#define CONFIG_JFFS2_PART_SIZE		0xf980000	/* size of jffs2 */ -							/* partition */ -  /* Environment information */  #define CONFIG_BOOTDELAY		10  #define CONFIG_ZERO_BOOTDELAY_CHECK @@ -204,9 +196,9 @@  	"defaultdisplay=dvi\0" \  	"mmcdev=0\0" \  	"mmcroot=/dev/mmcblk0p2 rw\0" \ -	"mmcrootfstype=ext3 rootwait\0" \ +	"mmcrootfstype=ext4 rootwait\0" \  	"nandroot=/dev/mtdblock4 rw\0" \ -	"nandrootfstype=jffs2\0" \ +	"nandrootfstype=ubifs\0" \  	"mmcargs=setenv bootargs console=${console} " \  		"mpurate=${mpurate} " \  		"vram=${vram} " \ @@ -232,7 +224,7 @@  		"bootm ${loadaddr}\0" \  	"nandboot=echo Booting from nand ...; " \  		"run nandargs; " \ -		"nand read ${loadaddr} 280000 400000; " \ +		"nand read ${loadaddr} 2a0000 400000; " \  		"bootm ${loadaddr}\0" \  #define CONFIG_BOOTCOMMAND \ diff --git a/include/configs/da830evm.h b/include/configs/da830evm.h index f7ac256a0..198892ba5 100644 --- a/include/configs/da830evm.h +++ b/include/configs/da830evm.h @@ -109,8 +109,8 @@  #define CONFIG_SYS_NAND_CS		3  #define CONFIG_SYS_NAND_BASE		DAVINCI_ASYNC_EMIF_DATA_CE3_BASE  #define CONFIG_SYS_NAND_PAGE_2K -#define CONFIG_SYS_CLE_MASK		0x10 -#define CONFIG_SYS_ALE_MASK		0x8 +#define CONFIG_SYS_NAND_MASK_CLE		0x10 +#define CONFIG_SYS_NAND_MASK_ALE		0x8  #define CONFIG_SYS_MAX_NAND_DEVICE	1 /* Max number of NAND devices */  #endif diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index 583568d30..c42096741 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @@ -199,8 +199,8 @@  #define	CONFIG_SYS_NAND_PAGE_2K  #define CONFIG_SYS_NAND_CS		3  #define CONFIG_SYS_NAND_BASE		DAVINCI_ASYNC_EMIF_DATA_CE3_BASE -#define CONFIG_SYS_CLE_MASK		0x10 -#define CONFIG_SYS_ALE_MASK		0x8 +#define CONFIG_SYS_NAND_MASK_CLE		0x10 +#define CONFIG_SYS_NAND_MASK_ALE		0x8  #undef CONFIG_SYS_NAND_HW_ECC  #define CONFIG_SYS_MAX_NAND_DEVICE	1 /* Max number of NAND devices */  #define CONFIG_SYS_NAND_HW_ECC_OOBFIRST diff --git a/include/configs/enbw_cmc.h b/include/configs/enbw_cmc.h index 2d63b670c..97bc9729a 100644 --- a/include/configs/enbw_cmc.h +++ b/include/configs/enbw_cmc.h @@ -118,8 +118,8 @@  #define CONFIG_SYS_NAND_PAGE_2K  #define CONFIG_SYS_NAND_CS		3  #define CONFIG_SYS_NAND_BASE		DAVINCI_ASYNC_EMIF_DATA_CE3_BASE -#define CONFIG_SYS_CLE_MASK		0x10 -#define CONFIG_SYS_ALE_MASK		0x8 +#define CONFIG_SYS_NAND_MASK_CLE		0x10 +#define CONFIG_SYS_NAND_MASK_ALE		0x8  #undef CONFIG_SYS_NAND_HW_ECC  #define CONFIG_SYS_MAX_NAND_DEVICE	1 /* Max number of NAND devices */ diff --git a/include/configs/goflexhome.h b/include/configs/goflexhome.h new file mode 100644 index 000000000..e77651415 --- /dev/null +++ b/include/configs/goflexhome.h @@ -0,0 +1,151 @@ +/* + * Copyright (C) 2013 Suriyan Ramasami <suriyan.r@gmail.com> + * + * Based on dockstar.h originally written by + * Copyright (C) 2010  Eric C. Cooper <ecc@cmu.edu> + * + * Based on sheevaplug.h originally written by + * Prafulla Wadaskar <prafulla@marvell.com> + * (C) Copyright 2009 + * Marvell Semiconductor <www.marvell.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301 USA + */ + +#ifndef _CONFIG_GOFLEXHOME_H +#define _CONFIG_GOFLEXHOME_H + +/* + * Version number information + */ +#define CONFIG_IDENT_STRING	"\nSeagate GoFlex Home" + +/* + * High Level Configuration Options (easy to change) + */ +#define CONFIG_FEROCEON_88FR131	1	/* CPU Core subversion */ +#define CONFIG_KIRKWOOD		1	/* SOC Family Name */ +#define CONFIG_KW88F6281	1	/* SOC Name */ +#define CONFIG_MACH_GOFLEXHOME		/* Machine type */ +#define CONFIG_SKIP_LOWLEVEL_INIT	/* disable board lowlevel_init */ + +/* + * Default GPIO configuration and LED status + */ +#define GOFLEXHOME_OE_LOW               (~(0)) +#define GOFLEXHOME_OE_HIGH              (~(0)) +#define GOFLEXHOME_OE_VAL_LOW           (1 << 29)       /* USB_PWEN low */ +#define GOFLEXHOME_OE_VAL_HIGH          (1 << 17)       /* LED pin high */ + +/* PHY related */ +#define MV88E1116_LED_FCTRL_REG         10 +#define MV88E1116_CPRSP_CR3_REG         21 +#define MV88E1116_MAC_CTRL_REG          21 +#define MV88E1116_PGADR_REG             22 +#define MV88E1116_RGMII_TXTM_CTRL       (1 << 4) +#define MV88E1116_RGMII_RXTM_CTRL       (1 << 5) + +/* + * Commands configuration + */ +#define CONFIG_SYS_NO_FLASH		/* Declare no flash (NOR/SPI) */ +#define CONFIG_CONSOLE_MUX +#define CONFIG_SYS_CONSOLE_IS_IN_ENV + +#include <config_cmd_default.h> +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_ENV +#define CONFIG_CMD_MII +#define CONFIG_CMD_NAND +#define CONFIG_CMD_PING +#define CONFIG_CMD_USB +#define CONFIG_CMD_IDE +#define CONFIG_CMD_DATE +#define CONFIG_CMD_EXT4 +#define CONFIG_SYS_MVFS         /* Picks up Filesystem from mv-common.h */ + +/* + * mv-common.h should be defined after CMD configs since it used them + * to enable certain macros + */ +#include "mv-common.h" + +#undef CONFIG_SYS_PROMPT	/* previously defined in mv-common.h */ +#define CONFIG_SYS_PROMPT	"GoFlexHome> "	/* Command Prompt */ + +/* + *  Environment variables configurations + */ +#ifdef CONFIG_CMD_NAND +#define CONFIG_ENV_IS_IN_NAND		1 +#define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */ +#else +#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */ +#endif +/* + * max 4k env size is enough, but in case of nand + * it has to be rounded to sector size + */ +#define CONFIG_ENV_SIZE			0x20000	/* 128k */ +#define CONFIG_ENV_ADDR			0xC0000 +#define CONFIG_ENV_OFFSET		0xC0000	/* env starts here */ + +/* + * Default environment variables + */ +#define CONFIG_BOOTCOMMAND \ +	"setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \ +	"ubi part root; " \ +	"ubifsmount ubi:root; " \ +	"ubifsload 0x800000 ${kernel}; " \ +	"bootm 0x800000" + +#define CONFIG_MTDPARTS \ +	"mtdparts=orion_nand:1m(uboot),6M(uImage),-(root)\0" + +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"console=console=ttyS0,115200\0" \ +	"mtdids=nand0=orion_nand\0" \ +	"mtdparts="CONFIG_MTDPARTS \ +	"kernel=/boot/uImage\0" \ +	"bootargs_root=ubi.mtd=root root=ubi0:root rootfstype=ubifs ro\0" + +/* + * Ethernet Driver configuration + */ +#ifdef CONFIG_CMD_NET +#define CONFIG_MVGBE_PORTS	{1, 0}	/* enable port 0 only */ +#define CONFIG_PHY_BASE_ADR	0 +#endif /* CONFIG_CMD_NET */ + +/* + *  * SATA Driver configuration + *   */ +#ifdef CONFIG_MVSATA_IDE +#define CONFIG_SYS_ATA_IDE0_OFFSET      MV_SATA_PORT0_OFFSET +#endif /*CONFIG_MVSATA_IDE*/ + +/* + *  * RTC driver configuration + *   */ +#ifdef CONFIG_CMD_DATE +#define CONFIG_RTC_MV +#endif /* CONFIG_CMD_DATE */ + +#endif /* _CONFIG_GOFLEXHOME_H */ diff --git a/include/configs/igep0033.h b/include/configs/igep0033.h new file mode 100644 index 000000000..1912d7df3 --- /dev/null +++ b/include/configs/igep0033.h @@ -0,0 +1,288 @@ +/* + * Copyright (C) 2013, ISEE 2007 SL - http://www.isee.biz/ + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation version 2. + * + * This program is distributed "as is" WITHOUT ANY WARRANTY of any + * kind, whether express or implied; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + * GNU General Public License for more details. + */ + +#ifndef __CONFIG_IGEP0033_H +#define __CONFIG_IGEP0033_H + +#define CONFIG_AM33XX +#define CONFIG_OMAP + +#include <asm/arch/omap.h> + +/* Mach type */ +#define MACH_TYPE_IGEP0033		4521	/* Until the next sync */ +#define CONFIG_MACH_TYPE		MACH_TYPE_IGEP0033 + +/* Clock defines */ +#define V_OSCK				24000000  /* Clock output from T2 */ +#define V_SCLK				(V_OSCK) + +/* DMA defines */ +#define CONFIG_DMA_COHERENT +#define CONFIG_DMA_COHERENT_SIZE	(1 << 20) + +#define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */ +#define CONFIG_SYS_MALLOC_LEN		(1024 << 10) +#define CONFIG_SYS_LONGHELP		/* undef to save memory */ +#define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser */ +#define CONFIG_SYS_PROMPT		"U-Boot# " +#define CONFIG_SYS_NO_FLASH + +/* Display cpuinfo */ +#define CONFIG_DISPLAY_CPUINFO + +/* Commands to include */ +#include <config_cmd_default.h> + +#define CONFIG_CMD_ASKENV +#define CONFIG_CMD_BOOTZ +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_ECHO +#define CONFIG_CMD_EXT4 +#define CONFIG_CMD_FAT +#define CONFIG_CMD_FS_GENERIC +#define CONFIG_CMD_MMC +#define CONFIG_CMD_MTDPARTS +#define CONFIG_CMD_NAND +#define CONFIG_CMD_NET +#define CONFIG_CMD_PING +#define CONFIG_CMD_UBI +#define CONFIG_CMD_UBIFS + +/* + * Because the issues explained in doc/README.memory-test, the "mtest command + * is considered deprecated. It should not be enabled in most normal ports of + * U-Boot. + */ +#undef CONFIG_CMD_MEMTEST + +#define CONFIG_BOOTDELAY		1	/* negative for no autoboot */ +#define CONFIG_ENV_VARS_UBOOT_CONFIG +#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"loadaddr=0x80200000\0" \ +	"rdaddr=0x81000000\0" \ +	"bootfile=/boot/uImage\0" \ +	"console=ttyO0,115200n8\0" \ +	"optargs=\0" \ +	"mmcdev=0\0" \ +	"mmcroot=/dev/mmcblk0p2 rw\0" \ +	"mmcrootfstype=ext4 rootwait\0" \ +	"ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \ +	"ramrootfstype=ext2\0" \ +	"mmcargs=setenv bootargs console=${console} " \ +		"${optargs} " \ +		"root=${mmcroot} " \ +		"rootfstype=${mmcrootfstype}\0" \ +	"bootenv=uEnv.txt\0" \ +	"loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ +	"importbootenv=echo Importing environment from mmc ...; " \ +		"env import -t $loadaddr $filesize\0" \ +	"ramargs=setenv bootargs console=${console} " \ +		"${optargs} " \ +		"root=${ramroot} " \ +		"rootfstype=${ramrootfstype}\0" \ +	"loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ +	"loaduimagefat=load mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \ +	"loaduimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootfile}\0" \ +	"mmcboot=echo Booting from mmc ...; " \ +		"run mmcargs; " \ +		"bootm ${loadaddr}\0" \ +	"ramboot=echo Booting from ramdisk ...; " \ +		"run ramargs; " \ +		"bootm ${loadaddr}\0" \ + +#define CONFIG_BOOTCOMMAND \ +	"mmc dev ${mmcdev}; if mmc rescan; then " \ +		"echo SD/MMC found on device ${mmcdev};" \ +		"if run loadbootenv; then " \ +			"echo Loaded environment from ${bootenv};" \ +			"run importbootenv;" \ +		"fi;" \ +		"if test -n $uenvcmd; then " \ +			"echo Running uenvcmd ...;" \ +			"run uenvcmd;" \ +		"fi;" \ +		"if run loaduimage; then " \ +			"run mmcboot;" \ +		"fi;" \ +	"fi;" \ + +/* Max number of command args */ +#define CONFIG_SYS_MAXARGS		16 + +/* Console I/O Buffer Size */ +#define CONFIG_SYS_CBSIZE		512 + +/* Print Buffer Size */ +#define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE \ +					+ sizeof(CONFIG_SYS_PROMPT) + 16) + +/* Boot Argument Buffer Size */ +#define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE +#define CONFIG_SYS_LOAD_ADDR		0x81000000 /* Default load address */ +#define CONFIG_SYS_HZ			1000 /* 1ms clock */ + +/* Physical Memory Map */ +#define CONFIG_NR_DRAM_BANKS		1		/*  1 bank of DRAM */ +#define PHYS_DRAM_1			0x80000000	/* DRAM Bank #1 */ +#define CONFIG_MAX_RAM_BANK_SIZE	(1024 << 20)	/* 1GB */ + +#define CONFIG_SYS_SDRAM_BASE		PHYS_DRAM_1 +#define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \ +						GENERATED_GBL_DATA_SIZE) +/* Platform/Board specific defs */ +#define CONFIG_SYS_TIMERBASE		0x48040000	/* Use Timer2 */ +#define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */ +#define CONFIG_SYS_HZ			1000 + +/* NS16550 Configuration */ +#define CONFIG_SYS_NS16550 +#define CONFIG_SYS_NS16550_SERIAL +#define CONFIG_SYS_NS16550_REG_SIZE	(-4) +#define CONFIG_SYS_NS16550_CLK		(48000000) +#define CONFIG_SYS_NS16550_COM1		0x44e09000	/* UART0 */ + +#define CONFIG_SERIAL_MULTI +#define CONFIG_CONS_INDEX		1 +#define CONFIG_BAUDRATE			115200 + +/* CPU */ +#define CONFIG_ARCH_CPU_INIT + +#define CONFIG_ENV_OVERWRITE		1 +#define CONFIG_SYS_CONSOLE_INFO_QUIET + +/* MMC support */ +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_OMAP_HSMMC +#define CONFIG_DOS_PARTITION + +/* GPIO support */ +#define CONFIG_OMAP_GPIO + +/* Ethernet support */ +#define CONFIG_DRIVER_TI_CPSW +#define CONFIG_MII +#define CONFIG_BOOTP_DEFAULT +#define CONFIG_BOOTP_DNS +#define CONFIG_BOOTP_DNS2 +#define CONFIG_BOOTP_SEND_HOSTNAME +#define CONFIG_BOOTP_GATEWAY +#define CONFIG_BOOTP_SUBNETMASK +#define CONFIG_NET_RETRY_COUNT         10 +#define CONFIG_NET_MULTI +#define CONFIG_PHYLIB +#define CONFIG_PHY_ADDR			0 +#define CONFIG_PHY_SMSC + +/* NAND support */ +#define CONFIG_NAND +#define CONFIG_NAND_OMAP_GPMC +#define GPMC_NAND_ECC_LP_x16_LAYOUT	1 +#define CONFIG_SYS_NAND_BASE		(0x08000000)	/* phys address CS0 */ +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_ONFI_DETECTION	1 +#define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */ +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_OFFSET		0x260000 /* environment starts here */ + +#define CONFIG_MTD_PARTITIONS +#define CONFIG_MTD_DEVICE +#define CONFIG_RBTREE +#define CONFIG_LZO + +#define MTDIDS_DEFAULT			"nand0=nand" +#define MTDPARTS_DEFAULT		"mtdparts=nand:512k(SPL),"\ +					"1m(U-Boot),128k(U-Boot Env),"\ +					"5m(Kernel),-(File System)" + +/* Unsupported features */ +#undef CONFIG_USE_IRQ + +/* Defines for SPL */ +#define CONFIG_SPL +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_TEXT_BASE		0x402F0400 +#define CONFIG_SPL_MAX_SIZE		(101 * 1024) +#define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR + +#define CONFIG_SPL_BSS_START_ADDR	0x80000000 +#define CONFIG_SPL_BSS_MAX_SIZE		0x80000		/* 512 KB */ + +#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR	0x300 /* address 0x60000 */ +#define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	0x200 /* 256 KB */ +#define CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION	1 +#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME	"u-boot.img" +#define CONFIG_SPL_MMC_SUPPORT +#define CONFIG_SPL_FAT_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_LIBDISK_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_GPIO_SUPPORT +#define CONFIG_SPL_YMODEM_SUPPORT +#define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/am33xx/u-boot-spl.lds" + +#define CONFIG_SPL_BOARD_INIT +#define CONFIG_SPL_NAND_AM33XX_BCH +#define CONFIG_SPL_NAND_SUPPORT +#define CONFIG_SPL_NAND_BASE +#define CONFIG_SPL_NAND_DRIVERS +#define CONFIG_SPL_NAND_ECC +#define CONFIG_SYS_NAND_5_ADDR_CYCLE +#define CONFIG_SYS_NAND_PAGE_COUNT	(CONFIG_SYS_NAND_BLOCK_SIZE / \ +					 CONFIG_SYS_NAND_PAGE_SIZE) +#define CONFIG_SYS_NAND_PAGE_SIZE	2048 +#define CONFIG_SYS_NAND_OOBSIZE		64 +#define CONFIG_SYS_NAND_BLOCK_SIZE	(128*1024) +#define CONFIG_SYS_NAND_BAD_BLOCK_POS	NAND_LARGE_BADBLOCK_POS +#define CONFIG_SYS_NAND_ECCPOS		{ 2, 3, 4, 5, 6, 7, 8, 9, \ +					 10, 11, 12, 13, 14, 15, 16, 17, \ +					 18, 19, 20, 21, 22, 23, 24, 25, \ +					 26, 27, 28, 29, 30, 31, 32, 33, \ +					 34, 35, 36, 37, 38, 39, 40, 41, \ +					 42, 43, 44, 45, 46, 47, 48, 49, \ +					 50, 51, 52, 53, 54, 55, 56, 57, } + +#define CONFIG_SYS_NAND_ECCSIZE		512 +#define CONFIG_SYS_NAND_ECCBYTES	14 + +#define CONFIG_SYS_NAND_ECCSTEPS	4 +#define	CONFIG_SYS_NAND_ECCTOTAL	(CONFIG_SYS_NAND_ECCBYTES * \ +						CONFIG_SYS_NAND_ECCSTEPS) + +#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE + +#define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000 + +/* + * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM + * 64 bytes before this address should be set aside for u-boot.img's + * header. That is 0x800FFFC0--0x80100000 should not be used for any + * other needs. + */ +#define CONFIG_SYS_TEXT_BASE		0x80800000 +#define CONFIG_SYS_SPL_MALLOC_START	0x80208000 +#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000 + +/* + * Since SPL did pll and ddr initialization for us, + * we don't need to do it twice. + */ +#ifndef CONFIG_SPL_BUILD +#define CONFIG_SKIP_LOWLEVEL_INIT +#endif + +#endif	/* ! __CONFIG_IGEP0033_H */ diff --git a/include/configs/ima3-mx53.h b/include/configs/ima3-mx53.h index c6637002b..327a866ea 100644 --- a/include/configs/ima3-mx53.h +++ b/include/configs/ima3-mx53.h @@ -26,7 +26,6 @@  /* SOC type must be included before imx-regs.h */  #define CONFIG_MX53  #include <asm/arch/imx-regs.h> -#include <asm/arch/mx5x_pins.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DISPLAY_BOARDINFO @@ -79,8 +78,6 @@  /* SPI FLASH - not used for environment */  #define CONFIG_SPI_FLASH  #define CONFIG_SPI_FLASH_STMICRO -#define CONFIG_SPI_FLASH_CS		(IOMUX_TO_GPIO(MX53_PIN_CSI0_D11) \ -						 << 8) | 0  #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0  #define CONFIG_SF_DEFAULT_SPEED		25000000 diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h index 4ce4058c7..5b3fa43eb 100644 --- a/include/configs/m28evk.h +++ b/include/configs/m28evk.h @@ -77,6 +77,7 @@  #define CONFIG_CMD_SF  #define CONFIG_CMD_SPI  #define CONFIG_CMD_USB +#define	CONFIG_VIDEO  #define CONFIG_REGEX			/* Enable regular expression support */ @@ -271,6 +272,24 @@  #endif  /* + * LCD + */ +#ifdef	CONFIG_VIDEO +#define	CONFIG_CFB_CONSOLE +#define	CONFIG_VIDEO_MXS +#define	CONFIG_VIDEO_LOGO +#define	CONFIG_VIDEO_SW_CURSOR +#define	CONFIG_VGA_AS_SINGLE_DEVICE +#define	CONFIG_SYS_CONSOLE_IS_IN_ENV +#define	CONFIG_SPLASH_SCREEN +#define	CONFIG_CMD_BMP +#define	CONFIG_BMP_16BPP +#define	CONFIG_VIDEO_BMP_RLE8 +#define	CONFIG_VIDEO_BMP_GZIP +#define	CONFIG_SYS_VIDEO_LOGO_MAX_SIZE	(512 << 10) +#endif + +/*   * Boot Linux   */  #define CONFIG_CMDLINE_TAG diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h new file mode 100644 index 000000000..8403d515e --- /dev/null +++ b/include/configs/m53evk.h @@ -0,0 +1,256 @@ +/* + * DENX M53 configuration + * Copyright (C) 2012-2013 Marek Vasut <marex@denx.de> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __M53EVK_CONFIG_H__ +#define __M53EVK_CONFIG_H__ + +#define CONFIG_MX53 +#define CONFIG_MXC_GPIO +#define CONFIG_SYS_HZ		1000 + +#include <asm/arch/imx-regs.h> + +#define CONFIG_DISPLAY_CPUINFO +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_REVISION_TAG +#define CONFIG_SYS_NO_FLASH + +/* + * U-Boot Commands + */ +#include <config_cmd_default.h> +#define CONFIG_DISPLAY_BOARDINFO +#define CONFIG_DOS_PARTITION + +#define CONFIG_CMD_DATE +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT +#define CONFIG_CMD_I2C +#define CONFIG_CMD_MII +#define CONFIG_CMD_MMC +#define CONFIG_CMD_NAND +#define CONFIG_CMD_NET +#define CONFIG_CMD_PING +#define CONFIG_CMD_SATA +#define CONFIG_CMD_USB + +/* + * Memory configurations + */ +#define CONFIG_NR_DRAM_BANKS		2 +#define PHYS_SDRAM_1			CSD0_BASE_ADDR +#define PHYS_SDRAM_1_SIZE		(512 * 1024 * 1024) +#define PHYS_SDRAM_2			CSD1_BASE_ADDR +#define PHYS_SDRAM_2_SIZE		(512 * 1024 * 1024) +#define PHYS_SDRAM_SIZE			(PHYS_SDRAM_1_SIZE + PHYS_SDRAM_2_SIZE) +#define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024) +#define CONFIG_SYS_MEMTEST_START	0x70000000 +#define CONFIG_SYS_MEMTEST_END		0xaff00000 + +#define CONFIG_SYS_SDRAM_BASE		(PHYS_SDRAM_1) +#define CONFIG_SYS_INIT_RAM_ADDR	(IRAM_BASE_ADDR) +#define CONFIG_SYS_INIT_RAM_SIZE	(IRAM_SIZE) + +#define CONFIG_SYS_INIT_SP_OFFSET \ +	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_ADDR \ +	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) + +#define CONFIG_SYS_TEXT_BASE		0x71000000 + +/* + * U-Boot general configurations + */ +#define CONFIG_SYS_LONGHELP +#define CONFIG_SYS_PROMPT	"=> " +#define CONFIG_SYS_CBSIZE	1024		/* Console I/O buffer size */ +#define CONFIG_SYS_PBSIZE	\ +	(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +						/* Print buffer size */ +#define CONFIG_SYS_MAXARGS	32		/* Max number of command args */ +#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE +						/* Boot argument buffer size */ +#define CONFIG_VERSION_VARIABLE			/* U-BOOT version */ +#define CONFIG_AUTO_COMPLETE			/* Command auto complete */ +#define CONFIG_CMDLINE_EDITING			/* Command history etc */ +#define CONFIG_SYS_HUSH_PARSER + +/* + * Serial Driver + */ +#define CONFIG_MXC_UART +#define CONFIG_MXC_UART_BASE		UART2_BASE +#define CONFIG_CONS_INDEX		1 +#define CONFIG_BAUDRATE			115200 + +/* + * MMC Driver + */ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR	0 +#define CONFIG_SYS_FSL_ESDHC_NUM	1 +#endif + +/* + * NAND + */ +#define CONFIG_ENV_SIZE			(16 * 1024) +#ifdef CONFIG_CMD_NAND +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_BASE		NFC_BASE_ADDR_AXI +#define CONFIG_NAND_MXC +#define CONFIG_MXC_NAND_REGS_BASE	NFC_BASE_ADDR_AXI +#define CONFIG_MXC_NAND_IP_REGS_BASE	NFC_BASE_ADDR +#define CONFIG_SYS_NAND_LARGEPAGE +#define CONFIG_MXC_NAND_HWECC +#define CONFIG_SYS_NAND_USE_FLASH_BBT + +/* Environment is in NAND */ +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE +#define CONFIG_ENV_SECT_SIZE		(128 * 1024) +#define CONFIG_ENV_RANGE		(512 * 1024) +#define CONFIG_ENV_OFFSET		0x100000 +#define CONFIG_ENV_OFFSET_REDUND	\ +		(CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) + +#define CONFIG_CMD_UBI +#define CONFIG_CMD_UBIFS +#define CONFIG_CMD_MTDPARTS +#define CONFIG_RBTREE +#define CONFIG_LZO +#define CONFIG_MTD_DEVICE +#define CONFIG_MTD_PARTITIONS +#define MTDIDS_DEFAULT			"nand0=mxc-nand" +#define MTDPARTS_DEFAULT			\ +	"mtdparts=mxc-nand:"			\ +		"1m(bootloader)ro,"		\ +		"512k(environment),"		\ +		"512k(redundant-environment),"	\ +		"4m(kernel),"			\ +		"128k(fdt),"			\ +		"8m(ramdisk),"			\ +		"-(filesystem)" +#else +#define CONFIG_ENV_IS_NOWHERE +#endif + +/* + * Ethernet on SOC (FEC) + */ +#ifdef CONFIG_CMD_NET +#define CONFIG_FEC_MXC +#define IMX_FEC_BASE			FEC_BASE_ADDR +#define CONFIG_FEC_MXC_PHYADDR		0x0 +#define CONFIG_MII +#define CONFIG_DISCOVER_PHY +#define CONFIG_FEC_XCV_TYPE		RMII +#define CONFIG_PHYLIB +#define CONFIG_PHY_MICREL +#endif + +/* + * I2C + */ +#ifdef CONFIG_CMD_I2C +#define CONFIG_HARD_I2C +#define CONFIG_I2C_MXC +#define CONFIG_SYS_I2C_BASE		I2C2_BASE_ADDR +#define CONFIG_SYS_I2C_SPEED		100000 +#endif + +/* + * RTC + */ +#ifdef CONFIG_CMD_DATE +#define CONFIG_RTC_M41T62 +#define CONFIG_SYS_I2C_RTC_ADDR		0x68 +#define CONFIG_SYS_M41T11_BASE_YEAR	2000 +#endif + +/* + * USB + */ +#ifdef CONFIG_CMD_USB +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_MX5 +#define CONFIG_USB_STORAGE +#define CONFIG_USB_HOST_ETHER +#define CONFIG_USB_ETHER_ASIX +#define CONFIG_USB_ETHER_SMSC95XX +#define CONFIG_MXC_USB_PORT		1 +#define CONFIG_MXC_USB_PORTSC		(PORT_PTS_UTMI | PORT_PTS_PTW) +#define CONFIG_MXC_USB_FLAGS		0 +#endif + +/* + * SATA + */ +#ifdef CONFIG_CMD_SATA +#define CONFIG_DWC_AHSATA +#define CONFIG_SYS_SATA_MAX_DEVICE	1 +#define CONFIG_DWC_AHSATA_PORT_ID	0 +#define CONFIG_DWC_AHSATA_BASE_ADDR	SATA_BASE_ADDR +#define CONFIG_LBA48 +#define CONFIG_LIBATA +#endif + +/* + * Boot Linux + */ +#define CONFIG_CMDLINE_TAG +#define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_BOOTDELAY	3 +#define CONFIG_BOOTFILE		"m53evk/uImage" +#define CONFIG_BOOTARGS		"console=ttymxc1,115200" +#define CONFIG_LOADADDR		0x70800000 +#define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR +#define CONFIG_OF_LIBFDT + +/* + * NAND SPL + */ +#define CONFIG_SPL +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_TARGET		"u-boot-with-nand-spl.imx" +#define CONFIG_SPL_BOARD_INIT +#define CONFIG_SPL_TEXT_BASE		0x70008000 +#define CONFIG_SPL_PAD_TO		0x8000 +#define CONFIG_SPL_STACK		0x70004000 +#define CONFIG_SPL_GPIO_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_NAND_SUPPORT +#define CONFIG_SPL_SERIAL_SUPPORT + +#define CONFIG_SYS_NAND_U_BOOT_OFFS	CONFIG_SPL_PAD_TO +#define CONFIG_SYS_NAND_PAGE_SIZE	2048 +#define CONFIG_SYS_NAND_OOBSIZE		64 +#define CONFIG_SYS_NAND_PAGE_COUNT	64 +#define CONFIG_SYS_NAND_SIZE		(256 * 1024 * 1024) +#define CONFIG_SYS_NAND_BAD_BLOCK_POS	0 + +#endif	/* __M53EVK_CONFIG_H__ */ diff --git a/include/configs/mecp5123.h b/include/configs/mecp5123.h index af302573e..c4f245b98 100644 --- a/include/configs/mecp5123.h +++ b/include/configs/mecp5123.h @@ -275,7 +275,7 @@  /*   * IIM - IC Identification Module   */ -#undef CONFIG_IIM +#undef CONFIG_FSL_IIM  /*   * EEPROM configuration diff --git a/include/configs/mpc5121ads.h b/include/configs/mpc5121ads.h index 6e6af62cc..64ce52dee 100644 --- a/include/configs/mpc5121ads.h +++ b/include/configs/mpc5121ads.h @@ -370,7 +370,7 @@  /*   * IIM - IC Identification Module   */ -#undef CONFIG_IIM +#undef CONFIG_FSL_IIM  /*   * EEPROM configuration diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h index 3747955bd..54d01f9ed 100644 --- a/include/configs/mx28evk.h +++ b/include/configs/mx28evk.h @@ -63,6 +63,7 @@  #define CONFIG_CMD_USB  #define CONFIG_CMD_BOOTZ  #define CONFIG_CMD_NAND +#define CONFIG_CMD_NAND_TRIMFFS  /* Memory configurations */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */ diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h index cb3d93890..13d1839eb 100644 --- a/include/configs/mx51evk.h +++ b/include/configs/mx51evk.h @@ -53,6 +53,9 @@  /*   * Hardware drivers   */ +#define CONFIG_FSL_IIM +#define CONFIG_CMD_FUSE +  #define CONFIG_MXC_UART  #define CONFIG_MXC_UART_BASE	UART1_BASE  #define CONFIG_MXC_GPIO @@ -149,32 +152,66 @@  #define CONFIG_ETHPRIME		"FEC0" -#define CONFIG_LOADADDR		0x90800000	/* loadaddr env var */ +#define CONFIG_LOADADDR		0x92000000	/* loadaddr env var */  #define CONFIG_EXTRA_ENV_SETTINGS \  	"script=boot.scr\0" \  	"uimage=uImage\0" \ +	"fdt_file=imx51-babbage.dtb\0" \ +	"fdt_addr=0x91000000\0" \ +	"boot_fdt=try\0" \ +	"ip_dyn=yes\0" \  	"mmcdev=0\0" \  	"mmcpart=2\0" \ -	"mmcroot=/dev/mmcblk0p3 rw\0" \ -	"mmcrootfstype=ext3 rootwait\0" \ +	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \  	"mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \ -		"root=${mmcroot} " \ -		"rootfstype=${mmcrootfstype}\0" \ +		"root=${mmcroot}\0" \  	"loadbootscript=" \  		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \  	"bootscript=echo Running bootscript from mmc ...; " \  		"source\0" \  	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ +	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \  	"mmcboot=echo Booting from mmc ...; " \  		"run mmcargs; " \ -		"bootm\0" \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if run loadfdt; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" \  	"netargs=setenv bootargs console=ttymxc0,${baudrate} " \  		"root=/dev/nfs " \  		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \  	"netboot=echo Booting from net ...; " \  		"run netargs; " \ -		"dhcp ${uimage}; bootm\0" \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \ +		"else " \ +			"setenv get_cmd tftp; " \ +		"fi; " \ +		"${get_cmd} ${uimage}; " \ +		"if test ${boot_fdt} = yes ||  test ${boot_fdt} = try; then " \ +			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo ERROR: Cannot load the DT; " \ +					"exit; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0"  #define CONFIG_BOOTCOMMAND \  	"mmc dev ${mmcdev}; if mmc rescan; then " \ diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h index 148f7a200..41974b126 100644 --- a/include/configs/mx53ard.h +++ b/include/configs/mx53ard.h @@ -34,6 +34,7 @@  #define CONFIG_CMDLINE_TAG			/* enable passing of ATAGs */  #define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG  /* Size of malloc() pool */  #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 2 * 1024 * 1024) @@ -90,6 +91,7 @@  #include <config_cmd_default.h>  #undef CONFIG_CMD_IMLS +#define CONFIG_CMD_SETEXPR  #define CONFIG_BOOTDELAY	3 @@ -100,45 +102,98 @@  #define CONFIG_SMC911X_16_BIT  #define CONFIG_SMC911X_BASE CS1_BASE_ADDR -#define CONFIG_LOADADDR		0x70800000	/* loadaddr env var */ +#define CONFIG_LOADADDR		0x72000000	/* loadaddr env var */  #define CONFIG_SYS_TEXT_BASE    0x77800000 +#define CONFIG_DEFAULT_FDT_FILE		"imx53-ard.dtb" +  #define CONFIG_EXTRA_ENV_SETTINGS \  	"script=boot.scr\0" \  	"uimage=uImage\0" \ -	"mmcdev=0\0" \ -	"mmcpart=2\0" \ -	"mmcroot=/dev/mmcblk0p3 rw\0" \ -	"mmcrootfstype=ext3 rootwait\0" \ -	"mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \ -		"root=${mmcroot} " \ -		"rootfstype=${mmcrootfstype}\0" \ +	"console=ttymxc0\0" \ +	"fdt_high=0xffffffff\0" \ +	"initrd_high=0xffffffff\0" \ +	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ +	"fdt_addr=0x71000000\0" \ +	"boot_fdt=try\0" \ +	"ip_dyn=yes\0" \ +	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \ +	"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \ +	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \ +	"update_sd_firmware_filename=u-boot.imx\0" \ +	"update_sd_firmware=" \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \ +		"else " \ +			"setenv get_cmd tftp; " \ +		"fi; " \ +		"if mmc dev ${mmcdev}; then "	\ +			"if ${get_cmd} ${update_sd_firmware_filename}; then " \ +				"setexpr fw_sz ${filesize} / 0x200; " \ +				"setexpr fw_sz ${fw_sz} + 1; "	\ +				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \ +			"fi; "	\ +		"fi\0" \ +	"mmcargs=setenv bootargs console=${console},${baudrate} " \ +		"root=${mmcroot}\0" \  	"loadbootscript=" \  		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \  	"bootscript=echo Running bootscript from mmc ...; " \  		"source\0" \  	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ +	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \  	"mmcboot=echo Booting from mmc ...; " \  		"run mmcargs; " \ -		"bootm\0" \ -	"netargs=setenv bootargs console=ttymxc0,${baudrate} " \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if run loadfdt; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" \ +	"netargs=setenv bootargs console=${console},${baudrate} " \  		"root=/dev/nfs " \ -		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ -	"netboot=echo Booting from net ...; " \ +	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ +		"netboot=echo Booting from net ...; " \  		"run netargs; " \ -		"dhcp ${uimage}; bootm\0" \ - -#define CONFIG_BOOTCOMMAND \ -	"mmc dev ${mmcdev}; if mmc rescan; then " \ -		"if run loadbootscript; then " \ -			"run bootscript; " \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \  		"else " \ -			"if run loaduimage; then " \ -				"run mmcboot; " \ -			"else run netboot; " \ -			"fi; " \ +			"setenv get_cmd tftp; " \  		"fi; " \ -	"else run netboot; fi" +		"${get_cmd} ${uimage}; " \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" + +#define CONFIG_BOOTCOMMAND \ +	   "mmc dev ${mmcdev}; if mmc rescan; then " \ +		   "if run loadbootscript; then " \ +			   "run bootscript; " \ +		   "else " \ +			   "if run loaduimage; then " \ +				   "run mmcboot; " \ +			   "else run netboot; " \ +			   "fi; " \ +		   "fi; " \ +	   "else run netboot; fi" +  #define CONFIG_ARP_TIMEOUT	200UL  /* Miscellaneous configurable options */ @@ -185,6 +240,7 @@  #define CONFIG_ENV_SIZE        (8 * 1024)  #define CONFIG_ENV_IS_IN_MMC  #define CONFIG_SYS_MMC_ENV_DEV	0 +#define CONFIG_SYS_MMC_ENV_PART	2  #define CONFIG_OF_LIBFDT diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h index a0af3eeb2..822b92679 100644 --- a/include/configs/mx53evk.h +++ b/include/configs/mx53evk.h @@ -34,6 +34,7 @@  #define CONFIG_CMDLINE_TAG			/* enable passing of ATAGs */  #define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG  #define CONFIG_OF_LIBFDT diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h index 9e8331970..942949d05 100644 --- a/include/configs/mx53smd.h +++ b/include/configs/mx53smd.h @@ -34,6 +34,7 @@  #define CONFIG_CMDLINE_TAG			/* enable passing of ATAGs */  #define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG  /* Size of malloc() pool */  #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 2 * 1024 * 1024) diff --git a/include/configs/mx6_common.h b/include/configs/mx6_common.h index b33393782..674bcd3f6 100644 --- a/include/configs/mx6_common.h +++ b/include/configs/mx6_common.h @@ -17,6 +17,7 @@  #ifndef __MX6_COMMON_H  #define __MX6_COMMON_H +#define CONFIG_ARM_ERRATA_742230  #define CONFIG_ARM_ERRATA_743622  #define CONFIG_ARM_ERRATA_751472 diff --git a/include/configs/mx6qsabre_common.h b/include/configs/mx6qsabre_common.h index f5f115fa0..7298a7692 100644 --- a/include/configs/mx6qsabre_common.h +++ b/include/configs/mx6qsabre_common.h @@ -78,6 +78,7 @@  #define CONFIG_CMD_BMODE  #define CONFIG_CMD_BOOTZ +#define CONFIG_CMD_SETEXPR  #undef CONFIG_CMD_IMLS  #define CONFIG_BOOTDELAY               1 @@ -98,6 +99,19 @@  	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \  	"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \  	"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ +	"update_sd_firmware=" \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \ +		"else " \ +			"setenv get_cmd tftp; " \ +		"fi; " \ +		"if mmc dev ${mmcdev}; then "	\ +			"if ${get_cmd} ${update_sd_firmware_filename}; then " \ +				"setexpr fw_sz ${filesize} / 0x200; " \ +				"setexpr fw_sz ${fw_sz} + 1; "	\ +				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \ +			"fi; "	\ +		"fi\0" \  	"mmcargs=setenv bootargs console=${console},${baudrate} " \  		"root=${mmcroot}\0" \  	"loadbootscript=" \ diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h index 6d4b83735..b81441848 100644 --- a/include/configs/mx6qsabrelite.h +++ b/include/configs/mx6qsabrelite.h @@ -47,6 +47,11 @@  #define CONFIG_MISC_INIT_R  #define CONFIG_MXC_GPIO +#define CONFIG_CMD_FUSE +#ifdef CONFIG_CMD_FUSE +#define CONFIG_MXC_OCOTP +#endif +  #define CONFIG_MXC_UART  #define CONFIG_MXC_UART_BASE	       UART2_BASE diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h new file mode 100644 index 000000000..8a94efdd6 --- /dev/null +++ b/include/configs/mx6slevk.h @@ -0,0 +1,189 @@ +/* + * Copyright 2013 Freescale Semiconductor, Inc. + * + * Configuration settings for the Freescale i.MX6SL EVK board. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#include <asm/arch/imx-regs.h> +#include <asm/sizes.h> + +#define CONFIG_MX6 +#define CONFIG_DISPLAY_CPUINFO +#define CONFIG_DISPLAY_BOARDINFO + +#define MACH_TYPE_MX6SLEVK		4307 +#define CONFIG_MACH_TYPE		MACH_TYPE_MX6SLEVK + +#define CONFIG_CMDLINE_TAG +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG + +/* Size of malloc() pool */ +#define CONFIG_SYS_MALLOC_LEN		(3 * SZ_1M) + +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_MXC_GPIO + +#define CONFIG_MXC_UART +#define CONFIG_MXC_UART_BASE		UART1_IPS_BASE_ADDR + +/* MMC Configs */ +#define CONFIG_FSL_ESDHC +#define CONFIG_FSL_USDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR	0 + +#define CONFIG_MMC +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION + +/* allow to overwrite serial and ethaddr */ +#define CONFIG_ENV_OVERWRITE +#define CONFIG_CONS_INDEX		1 +#define CONFIG_BAUDRATE			115200 + +/* Command definition */ +#include <config_cmd_default.h> + +#undef CONFIG_CMD_IMLS + +#define CONFIG_BOOTDELAY		3 + +#define CONFIG_LOADADDR			0x80800000 +#define CONFIG_SYS_TEXT_BASE		0x87800000 + +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"script=boot.scr\0" \ +	"uimage=uImage\0" \ +	"console=ttymxc0\0" \ +	"fdt_high=0xffffffff\0" \ +	"initrd_high=0xffffffff\0" \ +	"fdt_file=imx6sl-evk.dtb\0" \ +	"fdt_addr=0x81000000\0" \ +	"boot_fdt=try\0" \ +	"ip_dyn=yes\0" \ +	"mmcdev=0\0" \ +	"mmcpart=2\0" \ +	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \ +	"mmcargs=setenv bootargs console=${console},${baudrate} " \ +		"root=${mmcroot}\0" \ +	"loadbootscript=" \ +		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ +	"bootscript=echo Running bootscript from mmc ...; " \ +		"source\0" \ +	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ +	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ +	"mmcboot=echo Booting from mmc ...; " \ +		"run mmcargs; " \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if run loadfdt; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" \ +	"netargs=setenv bootargs console=${console},${baudrate} " \ +		"root=/dev/nfs " \ +	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ +		"netboot=echo Booting from net ...; " \ +		"run netargs; " \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \ +		"else " \ +			"setenv get_cmd tftp; " \ +		"fi; " \ +		"${get_cmd} ${uimage}; " \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ +				"bootm ${loadaddr} - ${fdt_addr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" + +#define CONFIG_BOOTCOMMAND \ +	   "mmc dev ${mmcdev};" \ +	   "mmc dev ${mmcdev}; if mmc rescan; then " \ +		   "if run loadbootscript; then " \ +			   "run bootscript; " \ +		   "else " \ +			   "if run loaduimage; then " \ +				   "run mmcboot; " \ +			   "else run netboot; " \ +			   "fi; " \ +		   "fi; " \ +	   "else run netboot; fi" + +/* Miscellaneous configurable options */ +#define CONFIG_SYS_LONGHELP +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_SYS_PROMPT		"=> " +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_CBSIZE		256 + +/* Print Buffer Size */ +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_MAXARGS		16 +#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE + +#define CONFIG_SYS_MEMTEST_START	0x80000000 +#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + SZ_512M) + +#define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR +#define CONFIG_SYS_HZ			1000 + +#define CONFIG_CMDLINE_EDITING +#define CONFIG_STACKSIZE		SZ_128K + +/* Physical Memory Map */ +#define CONFIG_NR_DRAM_BANKS		1 +#define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR +#define PHYS_SDRAM_SIZE			SZ_1G + +#define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM +#define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR +#define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE + +#define CONFIG_SYS_INIT_SP_OFFSET \ +	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_ADDR \ +	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) + +/* FLASH and environment organization */ +#define CONFIG_SYS_NO_FLASH + +#define CONFIG_ENV_OFFSET		(6 * SZ_64K) +#define CONFIG_ENV_SIZE			SZ_8K +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV		0 + +#define CONFIG_OF_LIBFDT +#define CONFIG_CMD_BOOTZ + +#ifndef CONFIG_SYS_DCACHE_OFF +#define CONFIG_CMD_CACHE +#endif + +#endif				/* __CONFIG_H */ diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h index 93e7fe4e6..aea91bcb0 100644 --- a/include/configs/nitrogen6x.h +++ b/include/configs/nitrogen6x.h @@ -44,6 +44,11 @@  #define CONFIG_MISC_INIT_R  #define CONFIG_MXC_GPIO +#define CONFIG_CMD_FUSE +#ifdef CONFIG_CMD_FUSE +#define CONFIG_MXC_OCOTP +#endif +  #define CONFIG_MXC_UART  #define CONFIG_MXC_UART_BASE	       UART2_BASE diff --git a/include/configs/omap3_mvblx.h b/include/configs/omap3_mvblx.h index 376a3d031..f9adc0170 100644 --- a/include/configs/omap3_mvblx.h +++ b/include/configs/omap3_mvblx.h @@ -273,7 +273,7 @@  #endif /* (CONFIG_CMD_NET) */  #define CONFIG_FPGA_COUNT	1 -#define CONFIG_FPGA          CONFIG_SYS_ALTERA_CYCLON2 +#define CONFIG_FPGA  #define CONFIG_FPGA_ALTERA  #define CONFIG_FPGA_CYCLON2  #define CONFIG_SYS_FPGA_PROG_FEEDBACK diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h index 1fd3097d7..d6448b052 100644 --- a/include/configs/omap4_common.h +++ b/include/configs/omap4_common.h @@ -87,6 +87,10 @@  #define CONFIG_BAUDRATE			115200  #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\  					115200} + +/* CPU */ +#define CONFIG_ARCH_CPU_INIT +  /* I2C  */  #define CONFIG_HARD_I2C			1  #define CONFIG_SYS_I2C_SPEED		100000 @@ -176,7 +180,9 @@  		"if test $board_name = sdp4430; then " \  			"setenv fdtfile omap4-sdp.dtb; fi; " \  		"if test $board_name = panda; then " \ -			"setenv fdtfile omap4-panda-es.dtb; fi\0" \ +			"setenv fdtfile omap4-panda.dtb; fi;" \ +		"if test $board_name = panda-es; then " \ +			"setenv fdtfile omap4-panda-es.dtb; fi; \0" \  	"loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \  #define CONFIG_BOOTCOMMAND \ diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h index eacb5f5c3..abf586b87 100644 --- a/include/configs/omap4_panda.h +++ b/include/configs/omap4_panda.h @@ -66,4 +66,6 @@  #define CONFIG_SYS_PROMPT		"Panda # " +#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +  #endif /* __CONFIG_PANDA_H */ diff --git a/include/configs/omap5_common.h b/include/configs/omap5_common.h index c21c387cb..deb5e9fd5 100644 --- a/include/configs/omap5_common.h +++ b/include/configs/omap5_common.h @@ -86,6 +86,9 @@  #define CONFIG_BAUDRATE			115200 +/* CPU */ +#define CONFIG_ARCH_CPU_INIT +  /* I2C  */  #define CONFIG_HARD_I2C  #define CONFIG_SYS_I2C_SPEED		100000 @@ -150,10 +153,12 @@  	"usbtty=cdc_acm\0" \  	"vram=16M\0" \  	"partitions=" PARTS_DEFAULT "\0" \ +	"optargs=\0" \  	"mmcdev=0\0" \  	"mmcroot=/dev/mmcblk0p2 rw\0" \  	"mmcrootfstype=ext4 rootwait\0" \  	"mmcargs=setenv bootargs console=${console} " \ +		"${optargs} " \  		"vram=${vram} " \  		"root=${mmcroot} " \  		"rootfstype=${mmcrootfstype}\0" \ diff --git a/include/configs/omap5_uevm.h b/include/configs/omap5_uevm.h index 550cabd77..9e0339b31 100644 --- a/include/configs/omap5_uevm.h +++ b/include/configs/omap5_uevm.h @@ -37,7 +37,7 @@  /* TWL6035 */  #ifndef CONFIG_SPL_BUILD -#define CONFIG_TWL6035_POWER +#define CONFIG_PALMAS_POWER  #endif  /* MMC ENV related defines */ @@ -56,4 +56,5 @@  #define CONFIG_SYS_PROMPT		"OMAP5430 EVM # " +#define CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC	16296  #endif /* __CONFIG_OMAP5_EVM_H */ diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h index d0ea74e0b..478f805b7 100644 --- a/include/configs/pcm051.h +++ b/include/configs/pcm051.h @@ -20,6 +20,7 @@  #define __CONFIG_PCM051_H  #define CONFIG_AM33XX +#define CONFIG_OMAP  #include <asm/arch/omap.h> @@ -129,7 +130,6 @@  					+ (8 * 1024 * 1024))  #define CONFIG_SYS_LOAD_ADDR		0x80007fc0 /* Default load address */ -#define CONFIG_SYS_HZ			1000 /* 1ms clock */  #define CONFIG_MMC  #define CONFIG_GENERIC_MMC @@ -158,13 +158,12 @@   /* Platform/Board specific defs */  #define CONFIG_SYS_TIMERBASE		0x48040000	/* Use Timer2 */  #define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */ -#define CONFIG_SYS_HZ			1000 +#define CONFIG_SYS_HZ			1000	/* 1ms clock */  #define CONFIG_CONS_INDEX		1  /* NS16550 Configuration */  #define CONFIG_SYS_NS16550  #define CONFIG_SYS_NS16550_SERIAL -#define CONFIG_SERIAL_MULTI  #define CONFIG_SYS_NS16550_REG_SIZE	(-4)  #define CONFIG_SYS_NS16550_CLK		(48000000)  #define CONFIG_SYS_NS16550_COM1		0x44e09000	/* Base EVM has UART0 */ @@ -194,6 +193,9 @@  #define CONFIG_SYS_BAUDRATE_TABLE	{ 110, 300, 600, 1200, 2400, \  4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 } +/* CPU */ +#define CONFIG_ARCH_CPU_INIT +  #define CONFIG_ENV_OVERWRITE  #define CONFIG_SYS_CONSOLE_INFO_QUIET diff --git a/include/configs/pdm360ng.h b/include/configs/pdm360ng.h index 306abcc8e..db95cb0c4 100644 --- a/include/configs/pdm360ng.h +++ b/include/configs/pdm360ng.h @@ -341,6 +341,11 @@  #define CONFIG_SYS_I2C_SLAVE		0x7F  /* + * IIM - IC Identification Module + */ +#undef CONFIG_FSL_IIM + +/*   * EEPROM configuration   */  #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2	/* 16-bit EEPROM addr */ @@ -402,6 +407,8 @@  #define CONFIG_CMD_PING  #define CONFIG_CMD_REGINFO +#undef CONFIG_CMD_FUSE +  #ifdef CONFIG_VIDEO  #define CONFIG_CMD_BMP  #endif diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h new file mode 100644 index 000000000..c13e983cf --- /dev/null +++ b/include/configs/sama5d3xek.h @@ -0,0 +1,245 @@ +/* + * Configuation settings for the SAMA5D3xEK board. + * + * Copyright (C) 2012 - 2013 Atmel + * + * based on at91sam9m10g45ek.h by: + * Stelian Pop <stelian@popies.net> + * Lead Tech Design <www.leadtechdesign.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#include <asm/hardware.h> + +#define CONFIG_SYS_TEXT_BASE		0x26f00000 + +/* ARM asynchronous clock */ +#define CONFIG_SYS_AT91_SLOW_CLOCK      32768 +#define CONFIG_SYS_AT91_MAIN_CLOCK      12000000 /* from 12 MHz crystal */ +#define CONFIG_SYS_HZ		        1000 + +#define CONFIG_AT91FAMILY +#define CONFIG_ARCH_CPU_INIT + +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_DISPLAY_CPUINFO + +#define CONFIG_CMD_BOOTZ +#define CONFIG_OF_LIBFDT		/* Device Tree support */ + +/* general purpose I/O */ +#define CONFIG_AT91_GPIO + +/* serial console */ +#define CONFIG_ATMEL_USART +#define CONFIG_USART_BASE		ATMEL_BASE_DBGU +#define	CONFIG_USART_ID			ATMEL_ID_DBGU + +/* + * This needs to be defined for the OHCI code to work but it is defined as + * ATMEL_ID_UHPHS in the CPU specific header files. + */ +#define ATMEL_ID_UHP			ATMEL_ID_UHPHS + +/* + * Specify the clock enable bit in the PMC_SCER register. + */ +#define ATMEL_PMC_UHP			AT91SAM926x_PMC_UHP + +/* LCD */ +#define CONFIG_LCD +#define LCD_BPP				LCD_COLOR16 +#define LCD_OUTPUT_BPP                  24 +#define CONFIG_LCD_LOGO +#undef LCD_TEST_PATTERN +#define CONFIG_LCD_INFO +#define CONFIG_LCD_INFO_BELOW_LOGO +#define CONFIG_SYS_WHITE_ON_BLACK +#define CONFIG_ATMEL_HLCD +#define CONFIG_ATMEL_LCD_RGB565 +#define CONFIG_SYS_CONSOLE_IS_IN_ENV + +/* board specific (not enough SRAM) */ +#define CONFIG_SAMA5D3_LCD_BASE		0x23E00000 + +#define CONFIG_BOOTDELAY		3 + +/* + * BOOTP options + */ +#define CONFIG_BOOTP_BOOTFILESIZE +#define CONFIG_BOOTP_BOOTPATH +#define CONFIG_BOOTP_GATEWAY +#define CONFIG_BOOTP_HOSTNAME + +/* No NOR flash */ +#define CONFIG_SYS_NO_FLASH + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> +#undef CONFIG_CMD_FPGA +#undef CONFIG_CMD_IMI +#undef CONFIG_CMD_LOADS +#define CONFIG_CMD_PING +#define CONFIG_CMD_DHCP + +/* SDRAM */ +#define CONFIG_NR_DRAM_BANKS		1 +#define CONFIG_SYS_SDRAM_BASE           ATMEL_BASE_DDRCS +#define CONFIG_SYS_SDRAM_SIZE		0x20000000 + +#define CONFIG_SYS_INIT_SP_ADDR \ +	(CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE) + +/* SerialFlash */ +#define CONFIG_CMD_SF + +#ifdef CONFIG_CMD_SF +#define CONFIG_ATMEL_SPI +#define CONFIG_SPI_FLASH +#define CONFIG_SPI_FLASH_ATMEL +#define CONFIG_SF_DEFAULT_SPEED		30000000 +#endif + +/* NAND flash */ +#define CONFIG_CMD_NAND + +#ifdef CONFIG_CMD_NAND +#define CONFIG_NAND_MAX_CHIPS		1 +#define CONFIG_NAND_ATMEL +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_BASE		ATMEL_BASE_CS3 +/* our ALE is AD21 */ +#define CONFIG_SYS_NAND_MASK_ALE	(1 << 21) +/* our CLE is AD22 */ +#define CONFIG_SYS_NAND_MASK_CLE	(1 << 22) +#define CONFIG_SYS_NAND_ONFI_DETECTION +/* PMECC & PMERRLOC */ +#define CONFIG_ATMEL_NAND_HWECC +#define CONFIG_ATMEL_NAND_HW_PMECC +#define CONFIG_PMECC_CAP		4 +#define CONFIG_PMECC_SECTOR_SIZE	512 +#define CONFIG_PMECC_INDEX_TABLE_OFFSET	ATMEL_PMECC_INDEX_OFFSET_512 +#define CONFIG_CMD_NAND_TRIMFFS +#endif + +/* Ethernet Hardware */ +#define CONFIG_MACB +#define CONFIG_RMII +#define CONFIG_NET_MULTI +#define CONFIG_NET_RETRY_COUNT		20 +#define CONFIG_MACB_SEARCH_PHY + +/* MMC */ +#define CONFIG_CMD_MMC + +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_GENERIC_ATMEL_MCI +#define ATMEL_BASE_MMCI			ATMEL_BASE_MCI0 +#endif + +/* USB */ +#define CONFIG_CMD_USB + +#ifdef CONFIG_CMD_USB +#define CONFIG_USB_ATMEL +#define CONFIG_USB_OHCI_NEW +#define CONFIG_SYS_USB_OHCI_CPU_INIT +#define CONFIG_SYS_USB_OHCI_REGS_BASE		ATMEL_BASE_OHCI +#define CONFIG_SYS_USB_OHCI_SLOT_NAME		"sama5d3" +#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS	3 +#define CONFIG_DOS_PARTITION +#define CONFIG_USB_STORAGE +#endif + +#if defined(CONFIG_CMD_USB) || defined(CONFIG_CMD_MMC) +#define CONFIG_CMD_FAT +#endif + +#define CONFIG_SYS_LOAD_ADDR			0x22000000 /* load address */ + +#ifdef CONFIG_SYS_USE_SERIALFLASH +/* bootstrap + u-boot + env + linux in serial flash */ +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_OFFSET       0x5000 +#define CONFIG_ENV_SIZE         0x3000 +#define CONFIG_ENV_SECT_SIZE    0x1000 +#define CONFIG_BOOTCOMMAND      "sf probe 0; " \ +				"sf read 0x22000000 0x42000 0x300000; " \ +				"bootm 0x22000000" +#elif CONFIG_SYS_USE_NANDFLASH +/* bootstrap + u-boot + env in nandflash */ +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_OFFSET		0xc0000 +#define CONFIG_ENV_OFFSET_REDUND	0x100000 +#define CONFIG_ENV_SIZE			0x20000 +#define CONFIG_BOOTCOMMAND	"nand read 0x21000000 0x180000 0x80000;" \ +				"nand read 0x22000000 0x200000 0x600000;" \ +				"bootm 0x22000000 - 0x21000000" +#elif CONFIG_SYS_USE_MMC +/* bootstrap + u-boot + env in sd card */ +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_OFFSET	0x2000 +#define CONFIG_ENV_SIZE		0x1000 +#define CONFIG_BOOTCOMMAND	"fatload mmc 0:1 0x21000000 dtb; " \ +				"fatload mmc 0:1 0x22000000 uImage; " \ +				"bootm 0x22000000 - 0x21000000" +#define CONFIG_SYS_MMC_ENV_DEV	0 +#else +#define CONIG_ENV_IS_NOWHERE +#endif + +#ifdef CONFIG_SYS_USE_MMC +#define CONFIG_BOOTARGS							\ +	"console=ttyS0,115200 earlyprintk "				\ +	"root=/dev/mmcblk0p2 rw rootwait" +#else +#define CONFIG_BOOTARGS							\ +	"console=ttyS0,115200 earlyprintk "				\ +	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\ +	"256K(env),256k(evn_redundent),256k(spare),"			\ +	"512k(dtb),6M(kernel)ro,-(rootfs) "				\ +	"rootfstype=ubifs ubi.mtd=7 root=ubi0:rootfs" +#endif + +#define CONFIG_BAUDRATE			115200 + +#define CONFIG_SYS_PROMPT		"U-Boot> " +#define CONFIG_SYS_CBSIZE		256 +#define CONFIG_SYS_MAXARGS		16 +#define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \ +					sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_LONGHELP +#define CONFIG_CMDLINE_EDITING +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_HUSH_PARSER + +/* Size of malloc() pool */ +#define CONFIG_SYS_MALLOC_LEN		(1024 * 1024) + +#endif diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h index bf186995e..6ed2fde3f 100644 --- a/include/configs/tegra-common-post.h +++ b/include/configs/tegra-common-post.h @@ -157,6 +157,8 @@  /* overrides for SPL build here */  #ifdef CONFIG_SPL_BUILD +#define CONFIG_SKIP_LOWLEVEL_INIT +  /* remove devicetree support */  #ifdef CONFIG_OF_CONTROL  #undef CONFIG_OF_CONTROL diff --git a/include/configs/tegra114-common.h b/include/configs/tegra114-common.h index c2986d830..721b29cd9 100644 --- a/include/configs/tegra114-common.h +++ b/include/configs/tegra114-common.h @@ -74,8 +74,6 @@  #define CONFIG_SYS_SPL_MALLOC_START	0x80090000  #define CONFIG_SPL_STACK		0x800ffffc -#define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/tegra114/u-boot-spl.lds" -  /* Total I2C ports on Tegra114 */  #define TEGRA_I2C_NUM_CONTROLLERS	5 diff --git a/include/configs/tegra20-common.h b/include/configs/tegra20-common.h index 395a65758..d5abecb46 100644 --- a/include/configs/tegra20-common.h +++ b/include/configs/tegra20-common.h @@ -88,8 +88,6 @@  #define CONFIG_SYS_SPL_MALLOC_START	0x00090000  #define CONFIG_SPL_STACK		0x000ffffc -#define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/tegra20/u-boot-spl.lds" -  /* Align LCD to 1MB boundary */  #define CONFIG_LCD_ALIGNMENT	MMU_SECTION_SIZE diff --git a/include/configs/tegra30-common.h b/include/configs/tegra30-common.h index f6c07c6ec..ed36e11da 100644 --- a/include/configs/tegra30-common.h +++ b/include/configs/tegra30-common.h @@ -87,8 +87,6 @@  #define CONFIG_SYS_SPL_MALLOC_START	0x80090000  #define CONFIG_SPL_STACK		0x800ffffc -#define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/tegra30/u-boot-spl.lds" -  /* Total I2C ports on Tegra30 */  #define TEGRA_I2C_NUM_CONTROLLERS	5 diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h index 16547e331..eac5ad024 100644 --- a/include/configs/ti814x_evm.h +++ b/include/configs/ti814x_evm.h @@ -19,6 +19,7 @@  #define CONFIG_TI81XX  #define CONFIG_TI814X  #define CONFIG_SYS_NO_FLASH +#define CONFIG_OMAP  #include <asm/arch/omap.h> @@ -162,6 +163,9 @@  #define CONFIG_BAUDRATE			115200 +/* CPU */ +#define CONFIG_ARCH_CPU_INIT +  #define CONFIG_ENV_OVERWRITE  #define CONFIG_CONS_INDEX		1  #define CONFIG_SYS_CONSOLE_INFO_QUIET @@ -218,4 +222,25 @@  /* Unsupported features */  #undef CONFIG_USE_IRQ +/* Ethernet */ +#define CONFIG_CMD_NET +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_PING +#define CONFIG_CMD_MII +#define CONFIG_DRIVER_TI_CPSW +#define CONFIG_MII +#define CONFIG_BOOTP_DEFAULT +#define CONFIG_BOOTP_DNS +#define CONFIG_BOOTP_DNS2 +#define CONFIG_BOOTP_SEND_HOSTNAME +#define CONFIG_BOOTP_GATEWAY +#define CONFIG_BOOTP_SUBNETMASK +#define CONFIG_NET_RETRY_COUNT         10 +#define CONFIG_NET_MULTI +#define CONFIG_PHY_GIGE +#define CONFIG_PHYLIB +#define CONFIG_PHY_ADDR			1 +#define CONFIG_PHY_ET1011C +#define CONFIG_PHY_ET1011C_TX_CLK_FIX +  #endif	/* ! __CONFIG_TI814X_EVM_H */ diff --git a/include/configs/titanium.h b/include/configs/titanium.h new file mode 100644 index 000000000..41e451398 --- /dev/null +++ b/include/configs/titanium.h @@ -0,0 +1,277 @@ +/* + * Copyright (C) 2013 Stefan Roese <sr@denx.de> + * + * Configuration settings for the ProjectionDesign / Barco + * Titanium board. + * + * Based on mx6qsabrelite.h which is: + * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#include <asm/arch/imx-regs.h> +#include <asm/imx-common/gpio.h> + +#define CONFIG_MX6 +#define CONFIG_MX6Q +#define CONFIG_DISPLAY_CPUINFO +#define CONFIG_DISPLAY_BOARDINFO + +#define MACH_TYPE_TITANIUM		3769 +#define CONFIG_MACH_TYPE		MACH_TYPE_TITANIUM + +#define CONFIG_CMDLINE_TAG +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG + +/* Size of malloc() pool */ +#define CONFIG_SYS_MALLOC_LEN		(2 * 1024 * 1024) + +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_MISC_INIT_R +#define CONFIG_MXC_GPIO + +#define CONFIG_MXC_UART +#define CONFIG_MXC_UART_BASE		UART1_BASE + +/* I2C Configs */ +#define CONFIG_CMD_I2C +#define CONFIG_I2C_MULTI_BUS +#define CONFIG_I2C_MXC +#define CONFIG_SYS_I2C_SPEED		100000 + +/* MMC Configs */ +#define CONFIG_FSL_ESDHC +#define CONFIG_FSL_USDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR	0 +#define CONFIG_SYS_FSL_USDHC_NUM	1 + +#define CONFIG_MMC +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_BOUNCE_BUFFER +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION + +#define CONFIG_CMD_PING +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_MII +#define CONFIG_CMD_NET +#define CONFIG_FEC_MXC +#define CONFIG_MII +#define IMX_FEC_BASE			ENET_BASE_ADDR +#define CONFIG_FEC_XCV_TYPE		RGMII +#define CONFIG_FEC_MXC_PHYADDR		4 +#define CONFIG_PHYLIB +#define CONFIG_PHY_MICREL +#define CONFIG_PHY_MICREL_KSZ9021 + +/* USB Configs */ +#define CONFIG_CMD_USB +#define CONFIG_CMD_FAT +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_MX6 +#define CONFIG_USB_STORAGE +#define CONFIG_MXC_USB_PORT	1 +#define CONFIG_MXC_USB_PORTSC	(PORT_PTS_UTMI | PORT_PTS_PTW) +#define CONFIG_MXC_USB_FLAGS	0 + +/* Miscellaneous commands */ +#define CONFIG_CMD_BMODE + +/* allow to overwrite serial and ethaddr */ +#define CONFIG_ENV_OVERWRITE +#define CONFIG_CONS_INDEX		1 +#define CONFIG_BAUDRATE			115200 + +/* Command definition */ +#include <config_cmd_default.h> + +#undef CONFIG_CMD_IMLS + +#define CONFIG_BOOTDELAY		3 + +#define CONFIG_LOADADDR			0x12000000 +#define CONFIG_SYS_TEXT_BASE		0x17800000 + +#define CONFIG_SYS_MEMTEST_START	0x10000000 +#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + (500 << 20)) + +#define CONFIG_HOSTNAME			titanium +#define CONFIG_UBI_PART			ubi +#define CONFIG_UBIFS_VOLUME		rootfs0 + +#define MTDIDS_DEFAULT		"nand0=gpmi-nand" +#define MTDPARTS_DEFAULT	"mtdparts=gpmi-nand:16M(uboot),512k(env1)," \ +				"512k(env2),-(ubi)" + +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"kernel=" __stringify(CONFIG_HOSTNAME) "/uImage\0"		\ +	"kernel_fs=/boot/uImage\0"					\ +	"kernel_addr=11000000\0"					\ +	"dtb=" __stringify(CONFIG_HOSTNAME) "/"				\ +		__stringify(CONFIG_HOSTNAME) ".dtb\0"			\ +	"dtb_fs=/boot/" __stringify(CONFIG_HOSTNAME) ".dtb\0"		\ +	"dtb_addr=12800000\0"						\ +	"script=boot.scr\0" \ +	"uimage=uImage\0" \ +	"console=ttymxc0\0" \ +	"baudrate=115200\0" \ +	"fdt_high=0xffffffff\0"	  \ +	"initrd_high=0xffffffff\0" \ +	"mmcdev=0\0" \ +	"mmcpart=1\0" \ +	"uimage=uImage\0" \ +	"loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}" \ +		" ${script}\0" \ +	"bootscript=echo Running bootscript from mmc ...; source\0" \ +	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ +	"mmcroot=/dev/mmcblk0p2\0" \ +	"mmcargs=setenv bootargs console=${console},${baudrate} " \ +		"root=${mmcroot} rootwait rw\0" \ +	"bootmmc=run mmcargs; fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}" \ +		" ${uimage}; bootm\0" \ +	"addip=setenv bootargs ${bootargs} "				\ +		"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"	\ +		":${hostname}:${netdev}:off panic=1\0"			\ +	"addcon=setenv bootargs ${bootargs} console=ttymxc0,"		\ +		"${baudrate}\0"						\ +	"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0"		\ +	"rootpath=/opt/eldk-5.3/armv7a/rootfs-minimal-mtdutils\0"	\ +	"nfsargs=setenv bootargs root=/dev/nfs rw "			\ +		"nfsroot=${serverip}:${rootpath}\0"			\ +	"ubifs=" __stringify(CONFIG_HOSTNAME) "/ubifs.img\0"		\ +	"part=" __stringify(CONFIG_UBI_PART) "\0"			\ +	"boot_vol=0\0"							\ +	"vol=" __stringify(CONFIG_UBIFS_VOLUME) "\0"			\ +	"load_ubifs=tftp ${kernel_addr} ${ubifs}\0"			\ +	"update_ubifs=ubi part ${part};ubi write ${kernel_addr} ${vol}"	\ +		" ${filesize}\0"					\ +	"upd_ubifs=run load_ubifs update_ubifs\0"			\ +	"init_ubi=nand erase.part ubi;ubi part ${part};"		\ +		"ubi create ${vol} c800000\0"				\ +	"mtdids=" MTDIDS_DEFAULT "\0"					\ +	"mtdparts=" MTDPARTS_DEFAULT "\0"				\ +	"nand_ubifs=run ubifs_mount ubifs_load ubifsargs addip"		\ +		" addcon addmtd;"					\ +		"bootm ${kernel_addr} - ${dtb_addr}\0"			\ +	"ubifsargs=set bootargs ubi.mtd=ubi "				\ +		"root=ubi:rootfs${boot_vol} rootfstype=ubifs\0"		\ +	"ubifs_mount=ubi part ubi;ubifsmount ubi:rootfs${boot_vol}\0"	\ +	"ubifs_load=ubifsload ${kernel_addr} ${kernel_fs};"		\ +		"ubifsload ${dtb_addr} ${dtb_fs};\0"			\ +	"nand_ubifs=run ubifs_mount ubifs_load ubifsargs addip addcon "	\ +		"addmtd;bootm ${kernel_addr} - ${dtb_addr}\0"		\ +	"load_kernel=tftp ${kernel_addr} ${kernel}\0"			\ +	"load_dtb=tftp ${dtb_addr} ${dtb}\0"				\ +	"net_nfs=run load_dtb load_kernel; "				\ +		"run nfsargs addip addcon addmtd;"			\ +		"bootm ${kernel_addr} - ${dtb_addr}\0"			\ +	"delenv=env default -a -f; saveenv; reset\0" + +#define CONFIG_BOOTCOMMAND		"run nand_ubifs" + +/* Miscellaneous configurable options */ +#define CONFIG_SYS_LONGHELP +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_SYS_PROMPT		"Titanium > " +#define CONFIG_AUTO_COMPLETE +#define CONFIG_CMDLINE_EDITING +#define CONFIG_SYS_CONSOLE_INFO_QUIET	/* don't print console @ startup */ + +#define CONFIG_SYS_CBSIZE		256 + +/* Print Buffer Size */ +#define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \ +					 sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_MAXARGS		16 +#define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE + +#define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR +#define CONFIG_SYS_HZ			1000 + +/* Physical Memory Map */ +#define CONFIG_NR_DRAM_BANKS		1 +#define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR +#define PHYS_SDRAM_SIZE			(512 << 20) + +#define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM +#define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR +#define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE + +#define CONFIG_SYS_INIT_SP_OFFSET \ +	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_ADDR \ +	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) + +/* FLASH and environment organization */ +#define CONFIG_SYS_NO_FLASH + +/* Enable NAND support */ +#define CONFIG_CMD_NAND +#define CONFIG_CMD_NAND_TRIMFFS +#define CONFIG_CMD_TIME + +#ifdef CONFIG_CMD_NAND + +/* NAND stuff */ +#define CONFIG_NAND_MXS +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_BASE		0x40000000 +#define CONFIG_SYS_NAND_5_ADDR_CYCLE +#define CONFIG_SYS_NAND_ONFI_DETECTION + +/* DMA stuff, needed for GPMI/MXS NAND support */ +#define CONFIG_APBH_DMA +#define CONFIG_APBH_DMA_BURST +#define CONFIG_APBH_DMA_BURST8 + +/* Environment in NAND */ +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_OFFSET		(16 << 20) +#define CONFIG_ENV_SECT_SIZE		(128 << 10) +#define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE +#define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + (512 << 10)) +#define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE + +#else /* CONFIG_CMD_NAND */ + +/* Environment in MMC */ +#define CONFIG_ENV_SIZE			(8 << 10) +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_OFFSET		(6 * 64 * 1024) +#define CONFIG_SYS_MMC_ENV_DEV		0 + +#endif /* CONFIG_CMD_NAND */ + +/* UBI/UBIFS config options */ +#define CONFIG_LZO +#define CONFIG_MTD_DEVICE +#define CONFIG_MTD_PARTITIONS +#define CONFIG_RBTREE +#define CONFIG_CMD_MTDPARTS +#define CONFIG_CMD_UBI +#define CONFIG_CMD_UBIFS + +#define CONFIG_OF_LIBFDT +#define CONFIG_CMD_BOOTZ + +#ifndef CONFIG_SYS_DCACHE_OFF +#define CONFIG_CMD_CACHE +#endif + +#endif			       /* __CONFIG_H */ diff --git a/include/configs/tnetv107x_evm.h b/include/configs/tnetv107x_evm.h index d6371fce4..cabc06e5b 100644 --- a/include/configs/tnetv107x_evm.h +++ b/include/configs/tnetv107x_evm.h @@ -82,8 +82,8 @@  #define CONFIG_SYS_NAND_CS		2  #define CONFIG_SYS_NAND_USE_FLASH_BBT  #define CONFIG_SYS_NAND_BASE		TNETV107X_ASYNC_EMIF_DATA_CE0_BASE -#define CONFIG_SYS_CLE_MASK		0x10 -#define CONFIG_SYS_ALE_MASK		0x8 +#define CONFIG_SYS_NAND_MASK_CLE		0x10 +#define CONFIG_SYS_NAND_MASK_ALE		0x8  #define CONFIG_SYS_MAX_NAND_DEVICE	1  #define CONFIG_MTD_PARTITIONS  #define CONFIG_CMD_MTDPARTS diff --git a/include/configs/vexpress_ca15_tc2.h b/include/configs/vexpress_ca15_tc2.h new file mode 100644 index 000000000..9e230add4 --- /dev/null +++ b/include/configs/vexpress_ca15_tc2.h @@ -0,0 +1,36 @@ +/* + * (C) Copyright 2013 Linaro + * Andre Przywara, <andre.przywara@linaro.org> + * + * Configuration for Versatile Express. Parts were derived from other ARM + *   configurations. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __VEXPRESS_CA15X2_TC2_h +#define __VEXPRESS_CA15X2_TC2_h + +#define CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP +#include "vexpress_common.h" +#define CONFIG_BOOTP_VCI_STRING     "U-boot.armv7.vexpress_ca15x2_tc2" + +#define CONFIG_SYS_CLK_FREQ 24000000 + +#endif diff --git a/include/configs/vexpress_ca5x2.h b/include/configs/vexpress_ca5x2.h new file mode 100644 index 000000000..933113496 --- /dev/null +++ b/include/configs/vexpress_ca5x2.h @@ -0,0 +1,34 @@ +/* + * (C) Copyright 2011 Linaro + * Ryan Harkin, <ryan.harkin@linaro.org> + * + * Configuration for Versatile Express. Parts were derived from other ARM + *   configurations. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __VEXPRESS_CA5X2_h +#define __VEXPRESS_CA5X2_h + +#define CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP +#include "vexpress_common.h" +#define CONFIG_BOOTP_VCI_STRING     "U-boot.armv7.vexpress_ca5x2" + +#endif /* __VEXPRESS_CA5X2_h */ diff --git a/include/configs/vexpress_ca9x4.h b/include/configs/vexpress_ca9x4.h new file mode 100644 index 000000000..c3b698654 --- /dev/null +++ b/include/configs/vexpress_ca9x4.h @@ -0,0 +1,34 @@ +/* + * (C) Copyright 2011 Linaro + * Ryan Harkin, <ryan.harkin@linaro.org> + * + * Configuration for Versatile Express. Parts were derived from other ARM + *   configurations. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __VEXPRESS_CA9X4_H +#define __VEXPRESS_CA9X4_H + +#define CONFIG_VEXPRESS_ORIGINAL_MEMORY_MAP +#include "vexpress_common.h" +#define CONFIG_BOOTP_VCI_STRING     "U-boot.armv7.vexpress_ca9x4" + +#endif /* VEXPRESS_CA9X4_H */ diff --git a/include/configs/ca9x4_ct_vxp.h b/include/configs/vexpress_common.h index a7cd1d45a..3c5683aaa 100644 --- a/include/configs/ca9x4_ct_vxp.h +++ b/include/configs/vexpress_common.h @@ -1,4 +1,5 @@  /* + * (C) Copyright 2011 ARM Limited   * (C) Copyright 2010 Linaro   * Matt Waddel, <matt.waddel@linaro.org>   * @@ -24,15 +25,113 @@   * MA 02111-1307 USA   */ -#ifndef __CONFIG_H -#define __CONFIG_H +#ifndef __VEXPRESS_COMMON_H +#define __VEXPRESS_COMMON_H + +/* + * Definitions copied from linux kernel: + * arch/arm/mach-vexpress/include/mach/motherboard.h + */ +#ifdef CONFIG_VEXPRESS_ORIGINAL_MEMORY_MAP +/* CS register bases for the original memory map. */ +#define V2M_PA_CS0		0x40000000 +#define V2M_PA_CS1		0x44000000 +#define V2M_PA_CS2		0x48000000 +#define V2M_PA_CS3		0x4c000000 +#define V2M_PA_CS7		0x10000000 + +#define V2M_PERIPH_OFFSET(x)	(x << 12) +#define V2M_SYSREGS		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(0)) +#define V2M_SYSCTL		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(1)) +#define V2M_SERIAL_BUS_PCI	(V2M_PA_CS7 + V2M_PERIPH_OFFSET(2)) + +#define V2M_BASE		0x60000000 +#define CONFIG_SYS_TEXT_BASE	0x60800000 +#elif defined(CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP) +/* CS register bases for the extended memory map. */ +#define V2M_PA_CS0		0x08000000 +#define V2M_PA_CS1		0x0c000000 +#define V2M_PA_CS2		0x14000000 +#define V2M_PA_CS3		0x18000000 +#define V2M_PA_CS7		0x1c000000 + +#define V2M_PERIPH_OFFSET(x)	(x << 16) +#define V2M_SYSREGS		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(1)) +#define V2M_SYSCTL		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(2)) +#define V2M_SERIAL_BUS_PCI	(V2M_PA_CS7 + V2M_PERIPH_OFFSET(3)) + +#define V2M_BASE		0x80000000 +#define CONFIG_SYS_TEXT_BASE	0x80800000 +#endif + +/* + * Physical addresses, offset from V2M_PA_CS0-3 + */ +#define V2M_NOR0		(V2M_PA_CS0) +#define V2M_NOR1		(V2M_PA_CS1) +#define V2M_SRAM		(V2M_PA_CS2) +#define V2M_VIDEO_SRAM		(V2M_PA_CS3 + 0x00000000) +#define V2M_LAN9118		(V2M_PA_CS3 + 0x02000000) +#define V2M_ISP1761		(V2M_PA_CS3 + 0x03000000) + +/* Common peripherals relative to CS7. */ +#define V2M_AACI		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(4)) +#define V2M_MMCI		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(5)) +#define V2M_KMI0		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(6)) +#define V2M_KMI1		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(7)) + +#define V2M_UART0		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(9)) +#define V2M_UART1		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(10)) +#define V2M_UART2		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(11)) +#define V2M_UART3		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(12)) + +#define V2M_WDT			(V2M_PA_CS7 + V2M_PERIPH_OFFSET(15)) + +#define V2M_TIMER01		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(17)) +#define V2M_TIMER23		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(18)) + +#define V2M_SERIAL_BUS_DVI	(V2M_PA_CS7 + V2M_PERIPH_OFFSET(22)) +#define V2M_RTC			(V2M_PA_CS7 + V2M_PERIPH_OFFSET(23)) + +#define V2M_CF			(V2M_PA_CS7 + V2M_PERIPH_OFFSET(26)) + +#define V2M_CLCD		(V2M_PA_CS7 + V2M_PERIPH_OFFSET(31)) +#define V2M_SIZE_CS7		V2M_PERIPH_OFFSET(32) + +/* System register offsets. */ +#define V2M_SYS_CFGDATA		(V2M_SYSREGS + 0x0a0) +#define V2M_SYS_CFGCTRL		(V2M_SYSREGS + 0x0a4) +#define V2M_SYS_CFGSTAT		(V2M_SYSREGS + 0x0a8) + +/* + * Configuration + */ +#define SYS_CFG_START		(1 << 31) +#define SYS_CFG_WRITE		(1 << 30) +#define SYS_CFG_OSC		(1 << 20) +#define SYS_CFG_VOLT		(2 << 20) +#define SYS_CFG_AMP		(3 << 20) +#define SYS_CFG_TEMP		(4 << 20) +#define SYS_CFG_RESET		(5 << 20) +#define SYS_CFG_SCC		(6 << 20) +#define SYS_CFG_MUXFPGA		(7 << 20) +#define SYS_CFG_SHUTDOWN	(8 << 20) +#define SYS_CFG_REBOOT		(9 << 20) +#define SYS_CFG_DVIMODE		(11 << 20) +#define SYS_CFG_POWER		(12 << 20) +#define SYS_CFG_SITE_MB		(0 << 16) +#define SYS_CFG_SITE_DB1	(1 << 16) +#define SYS_CFG_SITE_DB2	(2 << 16) +#define SYS_CFG_STACK(n)	((n) << 12) + +#define SYS_CFG_ERR		(1 << 1) +#define SYS_CFG_COMPLETE	(1 << 0)  /* Board info register */ -#define SYS_ID				0x10000000 +#define SYS_ID				V2M_SYSREGS  #define CONFIG_REVISION_TAG		1 -#define CONFIG_SYS_TEXT_BASE		0x60800000 -#define CONFIG_SYS_MEMTEST_START	0x60000000 +#define CONFIG_SYS_MEMTEST_START	V2M_BASE  #define CONFIG_SYS_MEMTEST_END		0x20000000  #define CONFIG_SYS_HZ			1000 @@ -46,13 +145,13 @@  /* Size of malloc() pool */  #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 128 * 1024) -#define SCTL_BASE			0x10001000 +#define SCTL_BASE			V2M_SYSCTL  #define VEXPRESS_FLASHPROG_FLVPPEN	(1 << 0)  /* SMSC9115 Ethernet from SMSC9118 family */  #define CONFIG_SMC911X			1  #define CONFIG_SMC911X_32_BIT		1 -#define CONFIG_SMC911X_BASE		0x4E000000 +#define CONFIG_SMC911X_BASE		V2M_LAN9118  /* PL011 Serial Configuration */  #define CONFIG_PL011_SERIAL @@ -62,8 +161,9 @@  #define CONFIG_CONS_INDEX		0  #define CONFIG_BAUDRATE			38400 -#define CONFIG_SYS_SERIAL0		0x10009000 -#define CONFIG_SYS_SERIAL1		0x1000A000 +#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 } +#define CONFIG_SYS_SERIAL0		V2M_UART0 +#define CONFIG_SYS_SERIAL1		V2M_UART1  /* Command line configuration */  #define CONFIG_CMD_BDI @@ -79,6 +179,8 @@  #define CONFIG_CMD_PING  #define CONFIG_CMD_SAVEENV  #define CONFIG_CMD_RUN +#define CONFIG_CMD_BOOTZ +#define CONFIG_SUPPORT_RAW_INITRD  #define CONFIG_CMD_FAT  #define CONFIG_DOS_PARTITION		1 @@ -86,7 +188,7 @@  #define CONFIG_CMD_MMC  #define CONFIG_GENERIC_MMC  #define CONFIG_ARM_PL180_MMCI -#define CONFIG_ARM_PL180_MMCI_BASE	0x10005000 +#define CONFIG_ARM_PL180_MMCI_BASE	V2M_MMCI  #define CONFIG_SYS_MMC_MAX_BLK_COUNT	127  #define CONFIG_ARM_PL180_MMCI_CLOCK_FREQ 6250000 @@ -97,18 +199,18 @@  #define CONFIG_BOOTP_HOSTNAME  #define CONFIG_BOOTP_PXE  #define CONFIG_BOOTP_PXE_CLIENTARCH	0x100 -#define CONFIG_BOOTP_VCI_STRING		"U-boot.armv7.ca9x4_ct_vxp"  /* Miscellaneous configurable options */  #undef	CONFIG_SYS_CLKS_IN_HZ -#define CONFIG_SYS_LOAD_ADDR		0x60008000	/* load address */ -#define LINUX_BOOT_PARAM_ADDR		0x60000200 +#define CONFIG_SYS_LOAD_ADDR		(V2M_BASE + 0x8000) +#define LINUX_BOOT_PARAM_ADDR		(V2M_BASE + 0x2000)  #define CONFIG_BOOTDELAY		2  /* Physical Memory Map */  #define CONFIG_NR_DRAM_BANKS		2 -#define PHYS_SDRAM_1			0x60000000	/* SDRAM Bank #1 */ -#define PHYS_SDRAM_2			0x80000000	/* SDRAM Bank #1 */ +#define PHYS_SDRAM_1			(V2M_BASE)	/* SDRAM Bank #1 */ +#define PHYS_SDRAM_2			(((unsigned int)V2M_BASE) + \ +					((unsigned int)0x20000000))  #define PHYS_SDRAM_1_SIZE		0x20000000	/* 512 MB */  #define PHYS_SDRAM_2_SIZE		0x20000000	/* 512 MB */ @@ -122,14 +224,27 @@  /* Basic environment settings */  #define CONFIG_BOOTCOMMAND		"run bootflash;" -#define CONFIG_EXTRA_ENV_SETTINGS \ +#ifdef CONFIG_VEXPRESS_ORIGINAL_MEMORY_MAP +#define CONFIG_PLATFORM_ENV_SETTINGS \  		"loadaddr=0x80008000\0" \  		"ramdisk_addr_r=0x61000000\0" \  		"kernel_addr=0x44100000\0" \  		"ramdisk_addr=0x44800000\0" \  		"maxramdisk=0x1800000\0" \  		"pxefile_addr_r=0x88000000\0" \ -		"kernel_addr_r=0x80008000\0" \ +		"kernel_addr_r=0x80008000\0" +#elif defined(CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP) +#define CONFIG_PLATFORM_ENV_SETTINGS \ +		"loadaddr=0xa0008000\0" \ +		"ramdisk_addr_r=0x81000000\0" \ +		"kernel_addr=0x0c100000\0" \ +		"ramdisk_addr=0x0c800000\0" \ +		"maxramdisk=0x1800000\0" \ +		"pxefile_addr_r=0xa8000000\0" \ +		"kernel_addr_r=0xa0008000\0" +#endif +#define CONFIG_EXTRA_ENV_SETTINGS \ +		CONFIG_PLATFORM_ENV_SETTINGS \  		"console=ttyAMA0,38400n8\0" \  		"dram=1024M\0" \  		"root=/dev/sda1 rw\0" \ @@ -148,8 +263,8 @@  #define CONFIG_FLASH_CFI_DRIVER		1  #define CONFIG_SYS_FLASH_SIZE		0x04000000  #define CONFIG_SYS_MAX_FLASH_BANKS	2 -#define CONFIG_SYS_FLASH_BASE0		0x40000000 -#define CONFIG_SYS_FLASH_BASE1		0x44000000 +#define CONFIG_SYS_FLASH_BASE0		V2M_NOR0 +#define CONFIG_SYS_FLASH_BASE1		V2M_NOR1  #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE0  /* Timeout values in ticks */ @@ -189,10 +304,12 @@  #define CONFIG_SYS_PROMPT		"VExpress# "  #define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \  					sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_HUSH_PARSER +  #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE /* Boot args buffer */  #define CONFIG_CMD_SOURCE  #define CONFIG_SYS_LONGHELP  #define CONFIG_CMDLINE_EDITING		1  #define CONFIG_SYS_MAXARGS		16	/* max command args */ -#endif +#endif /* VEXPRESS_COMMON_H */ diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h index 120e3f6ff..9d7ec3f6f 100644 --- a/include/configs/wandboard.h +++ b/include/configs/wandboard.h @@ -32,6 +32,7 @@  #define CONFIG_SYS_MALLOC_LEN		(3 * SZ_1M)  #define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_BOARD_LATE_INIT  #define CONFIG_MXC_GPIO  #define CONFIG_MXC_UART @@ -47,6 +48,9 @@  #undef CONFIG_CMD_IMLS +#define CONFIG_CMD_BMODE +#define CONFIG_CMD_SETEXPR +  #define CONFIG_BOOTDELAY		5  #define CONFIG_SYS_MEMTEST_START	0x10000000 @@ -57,6 +61,7 @@  /* MMC Configuration */  #define CONFIG_FSL_ESDHC  #define CONFIG_FSL_USDHC +#define CONFIG_SYS_FSL_USDHC_NUM	2  #define CONFIG_SYS_FSL_ESDHC_ADDR	0  #define CONFIG_MMC @@ -97,9 +102,23 @@  	"fdt_addr=0x11000000\0" \  	"boot_fdt=try\0" \  	"ip_dyn=yes\0" \ -	"mmcdev=0\0" \ -	"mmcpart=2\0" \ +	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \ +	"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \  	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \ +	"update_sd_firmware_filename=u-boot.imx\0" \ +	"update_sd_firmware=" \ +		"if test ${ip_dyn} = yes; then " \ +			"setenv get_cmd dhcp; " \ +		"else " \ +			"setenv get_cmd tftp; " \ +		"fi; " \ +		"if mmc dev ${mmcdev}; then "	\ +			"if ${get_cmd} ${update_sd_firmware_filename}; then " \ +				"setexpr fw_sz ${filesize} / 0x200; " \ +				"setexpr fw_sz ${fw_sz} + 1; "	\ +				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \ +			"fi; "	\ +		"fi\0" \  	"mmcargs=setenv bootargs console=${console},${baudrate} " \  		"root=${mmcroot}\0" \  	"loadbootscript=" \ @@ -198,6 +217,7 @@  #define CONFIG_ENV_IS_IN_MMC  #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)  #define CONFIG_SYS_MMC_ENV_DEV		0 +#define CONFIG_SYS_MMC_ENV_PART		2  #define CONFIG_OF_LIBFDT  #define CONFIG_CMD_BOOTZ diff --git a/include/configs/zynq.h b/include/configs/zynq.h index 2989e723e..38f04f642 100644 --- a/include/configs/zynq.h +++ b/include/configs/zynq.h @@ -50,19 +50,50 @@  #define CONFIG_ZYNQ_SERIAL_BAUDRATE0	CONFIG_BAUDRATE  #define CONFIG_ZYNQ_SERIAL_CLOCK0	50000000 -/* SCU timer address is hardcoded */ -#define CONFIG_SCUTIMER_BASEADDR	0xF8F00600 -  /* Ethernet driver */  #define CONFIG_NET_MULTI  #define CONFIG_ZYNQ_GEM -#define CONFIG_ZYNQ_GEM_BASEADDR0	0xE000B000 +#define CONFIG_ZYNQ_GEM0 +#define CONFIG_ZYNQ_GEM_PHY_ADDR0	7 + +#define CONFIG_ZYNQ_SDHCI +#define CONFIG_ZYNQ_SDHCI0 + +/* MMC */ +#if defined(CONFIG_ZYNQ_SDHCI0) || defined(CONFIG_ZYNQ_SDHCI1) +# define CONFIG_MMC +# define CONFIG_GENERIC_MMC +# define CONFIG_SDHCI +# define CONFIG_ZYNQ_SDHCI +# define CONFIG_CMD_MMC +# define CONFIG_CMD_FAT +# define CONFIG_SUPPORT_VFAT +# define CONFIG_CMD_EXT2 +# define CONFIG_DOS_PARTITION +#endif + +#define CONFIG_ZYNQ_I2C0 + +/* I2C */ +#if defined(CONFIG_ZYNQ_I2C0) || defined(CONFIG_ZYNQ_I2C1) +# define CONFIG_CMD_I2C +# define CONFIG_ZYNQ_I2C +# define CONFIG_HARD_I2C +# define CONFIG_SYS_I2C_SPEED		100000 +# define CONFIG_SYS_I2C_SLAVE		1 +#endif  #if defined(CONFIG_ZYNQ_DCC)  # define CONFIG_ARM_DCC  # define CONFIG_CPU_V6 /* Required by CONFIG_ARM_DCC */  #endif +/* Enable the PL to be downloaded */ +#define CONFIG_FPGA +#define CONFIG_FPGA_XILINX +#define CONFIG_FPGA_ZYNQPL +#define CONFIG_CMD_FPGA +  #define CONFIG_BOOTP_SERVERIP  #define CONFIG_BOOTP_BOOTPATH  #define CONFIG_BOOTP_GATEWAY |