diff options
Diffstat (limited to 'include')
99 files changed, 6132 insertions, 2514 deletions
| diff --git a/include/api_public.h b/include/api_public.h index 4420c990b..f5c89f3f1 100644 --- a/include/api_public.h +++ b/include/api_public.h @@ -3,50 +3,7 @@   *   * Written by: Rafal Jaworowski <raj@semihalf.com>   * - * This file is dual licensed; you can use it under the terms of - * either the GPL, or the BSD license, at your option. - * - * I. GPL: - * - * This file 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 file 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 - * - * Alternatively, - * - * II. BSD license: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *    notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *    notice, this list of conditions and the following disclaimer in the - *    documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * SPDX-License-Identifier:	GPL-2.0+	BSD-2-Clause   */  #ifndef _API_PUBLIC_H_ diff --git a/include/asm-generic/u-boot.h b/include/asm-generic/u-boot.h index 29e0438ba..43872010c 100644 --- a/include/asm-generic/u-boot.h +++ b/include/asm-generic/u-boot.h @@ -69,7 +69,6 @@ typedef struct bd_info {  	unsigned int	bi_baudrate;	/* Console Baudrate */  #if defined(CONFIG_405)   || \  		defined(CONFIG_405GP) || \ -		defined(CONFIG_405CR) || \  		defined(CONFIG_405EP) || \  		defined(CONFIG_405EZ) || \  		defined(CONFIG_405EX) || \ diff --git a/include/bootstage.h b/include/bootstage.h index 25b4e07c7..87bf906b2 100644 --- a/include/bootstage.h +++ b/include/bootstage.h @@ -353,6 +353,7 @@ static inline ulong bootstage_error(enum bootstage_id id)  static inline ulong bootstage_mark_name(enum bootstage_id id, const char *name)  { +	show_boot_progress(id);  	return 0;  } diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h index 09043435b..2f0bc6b06 100644 --- a/include/configs/B4860QDS.h +++ b/include/configs/B4860QDS.h @@ -33,7 +33,6 @@  #define CONFIG_E500MC			/* BOOKE e500mc family */  #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */  #define CONFIG_MPC85xx			/* MPC85xx/PQ3 platform */ -#define CONFIG_FSL_CORENET		/* Freescale CoreNet platform */  #define CONFIG_MP			/* support multiple processors */  #ifndef CONFIG_SYS_TEXT_BASE @@ -75,6 +74,13 @@  #define VSC3308_TX_ADDRESS              0x02  #define VSC3308_RX_ADDRESS              0x03 +/* IDT clock synthesizers */ +#define CONFIG_IDT8T49N222A +#define I2C_CH_IDT                     0x9 + +#define IDT_SERDES1_ADDRESS            0x6E +#define IDT_SERDES2_ADDRESS            0x6C +  #define CONFIG_ENV_OVERWRITE  #ifdef CONFIG_SYS_NO_FLASH @@ -578,6 +584,8 @@ unsigned long get_board_ddr_clk(void);  #define CONFIG_SYS_DPAA_FMAN +#define CONFIG_SYS_DPAA_RMAN +  /* Default address of microcode for the Linux Fman driver */  #if defined(CONFIG_SPIFLASH)  /* diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h index 1ab689158..03f3a4f80 100644 --- a/include/configs/BSC9132QDS.h +++ b/include/configs/BSC9132QDS.h @@ -224,6 +224,10 @@ combinations. this should be removed later  #define CONFIG_SYS_IMMR		CONFIG_SYS_CCSRBAR +/* DSP CCSRBAR */ +#define CONFIG_SYS_FSL_DSP_CCSRBAR	CONFIG_SYS_FSL_DSP_CCSRBAR_DEFAULT +#define CONFIG_SYS_FSL_DSP_CCSRBAR_PHYS	CONFIG_SYS_FSL_DSP_CCSRBAR_DEFAULT +  /*   * IFC Definitions   */ diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h new file mode 100644 index 000000000..83779eff8 --- /dev/null +++ b/include/configs/C29XPCIE.h @@ -0,0 +1,456 @@ +/* + * Copyright 2013 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +/* + * C29XPCIE board configuration file + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#define CONFIG_PHYS_64BIT + +#ifdef CONFIG_C29XPCIE +#define CONFIG_PPC_C29X +#endif + +#ifdef CONFIG_SPIFLASH +#define CONFIG_RAMBOOT_SPIFLASH +#define CONFIG_SYS_TEXT_BASE		0x11000000 +#define CONFIG_RESET_VECTOR_ADDRESS	0x1107fffc +#endif + +#ifndef CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_TEXT_BASE		0xeff80000 +#endif + +#ifndef CONFIG_RESET_VECTOR_ADDRESS +#define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc +#endif + +#ifndef CONFIG_SYS_MONITOR_BASE +#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE +#endif + +/* High Level Configuration Options */ +#define CONFIG_BOOKE			/* BOOKE */ +#define CONFIG_E500			/* BOOKE e500 family */ +#define CONFIG_MPC85xx +#define CONFIG_FSL_IFC			/* Enable IFC Support */ +#define CONFIG_SYS_HAS_SERDES		/* common SERDES init code */ + +#define CONFIG_PCI			/* Enable PCI/PCIE */ +#ifdef CONFIG_PCI +#define CONFIG_PCIE1			/* PCIE controler 1 (slot 1) */ +#define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */ +#define CONFIG_PCI_INDIRECT_BRIDGE +#define CONFIG_FSL_PCIE_RESET		/* need PCIe reset errata */ +#define CONFIG_SYS_PCI_64BIT		/* enable 64-bit PCI resources */ + +#define CONFIG_CMD_NET +#define CONFIG_CMD_PCI + +#define CONFIG_E1000 + +/* + * PCI Windows + * Memory space is mapped 1-1, but I/O space must start from 0. + */ +/* controller 1, Slot 1, tgtid 1, Base address a000 */ +#define CONFIG_SYS_PCIE1_NAME		"Slot 1" +#define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000 +#define CONFIG_SYS_PCIE1_MEM_BUS	0x80000000 +#define CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull +#define CONFIG_SYS_PCIE1_MEM_SIZE	0x10000000	/* 256M */ +#define CONFIG_SYS_PCIE1_IO_VIRT	0xffc00000 +#define CONFIG_SYS_PCIE1_IO_BUS		0x00000000 +#define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */ +#define CONFIG_SYS_PCIE1_IO_PHYS	0xfffc00000ull + +#define CONFIG_PCI_PNP			/* do pci plug-and-play */ + +#define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */ +#define CONFIG_DOS_PARTITION +#endif + +#define CONFIG_FSL_LAW			/* Use common FSL init code */ +#define CONFIG_TSEC_ENET +#define CONFIG_ENV_OVERWRITE + +#define CONFIG_DDR_CLK_FREQ	100000000 +#define CONFIG_SYS_CLK_FREQ	66666666 + +#define CONFIG_HWCONFIG + +/* + * These can be toggled for performance analysis, otherwise use default. + */ +#define CONFIG_L2_CACHE			/* toggle L2 cache */ +#define CONFIG_BTB			/* toggle branch predition */ + +#define CONFIG_ADDR_STREAMING		/* toggle addr streaming */ + +#define CONFIG_ENABLE_36BIT_PHYS + +#define CONFIG_ADDR_MAP			1 +#define CONFIG_SYS_NUM_ADDR_MAP		16	/* number of TLB1 entries */ + +#define CONFIG_SYS_MEMTEST_START	0x00200000 +#define CONFIG_SYS_MEMTEST_END		0x00400000 +#define CONFIG_PANIC_HANG + +/* DDR Setup */ +#define CONFIG_FSL_DDR3 +#define CONFIG_DDR_SPD +#define CONFIG_SYS_SPD_BUS_NUM		0 +#define SPD_EEPROM_ADDRESS		0x50 +#define CONFIG_SYS_DDR_RAW_TIMING + +/* DDR ECC Setup*/ +#define CONFIG_DDR_ECC +#define CONFIG_MEM_INIT_VALUE		0xDeadBeef +#define CONFIG_ECC_INIT_VIA_DDRCONTROLLER + +#define CONFIG_SYS_SDRAM_SIZE		512 +#define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000 +#define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE + +#define CONFIG_DIMM_SLOTS_PER_CTLR	1 +#define CONFIG_CHIP_SELECTS_PER_CTRL	1 + +#define CONFIG_SYS_CCSRBAR		0xffe00000 +#define CONFIG_SYS_CCSRBAR_PHYS_LOW	CONFIG_SYS_CCSRBAR + +/* Platform SRAM setting  */ +#define CONFIG_SYS_PLATFORM_SRAM_BASE	0xffb00000 +#define CONFIG_SYS_PLATFORM_SRAM_BASE_PHYS \ +			(0xf00000000ull | CONFIG_SYS_PLATFORM_SRAM_BASE) +#define CONFIG_SYS_PLATFORM_SRAM_SIZE	(512 << 10) + +/* + * IFC Definitions + */ +/* NOR Flash on IFC */ +#define CONFIG_SYS_FLASH_BASE		0xec000000 +#define CONFIG_SYS_MAX_FLASH_SECT	512	/* 64M */ + +#define CONFIG_SYS_FLASH_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_FLASH_BASE) + +#define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE_PHYS } +#define CONFIG_SYS_MAX_FLASH_BANKS	1 + +#define CONFIG_SYS_FLASH_QUIET_TEST +#define CONFIG_FLASH_SHOW_PROGRESS	45 +#define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* in ms */ +#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* in ms */ + +/* 16Bit NOR Flash - S29GL512S10TFI01 */ +#define CONFIG_SYS_NOR_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ +				CSPR_PORT_SIZE_16 | \ +				CSPR_MSEL_NOR | \ +				CSPR_V) +#define CONFIG_SYS_NOR_AMASK	IFC_AMASK(64*1024*1024) +#define CONFIG_SYS_NOR_CSOR	CSOR_NOR_ADM_SHIFT(4) +#define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x4) | \ +				FTIM0_NOR_TEADC(0x5) | \ +				FTIM0_NOR_TEAHC(0x5)) +#define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x1e) | \ +				FTIM1_NOR_TRAD_NOR(0x0f) | \ +				FTIM1_NOR_TSEQRAD_NOR(0x0f)) +#define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x4) | \ +				FTIM2_NOR_TCH(0x4) | \ +				FTIM2_NOR_TWP(0x1c)) +#define CONFIG_SYS_NOR_FTIM3	0x0 + +/* CFI for NOR Flash */ +#define CONFIG_FLASH_CFI_DRIVER +#define CONFIG_SYS_FLASH_CFI +#define CONFIG_SYS_FLASH_EMPTY_INFO +#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE + +/* NAND Flash on IFC */ +#define CONFIG_NAND_FSL_IFC +#define CONFIG_SYS_NAND_BASE		0xff800000 +#define CONFIG_SYS_NAND_BASE_PHYS	0xfff800000ull + +#define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE } + +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_MTD_NAND_VERIFY_WRITE +#define CONFIG_CMD_NAND +#define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024) + +/* 8Bit NAND Flash - K9F1G08U0B */ +#define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ +				| CSPR_PORT_SIZE_8 \ +				| CSPR_MSEL_NAND \ +				| CSPR_V) +#define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024) +#define CONFIG_SYS_NAND_CSOR	(CSOR_NAND_ECC_ENC_EN	/* ECC on encode */ \ +				| CSOR_NAND_ECC_DEC_EN	/* ECC on decode */ \ +				| CSOR_NAND_ECC_MODE_4	/* 4-bit ECC */ \ +				| CSOR_NAND_RAL_2	/* RAL = 2 Bytes */ \ +				| CSOR_NAND_PGS_2K	/* Page Size = 2k */ \ +				| CSOR_NAND_SPRZ_64	/* Spare size = 64 */ \ +				| CSOR_NAND_PB(64))	/* 64 Pages Per Block */ +#define CONFIG_SYS_NAND_FTIM0	(FTIM0_NAND_TCCST(0x01) | \ +				FTIM0_NAND_TWP(0x0c)   | \ +				FTIM0_NAND_TWCHT(0x08) | \ +				FTIM0_NAND_TWH(0x06)) +#define CONFIG_SYS_NAND_FTIM1	(FTIM1_NAND_TADLE(0x28) | \ +				FTIM1_NAND_TWBE(0x1d)  | \ +				FTIM1_NAND_TRR(0x08)   | \ +				FTIM1_NAND_TRP(0x0c)) +#define CONFIG_SYS_NAND_FTIM2	(FTIM2_NAND_TRAD(0x0c) | \ +				FTIM2_NAND_TREH(0x0a) | \ +				FTIM2_NAND_TWHRE(0x18)) +#define CONFIG_SYS_NAND_FTIM3	(FTIM3_NAND_TWW(0x04)) + +#define CONFIG_SYS_NAND_DDR_LAW		11 + +/* Set up IFC registers for boot location NOR/NAND */ +#define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR_CSPR +#define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK +#define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR +#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0 +#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1 +#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2 +#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3 +#define CONFIG_SYS_CSPR1		CONFIG_SYS_NAND_CSPR +#define CONFIG_SYS_AMASK1		CONFIG_SYS_NAND_AMASK +#define CONFIG_SYS_CSOR1		CONFIG_SYS_NAND_CSOR +#define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NAND_FTIM0 +#define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NAND_FTIM1 +#define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NAND_FTIM2 +#define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NAND_FTIM3 + +/* CPLD on IFC, selected by CS2 */ +#define CONFIG_SYS_CPLD_BASE		0xffdf0000 +#define CONFIG_SYS_CPLD_BASE_PHYS	(0xf00000000ull \ +					| CONFIG_SYS_CPLD_BASE) + +#define CONFIG_SYS_CSPR2	(CSPR_PHYS_ADDR(CONFIG_SYS_CPLD_BASE_PHYS) \ +				| CSPR_PORT_SIZE_8 \ +				| CSPR_MSEL_GPCM \ +				| CSPR_V) +#define CONFIG_SYS_AMASK2	IFC_AMASK(64*1024) +#define CONFIG_SYS_CSOR2	0x0 +/* CPLD Timing parameters for IFC CS2 */ +#define CONFIG_SYS_CS2_FTIM0	(FTIM0_GPCM_TACSE(0x0e) | \ +				FTIM0_GPCM_TEADC(0x0e) | \ +				FTIM0_GPCM_TEAHC(0x0e)) +#define CONFIG_SYS_CS2_FTIM1	(FTIM1_GPCM_TACO(0x0e) | \ +				FTIM1_GPCM_TRAD(0x1f)) +#define CONFIG_SYS_CS2_FTIM2	(FTIM2_GPCM_TCS(0x0e) | \ +				FTIM2_GPCM_TCH(0x0) | \ +				FTIM2_GPCM_TWP(0x1f)) +#define CONFIG_SYS_CS2_FTIM3	0x0 + +#if defined(CONFIG_RAMBOOT_SPIFLASH) +#define CONFIG_SYS_RAMBOOT +#define CONFIG_SYS_EXTRA_ENV_RELOC +#endif + +#define CONFIG_BOARD_EARLY_INIT_R + +#define CONFIG_SYS_INIT_RAM_LOCK +#define CONFIG_SYS_INIT_RAM_ADDR	0xffd00000 +#define CONFIG_SYS_INIT_RAM_END		0x00004000 + +#define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_END \ +						- GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET + +#define CONFIG_SYS_MONITOR_LEN		(512 * 1024) +#define CONFIG_SYS_MALLOC_LEN		(1024 * 1024) + +/* Serial Port */ +#define CONFIG_CONS_INDEX	1 +#define CONFIG_SYS_NS16550 +#define CONFIG_SYS_NS16550_SERIAL +#define CONFIG_SYS_NS16550_REG_SIZE	1 +#define CONFIG_SYS_NS16550_CLK		get_bus_freq(0) + +#define CONFIG_SERIAL_MULTI		/* Enable both serial ports */ +#define CONFIG_SYS_CONSOLE_IS_IN_ENV + +#define CONFIG_SYS_BAUDRATE_TABLE	\ +	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200} + +#define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x4500) +#define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x4600) + +/* Use the HUSH parser */ +#define CONFIG_SYS_HUSH_PARSER + +/* + * Pass open firmware flat tree + */ +#define CONFIG_OF_LIBFDT +#define CONFIG_OF_BOARD_SETUP +#define CONFIG_OF_STDOUT_VIA_ALIAS + +/* new uImage format support */ +#define CONFIG_FIT +#define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */ + +#define CONFIG_SYS_I2C +#define CONFIG_SYS_I2C_FSL +#define CONFIG_SYS_FSL_I2C_SPEED	400000 +#define CONFIG_SYS_FSL_I2C2_SPEED	400000 +#define CONFIG_SYS_FSL_I2C_SLAVE	0x7F +#define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F +#define CONFIG_SYS_FSL_I2C_OFFSET	0x3000 +#define CONFIG_SYS_FSL_I2C2_OFFSET	0x3100 + +/* I2C EEPROM */ +/* enable read and write access to EEPROM */ +#define CONFIG_CMD_EEPROM +#define CONFIG_SYS_I2C_MULTI_EEPROMS +#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 + +#define CONFIG_CMD_I2C + +/* eSPI - Enhanced SPI */ +#define CONFIG_FSL_ESPI +#define CONFIG_SPI_FLASH +#define CONFIG_SPI_FLASH_SPANSION +#define CONFIG_SPI_FLASH_EON +#define CONFIG_CMD_SF +#define CONFIG_SF_DEFAULT_SPEED		10000000 +#define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0 + +#ifdef CONFIG_TSEC_ENET +#define CONFIG_NET_MULTI +#define CONFIG_MII			/* MII PHY management */ +#define CONFIG_MII_DEFAULT_TSEC	1	/* Allow unregistered phys */ +#define CONFIG_TSEC1		1 +#define CONFIG_TSEC1_NAME	"eTSEC1" +#define CONFIG_TSEC2		1 +#define CONFIG_TSEC2_NAME	"eTSEC2" + +/* Default mode is RGMII mode */ +#define TSEC1_PHY_ADDR		0 +#define TSEC2_PHY_ADDR		2 + +#define TSEC1_FLAGS		(TSEC_GIGABIT | TSEC_REDUCED) +#define TSEC2_FLAGS		(TSEC_GIGABIT | TSEC_REDUCED) + +#define CONFIG_ETHPRIME		"eTSEC1" + +#define CONFIG_PHY_GIGE +#endif	/* CONFIG_TSEC_ENET */ + +/* + * Environment + */ +#if defined(CONFIG_SYS_RAMBOOT) +#if defined(CONFIG_RAMBOOT_SPIFLASH) +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_SPI_BUS	0 +#define CONFIG_ENV_SPI_CS	0 +#define CONFIG_ENV_SPI_MAX_HZ	10000000 +#define CONFIG_ENV_SPI_MODE	0 +#define CONFIG_ENV_OFFSET	0x100000	/* 1MB */ +#define CONFIG_ENV_SECT_SIZE	0x10000 +#define CONFIG_ENV_SIZE		0x2000 +#endif +#else +#define CONFIG_ENV_IS_IN_FLASH +#if CONFIG_SYS_MONITOR_BASE > 0xfff80000 +#define CONFIG_ENV_ADDR	0xfff80000 +#else +#define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) +#endif +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_ENV_SECT_SIZE	0x20000 +#endif + +#define CONFIG_LOADS_ECHO +#define CONFIG_SYS_LOADS_BAUD_CHANGE + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> + +#define CONFIG_CMD_ERRATA +#define CONFIG_CMD_ELF +#define CONFIG_CMD_IRQ +#define CONFIG_CMD_MII +#define CONFIG_CMD_PING +#define CONFIG_CMD_SETEXPR +#define CONFIG_CMD_REGINFO + +/* + * Miscellaneous configurable options + */ +#define CONFIG_SYS_LONGHELP			/* undef to save memory	*/ +#define CONFIG_CMDLINE_EDITING			/* Command-line editing */ +#define CONFIG_AUTO_COMPLETE			/* add autocompletion support */ +#define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */ +#define CONFIG_SYS_PROMPT	"=> "		/* Monitor Command Prompt */ + +#define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size */ +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +						/* Print Buffer Size */ +#define CONFIG_SYS_MAXARGS	16		/* max number of command args */ +#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE/* Boot Argument Buffer Size */ +#define CONFIG_SYS_HZ		1000		/* dec freq: 1ms ticks */ + +/* + * For booting Linux, the board info and command line data + * have to be in the first 64 MB of memory, since this is + * the maximum mapped by the Linux kernel during initialization. + */ +#define CONFIG_SYS_BOOTMAPSZ	(64 << 20) /* Initial Memory map for Linux */ +#define CONFIG_SYS_BOOTM_LEN	(64 << 20) /* Increase max gunzip size */ + +/* + * Environment Configuration + */ + +#ifdef CONFIG_TSEC_ENET +#define CONFIG_HAS_ETH0 +#define CONFIG_HAS_ETH1 +#endif + +#define CONFIG_ROOTPATH		"/opt/nfsroot" +#define CONFIG_BOOTFILE		"uImage" +#define CONFIG_UBOOTPATH	u-boot.bin/* U-Boot image on TFTP server */ + +/* default location for tftp and bootm */ +#define CONFIG_LOADADDR		1000000 + +#define CONFIG_BOOTDELAY	-1	/* -1 disables auto-boot */ + +#define CONFIG_BAUDRATE		115200 + +#define	CONFIG_EXTRA_ENV_SETTINGS				\ +	"hwconfig=" __stringify(CONFIG_DEF_HWCONFIG)  "\0"	\ +	"netdev=eth0\0"						\ +	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\ +	"loadaddr=1000000\0"				\ +	"consoledev=ttyS0\0"				\ +	"ramdiskaddr=2000000\0"				\ +	"ramdiskfile=rootfs.ext2.gz.uboot\0"		\ +	"fdtaddr=c00000\0"				\ +	"fdtfile=name/of/device-tree.dtb\0"			\ +	"othbootargs=ramdisk_size=600000\0"		\ + +#define CONFIG_RAMBOOTCOMMAND			\ +	"setenv bootargs root=/dev/ram rw "	\ +	"console=$consoledev,$baudrate $othbootargs; "	\ +	"tftp $ramdiskaddr $ramdiskfile;"	\ +	"tftp $loadaddr $bootfile;"		\ +	"tftp $fdtaddr $fdtfile;"		\ +	"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_BOOTCOMMAND CONFIG_RAMBOOTCOMMAND + +#endif	/* __CONFIG_H */ diff --git a/include/configs/CANBT.h b/include/configs/CANBT.h deleted file mode 100644 index 40471b78a..000000000 --- a/include/configs/CANBT.h +++ /dev/null @@ -1,215 +0,0 @@ -/* - * (C) Copyright 2001 - * Matthias Fuchs, esd gmbh germany, matthias.fuchs@esd-electronics.com - * - * SPDX-License-Identifier:	GPL-2.0+  - */ - -/* - * board/config.h - configuration options, board specific - */ - -#ifndef __CONFIG_H -#define __CONFIG_H - -/* - * High Level Configuration Options - * (easy to change) - */ - -#define CONFIG_405CR		1	/* This is a PPC405CR CPU	*/ -#define CONFIG_4xx		1	/* ...member of PPC4xx family	*/ -#define CONFIG_CANBT		1	/* ...on a CANBT board		*/ - -#define	CONFIG_SYS_TEXT_BASE	0xFFFC0000 - -#define CONFIG_BOARD_EARLY_INIT_F 1	/* call board_early_init_f()	*/ - -#define CONFIG_SYS_CLK_FREQ	25000000 /* external frequency to pll	*/ - -#define CONFIG_BAUDRATE		115200 -#define CONFIG_BOOTDELAY	1	/* autoboot after 1 seconds	*/ - -#undef	CONFIG_BOOTARGS -#define CONFIG_BOOTCOMMAND						\ -	"setenv bootargs root=/dev/ram rw console=ttyS0,115200; "	\ -	"bootm ffe00000 ffe80000" - -#define CONFIG_LOADS_ECHO	1	/* echo on for serial download	*/ -#define CONFIG_SYS_LOADS_BAUD_CHANGE	1	/* allow baudrate change	*/ - -#undef	CONFIG_PCI_PNP			/* no pci plug-and-play		*/ - -#define CONFIG_PHY_ADDR		0	/* PHY address			*/ - - -/* - * BOOTP options - */ -#define CONFIG_BOOTP_BOOTFILESIZE -#define CONFIG_BOOTP_BOOTPATH -#define CONFIG_BOOTP_GATEWAY -#define CONFIG_BOOTP_HOSTNAME - - -/* - * Command line configuration. - */ -#include <config_cmd_default.h> - -#define CONFIG_CMD_IRQ -#define CONFIG_CMD_EEPROM - -#undef CONFIG_CMD_NET -#undef CONFIG_CMD_NFS - -#undef CONFIG_WATCHDOG			/* watchdog disabled		*/ - -#define CONFIG_SDRAM_BANK0	1	/* init onboard SDRAM bank 0	*/ - -/* - * Miscellaneous configurable options - */ -#define CONFIG_SYS_LONGHELP			/* undef to save memory		*/ -#define CONFIG_SYS_PROMPT	"=> "		/* Monitor Command Prompt	*/ -#if defined(CONFIG_CMD_KGDB) -#define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size	*/ -#else -#define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size	*/ -#endif -#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */ -#define CONFIG_SYS_MAXARGS	16		/* max number of command args	*/ -#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE	/* Boot Argument Buffer Size	*/ - -#define CONFIG_SYS_CONSOLE_INFO_QUIET	1	/* don't print console @ startup*/ - -#define CONFIG_SYS_MEMTEST_START	0x0400000	/* memtest works on	*/ -#define CONFIG_SYS_MEMTEST_END		0x0C00000	/* 4 ... 12 MB in DRAM	*/ - -#define CONFIG_CONS_INDEX	1	/* Use UART0			*/ -#define CONFIG_SYS_NS16550 -#define CONFIG_SYS_NS16550_SERIAL -#define CONFIG_SYS_NS16550_REG_SIZE	1 -#define CONFIG_SYS_NS16550_CLK		get_serial_clock() - -#define CONFIG_SYS_EXT_SERIAL_CLOCK	14745600 /* use external serial clock	*/ - -/* The following table includes the supported baudrates */ -#define CONFIG_SYS_BAUDRATE_TABLE	\ -	{ 300, 600, 1200, 2400, 4800, 9600, 19200, 38400,     \ -	 57600, 115200, 230400, 460800, 921600 } - -#define CONFIG_SYS_LOAD_ADDR	0x100000	/* default load address */ -#define CONFIG_SYS_EXTBDINFO	1		/* To use extended board_into (bd_t) */ - -#define CONFIG_SYS_HZ		1000		/* decrementer freq: 1 ms ticks */ - -#define CONFIG_ZERO_BOOTDELAY_CHECK	/* check for keypress on bootdelay==0 */ - -/*----------------------------------------------------------------------- - * Start addresses for the final memory configuration - * (Set up by the startup code) - * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0 - */ -#define CONFIG_SYS_SDRAM_BASE		0x00000000 -#define CONFIG_SYS_FLASH_BASE		CONFIG_SYS_MONITOR_BASE -#define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE -#define CONFIG_SYS_MONITOR_LEN		(~(CONFIG_SYS_TEXT_BASE) + 1) -#define CONFIG_SYS_MALLOC_LEN		(128 * 1024)	/* Reserve 128 kB for malloc()	*/ - -/* - * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is - * the maximum mapped by the Linux kernel during initialization. - */ -#define CONFIG_SYS_BOOTMAPSZ		(8 << 20)	/* Initial Memory map for Linux */ -/*----------------------------------------------------------------------- - * FLASH organization - */ -#define CONFIG_SYS_MAX_FLASH_BANKS	1	/* max number of memory banks		*/ -#define CONFIG_SYS_MAX_FLASH_SECT	256	/* max number of sectors on one chip	*/ - -#define CONFIG_SYS_FLASH_ERASE_TOUT	120000	/* Timeout for Flash Erase (in ms)	*/ -#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Timeout for Flash Write (in ms)	*/ - -#define CONFIG_SYS_FLASH_WORD_SIZE	unsigned short	/* flash word size (width)	*/ -#define CONFIG_SYS_FLASH_ADDR0		0x5555	/* 1st address for flash config cycles	*/ -#define CONFIG_SYS_FLASH_ADDR1		0x2AAA	/* 2nd address for flash config cycles	*/ -/* - * The following defines are added for buggy IOP480 byte interface. - * All other boards should use the standard values (CPCI405 etc.) - */ -#define CONFIG_SYS_FLASH_READ0		0x0000	/* 0 is standard			*/ -#define CONFIG_SYS_FLASH_READ1		0x0001	/* 1 is standard			*/ -#define CONFIG_SYS_FLASH_READ2		0x0002	/* 2 is standard			*/ - -#define CONFIG_SYS_FLASH_EMPTY_INFO		/* print 'E' for empty sector on flinfo */ - -#if 0 /* Use FLASH for environment variables */ - -#define CONFIG_ENV_IS_IN_FLASH	1 -#define CONFIG_ENV_OFFSET		0x00010000	/* Offset of Environment Sector */ -#define CONFIG_ENV_SIZE		0x1000	/* Total Size of Environment Sector	*/ - -#define CONFIG_ENV_SECT_SIZE	0x10000 /* see README - env sector total size	*/ - -#else /* Use EEPROM for environment variables */ - -#define CONFIG_ENV_IS_IN_EEPROM	1	/* use EEPROM for environment vars */ -#define CONFIG_ENV_OFFSET		0x000	/* environment starts at the beginning of the EEPROM */ -#define CONFIG_ENV_SIZE		0x400	/* 1024 bytes may be used for env vars */ -				   /* total size of a CAT24WC08 is 1024 bytes */ -#endif - -/*----------------------------------------------------------------------- - * I2C EEPROM (CAT24WC08) for environment - */ -#define CONFIG_SYS_I2C -#define CONFIG_SYS_I2C_PPC4XX -#define CONFIG_SYS_I2C_PPC4XX_CH0 -#define CONFIG_SYS_I2C_PPC4XX_SPEED_0		400000 -#define CONFIG_SYS_I2C_PPC4XX_SLAVE_0		0x7F - -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* EEPROM CAT28WC08	*/ -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1	/* bytes of address	*/ -/* mask of address bits that overflow into the "EEPROM chip address"	*/ -#define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW	0x07 - -/* - * Init Memory Controller: - * - * BR0/1 and OR0/1 (FLASH) - */ - -#define FLASH_BASE0_PRELIM	0xFFC00000	/* FLASH bank #0	*/ -#define FLASH_BASE1_PRELIM	0		/* FLASH bank #1	*/ - -/*----------------------------------------------------------------------- - * External Bus Controller (EBC) Setup - */ - -/* Memory Bank 0 (Flash Bank 0) initialization					*/ -#define CONFIG_SYS_EBC_PB0AP		0x92015480 -#define CONFIG_SYS_EBC_PB0CR		0xFFC5A000  /* BAS=0xFFC,BS=4MB,BU=R/W,BW=16bit */ - -/* Memory Bank 1 (CAN/USB) initialization					*/ -#define CONFIG_SYS_EBC_PB1AP		0x010053C0  /* enable Ready, BEM=1		*/ -#define CONFIG_SYS_EBC_PB1CR		0xF0018000  /* BAS=0xF00,BS=1MB,BU=R/W,BW=8bit	*/ - -/* Memory Bank 2 (Misc-IO/LEDs) initialization					*/ -#define CONFIG_SYS_EBC_PB2AP		0x000004c0  /* no Ready, BEM=1			*/ -#define CONFIG_SYS_EBC_PB2CR		0xF0118000  /* BAS=0xF01,BS=1MB,BU=R/W,BW=8bit	*/ - -/* Memory Bank 3 (CAN Features) initialization					*/ -#define CONFIG_SYS_EBC_PB3AP		0x80000040  /* no Ready, BEM=1			*/ -#define CONFIG_SYS_EBC_PB3CR		0xF021C000  /* BAS=0xF02,BS=1MB,BU=R/W,BW=32bit */ - -/*----------------------------------------------------------------------- - * Definitions for initial stack pointer and data area (in RAM) - */ -#define CONFIG_SYS_INIT_RAM_ADDR	0x00ef0000 /* inside of SDRAM			*/ -#define CONFIG_SYS_INIT_RAM_SIZE	0x0f00	/* Size of used area in RAM	       */ -#define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) -#define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET - -#endif	/* __CONFIG_H */ diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h index 6c6ce58fb..ddcbfa6a2 100644 --- a/include/configs/MPC8313ERDB.h +++ b/include/configs/MPC8313ERDB.h @@ -24,7 +24,6 @@  #define CONFIG_SPL_INIT_MINIMAL  #define CONFIG_SPL_SERIAL_SUPPORT  #define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_NAND_MINIMAL  #define CONFIG_SPL_FLUSH_IMAGE  #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"  #define CONFIG_SPL_MPC83XX_WAIT_FOR_NAND diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h index d1ce9fdc8..edece1f9b 100644 --- a/include/configs/P1022DS.h +++ b/include/configs/P1022DS.h @@ -16,42 +16,105 @@  #endif  #ifdef CONFIG_SDCARD -#define CONFIG_RAMBOOT_SDCARD -#define CONFIG_SYS_RAMBOOT -#define CONFIG_SYS_EXTRA_ENV_RELOC -#define CONFIG_SYS_TEXT_BASE		0x11000000 -#define CONFIG_RESET_VECTOR_ADDRESS	0x1107fffc +#define CONFIG_SPL +#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT +#define CONFIG_SPL_ENV_SUPPORT +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_MMC_SUPPORT +#define CONFIG_SPL_MMC_MINIMAL +#define CONFIG_SPL_FLUSH_IMAGE +#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin" +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_I2C_SUPPORT +#define CONFIG_FSL_LAW			/* Use common FSL init code */ +#define CONFIG_SYS_TEXT_BASE		0x11001000 +#define CONFIG_SPL_TEXT_BASE		0xf8f81000 +#define CONFIG_SPL_PAD_TO		0x18000 +#define CONFIG_SPL_MAX_SIZE		(96 * 1024) +#define CONFIG_SYS_MMC_U_BOOT_SIZE	(512 << 10) +#define CONFIG_SYS_MMC_U_BOOT_DST	(0x11000000) +#define CONFIG_SYS_MMC_U_BOOT_START	(0x11000000) +#define CONFIG_SYS_MMC_U_BOOT_OFFS	(96 << 10) +#define CONFIG_SYS_MPC85XX_NO_RESETVEC +#define CONFIG_SYS_LDSCRIPT		"arch/powerpc/cpu/mpc85xx/u-boot.lds" +#define CONFIG_SPL_MMC_BOOT +#ifdef CONFIG_SPL_BUILD +#define CONFIG_SPL_COMMON_INIT_DDR +#endif  #endif  #ifdef CONFIG_SPIFLASH -#define CONFIG_RAMBOOT_SPIFLASH -#define CONFIG_SYS_RAMBOOT -#define CONFIG_SYS_EXTRA_ENV_RELOC -#define CONFIG_SYS_TEXT_BASE		0x11000000 -#define CONFIG_RESET_VECTOR_ADDRESS	0x1107fffc +#define CONFIG_SPL +#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT +#define CONFIG_SPL_ENV_SUPPORT +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_SPI_SUPPORT +#define CONFIG_SPL_SPI_FLASH_SUPPORT +#define CONFIG_SPL_SPI_FLASH_MINIMAL +#define CONFIG_SPL_FLUSH_IMAGE +#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin" +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_I2C_SUPPORT +#define CONFIG_FSL_LAW		/* Use common FSL init code */ +#define CONFIG_SYS_TEXT_BASE		0x11001000 +#define CONFIG_SPL_TEXT_BASE		0xf8f81000 +#define CONFIG_SPL_PAD_TO		0x18000 +#define CONFIG_SPL_MAX_SIZE		(96 * 1024) +#define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(512 << 10) +#define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x11000000) +#define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x11000000) +#define CONFIG_SYS_SPI_FLASH_U_BOOT_OFFS	(96 << 10) +#define CONFIG_SYS_MPC85XX_NO_RESETVEC +#define CONFIG_SYS_LDSCRIPT	"arch/powerpc/cpu/mpc85xx/u-boot.lds" +#define CONFIG_SPL_SPI_BOOT +#ifdef CONFIG_SPL_BUILD +#define CONFIG_SPL_COMMON_INIT_DDR +#endif  #endif  #define CONFIG_NAND_FSL_ELBC  #ifdef CONFIG_NAND  #define CONFIG_SPL +#define CONFIG_TPL +#ifdef CONFIG_TPL_BUILD +#define CONFIG_SPL_NAND_BOOT +#define CONFIG_SPL_FLUSH_IMAGE +#define CONFIG_SPL_ENV_SUPPORT +#define CONFIG_SPL_NAND_INIT +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_I2C_SUPPORT +#define CONFIG_SPL_NAND_SUPPORT +#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT +#define CONFIG_SPL_COMMON_INIT_DDR +#define CONFIG_SPL_MAX_SIZE		(128 << 10) +#define CONFIG_SPL_TEXT_BASE		0xf8f81000 +#define CONFIG_SYS_MPC85XX_NO_RESETVEC +#define CONFIG_SYS_NAND_U_BOOT_SIZE	(576 << 10) +#define CONFIG_SYS_NAND_U_BOOT_DST	(0x11000000) +#define CONFIG_SYS_NAND_U_BOOT_START	(0x11000000) +#define CONFIG_SYS_NAND_U_BOOT_OFFS	((128 + 128) << 10) +#elif defined(CONFIG_SPL_BUILD)  #define CONFIG_SPL_INIT_MINIMAL  #define CONFIG_SPL_SERIAL_SUPPORT  #define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_NAND_MINIMAL  #define CONFIG_SPL_FLUSH_IMAGE -#define CONFIG_SPL_TARGET              "u-boot-with-spl.bin" - -#define CONFIG_SYS_TEXT_BASE           0x00201000 -#define CONFIG_SPL_TEXT_BASE           0xfffff000 -#define CONFIG_SPL_MAX_SIZE            4096 -#define CONFIG_SPL_RELOC_TEXT_BASE     0x00100000 -#define CONFIG_SPL_RELOC_STACK         0x00100000 -#define CONFIG_SYS_NAND_U_BOOT_SIZE    ((512 << 10) + CONFIG_SPL_MAX_SIZE) -#define CONFIG_SYS_NAND_U_BOOT_DST     (0x00200000 - CONFIG_SPL_MAX_SIZE) -#define CONFIG_SYS_NAND_U_BOOT_START   0x00200000 -#define CONFIG_SYS_NAND_U_BOOT_OFFS    0 -#define CONFIG_SYS_LDSCRIPT            "arch/powerpc/cpu/mpc85xx/u-boot-nand.lds" +#define CONFIG_SPL_TEXT_BASE		0xff800000 +#define CONFIG_SPL_MAX_SIZE		4096 +#define CONFIG_SYS_NAND_U_BOOT_SIZE	(128 << 10) +#define CONFIG_SYS_NAND_U_BOOT_DST	0xf8f80000 +#define CONFIG_SYS_NAND_U_BOOT_START	0xf8f80000 +#define CONFIG_SYS_NAND_U_BOOT_OFFS	(128 << 10) +#endif +#define CONFIG_SPL_PAD_TO		0x20000 +#define CONFIG_TPL_PAD_TO		0x20000 +#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin" +#define CONFIG_SYS_TEXT_BASE		0x11001000 +#define CONFIG_SYS_LDSCRIPT	"arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"  #endif  /* High Level Configuration Options */ @@ -225,11 +288,11 @@  #define CONFIG_SYS_NAND_BASE_PHYS	CONFIG_SYS_NAND_BASE  #endif -#define CONFIG_SYS_NAND_BASE_LIST     { CONFIG_SYS_NAND_BASE, } +#define CONFIG_SYS_NAND_BASE_LIST	{CONFIG_SYS_NAND_BASE}  #define CONFIG_SYS_MAX_NAND_DEVICE	1  #define CONFIG_MTD_NAND_VERIFY_WRITE  #define CONFIG_CMD_NAND			1 -#define CONFIG_SYS_NAND_BLOCK_SIZE    (256 * 1024) +#define CONFIG_SYS_NAND_BLOCK_SIZE	(256 * 1024)  #define CONFIG_ELBC_NAND_SPL_STATIC_PGSIZE  /* NAND flash config */ @@ -292,6 +355,43 @@  #define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024)  /* + * Config the L2 Cache as L2 SRAM +*/ +#if defined(CONFIG_SPL_BUILD) +#if defined(CONFIG_SDCARD) || defined(CONFIG_SPIFLASH) +#define CONFIG_SYS_INIT_L2_ADDR	0xf8f80000 +#define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR +#define CONFIG_SYS_L2_SIZE		(256 << 10) +#define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE) +#define CONFIG_SPL_RELOC_TEXT_BASE	0xf8f81000 +#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 128 * 1024) +#define CONFIG_SPL_RELOC_STACK_SIZE	(32 << 10) +#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 160 * 1024) +#define CONFIG_SPL_RELOC_MALLOC_SIZE	(96 << 10) +#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 112 * 1024) +#elif defined(CONFIG_NAND) +#ifdef CONFIG_TPL_BUILD +#define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000 +#define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR +#define CONFIG_SYS_L2_SIZE		(256 << 10) +#define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE) +#define CONFIG_SPL_RELOC_TEXT_BASE	0xf8f81000 +#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 192 * 1024) +#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 208 * 1024) +#define CONFIG_SPL_RELOC_MALLOC_SIZE	(48 << 10) +#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 176 * 1024) +#else +#define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000 +#define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR +#define CONFIG_SYS_L2_SIZE		(256 << 10) +#define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE) +#define CONFIG_SPL_RELOC_TEXT_BASE	(CONFIG_SYS_INIT_L2_END - 0x2000) +#define CONFIG_SPL_RELOC_STACK		((CONFIG_SYS_INIT_L2_END - 1) & ~0xF) +#endif +#endif +#endif + +/*   * Serial Port   */  #define CONFIG_CONS_INDEX		1 @@ -299,7 +399,7 @@  #define CONFIG_SYS_NS16550_SERIAL  #define CONFIG_SYS_NS16550_REG_SIZE	1  #define CONFIG_SYS_NS16550_CLK		get_bus_freq(0) -#ifdef CONFIG_SPL_BUILD +#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_INIT_MINIMAL)  #define CONFIG_NS16550_MIN_FUNCTIONS  #endif @@ -521,7 +621,7 @@  /*   * Environment   */ -#ifdef CONFIG_RAMBOOT_SPIFLASH +#ifdef CONFIG_SPIFLASH  #define CONFIG_ENV_IS_IN_SPI_FLASH  #define CONFIG_ENV_SPI_BUS	0  #define CONFIG_ENV_SPI_CS	0 @@ -530,14 +630,20 @@  #define CONFIG_ENV_SIZE		0x2000	/* 8KB */  #define CONFIG_ENV_OFFSET	0x100000	/* 1MB */  #define CONFIG_ENV_SECT_SIZE	0x10000 -#elif defined(CONFIG_RAMBOOT_SDCARD) +#elif defined(CONFIG_SDCARD)  #define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION  #define CONFIG_ENV_SIZE		0x2000  #define CONFIG_SYS_MMC_ENV_DEV	0  #elif defined(CONFIG_NAND) -#define CONFIG_ENV_IS_IN_NAND +#ifdef CONFIG_TPL_BUILD +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_ENV_ADDR		(CONFIG_SYS_INIT_L2_ADDR + (160 << 10)) +#else  #define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE -#define CONFIG_ENV_OFFSET	((512 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE) +#endif +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_OFFSET	(1024 * 1024)  #define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE)  #elif defined(CONFIG_SYS_RAMBOOT)  #define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */ diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h index 9814ca201..905bacfa9 100644 --- a/include/configs/P2041RDB.h +++ b/include/configs/P2041RDB.h @@ -37,7 +37,6 @@  #define CONFIG_E500MC			/* BOOKE e500mc family */  #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */  #define CONFIG_MPC85xx			/* MPC85xx/PQ3 platform */ -#define CONFIG_FSL_CORENET		/* Freescale CoreNet platform */  #define CONFIG_MP			/* support multiple processors */  #ifndef CONFIG_SYS_TEXT_BASE diff --git a/include/configs/T4240EMU.h b/include/configs/T4240EMU.h new file mode 100644 index 000000000..9fa6b77ab --- /dev/null +++ b/include/configs/T4240EMU.h @@ -0,0 +1,170 @@ +/* + * Copyright 2013 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +/* + * T4240 EMU board configuration file + */ +#ifndef __CONFIG_H +#define __CONFIG_H + +#define CONFIG_T4240EMU +#define CONFIG_PHYS_64BIT + +#define CONFIG_SYS_NO_FLASH		1 +#define CONFIG_SYS_FSL_DDR_EMU		1 +#define CONFIG_SYS_FSL_NO_QIXIS		1 +#define CONFIG_SYS_FSL_NO_SERDES	1 + +#include "t4qds.h" + +#define CONFIG_CMD_CACHE +#define CONFIG_CMD_CACHE_FLUSH + +#define CONFIG_ENV_IS_NOWHERE +#define CONFIG_ENV_SIZE         0x2000 + +#define CONFIG_SYS_CLK_FREQ	100000000 +#define CONFIG_DDR_CLK_FREQ	133333333 +#define CONFIG_FSL_TBCLK_EXTRA_DIV 100 + + +/* + * DDR Setup + */ +#define CONFIG_SYS_SPD_BUS_NUM	1 +#define SPD_EEPROM_ADDRESS1	0x51 +#define SPD_EEPROM_ADDRESS2	0x52 +#define SPD_EEPROM_ADDRESS3	0x53 +#define SPD_EEPROM_ADDRESS4	0x54 +#define SPD_EEPROM_ADDRESS5	0x55 +#define SPD_EEPROM_ADDRESS6	0x56 +#define SPD_EEPROM_ADDRESS	SPD_EEPROM_ADDRESS1	/* for p3041/p5010 */ +#define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */ + +/* + * IFC Definitions + */ +#define CONFIG_SYS_NOR0_CSPR_EXT	(0xf) +#define CONFIG_SYS_NOR_AMASK	IFC_AMASK(128*1024*1024) +/* NOR Flash Timing Params */ +#define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \ +				+ 0x8000000) | \ +				CSPR_PORT_SIZE_32 | \ +				CSPR_MSEL_NOR | \ +				CSPR_V) +#define CONFIG_SYS_NOR_CSOR	CSOR_NOR_ADM_SHIFT(0) +#define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x1) | \ +				FTIM0_NOR_TEADC(0x1) | \ +				FTIM0_NOR_TEAHC(0x1)) +#define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x1) | \ +				FTIM1_NOR_TRAD_NOR(0x1)) +#define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x0) | \ +				FTIM2_NOR_TCH(0x0) | \ +				FTIM2_NOR_TWP(0x1)) +#define CONFIG_SYS_NOR_FTIM3	0x04000000 +#define CONFIG_SYS_IFC_CCR	0x01000000 + +#define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT +#define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR +#define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK +#define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR +#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0 +#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1 +#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2 +#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3 + + +/* I2C */ +#define CONFIG_SYS_FSL_I2C_SPEED	4000000	/* faster speed for emulator */ +#define CONFIG_SYS_FSL_I2C2_SPEED	4000000 + +/* Qman/Bman */ +#define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */ +#define CONFIG_SYS_BMAN_NUM_PORTALS	50 +#define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000 +#define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull +#define CONFIG_SYS_BMAN_MEM_SIZE	0x02000000 +#define CONFIG_SYS_QMAN_NUM_PORTALS	50 +#define CONFIG_SYS_QMAN_MEM_BASE	0xf6000000 +#define CONFIG_SYS_QMAN_MEM_PHYS	0xff6000000ull +#define CONFIG_SYS_QMAN_MEM_SIZE	0x02000000 + +#define CONFIG_SYS_DPAA_FMAN +#define CONFIG_SYS_DPAA_PME +#define CONFIG_SYS_PMAN +#define CONFIG_SYS_DPAA_DCE +#define CONFIG_SYS_DPAA_RMAN +#define CONFIG_SYS_INTERLAKEN + +#define CONFIG_SYS_QE_FMAN_FW_IN_NOR +#define CONFIG_SYS_QE_FMAN_FW_ADDR		0xEFF40000 +#define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000 +#define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) + + + +#define CONFIG_BOOTDELAY	0 + +/* + * T4240 has 3 DDR controllers. Default to 3-way interleaving. It can be + * 3way_1KB, 3way_4KB, 3way_8KB. T4160 has 2 DDR controllers. Default to 2-way + * interleaving. It can be cacheline, page, bank, superbank. + * See doc/README.fsl-ddr for details. + */ +#ifdef CONFIG_PPC_T4240 +#define CTRL_INTLV_PREFERED 3way_4KB +#else +#define CTRL_INTLV_PREFERED cacheline +#endif + +#define	CONFIG_EXTRA_ENV_SETTINGS				\ +	"hwconfig=fsl_ddr:"					\ +	"ctlr_intlv=" __stringify(CTRL_INTLV_PREFERED) ","	\ +	"bank_intlv=auto;"					\ +	"netdev=eth0\0"						\ +	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\ +	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\ +	"consoledev=ttyS0\0"					\ +	"ramdiskaddr=2000000\0"					\ +	"ramdiskfile=t4240emu/ramdisk.uboot\0"			\ +	"fdtaddr=c00000\0"					\ +	"fdtfile=t4240emu/t4240emu.dtb\0"				\ +	"bdev=sda3\0"						\ +	"c=ffe\0" + +/* + * For emulation this causes u-boot to jump to the start of the proof point + * app code automatically + */ +#define CONFIG_PROOF_POINTS			\ +	"setenv bootargs root=/dev/$bdev rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"cpu 1 release 0x29000000 - - -;"		\ +	"cpu 2 release 0x29000000 - - -;"		\ +	"cpu 3 release 0x29000000 - - -;"		\ +	"cpu 4 release 0x29000000 - - -;"		\ +	"cpu 5 release 0x29000000 - - -;"		\ +	"cpu 6 release 0x29000000 - - -;"		\ +	"cpu 7 release 0x29000000 - - -;"		\ +	"go 0x29000000" + +#define CONFIG_HVBOOT				\ +	"setenv bootargs config-addr=0x60000000; "	\ +	"bootm 0x01000000 - 0x00f00000" + +#define CONFIG_LINUX					\ +	"errata;"					\ +	"setenv othbootargs ignore_loglevel;"		\ +	"setenv bootargs root=/dev/ram rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"setenv ramdiskaddr 0x02000000;"		\ +	"setenv fdtaddr 0x00c00000;"			\ +	"setenv loadaddr 0x1000000;"			\ +	"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_BOOTCOMMAND		CONFIG_LINUX + +#endif	/* __CONFIG_H */ diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h index 9ac7f6992..92a30ab09 100644 --- a/include/configs/T4240QDS.h +++ b/include/configs/T4240QDS.h @@ -7,6 +7,9 @@  /*   * T4240 QDS board configuration file   */ +#ifndef __CONFIG_H +#define __CONFIG_H +  #define CONFIG_T4240QDS  #define CONFIG_PHYS_64BIT @@ -15,4 +18,543 @@  #define CONFIG_ICS307_REFCLK_HZ		25000000  /* ICS307 ref clk freq */ +#ifdef CONFIG_RAMBOOT_PBL +#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE +#define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc +#define CONFIG_PBLPBI_CONFIG $(SRCTREE)/board/freescale/t4qds/t4_pbi.cfg +#define CONFIG_PBLRCW_CONFIG $(SRCTREE)/board/freescale/t4qds/t4_rcw.cfg +#endif + +#ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE +/* Set 1M boot space */ +#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000) +#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \ +		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR) +#define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc +#define CONFIG_SYS_NO_FLASH +#endif + +#define CONFIG_SRIO_PCIE_BOOT_MASTER +#define CONFIG_DDR_ECC +  #include "t4qds.h" + +#ifdef CONFIG_SYS_NO_FLASH +#if !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) && !defined(CONFIG_RAMBOOT_PBL) +#define CONFIG_ENV_IS_NOWHERE +#endif +#else +#define CONFIG_FLASH_CFI_DRIVER +#define CONFIG_SYS_FLASH_CFI +#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE +#endif + +#if defined(CONFIG_SPIFLASH) +#define CONFIG_SYS_EXTRA_ENV_RELOC +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_SPI_BUS              0 +#define CONFIG_ENV_SPI_CS               0 +#define CONFIG_ENV_SPI_MAX_HZ           10000000 +#define CONFIG_ENV_SPI_MODE             0 +#define CONFIG_ENV_SIZE                 0x2000          /* 8KB */ +#define CONFIG_ENV_OFFSET               0x100000        /* 1MB */ +#define CONFIG_ENV_SECT_SIZE            0x10000 +#elif defined(CONFIG_SDCARD) +#define CONFIG_SYS_EXTRA_ENV_RELOC +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV          0 +#define CONFIG_ENV_SIZE			0x2000 +#define CONFIG_ENV_OFFSET		(512 * 1097) +#elif defined(CONFIG_NAND) +#define CONFIG_SYS_EXTRA_ENV_RELOC +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE +#define CONFIG_ENV_OFFSET		(5 * CONFIG_SYS_NAND_BLOCK_SIZE) +#elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) +#define CONFIG_ENV_IS_IN_REMOTE +#define CONFIG_ENV_ADDR		0xffe20000 +#define CONFIG_ENV_SIZE		0x2000 +#elif defined(CONFIG_ENV_IS_NOWHERE) +#define CONFIG_ENV_SIZE		0x2000 +#else +#define CONFIG_ENV_IS_IN_FLASH +#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */ +#endif + +#define CONFIG_SYS_CLK_FREQ	get_board_sys_clk() +#define CONFIG_DDR_CLK_FREQ	get_board_ddr_clk() + +#ifndef __ASSEMBLY__ +unsigned long get_board_sys_clk(void); +unsigned long get_board_ddr_clk(void); +#endif + +/* EEPROM */ +#define CONFIG_ID_EEPROM +#define CONFIG_SYS_I2C_EEPROM_NXID +#define CONFIG_SYS_EEPROM_BUS_NUM	0 +#define CONFIG_SYS_I2C_EEPROM_ADDR	0x57 +#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1 + +/* + * DDR Setup + */ +#define CONFIG_SYS_SPD_BUS_NUM	0 +#define SPD_EEPROM_ADDRESS1	0x51 +#define SPD_EEPROM_ADDRESS2	0x52 +#define SPD_EEPROM_ADDRESS3	0x53 +#define SPD_EEPROM_ADDRESS4	0x54 +#define SPD_EEPROM_ADDRESS5	0x55 +#define SPD_EEPROM_ADDRESS6	0x56 +#define SPD_EEPROM_ADDRESS	SPD_EEPROM_ADDRESS1	/* for p3041/p5010 */ +#define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */ + +/* + * IFC Definitions + */ +#define CONFIG_SYS_NOR0_CSPR_EXT	(0xf) +#define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \ +				+ 0x8000000) | \ +				CSPR_PORT_SIZE_16 | \ +				CSPR_MSEL_NOR | \ +				CSPR_V) +#define CONFIG_SYS_NOR1_CSPR_EXT	(0xf) +#define CONFIG_SYS_NOR1_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ +				CSPR_PORT_SIZE_16 | \ +				CSPR_MSEL_NOR | \ +				CSPR_V) +#define CONFIG_SYS_NOR_AMASK	IFC_AMASK(128*1024*1024) +/* NOR Flash Timing Params */ +#define CONFIG_SYS_NOR_CSOR	CSOR_NAND_TRHZ_80 + +#define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x4) | \ +				FTIM0_NOR_TEADC(0x5) | \ +				FTIM0_NOR_TEAHC(0x5)) +#define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x35) | \ +				FTIM1_NOR_TRAD_NOR(0x1A) |\ +				FTIM1_NOR_TSEQRAD_NOR(0x13)) +#define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x4) | \ +				FTIM2_NOR_TCH(0x4) | \ +				FTIM2_NOR_TWPH(0x0E) | \ +				FTIM2_NOR_TWP(0x1c)) +#define CONFIG_SYS_NOR_FTIM3	0x0 + +#define CONFIG_SYS_FLASH_QUIET_TEST +#define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */ + +#define CONFIG_SYS_MAX_FLASH_BANKS	2	/* number of banks */ +#define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device */ +#define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */ +#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */ + +#define CONFIG_SYS_FLASH_EMPTY_INFO +#define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS \ +					+ 0x8000000, CONFIG_SYS_FLASH_BASE_PHYS} + +#define CONFIG_FSL_QIXIS	/* use common QIXIS code */ +#define QIXIS_BASE			0xffdf0000 +#define QIXIS_LBMAP_SWITCH		6 +#define QIXIS_LBMAP_MASK		0x0f +#define QIXIS_LBMAP_SHIFT		0 +#define QIXIS_LBMAP_DFLTBANK		0x00 +#define QIXIS_LBMAP_ALTBANK		0x04 +#define QIXIS_RST_CTL_RESET		0x83 +#define QIXIS_RST_FORCE_MEM		0x1 +#define QIXIS_RCFG_CTL_RECONFIG_IDLE	0x20 +#define QIXIS_RCFG_CTL_RECONFIG_START	0x21 +#define QIXIS_RCFG_CTL_WATCHDOG_ENBLE	0x08 +#define QIXIS_BASE_PHYS		(0xf00000000ull | QIXIS_BASE) + +#define CONFIG_SYS_CSPR3_EXT	(0xf) +#define CONFIG_SYS_CSPR3	(CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) \ +				| CSPR_PORT_SIZE_8 \ +				| CSPR_MSEL_GPCM \ +				| CSPR_V) +#define CONFIG_SYS_AMASK3	IFC_AMASK(4*1024) +#define CONFIG_SYS_CSOR3	0x0 +/* QIXIS Timing parameters for IFC CS3 */ +#define CONFIG_SYS_CS3_FTIM0		(FTIM0_GPCM_TACSE(0x0e) | \ +					FTIM0_GPCM_TEADC(0x0e) | \ +					FTIM0_GPCM_TEAHC(0x0e)) +#define CONFIG_SYS_CS3_FTIM1		(FTIM1_GPCM_TACO(0xff) | \ +					FTIM1_GPCM_TRAD(0x3f)) +#define CONFIG_SYS_CS3_FTIM2		(FTIM2_GPCM_TCS(0x0e) | \ +					FTIM2_GPCM_TCH(0x0) | \ +					FTIM2_GPCM_TWP(0x1f)) +#define CONFIG_SYS_CS3_FTIM3		0x0 + +/* NAND Flash on IFC */ +#define CONFIG_NAND_FSL_IFC +#define CONFIG_SYS_NAND_BASE		0xff800000 +#define CONFIG_SYS_NAND_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_NAND_BASE) + +#define CONFIG_SYS_NAND_CSPR_EXT	(0xf) +#define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ +				| CSPR_PORT_SIZE_8 /* Port Size = 8 bit */ \ +				| CSPR_MSEL_NAND	/* MSEL = NAND */ \ +				| CSPR_V) +#define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024) + +#define CONFIG_SYS_NAND_CSOR    (CSOR_NAND_ECC_ENC_EN   /* ECC on encode */ \ +				| CSOR_NAND_ECC_DEC_EN  /* ECC on decode */ \ +				| CSOR_NAND_ECC_MODE_4  /* 4-bit ECC */ \ +				| CSOR_NAND_RAL_3	/* RAL = 2Byes */ \ +				| CSOR_NAND_PGS_2K	/* Page Size = 2K */ \ +				| CSOR_NAND_SPRZ_64/* Spare size = 64 */ \ +				| CSOR_NAND_PB(64))	/*Pages Per Block = 64*/ + +#define CONFIG_SYS_NAND_ONFI_DETECTION + +/* ONFI NAND Flash mode0 Timing Params */ +#define CONFIG_SYS_NAND_FTIM0		(FTIM0_NAND_TCCST(0x07) | \ +					FTIM0_NAND_TWP(0x18)   | \ +					FTIM0_NAND_TWCHT(0x07) | \ +					FTIM0_NAND_TWH(0x0a)) +#define CONFIG_SYS_NAND_FTIM1		(FTIM1_NAND_TADLE(0x32) | \ +					FTIM1_NAND_TWBE(0x39)  | \ +					FTIM1_NAND_TRR(0x0e)   | \ +					FTIM1_NAND_TRP(0x18)) +#define CONFIG_SYS_NAND_FTIM2		(FTIM2_NAND_TRAD(0x0f) | \ +					FTIM2_NAND_TREH(0x0a) | \ +					FTIM2_NAND_TWHRE(0x1e)) +#define CONFIG_SYS_NAND_FTIM3		0x0 + +#define CONFIG_SYS_NAND_DDR_LAW		11 + +#define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE } +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_MTD_NAND_VERIFY_WRITE +#define CONFIG_CMD_NAND + +#define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024) + +#if defined(CONFIG_NAND) +#define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NAND_CSPR_EXT +#define CONFIG_SYS_CSPR0		CONFIG_SYS_NAND_CSPR +#define CONFIG_SYS_AMASK0		CONFIG_SYS_NAND_AMASK +#define CONFIG_SYS_CSOR0		CONFIG_SYS_NAND_CSOR +#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NAND_FTIM0 +#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NAND_FTIM1 +#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2 +#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3 +#define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR0_CSPR_EXT +#define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR0_CSPR +#define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK +#define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR +#define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0 +#define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1 +#define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2 +#define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3 +#else +#define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT +#define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR +#define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK +#define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR +#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0 +#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1 +#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2 +#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3 +#define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NAND_CSPR_EXT +#define CONFIG_SYS_CSPR2		CONFIG_SYS_NAND_CSPR +#define CONFIG_SYS_AMASK2		CONFIG_SYS_NAND_AMASK +#define CONFIG_SYS_CSOR2		CONFIG_SYS_NAND_CSOR +#define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NAND_FTIM0 +#define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NAND_FTIM1 +#define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NAND_FTIM2 +#define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3 +#endif +#define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR1_CSPR_EXT +#define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR1_CSPR +#define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK +#define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR +#define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0 +#define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1 +#define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2 +#define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3 + +#if defined(CONFIG_RAMBOOT_PBL) +#define CONFIG_SYS_RAMBOOT +#endif + + +/* I2C */ +#define CONFIG_SYS_FSL_I2C_SPEED	100000	/* I2C speed */ +#define CONFIG_SYS_FSL_I2C2_SPEED	100000	/* I2C2 speed */ +#define I2C_MUX_PCA_ADDR_PRI		0x77 /* I2C bus multiplexer,primary */ +#define I2C_MUX_PCA_ADDR_SEC		0x76 /* I2C bus multiplexer,secondary */ + +#define I2C_MUX_CH_DEFAULT	0x8 +#define I2C_MUX_CH_VOL_MONITOR	0xa +#define I2C_MUX_CH_VSC3316_FS	0xc +#define I2C_MUX_CH_VSC3316_BS	0xd + +/* Voltage monitor on channel 2*/ +#define I2C_VOL_MONITOR_ADDR		0x40 +#define I2C_VOL_MONITOR_BUS_V_OFFSET	0x2 +#define I2C_VOL_MONITOR_BUS_V_OVF	0x1 +#define I2C_VOL_MONITOR_BUS_V_SHIFT	3 + +/* VSC Crossbar switches */ +#define CONFIG_VSC_CROSSBAR +#define VSC3316_FSM_TX_ADDR	0x70 +#define VSC3316_FSM_RX_ADDR	0x71 + +/* + * RapidIO + */ + +/* + * for slave u-boot IMAGE instored in master memory space, + * PHYS must be aligned based on the SIZE + */ +#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef080000ull +#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff80000ull +#define CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x80000	/* 512K */ +#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff80000ull +/* + * for slave UCODE and ENV instored in master memory space, + * PHYS must be aligned based on the SIZE + */ +#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef040000ull +#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull +#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000	/* 256K */ + +/* slave core release by master*/ +#define CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4 +#define CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */ + +/* + * SRIO_PCIE_BOOT - SLAVE + */ +#ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE +#define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000 +#define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \ +		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR) +#endif +/* + * eSPI - Enhanced SPI + */ +#define CONFIG_FSL_ESPI +#define CONFIG_SPI_FLASH +#define CONFIG_SPI_FLASH_SST +#define CONFIG_CMD_SF +#define CONFIG_SF_DEFAULT_SPEED         10000000 +#define CONFIG_SF_DEFAULT_MODE          0 + + +/* Qman/Bman */ +#ifndef CONFIG_NOBQFMAN +#define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */ +#define CONFIG_SYS_BMAN_NUM_PORTALS	50 +#define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000 +#define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull +#define CONFIG_SYS_BMAN_MEM_SIZE	0x02000000 +#define CONFIG_SYS_QMAN_NUM_PORTALS	50 +#define CONFIG_SYS_QMAN_MEM_BASE	0xf6000000 +#define CONFIG_SYS_QMAN_MEM_PHYS	0xff6000000ull +#define CONFIG_SYS_QMAN_MEM_SIZE	0x02000000 + +#define CONFIG_SYS_DPAA_FMAN +#define CONFIG_SYS_DPAA_PME +#define CONFIG_SYS_PMAN +#define CONFIG_SYS_DPAA_DCE +#define CONFIG_SYS_DPAA_RMAN +#define CONFIG_SYS_INTERLAKEN + +/* Default address of microcode for the Linux Fman driver */ +#if defined(CONFIG_SPIFLASH) +/* + * env is stored at 0x100000, sector size is 0x10000, ucode is stored after + * env, so we got 0x110000. + */ +#define CONFIG_SYS_QE_FW_IN_SPIFLASH +#define CONFIG_SYS_QE_FMAN_FW_ADDR	0x110000 +#elif defined(CONFIG_SDCARD) +/* + * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is + * about 545KB (1089 blocks), Env is stored after the image, and the env size is + * 0x2000 (16 blocks), 8 + 1089 + 16 = 1113, enlarge it to 1130. + */ +#define CONFIG_SYS_QE_FMAN_FW_IN_MMC +#define CONFIG_SYS_QE_FMAN_FW_ADDR	(512 * 1130) +#elif defined(CONFIG_NAND) +#define CONFIG_SYS_QE_FMAN_FW_IN_NAND +#define CONFIG_SYS_QE_FMAN_FW_ADDR	(6 * CONFIG_SYS_NAND_BLOCK_SIZE) +#elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) +/* + * Slave has no ucode locally, it can fetch this from remote. When implementing + * in two corenet boards, slave's ucode could be stored in master's memory + * space, the address can be mapped from slave TLB->slave LAW-> + * slave SRIO or PCIE outbound window->master inbound window-> + * master LAW->the ucode address in master's memory space. + */ +#define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE +#define CONFIG_SYS_QE_FMAN_FW_ADDR	0xFFE00000 +#else +#define CONFIG_SYS_QE_FMAN_FW_IN_NOR +#define CONFIG_SYS_QE_FMAN_FW_ADDR		0xEFF40000 +#endif +#define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000 +#define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) +#endif /* CONFIG_NOBQFMAN */ + +#ifdef CONFIG_SYS_DPAA_FMAN +#define CONFIG_FMAN_ENET +#define CONFIG_PHYLIB_10G +#define CONFIG_PHY_VITESSE +#define CONFIG_PHY_TERANETICS +#define SGMII_CARD_PORT1_PHY_ADDR 0x1C +#define SGMII_CARD_PORT2_PHY_ADDR 0x1D +#define SGMII_CARD_PORT3_PHY_ADDR 0x1E +#define SGMII_CARD_PORT4_PHY_ADDR 0x1F +#define FM1_10GEC1_PHY_ADDR	0x0 +#define FM1_10GEC2_PHY_ADDR	0x1 +#define FM2_10GEC1_PHY_ADDR	0x2 +#define FM2_10GEC2_PHY_ADDR	0x3 +#endif + + +/* SATA */ +#ifdef CONFIG_FSL_SATA_V2 +#define CONFIG_LIBATA +#define CONFIG_FSL_SATA + +#define CONFIG_SYS_SATA_MAX_DEVICE	2 +#define CONFIG_SATA1 +#define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR +#define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA +#define CONFIG_SATA2 +#define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR +#define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA + +#define CONFIG_LBA48 +#define CONFIG_CMD_SATA +#define CONFIG_DOS_PARTITION +#define CONFIG_CMD_EXT2 +#endif + +#ifdef CONFIG_FMAN_ENET +#define CONFIG_MII		/* MII PHY management */ +#define CONFIG_ETHPRIME		"FM1@DTSEC1" +#define CONFIG_PHY_GIGE		/* Include GbE speed/duplex detection */ +#endif + +/* +* USB +*/ +#define CONFIG_CMD_USB +#define CONFIG_USB_STORAGE +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_FSL +#define CONFIG_EHCI_HCD_INIT_AFTER_RESET +#define CONFIG_CMD_EXT2 +#define CONFIG_HAS_FSL_DR_USB + +#define CONFIG_MMC + +#ifdef CONFIG_MMC +#define CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR +#define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif + +#define CONFIG_BOOTDELAY	10	/* -1 disables auto-boot */ + +#define __USB_PHY_TYPE	utmi + +/* + * T4240 has 3 DDR controllers. Default to 3-way interleaving. It can be + * 3way_1KB, 3way_4KB, 3way_8KB. T4160 has 2 DDR controllers. Default to 2-way + * interleaving. It can be cacheline, page, bank, superbank. + * See doc/README.fsl-ddr for details. + */ +#ifdef CONFIG_PPC_T4240 +#define CTRL_INTLV_PREFERED 3way_4KB +#else +#define CTRL_INTLV_PREFERED cacheline +#endif + +#define	CONFIG_EXTRA_ENV_SETTINGS				\ +	"hwconfig=fsl_ddr:"					\ +	"ctlr_intlv=" __stringify(CTRL_INTLV_PREFERED) ","	\ +	"bank_intlv=auto;"					\ +	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\ +	"netdev=eth0\0"						\ +	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\ +	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\ +	"tftpflash=tftpboot $loadaddr $uboot && "		\ +	"protect off $ubootaddr +$filesize && "			\ +	"erase $ubootaddr +$filesize && "			\ +	"cp.b $loadaddr $ubootaddr $filesize && "		\ +	"protect on $ubootaddr +$filesize && "			\ +	"cmp.b $loadaddr $ubootaddr $filesize\0"		\ +	"consoledev=ttyS0\0"					\ +	"ramdiskaddr=2000000\0"					\ +	"ramdiskfile=t4240qds/ramdisk.uboot\0"			\ +	"fdtaddr=c00000\0"					\ +	"fdtfile=t4240qds/t4240qds.dtb\0"				\ +	"bdev=sda3\0"						\ +	"c=ffe\0" + +#define CONFIG_HVBOOT				\ +	"setenv bootargs config-addr=0x60000000; "	\ +	"bootm 0x01000000 - 0x00f00000" + +#define CONFIG_ALU				\ +	"setenv bootargs root=/dev/$bdev rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"cpu 1 release 0x01000000 - - -;"		\ +	"cpu 2 release 0x01000000 - - -;"		\ +	"cpu 3 release 0x01000000 - - -;"		\ +	"cpu 4 release 0x01000000 - - -;"		\ +	"cpu 5 release 0x01000000 - - -;"		\ +	"cpu 6 release 0x01000000 - - -;"		\ +	"cpu 7 release 0x01000000 - - -;"		\ +	"go 0x01000000" + +#define CONFIG_LINUX				\ +	"setenv bootargs root=/dev/ram rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"setenv ramdiskaddr 0x02000000;"		\ +	"setenv fdtaddr 0x00c00000;"			\ +	"setenv loadaddr 0x1000000;"			\ +	"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_HDBOOT					\ +	"setenv bootargs root=/dev/$bdev rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"tftp $loadaddr $bootfile;"			\ +	"tftp $fdtaddr $fdtfile;"			\ +	"bootm $loadaddr - $fdtaddr" + +#define CONFIG_NFSBOOTCOMMAND			\ +	"setenv bootargs root=/dev/nfs rw "	\ +	"nfsroot=$serverip:$rootpath "		\ +	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"tftp $loadaddr $bootfile;"		\ +	"tftp $fdtaddr $fdtfile;"		\ +	"bootm $loadaddr - $fdtaddr" + +#define CONFIG_RAMBOOTCOMMAND				\ +	"setenv bootargs root=/dev/ram rw "		\ +	"console=$consoledev,$baudrate $othbootargs;"	\ +	"tftp $ramdiskaddr $ramdiskfile;"		\ +	"tftp $loadaddr $bootfile;"			\ +	"tftp $fdtaddr $fdtfile;"			\ +	"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_BOOTCOMMAND		CONFIG_LINUX + +#ifdef CONFIG_SECURE_BOOT +#include <asm/fsl_secure_boot.h> +#endif + +#endif	/* __CONFIG_H */ diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h index b18a3fa64..43d3d99bc 100644 --- a/include/configs/a3m071.h +++ b/include/configs/a3m071.h @@ -31,6 +31,8 @@  #define CONFIG_HOSTNAME		a3m071  #endif +#define CONFIG_BOOTCOUNT_LIMIT +  /*   * Serial console configuration   */ @@ -65,7 +67,8 @@  #define CONFIG_FLASH_CFI_MTD  #define MTDIDS_DEFAULT          "nor0=fc000000.flash"  #define MTDPARTS_DEFAULT	"mtdparts=fc000000.flash:512k(u-boot),"	\ -						"256k(env),"	\ +						"128k(env1),"	\ +						"128k(env2),"	\  						"128k(hwinfo),"	\  						"1M(nvramsim),"	\  						"128k(dtb),"	\ @@ -73,7 +76,9 @@  						"128k(sysinfo),"	\  						"7552k(root),"	\  						"4M(app),"	\ -						"13568k(data)" +						"5376k(data),"	\ +						"8M(install)" +  #define CONFIG_LZO			/* needed for UBI */  #define CONFIG_RBTREE			/* needed for UBI */  #define CONFIG_CMD_MTDPARTS @@ -367,7 +372,7 @@  	"nfsargs=setenv bootargs root=/dev/nfs rw "			\  		"nfsroot=${serverip}:${rootpath}\0"			\  	"ramargs=setenv bootargs root=/dev/ram rw\0"			\ -	"mtdargs=setenv bootargs root=/dev/mtdblock7 "			\ +	"mtdargs=setenv bootargs root=/dev/mtdblock8 "			\  		"rootfstype=squashfs,jffs2\0"				\  	"addhost=setenv bootargs ${bootargs} "				\  		"hostname=${hostname}\0"				\ @@ -376,22 +381,32 @@  		":${hostname}:${netdev}:off panic=1\0"			\  	"addtty=setenv bootargs ${bootargs} "				\  		"console=${consoledev},${baudrate}\0"			\ -	"flash_nfs=run nfsargs addip addtty addhost;"			\ +	"flash_nfs=run nfsargs addip addtty addmtd addhost;"		\  		"bootm ${kernel_addr} - ${fdt_addr}\0"			\ -	"flash_mtd=run mtdargs addip addtty addhost;"			\ +	"flash_mtd=run mtdargs addip addtty addmtd addhost;"		\  		"bootm ${kernel_addr} - ${fdt_addr}\0"			\ -	"flash_self=run ramargs addip addtty addhost;"			\ +	"flash_self=run ramargs addip addtty addmtd addhost;"		\  		"bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0"	\  	"net_nfs=tftp ${kernel_addr_r} ${bootfile};"			\  		"tftp ${fdt_addr_r} ${fdtfile};"			\ -		"run nfsargs addip addtty addhost;"			\ +		"run nfsargs addip addtty addmtd addhost;"		\  		"bootm ${kernel_addr_r} - ${fdt_addr_r}\0"		\  	"load=tftp ${loadaddr} " __stringify(CONFIG_HOSTNAME)		\  		"/u-boot-img.bin\0"					\ -	"update=protect off fc000000 fc07ffff; "			\ +	"update=protect off fc000000 fc07ffff;"				\  		"era fc000000 fc07ffff;"				\  		"cp.b ${loadaddr} fc000000 ${filesize}\0"		\  	"upd=run load;run update\0"					\ +	"upd_fdt=tftp 1800000 a3m071/a3m071.dtb;"			\ +		"run mtdargs addip addtty addmtd addhost;"		\ +		"fdt addr 1800000;fdt boardsetup;fdt chosen;"		\ +		"erase fc1e0000 fc1fffff;cp.b 1800000 fc1e0000 20000"	\ +	"upd_kernel=tftp 1000000 a3m071/uImage-uncompressed;"		\ +		"erase fc200000 fc6fffff;"				\ +		"cp.b 1000000 fc200000 ${filesize}"			\ +	"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0"		\ +	"mtdids=" MTDIDS_DEFAULT "\0"					\ +	"mtdparts=" MTDPARTS_DEFAULT "\0"				\  	""  #define CONFIG_BOOTCOMMAND	"run flash_mtd" diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index c5a6d4b31..e0a87f8bc 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -16,66 +16,62 @@  #ifndef __CONFIG_AM335X_EVM_H  #define __CONFIG_AM335X_EVM_H -#define CONFIG_AM33XX -#define CONFIG_OMAP +#include <configs/ti_am335x_common.h> -#include <asm/arch/omap.h> - -#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_BOARD_LATE_INIT -#define CONFIG_SYS_NO_FLASH  #define MACH_TYPE_TIAM335EVM		3589	/* Until the next sync */  #define CONFIG_MACH_TYPE		MACH_TYPE_TIAM335EVM -#define CONFIG_OF_LIBFDT -#define CONFIG_CMD_BOOTZ -#define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */ -#define CONFIG_SETUP_MEMORY_TAGS -#define CONFIG_INITRD_TAG +/* Clock Defines */ +#define V_OSCK				24000000  /* Clock output from T2 */ +#define V_SCLK				(V_OSCK) -#define CONFIG_SYS_CACHELINE_SIZE       64 +/* Custom script for NOR */ +#define CONFIG_SYS_LDSCRIPT		"board/ti/am335x/u-boot.lds" -/* commands to include */ -#include <config_cmd_default.h> +/* Always 128 KiB env size */ +#define CONFIG_ENV_SIZE			(128 << 10) -#define CONFIG_CMD_ASKENV -#define CONFIG_VERSION_VARIABLE +#ifdef CONFIG_NAND +#define NANDARGS \ +	"mtdids=" MTDIDS_DEFAULT "\0" \ +	"mtdparts=" MTDPARTS_DEFAULT "\0" \ +	"nandargs=setenv bootargs console=${console} " \ +		"${optargs} " \ +		"root=${nandroot} " \ +		"rootfstype=${nandrootfstype}\0" \ +	"dfu_alt_info_nand=" DFU_ALT_INFO_NAND "\0" \ +	"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \ +	"nandrootfstype=ubifs rootwait=1\0" \ +	"nandsrcaddr=0x280000\0" \ +		"nandboot=echo Booting from nand ...; " \ +		"run nandargs; " \ +		"nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; " \ +		"bootm ${loadaddr}\0" \ +	"nandimgsize=0x500000\0" +#else +#define NANDARGS "" +#endif -/* set to negative value for no autoboot */ -#define CONFIG_BOOTDELAY		1 -#define CONFIG_ENV_VARS_UBOOT_CONFIG  #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +  #ifndef CONFIG_SPL_BUILD  #define CONFIG_EXTRA_ENV_SETTINGS \  	"loadaddr=0x80200000\0" \  	"fdtaddr=0x80F80000\0" \  	"fdt_high=0xffffffff\0" \ +	"boot_fdt=try\0" \  	"rdaddr=0x81000000\0" \  	"bootdir=/boot\0" \  	"bootfile=uImage\0" \  	"fdtfile=undefined\0" \  	"console=ttyO0,115200n8\0" \  	"optargs=\0" \ -	"mtdids=" MTDIDS_DEFAULT "\0" \ -	"mtdparts=" MTDPARTS_DEFAULT "\0" \  	"dfu_alt_info_mmc=" DFU_ALT_INFO_MMC "\0" \  	"dfu_alt_info_emmc=rawemmc mmc 0 3751936\0" \ -	"dfu_alt_info_nand=" DFU_ALT_INFO_NAND "\0" \  	"mmcdev=0\0" \  	"mmcroot=/dev/mmcblk0p2 ro\0" \  	"mmcrootfstype=ext4 rootwait\0" \  	"bootpart=0:2\0" \ -	"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \ -	"nandrootfstype=ubifs rootwait=1\0" \ -	"nandsrcaddr=0x280000\0" \ -	"nandimgsize=0x500000\0" \  	"rootpath=/export/rootfs\0" \  	"nfsopts=nolock\0" \  	"static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}" \ @@ -86,10 +82,6 @@  		"${optargs} " \  		"root=${mmcroot} " \  		"rootfstype=${mmcrootfstype}\0" \ -	"nandargs=setenv bootargs console=${console} " \ -		"${optargs} " \ -		"root=${nandroot} " \ -		"rootfstype=${nandrootfstype}\0" \  	"spiroot=/dev/mtdblock4 rw\0" \  	"spirootfstype=jffs2\0" \  	"spisrcaddr=0xe0000\0" \ @@ -115,13 +107,33 @@  	"loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \  	"loaduimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \  	"loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \ -	"mmcboot=echo Booting from mmc ...; " \ -		"run mmcargs; " \ -		"bootm ${loadaddr} - ${fdtaddr}\0" \ -	"nandboot=echo Booting from nand ...; " \ -		"run nandargs; " \ -		"nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; " \ -		"bootm ${loadaddr}\0" \ +	"mmcloados=run mmcargs; " \ +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ +			"if run loadfdt; then " \ +				"bootm ${loadaddr} - ${fdtaddr}; " \ +			"else " \ +				"if test ${boot_fdt} = try; then " \ +					"bootm; " \ +				"else " \ +					"echo WARN: Cannot load the DT; " \ +				"fi; " \ +			"fi; " \ +		"else " \ +			"bootm; " \ +		"fi;\0" \ +	"mmcboot=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;" \ +			"run mmcloados;" \ +		"fi;\0" \  	"spiboot=echo Booting from spi ...; " \  		"run spiargs; " \  		"sf probe ${spibusno}:0; " \ @@ -147,83 +159,23 @@  		"if test $board_name = A335X_SK; then " \  			"setenv fdtfile am335x-evmsk.dtb; fi; " \  		"if test $fdtfile = undefined; then " \ -			"echo WARNING: Could not determine device tree to use; fi; \0" +			"echo WARNING: Could not determine device tree to use; fi; \0" \ +	NANDARGS  #endif  #define CONFIG_BOOTCOMMAND \  	"run findfdt; " \ -	"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 loadfdt;" \ -			"run mmcboot;" \ -		"fi;" \ -	"else " \ -		"run nandboot;" \ -	"fi;" \ - -/* Clock Defines */ -#define V_OSCK				24000000  /* Clock output from T2 */ -#define V_SCLK				(V_OSCK) - -#define CONFIG_CMD_ECHO - -/* We set the max number of command args high to avoid HUSH bugs. */ -#define CONFIG_SYS_MAXARGS		64 - -/* 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 - -/* - * memtest works on 8 MB in DRAM after skipping 32MB from - * start addr of ram disk - */ -#define CONFIG_SYS_MEMTEST_START	(PHYS_DRAM_1 + (64 * 1024 * 1024)) -#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START \ -					+ (8 * 1024 * 1024)) - -#define CONFIG_SYS_LOAD_ADDR		0x81000000 /* Default load address */ - -#define CONFIG_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_OMAP_HSMMC -#define CONFIG_CMD_MMC -#define CONFIG_DOS_PARTITION -#define CONFIG_CMD_FAT -#define CONFIG_FAT_WRITE -#define CONFIG_CMD_EXT2 -#define CONFIG_CMD_EXT4 -#define CONFIG_CMD_FS_GENERIC - -#define CONFIG_SPI -#define CONFIG_OMAP3_SPI -#define CONFIG_MTD_DEVICE -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_WINBOND -#define CONFIG_CMD_SF -#define CONFIG_SF_DEFAULT_SPEED		(24000000) +	"run mmcboot;" \ +	"setenv mmcdev 1; " \ +	"setenv bootpart 1:2; " \ +	"run mmcboot;" \ +	"run nandboot;"  /* USB Composite download gadget - g_dnl */  #define CONFIG_USB_GADGET  #define CONFIG_USBDOWNLOAD_GADGET  /* USB TI's IDs */ -#define CONFIG_USBD_HS  #define CONFIG_G_DNL_VENDOR_NUM 0x0403  #define CONFIG_G_DNL_PRODUCT_NUM 0xBD00  #define CONFIG_G_DNL_MANUFACTURER "Texas Instruments" @@ -231,129 +183,50 @@  /* USB Device Firmware Update support */  #define CONFIG_DFU_FUNCTION  #define CONFIG_DFU_MMC -#define CONFIG_DFU_NAND  #define CONFIG_CMD_DFU  #define DFU_ALT_INFO_MMC \  	"boot part 0 1;" \  	"rootfs part 0 2;" \  	"MLO fat 0 1;" \  	"MLO.raw mmc 100 100;" \ -	"u-boot.img.raw mmc 300 3C0;" \ +	"u-boot.img.raw mmc 300 400;" \ +	"spl-os-args.raw mmc 80 80;" \ +	"spl-os-image.raw mmc 900 2000;" \ +	"spl-os-args fat 0 1;" \ +	"spl-os-image fat 0 1;" \  	"u-boot.img fat 0 1;" \  	"uEnv.txt fat 0 1" +#ifdef CONFIG_NAND +#define CONFIG_DFU_NAND  #define DFU_ALT_INFO_NAND \  	"SPL part 0 1;" \  	"SPL.backup1 part 0 2;" \  	"SPL.backup2 part 0 3;" \  	"SPL.backup3 part 0 4;" \  	"u-boot part 0 5;" \ -	"kernel part 0 7;" \ -	"rootfs part 0 8" - - /* 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	/* 1ms clock */ +	"u-boot-spl-os part 0 6;" \ +	"kernel part 0 8;" \ +	"rootfs part 0 9" +#endif  /* 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	/* Base EVM has UART0 */  #define CONFIG_SYS_NS16550_COM2		0x48022000	/* UART1 */  #define CONFIG_SYS_NS16550_COM3		0x48024000	/* UART2 */  #define CONFIG_SYS_NS16550_COM4		0x481a6000	/* UART3 */  #define CONFIG_SYS_NS16550_COM5		0x481a8000	/* UART4 */  #define CONFIG_SYS_NS16550_COM6		0x481aa000	/* UART5 */ +#define CONFIG_BAUDRATE			115200  /* I2C Configuration */ -#define CONFIG_I2C -#define CONFIG_CMD_I2C -#define CONFIG_HARD_I2C -#define CONFIG_SYS_I2C_SPEED		100000 -#define CONFIG_SYS_I2C_SLAVE		1 -#define CONFIG_I2C_MULTI_BUS -#define CONFIG_DRIVER_OMAP24XX_I2C  #define CONFIG_CMD_EEPROM  #define CONFIG_ENV_EEPROM_IS_ON_I2C  #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */  #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2  #define CONFIG_SYS_I2C_MULTI_EEPROMS -#define CONFIG_OMAP_GPIO - -#define CONFIG_BAUDRATE		115200 -#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 - -#define CONFIG_ENV_IS_NOWHERE - -/* Defines for SPL */ -#define CONFIG_SPL -#define CONFIG_SPL_FRAMEWORK -/* - * Place the image at the start of the ROM defined image space. - * We limit our size to the ROM-defined downloaded image area, and use the - * rest of the space for stack. - */ -#define CONFIG_SPL_TEXT_BASE		0x402F0400 -#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE) -#define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR - -#define CONFIG_SPL_OS_BOOT - -#define CONFIG_SPL_BSS_START_ADDR	0x80a00000 -#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" - -#ifdef CONFIG_SPL_OS_BOOT -/* fat */ -#define CONFIG_SPL_FAT_LOAD_KERNEL_NAME		"uImage" -#define CONFIG_SPL_FAT_LOAD_ARGS_NAME		"args" -#define CONFIG_SYS_SPL_ARGS_ADDR		(PHYS_DRAM_1 + 0x100) - -/* raw mmc */ -#define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR	0x500 /* address 0xa0000 */ -#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x8   /* address 0x1000 */ -#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	8     /* 4KB */ - -/* nand */ -#define CONFIG_CMD_SPL_NAND_OFS			0x240000 /* end of u-boot */ -#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x280000 -#define CONFIG_CMD_SPL_WRITE_SIZE		0x1000 - -/* spl export command */ -#define CONFIG_CMD_SPL -#endif - -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_I2C_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 +/* SPL */ +#ifndef CONFIG_NOR_BOOT  #define CONFIG_SPL_YMODEM_SUPPORT  #define CONFIG_SPL_NET_SUPPORT  #define CONFIG_SPL_ENV_SUPPORT @@ -364,16 +237,11 @@  #define CONFIG_SPL_SPI_LOAD  #define CONFIG_SPL_SPI_BUS		0  #define CONFIG_SPL_SPI_CS		0 -#define CONFIG_SYS_SPI_U_BOOT_OFFS	0x80000 +#define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000  #define CONFIG_SPL_MUSB_NEW_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 +#ifdef CONFIG_NAND  #define CONFIG_SYS_NAND_5_ADDR_CYCLE  #define CONFIG_SYS_NAND_PAGE_COUNT	(CONFIG_SYS_NAND_BLOCK_SIZE / \  					 CONFIG_SYS_NAND_PAGE_SIZE) @@ -393,24 +261,16 @@  #define CONFIG_SYS_NAND_ECCBYTES	14  #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE -  #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000 +#endif +#endif  /* - * 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	0x80a08000 -#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000 - -/* Since SPL did pll and ddr initialization for us, - * we don't need to do it twice. + * For NOR boot, we must set this to the start of where NOR is mapped + * in memory.   */ -#ifndef CONFIG_SPL_BUILD -#define CONFIG_SKIP_LOWLEVEL_INIT +#ifdef CONFIG_NOR_BOOT +#define CONFIG_SYS_TEXT_BASE		0x08000000  #endif  /* @@ -450,51 +310,50 @@  #endif  /* - * Default to using SPI for environment, etc.  We have multiple copies - * of SPL as the ROM will check these locations. - * 0x0 - 0x20000 : First copy of SPL - * 0x20000 - 0x40000 : Second copy of SPL - * 0x40000 - 0x60000 : Third copy of SPL - * 0x60000 - 0x80000 : Fourth copy of SPL - * 0x80000 - 0xDF000 : U-Boot - * 0xDF000 - 0xE0000 : U-Boot Environment - * 0xE0000 - 0x442000 : Linux Kernel + * Default to using SPI for environment, etc. + * 0x000000 - 0x020000 : SPL (128KiB) + * 0x020000 - 0x0A0000 : U-Boot (512KiB) + * 0x0A0000 - 0x0BFFFF : First copy of U-Boot Environment (128KiB) + * 0x0C0000 - 0x0DFFFF : Second copy of U-Boot Environment (128KiB) + * 0x0E0000 - 0x442000 : Linux Kernel   * 0x442000 - 0x800000 : Userland   */  #if defined(CONFIG_SPI_BOOT) -# undef CONFIG_ENV_IS_NOWHERE -# define CONFIG_ENV_IS_IN_SPI_FLASH -# define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED -# define CONFIG_ENV_OFFSET		(892 << 10) /* 892 KiB in */ -# define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */ -#endif /* SPI support */ +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_SYS_REDUNDAND_ENVIRONMENT +#define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED +#define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */ +#define CONFIG_ENV_OFFSET		(768 << 10) /* 768 KiB in */ +#define CONFIG_ENV_OFFSET_REDUND	(896 << 10) /* 896 KiB in */ +#define MTDIDS_DEFAULT			"nor0=m25p80-flash.0" +#define MTDPARTS_DEFAULT		"mtdparts=m25p80-flash.0:128k(SPL)," \ +					"512k(u-boot),128k(u-boot-env1)," \ +					"128k(u-boot-env2),3464k(kernel)," \ +					"-(rootfs)" +#elif defined(CONFIG_EMMC_BOOT) +#undef CONFIG_ENV_IS_NOWHERE +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV		1 +#define CONFIG_SYS_MMC_ENV_PART		2 +#endif -/* Unsupported features */ -#undef CONFIG_USE_IRQ +/* SPI flash. */ +#define CONFIG_CMD_SF +#define CONFIG_SPI_FLASH +#define CONFIG_SPI_FLASH_WINBOND +#define CONFIG_SF_DEFAULT_SPEED		24000000 -#define CONFIG_CMD_NET -#define CONFIG_CMD_DHCP -#define CONFIG_CMD_PING -#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 +/* Network. */  #define CONFIG_PHY_GIGE  #define CONFIG_PHYLIB  #define CONFIG_PHY_ADDR			0  #define CONFIG_PHY_SMSC -#define CONFIG_NAND  /* NAND support */  #ifdef CONFIG_NAND  #define CONFIG_CMD_NAND -#define CONFIG_CMD_MTDPARTS +#define GPMC_NAND_ECC_LP_x16_LAYOUT	1 +#if !defined(CONFIG_SPI_BOOT) && !defined(CONFIG_NOR_BOOT)  #define MTDIDS_DEFAULT			"nand0=omap2-nand.0"  #define MTDPARTS_DEFAULT		"mtdparts=omap2-nand.0:128k(SPL)," \  					"128k(SPL.backup1)," \ @@ -502,19 +361,49 @@  					"128k(SPL.backup3),1792k(u-boot)," \  					"128k(u-boot-spl-os)," \  					"128k(u-boot-env),5m(kernel),-(rootfs)" -#define CONFIG_NAND_OMAP_GPMC -#define GPMC_NAND_ECC_LP_x16_LAYOUT	1 -#define CONFIG_SYS_NAND_BASE		(0x08000000)	/* physical address */ -							/* to access nand at */ -							/* CS0 */ -#define CONFIG_SYS_MAX_NAND_DEVICE	1		/* Max number of NAND -							   devices */ -#if !defined(CONFIG_SPI_BOOT) -#undef CONFIG_ENV_IS_NOWHERE  #define CONFIG_ENV_IS_IN_NAND  #define CONFIG_ENV_OFFSET		0x260000 /* environment starts here */  #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */  #endif  #endif +/* + * NOR Size = 16 MiB + * Number of Sectors/Blocks = 128 + * Sector Size = 128 KiB + * Word length = 16 bits + * Default layout: + * 0x000000 - 0x07FFFF : U-Boot (512 KiB) + * 0x080000 - 0x09FFFF : First copy of U-Boot Environment (128 KiB) + * 0x0A0000 - 0x0BFFFF : Second copy of U-Boot Environment (128 KiB) + * 0x0C0000 - 0x4BFFFF : Linux Kernel (4 MiB) + * 0x4C0000 - 0xFFFFFF : Userland (11 MiB + 256 KiB) + */ +#if defined(CONFIG_NOR) +#undef CONFIG_SYS_NO_FLASH +#define CONFIG_CMD_FLASH +#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE +#define CONFIG_SYS_FLASH_PROTECTION +#define CONFIG_SYS_FLASH_CFI +#define CONFIG_FLASH_CFI_DRIVER +#define CONFIG_FLASH_CFI_MTD +#define CONFIG_SYS_MAX_FLASH_SECT	128 +#define CONFIG_SYS_MAX_FLASH_BANKS	1 +#define CONFIG_SYS_FLASH_BASE		(0x08000000) +#define CONFIG_SYS_FLASH_CFI_WIDTH	FLASH_CFI_16BIT +#define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE +#ifdef CONFIG_NOR_BOOT +#define CONFIG_ENV_IS_IN_FLASH +#define CONFIG_ENV_SECT_SIZE		(128 << 10)	/* 128 KiB */ +#define CONFIG_ENV_OFFSET		(512 << 10)	/* 512 KiB */ +#define CONFIG_ENV_OFFSET_REDUND	(768 << 10)	/* 768 KiB */ +#define MTDIDS_DEFAULT			"nor0=physmap-flash.0" +#define MTDPARTS_DEFAULT		"mtdparts=physmap-flash.0:" \ +					"512k(u-boot)," \ +					"128k(u-boot-env1)," \ +					"128k(u-boot-env2)," \ +					"4m(kernel),-(rootfs)" +#endif +#endif  /* NOR support */ +  #endif	/* ! __CONFIG_AM335X_EVM_H */ diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h index 9bf283aba..1fd2508fe 100644 --- a/include/configs/am3517_crane.h +++ b/include/configs/am3517_crane.h @@ -19,6 +19,7 @@  #define CONFIG_OMAP		1	/* in a TI OMAP core */  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_AM3517CRANE	1	/* working with CRANEBOARD */ +#define CONFIG_OMAP_COMMON  #define CONFIG_EMIF4	/* The chip has EMIF4 controller */ diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h index 5c6169771..650087812 100644 --- a/include/configs/am3517_evm.h +++ b/include/configs/am3517_evm.h @@ -19,6 +19,7 @@  #define CONFIG_OMAP		1	/* in a TI OMAP core */  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_AM3517EVM	1	/* working with AM3517EVM */ +#define CONFIG_OMAP_COMMON  #define CONFIG_EMIF4	/* The chip has EMIF4 controller */ diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h new file mode 100644 index 000000000..5c802a154 --- /dev/null +++ b/include/configs/am43xx_evm.h @@ -0,0 +1,135 @@ +/* + * am43xx_evm.h + * + * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +#ifndef __CONFIG_AM43XX_EVM_H +#define __CONFIG_AM43XX_EVM_H + +#define CONFIG_AM43XX +#define CONFIG_OMAP +#define CONFIG_OMAP_COMMON + +#include <asm/arch/omap.h> + +#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 + +#define CONFIG_OF_LIBFDT +#define CONFIG_CMD_BOOTZ +#define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */ +#define CONFIG_CMDLINE_EDITING +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG + +/* commands to include */ +#include <config_cmd_default.h> + +#define CONFIG_CMD_ASKENV +#define CONFIG_VERSION_VARIABLE + +/* set to negative value for no autoboot */ +#define CONFIG_BOOTDELAY		1 +#define CONFIG_ENV_VARS_UBOOT_CONFIG +#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG + +/* Clock Defines */ +#define V_OSCK				24000000  /* Clock output from T2 */ +#define V_SCLK				(V_OSCK) + +#define CONFIG_CMD_ECHO + +/* max number of command args */ +#define CONFIG_SYS_MAXARGS		64 + +/* 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 + + /* 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_LOAD_ADDR		0x81000000 /* Default load address */ + +#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	/* Base EVM has UART0 */ + +#define CONFIG_BAUDRATE		115200 +#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 + +#define CONFIG_ENV_IS_NOWHERE + +/* + * 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 + +#ifndef	CONFIG_SPL_BUILD +#define CONFIG_SKIP_LOWLEVEL_INIT +#endif + +/* 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	0x80a00000 +#define CONFIG_SPL_BSS_MAX_SIZE		0x80000		/* 512 KB */ + +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_LIBDISK_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_YMODEM_SUPPORT +#define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/omap-common/u-boot-spl.lds" + +#define CONFIG_SPL_BOARD_INIT +#define CONFIG_SYS_SPL_MALLOC_START	0x80a08000 +#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000 + +/* Unsupported features */ +#undef CONFIG_USE_IRQ + +#endif	/* __CONFIG_AM43XX_EVM_H */ diff --git a/include/configs/apx4devkit.h b/include/configs/apx4devkit.h index 8561a248c..d1f18bc45 100644 --- a/include/configs/apx4devkit.h +++ b/include/configs/apx4devkit.h @@ -11,34 +11,16 @@   *   * SPDX-License-Identifier:	GPL-2.0+   */ -#ifndef __CONFIG_H -#define __CONFIG_H +#ifndef __CONFIGS_APX4DEVKIT_H__ +#define __CONFIGS_APX4DEVKIT_H__ -/* SoC configurations */ +/* System configurations */  #define CONFIG_MX28				/* i.MX28 SoC */ -#define CONFIG_MXS_GPIO				/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ -  #define MACH_TYPE_APX4DEVKIT	3712  #define CONFIG_MACH_TYPE	MACH_TYPE_APX4DEVKIT -#include <asm/arch/regs-base.h> - -#define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_CPU_INIT -#define CONFIG_ARCH_MISC_INIT - -/* SPL */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH	"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -  /* U-Boot Commands */ +#define CONFIG_SYS_NO_FLASH  #include <config_cmd_default.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DOS_PARTITION @@ -58,78 +40,26 @@  #define CONFIG_CMD_SAVEENV  #define CONFIG_CMD_USB -/* Memory configurations */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x20000000	/* Max 512 MB RAM */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) - -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE		0x40000100 +/* Environment */  #define CONFIG_ENV_OVERWRITE - -/* 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 -#define CONFIG_SYS_PROMPT_HUSH_PS2	"> " -#define CONFIG_OF_LIBFDT  #define CONFIG_ENV_IS_IN_NAND -/* Serial Driver */ -#define CONFIG_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ -#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 } - -/* DMA */ -#define CONFIG_APBH_DMA - -/* MMC Driver */ -#ifdef CONFIG_ENV_IS_IN_MMC +/* Environment is in MMC */ +#if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)  #define CONFIG_ENV_OFFSET		(256 * 1024)  #define CONFIG_ENV_SIZE			(16 * 1024)  #define CONFIG_SYS_MMC_ENV_DEV		0  #endif -#ifdef CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_MXS_MMC -#endif - -/* NAND Driver */ -#ifdef CONFIG_ENV_IS_IN_NAND +/* Environment is in NAND */ +#if defined(CONFIG_CMD_NAND) && defined(CONFIG_ENV_IS_IN_NAND)  #define CONFIG_ENV_SECT_SIZE		(128 * 1024)  #define CONFIG_ENV_SIZE			(128 * 1024)  #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE @@ -139,12 +69,8 @@  		(CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE)  #endif +/* UBI and NAND partitioning */  #ifdef CONFIG_CMD_NAND -#define CONFIG_NAND_MXS -#define CONFIG_SYS_MAX_NAND_DEVICE	1 -#define CONFIG_SYS_NAND_BASE		0x60000000 -#define CONFIG_SYS_NAND_5_ADDR_CYCLE -  #define CONFIG_CMD_UBI  #define CONFIG_CMD_UBIFS  #define CONFIG_CMD_MTDPARTS @@ -159,43 +85,30 @@  #define MTDPARTS_DEFAULT		""  #endif -/* Ethernet on SOC (FEC) */ +/* FEC Ethernet on SoC */  #ifdef CONFIG_CMD_NET +#define CONFIG_FEC_MXC  #define CONFIG_NET_MULTI  #define CONFIG_ETHPRIME			"FEC" -#define CONFIG_FEC_MXC  #define CONFIG_FEC_MXC_PHYADDR		0  #define IMX_FEC_BASE			MXS_ENET0_BASE -#define CONFIG_MII -#define CONFIG_FEC_XCV_TYPE		RMII  #endif  /* USB */  #ifdef CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MXS  #define CONFIG_EHCI_MXS_PORT1  #define CONFIG_USB_MAX_CONTROLLER_COUNT	1 -#define CONFIG_EHCI_IS_TDI  #define CONFIG_USB_STORAGE  #endif -/* I2C */ -#ifdef CONFIG_CMD_I2C -#define CONFIG_I2C_MXS -#define CONFIG_HARD_I2C -#define CONFIG_SYS_I2C_SPEED		400000 -#endif  /* RTC */ -#if defined(CONFIG_CMD_DATE) +#ifdef CONFIG_CMD_DATE  #define CONFIG_RTC_PCF8563  #define CONFIG_SYS_I2C_RTC_ADDR		0x51  #endif  /* Boot Linux */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_BOOTDELAY		1  #define CONFIG_BOOTFILE			"uImage"  #define CONFIG_BOOTCOMMAND		"run bootcmd_nand" @@ -225,4 +138,7 @@  		"ext2load mmc 0:2 41000000 boot/uImage && bootm 41000000\0" \  "" -#endif /* __CONFIG_H */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_APX4DEVKIT_H__ */ diff --git a/include/configs/calimain.h b/include/configs/calimain.h index c76bc2cbe..d20074c73 100644 --- a/include/configs/calimain.h +++ b/include/configs/calimain.h @@ -185,7 +185,6 @@  #ifdef CONFIG_DRIVER_TI_EMAC  #define CONFIG_EMAC_MDIO_PHY_NUM	1  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/cam_enc_4xx.h b/include/configs/cam_enc_4xx.h index 0f3f61a0d..ac7ed812d 100644 --- a/include/configs/cam_enc_4xx.h +++ b/include/configs/cam_enc_4xx.h @@ -49,7 +49,6 @@  #define CONFIG_EMAC_MDIO_PHY_NUM	0  #define	CONFIG_SYS_EMAC_TI_CLKDIV	0xa9	/* 1MHz */  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h index 39a216e83..bc5b66c6d 100644 --- a/include/configs/cm_t35.h +++ b/include/configs/cm_t35.h @@ -24,6 +24,7 @@  #define CONFIG_OMAP34XX	/* which is a 34XX */  #define CONFIG_OMAP_GPIO  #define CONFIG_CM_T3X	/* working with CM-T35 and CM-T3730 */ +#define CONFIG_OMAP_COMMON  #define CONFIG_SYS_TEXT_BASE	0x80008000 diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h index c0591c527..c3fb80c8d 100644 --- a/include/configs/corenet_ds.h +++ b/include/configs/corenet_ds.h @@ -42,7 +42,6 @@  #define CONFIG_E500MC			/* BOOKE e500mc family */  #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */  #define CONFIG_MPC85xx			/* MPC85xx/PQ3 platform */ -#define CONFIG_FSL_CORENET		/* Freescale CoreNet platform */  #define CONFIG_MP			/* support multiple processors */  #ifndef CONFIG_SYS_TEXT_BASE diff --git a/include/configs/da830evm.h b/include/configs/da830evm.h index 9407eaf74..3e71ae5a3 100644 --- a/include/configs/da830evm.h +++ b/include/configs/da830evm.h @@ -74,7 +74,6 @@   */  #ifdef CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index 3c0aacdd5..e63d7c4ab 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @@ -227,7 +227,6 @@   */  #ifdef CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_dm365evm.h b/include/configs/davinci_dm365evm.h index e3084d375..82dc1a257 100644 --- a/include/configs/davinci_dm365evm.h +++ b/include/configs/davinci_dm365evm.h @@ -44,7 +44,6 @@  /* Network Configuration */  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_dm6467evm.h b/include/configs/davinci_dm6467evm.h index 3c430ae0e..7f5787775 100644 --- a/include/configs/davinci_dm6467evm.h +++ b/include/configs/davinci_dm6467evm.h @@ -69,7 +69,6 @@ extern unsigned int davinci_arm_clk_get(void);  /* Network & Ethernet Configuration */  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_dvevm.h b/include/configs/davinci_dvevm.h index 6526478a9..a49a9891d 100644 --- a/include/configs/davinci_dvevm.h +++ b/include/configs/davinci_dvevm.h @@ -87,7 +87,6 @@  /*==================================*/  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_schmoogie.h b/include/configs/davinci_schmoogie.h index 29b10dd16..1595bc7f6 100644 --- a/include/configs/davinci_schmoogie.h +++ b/include/configs/davinci_schmoogie.h @@ -56,7 +56,6 @@  /*==================================*/  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_sffsdr.h b/include/configs/davinci_sffsdr.h index 34a64b301..6ebbe818a 100644 --- a/include/configs/davinci_sffsdr.h +++ b/include/configs/davinci_sffsdr.h @@ -50,7 +50,6 @@  /* Network & Ethernet Configuration */  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/davinci_sonata.h b/include/configs/davinci_sonata.h index d35aea7ee..3eaa7c084 100644 --- a/include/configs/davinci_sonata.h +++ b/include/configs/davinci_sonata.h @@ -88,7 +88,6 @@  /*==================================*/  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h index 513121ae6..cb79b4ef4 100644 --- a/include/configs/devkit8000.h +++ b/include/configs/devkit8000.h @@ -21,6 +21,7 @@  #define CONFIG_OMAP3_DEVKIT8000	1	/* working with DevKit8000 */  #define CONFIG_MACH_TYPE	MACH_TYPE_DEVKIT8000  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  /*   * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM diff --git a/include/configs/dig297.h b/include/configs/dig297.h index bf9162507..30e39087c 100644 --- a/include/configs/dig297.h +++ b/include/configs/dig297.h @@ -30,6 +30,7 @@  #define CONFIG_OMAP		/* in a TI OMAP core */  #define CONFIG_OMAP34XX		/* which is a 34XX */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SYS_TEXT_BASE	0x80008000 diff --git a/include/configs/dlvision-10g.h b/include/configs/dlvision-10g.h index a03c46295..68e5246b6 100644 --- a/include/configs/dlvision-10g.h +++ b/include/configs/dlvision-10g.h @@ -18,7 +18,7 @@   * Include common defines/options for all AMCC eval boards   */  #define CONFIG_HOSTNAME		dlvsion-10g -#define CONFIG_IDENT_STRING	" dlvision-10g 0.04" +#define CONFIG_IDENT_STRING	" dlvision-10g 0.05"  #include "amcc-common.h"  #define CONFIG_BOARD_EARLY_INIT_F @@ -131,7 +131,7 @@  #define CONFIG_SYS_LATCH0_RESET		0xffff  #define CONFIG_SYS_LATCH0_BOOT		0xffff -#define CONFIG_SYS_LATCH1_RESET		0xffcf +#define CONFIG_SYS_LATCH1_RESET		0xffbf  #define CONFIG_SYS_LATCH1_BOOT		0xffff  #define CONFIG_SYS_FPGA_NO_RFL_HI diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h index 70b204f64..58786ffa9 100644 --- a/include/configs/dra7xx_evm.h +++ b/include/configs/dra7xx_evm.h @@ -12,20 +12,36 @@  #ifndef __CONFIG_DRA7XX_EVM_H  #define __CONFIG_DRA7XX_EVM_H -/* High Level Configuration Options */ -#define CONFIG_DRA7XX		/* in a TI DRA7XX core */ -#define CONFIG_ENV_IS_NOWHERE		/* For now. */ - -#include <configs/omap5_common.h> +#define CONFIG_DRA7XX -#define CONFIG_SYS_PROMPT		"DRA752 EVM # " +#define CONFIG_ENV_IS_NOWHERE		/* For now. */ +#define CONSOLEDEV			"ttyO0"  #define CONFIG_CONS_INDEX		1  #define CONFIG_SYS_NS16550_COM1		UART1_BASE  #define CONFIG_BAUDRATE			115200  #define CONFIG_SYS_OMAP_ABE_SYSCK -#define CONSOLEDEV		"ttyO0" +#include <configs/omap5_common.h> + +/* CPSW 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			2  #endif /* __CONFIG_DRA7XX_EVM_H */ diff --git a/include/configs/ea20.h b/include/configs/ea20.h index 14a8db3bb..e08423a09 100644 --- a/include/configs/ea20.h +++ b/include/configs/ea20.h @@ -89,7 +89,6 @@  #ifdef CONFIG_DRIVER_TI_EMAC  #define CONFIG_EMAC_MDIO_PHY_NUM	0  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/enbw_cmc.h b/include/configs/enbw_cmc.h index 43cf6bc44..90033fa10 100644 --- a/include/configs/enbw_cmc.h +++ b/include/configs/enbw_cmc.h @@ -135,7 +135,6 @@   */  #ifdef CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/galaxy5200.h b/include/configs/galaxy5200.h index 984f27451..47e65d8b7 100644 --- a/include/configs/galaxy5200.h +++ b/include/configs/galaxy5200.h @@ -360,10 +360,9 @@  #define CONFIG_CRC32_VERIFY  1 -#define CONFIG_BOOTP_MASK	(CONFIG_BOOTP_DEFAULT | \ -				 CONFIG_BOOTP_DNS | \ -				 CONFIG_BOOTP_DNS2 | \ -				 CONFIG_BOOTP_SEND_HOSTNAME ) +#define CONFIG_BOOTP_DNS +#define CONFIG_BOOTP_DNS2 +#define CONFIG_BOOTP_SEND_HOSTNAME  #define CONFIG_VERSION_VARIABLE 1 diff --git a/include/configs/hawkboard.h b/include/configs/hawkboard.h index 2e478cc63..b8197ac18 100644 --- a/include/configs/hawkboard.h +++ b/include/configs/hawkboard.h @@ -97,7 +97,6 @@   */  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/highbank.h b/include/configs/highbank.h index e7459c179..a5743d63d 100644 --- a/include/configs/highbank.h +++ b/include/configs/highbank.h @@ -7,14 +7,18 @@  #ifndef __CONFIG_H  #define __CONFIG_H +#define CONFIG_SYS_DCACHE_OFF  #define CONFIG_L2_OFF +#define CONFIG_SYS_THUMB_BUILD  #define CONFIG_SYS_NO_FLASH  #define CFG_HZ				1000  #define CONFIG_SYS_HZ			CFG_HZ  #define CONFIG_OF_LIBFDT +#define CONFIG_OF_BOARD_SETUP  #define CONFIG_FIT +#define CONFIG_SUPPORT_RAW_INITRD  #define CONFIG_SYS_BOOTMAPSZ		(16 << 20)  /* @@ -27,7 +31,7 @@  #define CONFIG_PL01x_PORTS		{ (void *)(0xFFF36000) }  #define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			38400 +#define CONFIG_BAUDRATE			115200  #define CONFIG_BOOTCOUNT_LIMIT  #define CONFIG_SYS_BOOTCOUNT_SINGLEWORD @@ -43,6 +47,7 @@  					CONFIG_SYS_SCSI_MAX_LUN)  #define CONFIG_DOS_PARTITION +#define CONFIG_EFI_PARTITION  #define CONFIG_CALXEDA_XGMAC @@ -57,31 +62,42 @@  #include <config_cmd_default.h>  #define CONFIG_CMD_BDI +#define CONFIG_CMD_BOOTZ  #define CONFIG_CMD_DHCP  #define CONFIG_CMD_ELF  #define CONFIG_CMD_MEMORY  #define CONFIG_CMD_LOADS  #define CONFIG_CMD_SCSI  #define CONFIG_CMD_EXT2 +#define CONFIG_CMD_EXT4 +#define CONFIG_CMD_FAT  #define CONFIG_CMD_PXE  #define CONFIG_MENU  #define CONFIG_BOOTDELAY		2 +#define CONFIG_BOOT_RETRY_TIME		-1 +#define CONFIG_RESET_TO_RETRY +#define CONFIG_AUTOBOOT_KEYED +#define CONFIG_AUTOBOOT_PROMPT "Autobooting in %d seconds...\nPress <s> to stop or <d> to delay\n", bootdelay +  /*   * Miscellaneous configurable options   */  #define CONFIG_CMDLINE_EDITING  #define CONFIG_AUTO_COMPLETE  #define CONFIG_SYS_LONGHELP		/* undef to save memory		 */ -#define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size */ +#define CONFIG_SYS_CBSIZE		1024	/* Console I/O Buffer Size */  #define CONFIG_SYS_MAXARGS		16	/* max number of cmd args */  #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE  #define CONFIG_SYS_PROMPT		"Highbank #" +#define CONFIG_SYS_HUSH_PARSER  /* Print Buffer Size */  #define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \  					 sizeof(CONFIG_SYS_PROMPT)+16)  #define CONFIG_SYS_LOAD_ADDR		0x800000 +#define CONFIG_SYS_64BIT_LBA +  /*-----------------------------------------------------------------------   * Physical Memory Map diff --git a/include/configs/igep0033.h b/include/configs/igep0033.h index 12f28f82a..3e18a657f 100644 --- a/include/configs/igep0033.h +++ b/include/configs/igep0033.h @@ -16,6 +16,7 @@  #define CONFIG_AM33XX  #define CONFIG_OMAP +#define CONFIG_OMAP_COMMON  #include <asm/arch/omap.h> @@ -27,10 +28,6 @@  #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 */ @@ -41,6 +38,9 @@  /* Display cpuinfo */  #define CONFIG_DISPLAY_CPUINFO +/* Flattened Device Tree */ +#define CONFIG_OF_LIBFDT +  /* Commands to include */  #include <config_cmd_default.h> @@ -59,48 +59,48 @@  #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 +/* Make the verbose messages from UBI stop printing */ +#define CONFIG_UBI_SILENCE_MSG +#define CONFIG_UBIFS_SILENCE_MSG  #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" \ +	"loadaddr=0x80F80000\0" \ +	"dtbaddr=0x80200000\0" \ +	"bootdir=/boot\0" \ +	"bootfile=zImage\0" \ +	"dtbfile=am335x-base0033.dtb\0" \  	"console=ttyO0,115200n8\0" \ -	"optargs=\0" \ +	"mtdids=" MTDIDS_DEFAULT "\0" \ +	"mtdparts=" MTDPARTS_DEFAULT "\0" \  	"mmcdev=0\0" \  	"mmcroot=/dev/mmcblk0p2 rw\0" \ +	"ubiroot=ubi0:filesystem rw ubi.mtd=3,2048\0" \  	"mmcrootfstype=ext4 rootwait\0" \ -	"ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \ -	"ramrootfstype=ext2\0" \ +	"ubirootfstype=ubifs rootwait\0" \  	"mmcargs=setenv bootargs console=${console} " \ -		"${optargs} " \  		"root=${mmcroot} " \  		"rootfstype=${mmcrootfstype}\0" \ +	"ubiargs=setenv bootargs console=${console} " \ +		"root=${ubiroot} " \ +		"rootfstype=${ubirootfstype}\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" \ +		"env import -t ${loadaddr} ${filesize}\0" \ +	"mmcload=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}; " \ +		"load mmc ${mmcdev}:2 ${dtbaddr} ${bootdir}/${dtbfile}\0" \ +	"ubiload=ubi part filesystem 2048; ubifsmount ubi0; " \ +		"ubifsload ${loadaddr} ${bootdir}/${bootfile}; " \ +		"ubifsload ${dtbaddr} ${bootdir}/${dtbfile} \0" \  	"mmcboot=echo Booting from mmc ...; " \  		"run mmcargs; " \ -		"bootm ${loadaddr}\0" \ -	"ramboot=echo Booting from ramdisk ...; " \ -		"run ramargs; " \ -		"bootm ${loadaddr}\0" \ +		"bootz ${loadaddr} - ${dtbaddr}\0" \ +	"ubiboot=echo Booting from nand (ubifs) ...; " \ +		"run ubiargs; run ubiload; " \ +		"bootz ${loadaddr} - ${dtbaddr}\0" \  #define CONFIG_BOOTCOMMAND \  	"mmc dev ${mmcdev}; if mmc rescan; then " \ @@ -113,9 +113,11 @@  			"echo Running uenvcmd ...;" \  			"run uenvcmd;" \  		"fi;" \ -		"if run loaduimage; then " \ +		"if run mmcload; then " \  			"run mmcboot;" \  		"fi;" \ +	"else " \ +		"run ubiboot;" \  	"fi;" \  /* Max number of command args */ @@ -131,20 +133,18 @@  /* 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_SDRAM_BASE		0x80000000  #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 +#define CONFIG_SYS_HZ			1000	/* 1ms clock */  /* NS16550 Configuration */  #define CONFIG_SYS_NS16550 @@ -153,7 +153,6 @@  #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 @@ -175,7 +174,6 @@  /* 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 @@ -195,18 +193,21 @@  #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_SYS_REDUNDAND_ENVIRONMENT  #define CONFIG_ENV_IS_IN_NAND -#define CONFIG_ENV_OFFSET		0x260000 /* environment starts here */ +#define CONFIG_ENV_OFFSET		0x180000 /* environment starts here */ +#define CONFIG_ENV_ADDR_REDUND		(CONFIG_ENV_OFFSET + CONFIG_SYS_ENV_SECT_SIZE) +#define CONFIG_ENV_SIZE_REDUND		(CONFIG_ENV_SIZE)  #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)" +#define MTDIDS_DEFAULT			"nand0=omap2-nand.0" +#define MTDPARTS_DEFAULT		"mtdparts=omap2-nand.0:512k(spl),"\ +					"1m(uboot),256k(environment),"\ +					"-(filesystem)"  /* Unsupported features */  #undef CONFIG_USE_IRQ @@ -264,10 +265,6 @@  #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 diff --git a/include/configs/igep00x0.h b/include/configs/igep00x0.h index c17267e3a..722c56652 100644 --- a/include/configs/igep00x0.h +++ b/include/configs/igep00x0.h @@ -18,6 +18,7 @@  #define CONFIG_OMAP		1	/* in a TI OMAP core */  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ @@ -97,8 +98,9 @@  #include <config_cmd_default.h>  #define CONFIG_CMD_CACHE -#define CONFIG_CMD_EXT2		/* EXT2 Support			*/ +#define CONFIG_CMD_EXT4  #define CONFIG_CMD_FAT		/* FAT support			*/ +#define CONFIG_CMD_FS_GENERIC  #define CONFIG_CMD_I2C		/* I2C serial bus support	*/  #define CONFIG_CMD_MMC		/* MMC support			*/  #ifdef CONFIG_BOOT_ONENAND @@ -136,6 +138,9 @@  #define CONFIG_EXTRA_ENV_SETTINGS \  	"usbtty=cdc_acm\0" \  	"loadaddr=0x82000000\0" \ +	"dtbaddr=0x81600000\0" \ +	"bootdir=/boot\0" \ +	"bootfile=zImage\0" \  	"usbtty=cdc_acm\0" \  	"console=ttyO2,115200n8\0" \  	"mpurate=auto\0" \ @@ -163,17 +168,20 @@  		"omapdss.def_disp=${defaultdisplay} " \  		"root=${nandroot} " \  		"rootfstype=${nandrootfstype}\0" \ -	"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ +	"loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \  	"importbootenv=echo Importing environment from mmc ...; " \  		"env import -t $loadaddr $filesize\0" \ -	"loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ +	"loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ +	"loadfdt=load mmc ${mmcdev}:2 ${dtbaddr} ${bootdir}/${dtbfile}\0" \  	"mmcboot=echo Booting from mmc ...; " \  		"run mmcargs; " \ -		"bootm ${loadaddr}\0" \ +		"bootz ${loadaddr}\0" \ +	"mmcbootfdt=echo Booting with DT from mmc ...; " \ +		"bootz ${loadaddr} - ${dtbaddr}\0" \  	"nandboot=echo Booting from onenand ...; " \  		"run nandargs; " \  		"onenand read ${loadaddr} 280000 400000; " \ -		"bootm ${loadaddr}\0" \ +		"bootz ${loadaddr}\0" \  #define CONFIG_BOOTCOMMAND \  	"mmc dev ${mmcdev}; if mmc rescan; then " \ @@ -185,7 +193,12 @@  			"echo Running uenvcmd ...;" \  			"run uenvcmd;" \  		"fi;" \ -		"if run loaduimage; then " \ +		"if run loadzimage; then " \ +			"if test -n $dtbfile; then " \ +				"if run loadfdt; then " \ +					"run mmcbootfdt;" \ +				"fi;" \ +			"fi;" \  			"run mmcboot;" \  		"fi;" \  	"fi;" \ diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h new file mode 100644 index 000000000..82d429800 --- /dev/null +++ b/include/configs/ipam390.h @@ -0,0 +1,331 @@ +/* + * (C) Heiko Schocher, DENX Software Engineering, hs@denx.de. + * Based on: + * U-Boot:include/configs/da850evm.h + * + * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/ + * + * Based on davinci_dvevm.h. Original Copyrights follow: + * + * Copyright (C) 2007 Sergey Kubushyn <ksi@koi8.net> + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +/* + * Board + */ +#define CONFIG_DRIVER_TI_EMAC +#define CONFIG_BARIX_IPAM390 + +/* + * SoC Configuration + */ +#define CONFIG_MACH_DAVINCI_DA850_EVM +#define CONFIG_ARM926EJS		/* arm926ejs CPU core */ +#define CONFIG_SOC_DA8XX		/* TI DA8xx SoC */ +#define CONFIG_SOC_DA850		/* TI DA850 SoC */ +#define CONFIG_SYS_EXCEPTION_VECTORS_HIGH +#define CONFIG_SYS_CLK_FREQ		clk_get(DAVINCI_ARM_CLKID) +#define CONFIG_SYS_OSCIN_FREQ		24000000 +#define CONFIG_SYS_TIMERBASE		DAVINCI_TIMER0_BASE +#define CONFIG_SYS_HZ_CLOCK		clk_get(DAVINCI_AUXCLK_CLKID) +#define CONFIG_SYS_HZ			1000 +#define CONFIG_SYS_DA850_PLL_INIT +#define CONFIG_SYS_DA850_DDR_INIT +#define CONFIG_SYS_TEXT_BASE		0xc1080000 + +/* + * Memory Info + */ +#define CONFIG_SYS_MALLOC_LEN	(0x10000 + 1*1024*1024) /* malloc() len */ +#define PHYS_SDRAM_1		DAVINCI_DDR_EMIF_DATA_BASE /* DDR Start */ +#define PHYS_SDRAM_1_SIZE	(128 << 20) /* SDRAM size 128MB */ +#define CONFIG_MAX_RAM_BANK_SIZE (512 << 20) /* max size from SPRS586*/ + +/* memtest start addr */ +#define CONFIG_SYS_MEMTEST_START	(PHYS_SDRAM_1 + 0x2000000) + +/* memtest will be run on 16MB */ +#define CONFIG_SYS_MEMTEST_END	(CONFIG_SYS_MEMTEST_START + 16 * 1024 * 1024) + +#define CONFIG_NR_DRAM_BANKS	1 /* we have 1 bank of DRAM */ + +#define CONFIG_SYS_DA850_SYSCFG_SUSPSRC (	\ +	DAVINCI_SYSCFG_SUSPSRC_TIMER0 |		\ +	DAVINCI_SYSCFG_SUSPSRC_UART2 |		\ +	DAVINCI_SYSCFG_SUSPSRC_UART0 |		\ +	DAVINCI_SYSCFG_SUSPSRC_EMAC) + +/* + * PLL configuration + */ +#define CONFIG_SYS_DV_CLKMODE          0 +#define CONFIG_SYS_DA850_PLL0_POSTDIV  1 +#define CONFIG_SYS_DA850_PLL0_PLLDIV1  0x8000 +#define CONFIG_SYS_DA850_PLL0_PLLDIV2  0x8001 +#define CONFIG_SYS_DA850_PLL0_PLLDIV3  0x8002 +#define CONFIG_SYS_DA850_PLL0_PLLDIV4  0x8003 +#define CONFIG_SYS_DA850_PLL0_PLLDIV5  0x8002 +#define CONFIG_SYS_DA850_PLL0_PLLDIV6  CONFIG_SYS_DA850_PLL0_PLLDIV1 +#define CONFIG_SYS_DA850_PLL0_PLLDIV7  0x8005 + +#define CONFIG_SYS_DA850_PLL1_POSTDIV  1 +#define CONFIG_SYS_DA850_PLL1_PLLDIV1  0x8000 +#define CONFIG_SYS_DA850_PLL1_PLLDIV2  0x8001 +#define CONFIG_SYS_DA850_PLL1_PLLDIV3  0x8002 + +#define CONFIG_SYS_DA850_PLL0_PLLM     24 +#define CONFIG_SYS_DA850_PLL1_PLLM     24 + +/* + * DDR2 memory configuration + */ +#define CONFIG_SYS_DA850_DDR2_DDRPHYCR (DV_DDR_PHY_PWRDNEN | \ +					DV_DDR_PHY_EXT_STRBEN | \ +					(0x2 << DV_DDR_PHY_RD_LATENCY_SHIFT)) +#define CONFIG_SYS_DA850_DDR2_SDRCR	0x00000498 + +#define CONFIG_SYS_DA850_DDR2_SDBCR2	0x00000004 +#define CONFIG_SYS_DA850_DDR2_PBBPR	0x00000020 + + +#define CONFIG_SYS_DA850_DDR2_SDTIMR (		\ +	(13 << DV_DDR_SDTMR1_RFC_SHIFT) |	\ +	(2 << DV_DDR_SDTMR1_RP_SHIFT) |		\ +	(2 << DV_DDR_SDTMR1_RCD_SHIFT) |	\ +	(2 << DV_DDR_SDTMR1_WR_SHIFT) |		\ +	(5 << DV_DDR_SDTMR1_RAS_SHIFT) |	\ +	(8 << DV_DDR_SDTMR1_RC_SHIFT) |		\ +	(1 << DV_DDR_SDTMR1_RRD_SHIFT) |	\ +	(1 << DV_DDR_SDTMR1_WTR_SHIFT)) + +#define CONFIG_SYS_DA850_DDR2_SDTIMR2 (		\ +	(8 << DV_DDR_SDTMR2_RASMAX_SHIFT) |	\ +	(2 << DV_DDR_SDTMR2_XP_SHIFT) |		\ +	(0 << DV_DDR_SDTMR2_ODT_SHIFT) |	\ +	(14 << DV_DDR_SDTMR2_XSNR_SHIFT) |	\ +	(0xc7 << DV_DDR_SDTMR2_XSRD_SHIFT) |	\ +	(1 << DV_DDR_SDTMR2_RTP_SHIFT) |	\ +	(2 << DV_DDR_SDTMR2_CKE_SHIFT)) + +#define CONFIG_SYS_DA850_DDR2_SDBCR (		\ +	(1 << DV_DDR_SDCR_DDR2EN_SHIFT) |	\ +	(1 << DV_DDR_SDCR_DDRDRIVE0_SHIFT) |	\ +	(1 << DV_DDR_SDCR_DDREN_SHIFT) |	\ +	(1 << DV_DDR_SDCR_SDRAMEN_SHIFT) |	\ +	(1 << DV_DDR_SDCR_BUS_WIDTH_SHIFT) |	\ +	(2 << DV_DDR_SDCR_CL_SHIFT) |	\ +	(3 << DV_DDR_SDCR_IBANK_SHIFT) |	\ +	(2 << DV_DDR_SDCR_PAGESIZE_SHIFT)) + +#define CONFIG_SYS_DA850_CS3CFG	(DAVINCI_ABCR_WSETUP(2)	| \ +				DAVINCI_ABCR_WSTROBE(2)	| \ +				DAVINCI_ABCR_WHOLD(1)	| \ +				DAVINCI_ABCR_RSETUP(1)	| \ +				DAVINCI_ABCR_RSTROBE(4)	| \ +				DAVINCI_ABCR_RHOLD(0)	| \ +				DAVINCI_ABCR_TA(1)	| \ +				DAVINCI_ABCR_ASIZE_8BIT) + + +/* + * Serial Driver info + */ +#define CONFIG_SYS_NS16550 +#define CONFIG_SYS_NS16550_SERIAL +#define CONFIG_SYS_NS16550_REG_SIZE	-4	/* NS16550 register size */ +#define CONFIG_SYS_NS16550_COM1	DAVINCI_UART0_BASE /* Base address of UART0 */ +#define CONFIG_SYS_NS16550_CLK	clk_get(DAVINCI_UART2_CLKID) +#define CONFIG_CONS_INDEX	1		/* use UART0 for console */ +#define CONFIG_BAUDRATE		115200		/* Default baud rate */ + +/* + * Flash & Environment + */ +#define CONFIG_NAND_DAVINCI +#define CONFIG_SYS_NO_FLASH +#define CONFIG_ENV_IS_IN_NAND		/* U-Boot env in NAND Flash  */ +#define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */ +#define CONFIG_ENV_SIZE			(128 << 10) +#define	CONFIG_SYS_NAND_USE_FLASH_BBT +#define CONFIG_SYS_NAND_4BIT_HW_ECC_OOBFIRST +#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_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 +#define CONFIG_SYS_NAND_5_ADDR_CYCLE +#define CONFIG_SYS_NAND_PAGE_SIZE	(2 << 10) +#define CONFIG_SYS_NAND_BLOCK_SIZE	(128 << 10) +#define CONFIG_SYS_NAND_U_BOOT_OFFS	0x40000 +#define CONFIG_SYS_NAND_U_BOOT_SIZE	0x120000 +#define CONFIG_SYS_NAND_U_BOOT_DST	0xc1080000 +#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_NAND_U_BOOT_DST +#define CONFIG_SYS_NAND_U_BOOT_RELOC_SP	(CONFIG_SYS_NAND_U_BOOT_DST - \ +					CONFIG_SYS_NAND_U_BOOT_SIZE - \ +					CONFIG_SYS_MALLOC_LEN -       \ +					GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_NAND_ECCPOS		{				\ +				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, 58, \ +				59, 60, 61, 62, 63 } +#define CONFIG_SYS_NAND_PAGE_COUNT	64 +#define CONFIG_SYS_NAND_BAD_BLOCK_POS	0 +#define CONFIG_SYS_NAND_ECCSIZE		512 +#define CONFIG_SYS_NAND_ECCBYTES	10 +#define CONFIG_SYS_NAND_OOBSIZE		64 +#define CONFIG_SPL_NAND_SUPPORT +#define CONFIG_SPL_NAND_BASE +#define CONFIG_SPL_NAND_DRIVERS +#define CONFIG_SPL_NAND_ECC +#define CONFIG_SPL_NAND_SIMPLE +#define CONFIG_SPL_NAND_LOAD + +/* + * Network & Ethernet Configuration + */ +#ifdef CONFIG_DRIVER_TI_EMAC +#define CONFIG_DRIVER_TI_EMAC_USE_RMII +#define CONFIG_BOOTP_DEFAULT +#define CONFIG_BOOTP_DNS +#define CONFIG_BOOTP_DNS2 +#define CONFIG_BOOTP_SEND_HOSTNAME +#define CONFIG_NET_RETRY_COUNT	10 +#endif + +/* + * U-Boot general configuration + */ +#define CONFIG_MISC_INIT_R +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_BOOTFILE		"uImage" /* Boot file name */ +#define CONFIG_SYS_PROMPT	"U-Boot > " /* Command Prompt */ +#define CONFIG_SYS_CBSIZE	1024 /* Console I/O Buffer Size	*/ +#define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) +#define CONFIG_SYS_MAXARGS	16 /* max number of command args */ +#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE /* Boot Args Buffer Size */ +#define CONFIG_SYS_LOAD_ADDR	(PHYS_SDRAM_1 + 0x700000) +#define CONFIG_VERSION_VARIABLE +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_CMDLINE_EDITING +#define CONFIG_SYS_LONGHELP +#define CONFIG_CRC32_VERIFY +#define CONFIG_MX_CYCLIC + +/* + * Linux Information + */ +#define LINUX_BOOT_PARAM_ADDR	(PHYS_SDRAM_1 + 0x100) +#define CONFIG_HWCONFIG		/* enable hwconfig */ +#define CONFIG_CMDLINE_TAG +#define CONFIG_REVISION_TAG +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_BOOTARGS		\ +	"mem=128M console=ttyS0,115200n8 root=/dev/mtdblock0p4 rw noinitrd ip=dhcp" +#define CONFIG_BOOTDELAY	3 +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"hwconfig=dsp:wake=yes\0" \ +	"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0"	\ +	"mtdids=" MTDIDS_DEFAULT "\0"				\ +	"mtdparts=" MTDPARTS_DEFAULT "\0"			\ +	"setbootparms=nand read c0100000 200000 400000;"	\ +		"spl export atags c0100000;"			\ +		"nand erase.part bootparms;"			\ +		"nand write c0000100 180000 20000\0"		\ +	"\0" + +/* + * U-Boot commands + */ +#include <config_cmd_default.h> +#define CONFIG_CMD_ENV +#define CONFIG_CMD_ASKENV +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_DIAG +#define CONFIG_CMD_MII +#define CONFIG_CMD_PING +#define CONFIG_CMD_SAVES +#define CONFIG_CMD_MEMORY + +#ifdef CONFIG_CMD_BDI +#define CONFIG_CLOCKS +#endif + +#ifndef CONFIG_DRIVER_TI_EMAC +#undef CONFIG_CMD_NET +#undef CONFIG_CMD_DHCP +#undef CONFIG_CMD_MII +#undef CONFIG_CMD_PING +#endif + +#define CONFIG_CMD_NAND +#define CONFIG_CMD_NAND_TRIMFFS + +#define CONFIG_CMD_MTDPARTS +#define CONFIG_MTD_DEVICE +#define CONFIG_MTD_PARTITIONS +#define CONFIG_LZO +#define CONFIG_RBTREE +#define CONFIG_CMD_UBI +#define CONFIG_CMD_UBIFS + +#define MTDIDS_NAME_STR		"davinci_nand.0" +#define MTDIDS_DEFAULT		"nand0=" MTDIDS_NAME_STR +#define MTDPARTS_DEFAULT	"mtdparts=" MTDIDS_NAME_STR ":" \ +					"128k(u-boot-env),"	\ +					"1408k(u-boot),"	\ +					"128k(bootparms),"	\ +					"384k(factory-info),"	\ +					"4M(kernel),"	\ +					"-(rootfs)" + +/* defines for SPL */ +#define CONFIG_SPL +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_BOARD_INIT +#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE - \ +						CONFIG_SYS_MALLOC_LEN) +#define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN +#define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_LDSCRIPT	"board/$(BOARDDIR)/u-boot-spl-ipam390.lds" +#define CONFIG_SPL_STACK	0x8001ff00 +#define CONFIG_SPL_TEXT_BASE	0x80000000 +#define CONFIG_SPL_MAX_SIZE	0x20000 +#define CONFIG_SPL_MAX_FOOTPRINT	32768 + +/* additions for new relocation code, must added to all boards */ +#define CONFIG_SYS_SDRAM_BASE		0xc0000000 + +#define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x1000 - \ +					GENERATED_GBL_DATA_SIZE) + +/* add FALCON boot mode */ +#define CONFIG_CMD_SPL +#define CONFIG_SPL_OS_BOOT +#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 +#define CONFIG_SYS_SPL_ARGS_ADDR	LINUX_BOOT_PARAM_ADDR +#define CONFIG_CMD_SPL_NAND_OFS		0x00180000 +#define CONFIG_CMD_SPL_WRITE_SIZE	0x400 + +/* GPIO support */ +#define CONFIG_SPL_GPIO_SUPPORT +#define CONFIG_DA8XX_GPIO +#define CONFIG_IPAM390_GPIO_BOOTMODE	((16 * 7) + 14) + +#define CONFIG_SHOW_BOOT_PROGRESS +#define CONFIG_IPAM390_GPIO_LED_RED	((16 * 7) + 11) +#define CONFIG_IPAM390_GPIO_LED_GREEN	((16 * 7) + 12) + +#endif /* __CONFIG_H */ diff --git a/include/configs/linkstation.h b/include/configs/linkstation.h index 2ec776174..932dac36a 100644 --- a/include/configs/linkstation.h +++ b/include/configs/linkstation.h @@ -95,7 +95,17 @@  #define CONFIG_CMD_PING  #define CONFIG_CMD_EXT2 -#define CONFIG_BOOTP_MASK	CONFIG_BOOTP_ALL +#define CONFIG_BOOTP_SUBNETMASK +#define CONFIG_BOOTP_GATEWAY +#define CONFIG_BOOTP_HOSTNAME +#define CONFIG_BOOTP_NISDOMAIN +#define CONFIG_BOOTP_BOOTPATH +#define CONFIG_BOOTP_BOOTFILESIZE +#define CONFIG_BOOTP_DNS +#define CONFIG_BOOTP_DNS2 +#define CONFIG_BOOTP_SEND_HOSTNAME +#define CONFIG_BOOTP_NTPSERVER +#define CONFIG_BOOTP_TIMEOFFSET  #define CONFIG_OF_LIBFDT	1 diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h index fd3ae028d..eba875954 100644 --- a/include/configs/m28evk.h +++ b/include/configs/m28evk.h @@ -4,43 +4,17 @@   *   * SPDX-License-Identifier:	GPL-2.0+    */ -#ifndef __M28EVK_CONFIG_H__ -#define __M28EVK_CONFIG_H__ +#ifndef __CONFIGS_M28EVK_H__ +#define __CONFIGS_M28EVK_H__ -/* - * SoC configurations - */ -#define CONFIG_MX28				/* i.MX28 SoC */ -#define CONFIG_MXS_GPIO				/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ -/* - * Define M28EVK machine type by hand until it lands in mach-types - */ +/* System configurations */ +#define CONFIG_MX28				/* i.MX28 SoC */  #define MACH_TYPE_M28EVK	3613 -  #define CONFIG_MACH_TYPE	MACH_TYPE_M28EVK -#include <asm/arch/regs-base.h> - +/* U-Boot Commands */  #define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_MISC_INIT - -/* - * SPL - */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH		"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT - -/* - * U-Boot Commands - */  #include <config_cmd_default.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DOS_PARTITION @@ -69,86 +43,18 @@  #define CONFIG_REGEX			/* Enable regular expression support */ -/* - * Memory configurations - */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x20000000	/* Max 512 MB RAM */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_GBL_DATA_SIZE	128		/* Initial data */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ - -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE		0x40000100 - -/* - * 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_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ - -/* - * MMC Driver - */ -#ifdef	CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_GENERIC_MMC -#define CONFIG_MXS_MMC -#endif -/* - * APBH DMA - */ -#define CONFIG_APBH_DMA - -/* - * NAND - */ +/* Environment */  #define CONFIG_ENV_SIZE			(16 * 1024) -#ifdef	CONFIG_CMD_NAND -#define CONFIG_NAND_MXS -#define CONFIG_SYS_MAX_NAND_DEVICE	1 -#define CONFIG_SYS_NAND_BASE		0x60000000 -#define CONFIG_SYS_NAND_5_ADDR_CYCLE +#define CONFIG_ENV_IS_IN_NAND  /* Environment is in NAND */ -#define CONFIG_ENV_IS_IN_NAND +#if defined(CONFIG_CMD_NAND) && defined(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) @@ -177,40 +83,22 @@  #define CONFIG_ENV_IS_NOWHERE  #endif -/* - * Ethernet on SOC (FEC) - */ -#ifdef	CONFIG_CMD_NET -#define CONFIG_ETHPRIME			"FEC0" +/* FEC Ethernet on SoC */ +#ifdef CONFIG_CMD_NET  #define CONFIG_FEC_MXC -#define CONFIG_MII -#define CONFIG_FEC_XCV_TYPE		RMII  #endif -/* - * I2C - */ -#ifdef	CONFIG_CMD_I2C -#define CONFIG_I2C_MXS -#define CONFIG_HARD_I2C -#define CONFIG_SYS_I2C_SPEED		400000 -#endif - -/* - * EEPROM - */ -#ifdef	CONFIG_CMD_EEPROM +/* EEPROM */ +#ifdef CONFIG_CMD_EEPROM  #define CONFIG_SYS_I2C_MULTI_EEPROMS  #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2  #endif -/* - * RTC - */ -#ifdef	CONFIG_CMD_DATE +/* RTC */ +#ifdef CONFIG_CMD_DATE  /* Use the internal RTC in the MXS chip */  #define CONFIG_RTC_INTERNAL -#ifdef	CONFIG_RTC_INTERNAL +#ifdef CONFIG_RTC_INTERNAL  #define CONFIG_RTC_MXS  #else  #define CONFIG_RTC_M41T62 @@ -219,32 +107,22 @@  #endif  #endif -/* - * USB - */ -#ifdef	CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MXS +/* USB */ +#ifdef CONFIG_CMD_USB  #define CONFIG_EHCI_MXS_PORT0  #define CONFIG_EHCI_MXS_PORT1  #define CONFIG_USB_MAX_CONTROLLER_COUNT	2 -#define CONFIG_EHCI_IS_TDI  #define CONFIG_USB_STORAGE  #endif -/* - * SPI - */ -#ifdef	CONFIG_CMD_SPI -#define CONFIG_HARD_SPI -#define CONFIG_MXS_SPI -#define CONFIG_SPI_HALF_DUPLEX +/* SPI */ +#ifdef CONFIG_CMD_SPI  #define CONFIG_DEFAULT_SPI_BUS		2  #define CONFIG_DEFAULT_SPI_CS		0  #define CONFIG_DEFAULT_SPI_MODE		SPI_MODE_0  /* SPI FLASH */ -#ifdef	CONFIG_CMD_SF +#ifdef CONFIG_CMD_SF  #define CONFIG_SPI_FLASH  #define CONFIG_SPI_FLASH_STMICRO  #define CONFIG_SF_DEFAULT_BUS		2 @@ -257,18 +135,12 @@  #define CONFIG_ENV_SPI_MAX_HZ		40000000  #define CONFIG_ENV_SPI_MODE		SPI_MODE_0  #endif +  #endif -/* - * LCD - */ -#ifdef	CONFIG_VIDEO -#define	CONFIG_CFB_CONSOLE -#define	CONFIG_VIDEO_MXS +/* LCD */ +#ifdef CONFIG_VIDEO  #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 @@ -277,22 +149,15 @@  #define	CONFIG_SYS_VIDEO_LOGO_MAX_SIZE	(512 << 10)  #endif -/* - * Boot Linux - */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS +/* Booting Linux */  #define CONFIG_BOOTDELAY	3  #define CONFIG_BOOTFILE		"uImage"  #define CONFIG_BOOTARGS		"console=ttyAMA0,115200n8 "  #define CONFIG_BOOTCOMMAND	"run bootcmd_net"  #define CONFIG_LOADADDR		0x42000000  #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR -#define CONFIG_OF_LIBFDT -/* - * Extra Environments - */ +/* Extra Environment */  #define CONFIG_EXTRA_ENV_SETTINGS					\  	"update_nand_full_filename=u-boot.nand\0"			\  	"update_nand_firmware_filename=u-boot.sb\0"			\ @@ -333,4 +198,7 @@  		"fi ; "							\  		"fi\0" -#endif /* __M28EVK_CONFIG_H__ */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_M28EVK_H__ */ diff --git a/include/configs/mcx.h b/include/configs/mcx.h index c2b16316f..5e27ab2e4 100644 --- a/include/configs/mcx.h +++ b/include/configs/mcx.h @@ -16,6 +16,7 @@  #define CONFIG_OMAP34XX			/* which is a 34XX */  #define CONFIG_OMAP3_MCX		/* working with mcx */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define MACH_TYPE_MCX			3656  #define CONFIG_MACH_TYPE	MACH_TYPE_MCX @@ -408,7 +409,6 @@  #define CONFIG_DRIVER_TI_EMAC  #define CONFIG_DRIVER_TI_EMAC_USE_RMII  #define CONFIG_MII -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/mx23_olinuxino.h b/include/configs/mx23_olinuxino.h index 94bedd6d2..575fe2a22 100644 --- a/include/configs/mx23_olinuxino.h +++ b/include/configs/mx23_olinuxino.h @@ -3,40 +3,15 @@   *   * SPDX-License-Identifier:	GPL-2.0+    */ -#ifndef __MX23_OLINUXINO_CONFIG_H__ -#define __MX23_OLINUXINO_CONFIG_H__ +#ifndef __CONFIGS_MX23_OLINUXINO_H__ +#define __CONFIGS_MX23_OLINUXINO_H__ -#include <asm/arch/iomux-mx23.h> - -/* - * SoC configurations - */ +/* System configurations */  #define CONFIG_MX23				/* i.MX23 SoC */ -#define CONFIG_MXS_GPIO				/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ -  #define CONFIG_MACH_TYPE	4105 -#include <asm/arch/regs-base.h> - +/* U-Boot Commands */  #define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_MISC_INIT - -/* - * SPL - */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH		"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT - -/* - * U-Boot Commands - */  #include <config_cmd_default.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DOS_PARTITION @@ -51,92 +26,36 @@  #define CONFIG_CMD_NET  #define CONFIG_CMD_USB -/* - * Memory configurations - */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x08000000	/* Max 128 MB RAM */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_GBL_DATA_SIZE	128		/* Initial data */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ - -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE		0x40000100 -/* - * 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 +/* Environment */ +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_OVERWRITE -/* - * Serial Driver - */ -#define CONFIG_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ +/* Environment is in MMC */ +#if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) +#define CONFIG_ENV_OFFSET	(256 * 1024) +#define CONFIG_ENV_SIZE		(16 * 1024) +#define CONFIG_SYS_MMC_ENV_DEV	0 +#endif -/* - * Status LED - */ +/* Status LED */  #define CONFIG_STATUS_LED  #define CONFIG_GPIO_LED  #define CONFIG_BOARD_SPECIFIC_LED -#define STATUS_LED_BOOT	0 -#define STATUS_LED_BIT	MX23_PAD_SSP1_DETECT__GPIO_2_1 +#define STATUS_LED_BOOT		0 +#define STATUS_LED_BIT		MX23_PAD_SSP1_DETECT__GPIO_2_1  #define STATUS_LED_STATE	STATUS_LED_ON  #define STATUS_LED_PERIOD	(CONFIG_SYS_HZ / 2) -/* - * MMC Driver - */ -#ifdef CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_GENERIC_MMC -#define CONFIG_MXS_MMC -#endif - -/* - * APBH DMA - */ -#define CONFIG_APBH_DMA -  /* USB */  #ifdef CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MXS  #define CONFIG_EHCI_MXS_PORT0  #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 -#define CONFIG_EHCI_IS_TDI  #define CONFIG_USB_STORAGE  #endif @@ -146,31 +65,13 @@  #define CONFIG_USB_ETHER_SMSC95XX  #endif -/* - * Boot Linux - */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS +/* Booting Linux */  #define CONFIG_BOOTDELAY	3  #define CONFIG_BOOTFILE		"uImage"  #define CONFIG_LOADADDR		0x42000000  #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR -#define CONFIG_OF_LIBFDT -/* - * Environment - */ -#define CONFIG_ENV_IS_IN_MMC -#define CONFIG_ENV_OVERWRITE -#ifdef CONFIG_ENV_IS_IN_MMC -#define CONFIG_ENV_OFFSET	(256 * 1024) -#define CONFIG_ENV_SIZE	(16 * 1024) -#define CONFIG_SYS_MMC_ENV_DEV 0 -#endif - -/* - * Extra Environments - */ +/* Extra Environment */  #define CONFIG_EXTRA_ENV_SETTINGS \  	"update_sd_firmware_filename=u-boot.sd\0" \  	"update_sd_firmware="		/* Update the SD firmware partition */ \ @@ -252,4 +153,7 @@  		"fi; " \  	"else run netboot; fi" -#endif /* __MX23_OLINUXINO_CONFIG_H__ */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_MX23_OLINUXINO_H__ */ diff --git a/include/configs/mx23evk.h b/include/configs/mx23evk.h index 2380649e0..1b40a36fc 100644 --- a/include/configs/mx23evk.h +++ b/include/configs/mx23evk.h @@ -6,33 +6,15 @@   *   * SPDX-License-Identifier:	GPL-2.0+   */ -#ifndef __MX23EVK_CONFIG_H__ -#define __MX23EVK_CONFIG_H__ +#ifndef __CONFIGS_MX23EVK_H__ +#define __CONFIGS_MX23EVK_H__ -/* SoC configurations */ +/* System configurations */  #define CONFIG_MX23				/* i.MX23 SoC */ - -#include <asm/arch/regs-base.h> - -#define CONFIG_MXS_GPIO			/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ -  #define CONFIG_MACH_TYPE	MACH_TYPE_MX23EVK -#define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_MISC_INIT - -/* SPL */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH	"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -  /* U-Boot Commands */ +#define CONFIG_SYS_NO_FLASH  #include <config_cmd_default.h>  #undef CONFIG_CMD_NET  #undef CONFIG_CMD_NFS @@ -49,86 +31,33 @@  #define CONFIG_CMD_BOOTZ  #define CONFIG_VIDEO -/* Memory configurations */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x08000000	/* Max 128 MB RAM */ -#define CONFIG_STACKSIZE		(128 * 1024)	/* 128 KB stack */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ - -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) - -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE	0x40000100 +/* Environment */  #define CONFIG_ENV_OVERWRITE +#define CONFIG_ENV_IS_IN_MMC -/* U-Boot general configurations */ -#define CONFIG_SYS_LONGHELP -#define CONFIG_SYS_PROMPT	"=> " -#define CONFIG_SYS_CBSIZE	256		/* 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 -#define CONFIG_SYS_PROMPT_HUSH_PS2	"> " - -/* Serial Driver */ -#define CONFIG_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ - -/* DMA */ -#define CONFIG_APBH_DMA - -/* MMC Driver */ -#ifdef	CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_MXS_MMC +/* Environment is in MMC */ +#if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) +#define CONFIG_ENV_OFFSET	(256 * 1024) +#define CONFIG_ENV_SIZE		(16 * 1024) +#define CONFIG_SYS_MMC_ENV_DEV	0  #endif  /* USB */  #ifdef	CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MXS  #define CONFIG_EHCI_MXS_PORT0  #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 -#define CONFIG_EHCI_IS_TDI  #define CONFIG_USB_STORAGE  #endif  /* Framebuffer support */  #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 @@ -138,21 +67,10 @@  #endif  /* Boot Linux */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_BOOTDELAY	1 -#define CONFIG_BOOTFILE	"uImage" -#define CONFIG_LOADADDR	0x42000000 +#define CONFIG_BOOTFILE		"uImage" +#define CONFIG_LOADADDR		0x42000000  #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR -#define CONFIG_OF_LIBFDT - -/* Environment */ -#define CONFIG_ENV_IS_IN_MMC -#ifdef CONFIG_ENV_IS_IN_MMC - #define CONFIG_ENV_OFFSET	(256 * 1024) - #define CONFIG_ENV_SIZE	(16 * 1024) - #define CONFIG_SYS_MMC_ENV_DEV 0 -#endif  /* Extra Environments */  #define CONFIG_EXTRA_ENV_SETTINGS \ @@ -211,4 +129,7 @@  		"fi; " \  	"else exit; fi" -#endif /* __MX23EVK_CONFIG_H__ */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_MX23EVK_H__ */ diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h index 885e513f9..07f88ca4c 100644 --- a/include/configs/mx28evk.h +++ b/include/configs/mx28evk.h @@ -8,33 +8,16 @@   *   * SPDX-License-Identifier:	GPL-2.0+   */ -#ifndef __MX28EVK_CONFIG_H__ -#define __MX28EVK_CONFIG_H__ +#ifndef __CONFIGS_MX28EVK_H__ +#define __CONFIGS_MX28EVK_H__ -/* SoC configurations */ +/* System configurations */  #define CONFIG_MX28				/* i.MX28 SoC */ - -#define CONFIG_MXS_GPIO			/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ -  #define CONFIG_MACH_TYPE	MACH_TYPE_MX28EVK - -#include <asm/arch/regs-base.h> - -#define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_MISC_INIT - -/* SPL */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH	"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT +#define CONFIG_SYS_PROMPT	"MX28EVK U-Boot > "  /* U-Boot Commands */ +#define CONFIG_SYS_NO_FLASH  #include <config_cmd_default.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DOS_PARTITION @@ -49,6 +32,7 @@  #define CONFIG_CMD_NET  #define CONFIG_CMD_NFS  #define CONFIG_CMD_PING +#define CONFIG_CMD_SAVEENV  #define CONFIG_CMD_SETEXPR  #define CONFIG_CMD_SF  #define CONFIG_CMD_SPI @@ -58,81 +42,24 @@  #define CONFIG_CMD_NAND_TRIMFFS  #define CONFIG_VIDEO -/* Memory configurations */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x40000000	/* Max 1 GB RAM */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ - -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) - -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE	0x40000100 +/* Environment */ +#define CONFIG_ENV_SIZE			(16 * 1024)  #define CONFIG_ENV_OVERWRITE -/* U-Boot general configurations */ -#define CONFIG_SYS_LONGHELP -#define CONFIG_SYS_PROMPT	"MX28EVK U-Boot > " -#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_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ -/* DMA */ -#define CONFIG_APBH_DMA - -/* MMC Driver */ -#ifdef CONFIG_ENV_IS_IN_MMC - #define CONFIG_ENV_OFFSET	(256 * 1024) - #define CONFIG_ENV_SIZE	(16 * 1024) - #define CONFIG_SYS_MMC_ENV_DEV 0 -#endif -#define CONFIG_CMD_SAVEENV -#ifdef	CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_MXS_MMC +/* Environment is in MMC */ +#if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) +#define CONFIG_ENV_OFFSET		(256 * 1024) +#define CONFIG_SYS_MMC_ENV_DEV		0  #endif -/* NAND Driver */ -#define CONFIG_ENV_SIZE			(16 * 1024) -#ifdef CONFIG_CMD_NAND -#define CONFIG_NAND_MXS -#define CONFIG_SYS_MAX_NAND_DEVICE	1 -#define CONFIG_SYS_NAND_BASE		0x60000000 -#define CONFIG_SYS_NAND_5_ADDR_CYCLE -  /* Environment is in NAND */ -#ifdef CONFIG_ENV_IS_IN_NAND +#if defined(CONFIG_CMD_NAND) && defined(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) @@ -141,6 +68,21 @@  		(CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE)  #endif +/* Environemnt is in SPI flash */ +#if defined(CONFIG_CMD_SF) && defined(CONFIG_ENV_IS_IN_SPI_FLASH) +#define CONFIG_SYS_REDUNDAND_ENVIRONMENT +#define CONFIG_ENV_SIZE			0x1000		/* 4KB */ +#define CONFIG_ENV_OFFSET		0x40000		/* 256K */ +#define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) +#define CONFIG_ENV_SECT_SIZE		0x1000 +#define CONFIG_ENV_SPI_CS		0 +#define CONFIG_ENV_SPI_BUS		2 +#define CONFIG_ENV_SPI_MAX_HZ		24000000 +#define CONFIG_ENV_SPI_MODE		SPI_MODE_0 +#endif + +/* UBI and NAND partitioning */ +#ifdef CONFIG_CMD_NAND  #define CONFIG_CMD_UBI  #define CONFIG_CMD_UBIFS  #define CONFIG_CMD_MTDPARTS @@ -160,13 +102,10 @@  		"-(filesystem)"  #endif -/* Ethernet on SOC (FEC) */ +/* FEC Ethernet on SoC */  #ifdef	CONFIG_CMD_NET -#define CONFIG_NET_MULTI -#define CONFIG_ETHPRIME	"FEC0"  #define CONFIG_FEC_MXC -#define CONFIG_MII -#define CONFIG_FEC_XCV_TYPE	RMII +#define CONFIG_NET_MULTI  #define CONFIG_MX28_FEC_MAC_IN_OCOTP  #endif @@ -177,65 +116,35 @@  /* USB */  #ifdef	CONFIG_CMD_USB -#define	CONFIG_USB_EHCI -#define	CONFIG_USB_EHCI_MXS  #define CONFIG_EHCI_MXS_PORT1  #define CONFIG_USB_MAX_CONTROLLER_COUNT	1 -#define	CONFIG_EHCI_IS_TDI  #define	CONFIG_USB_STORAGE  #define	CONFIG_USB_HOST_ETHER  #define	CONFIG_USB_ETHER_ASIX  #define	CONFIG_USB_ETHER_SMSC95XX  #endif -/* I2C */ -#ifdef CONFIG_CMD_I2C -#define CONFIG_I2C_MXS -#define CONFIG_HARD_I2C -#define CONFIG_SYS_I2C_SPEED	400000 -#endif -  /* SPI */  #ifdef CONFIG_CMD_SPI -#define CONFIG_HARD_SPI -#define CONFIG_MXS_SPI -#define CONFIG_SPI_HALF_DUPLEX  #define CONFIG_DEFAULT_SPI_BUS		2  #define CONFIG_DEFAULT_SPI_MODE		SPI_MODE_0  /* SPI Flash */  #ifdef CONFIG_CMD_SF  #define CONFIG_SPI_FLASH -#define CONFIG_SF_DEFAULT_BUS	2 -#define CONFIG_SF_DEFAULT_CS	0 +#define CONFIG_SF_DEFAULT_BUS		2 +#define CONFIG_SF_DEFAULT_CS		0  /* this may vary and depends on the installed chip */  #define CONFIG_SPI_FLASH_SST  #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0  #define CONFIG_SF_DEFAULT_SPEED		24000000 - -/* (redundant) environemnt in SPI flash */ -#ifdef CONFIG_ENV_IS_IN_SPI_FLASH -#define CONFIG_SYS_REDUNDAND_ENVIRONMENT -#define CONFIG_ENV_SIZE			0x1000		/* 4KB */ -#define CONFIG_ENV_OFFSET		0x40000		/* 256K */ -#define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) -#define CONFIG_ENV_SECT_SIZE		0x1000 -#define CONFIG_ENV_SPI_CS		0 -#define CONFIG_ENV_SPI_BUS		2 -#define CONFIG_ENV_SPI_MAX_HZ		24000000 -#define CONFIG_ENV_SPI_MODE		SPI_MODE_0 -#endif  #endif +  #endif  /* Framebuffer support */  #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 @@ -245,15 +154,12 @@  #endif  /* Boot Linux */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS  #define CONFIG_BOOTDELAY	1 -#define CONFIG_BOOTFILE	"uImage" -#define CONFIG_LOADADDR	0x42000000 +#define CONFIG_BOOTFILE		"uImage" +#define CONFIG_LOADADDR		0x42000000  #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR -#define CONFIG_OF_LIBFDT -/* Extra Environments */ +/* Extra Environment */  #define CONFIG_EXTRA_ENV_SETTINGS \  	"update_nand_full_filename=u-boot.nand\0" \  	"update_nand_firmware_filename=u-boot.sb\0"	\ @@ -364,4 +270,7 @@  		"fi; " \  	"else run netboot; fi" -#endif /* __MX28EVK_CONFIG_H__ */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_MX28EVK_H__ */ diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h deleted file mode 100644 index 511db7360..000000000 --- a/include/configs/mx6qsabrelite.h +++ /dev/null @@ -1,284 +0,0 @@ -/* - * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. - * - * Configuration settings for the Freescale i.MX6Q Sabre Lite board. - * - * SPDX-License-Identifier:	GPL-2.0+ - */ - -#ifndef __CONFIG_H -#define __CONFIG_H - -#define CONFIG_MX6 -#define CONFIG_MX6Q - -#include "mx6_common.h" - -#define CONFIG_DISPLAY_CPUINFO -#define CONFIG_DISPLAY_BOARDINFO - -#define CONFIG_MACH_TYPE	3769 - -#include <asm/arch/imx-regs.h> -#include <asm/imx-common/gpio.h> - -#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		(10 * 1024 * 1024) - -#define CONFIG_BOARD_EARLY_INIT_F -#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 - -#define CONFIG_CMD_SF -#ifdef CONFIG_CMD_SF -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_SST -#define CONFIG_MXC_SPI -#define CONFIG_SF_DEFAULT_BUS  0 -#define CONFIG_SF_DEFAULT_CS   (0|(IMX_GPIO_NR(3, 19)<<8)) -#define CONFIG_SF_DEFAULT_SPEED 25000000 -#define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0) -#endif - -/* 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       2 - -#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_SATA -/* - * SATA Configs - */ -#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_ARB_BASE_ADDR -#define CONFIG_LBA48 -#define CONFIG_LIBATA -#endif - -#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_ETHPRIME			"FEC" -#define CONFIG_FEC_MXC_PHYADDR		6 -#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_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 - -/* Miscellaneous commands */ -#define CONFIG_CMD_BMODE - -/* Framebuffer and LCD */ -#define CONFIG_VIDEO -#define CONFIG_VIDEO_IPUV3 -#define CONFIG_CFB_CONSOLE -#define CONFIG_VGA_AS_SINGLE_DEVICE -#define CONFIG_SYS_CONSOLE_IS_IN_ENV -#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE -#define CONFIG_VIDEO_BMP_RLE8 -#define CONFIG_SPLASH_SCREEN -#define CONFIG_BMP_16BPP -#define CONFIG_VIDEO_LOGO -#define CONFIG_IPUV3_CLK 260000000 - -/* 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	       1 - -#define CONFIG_PREBOOT                 "" - -#define CONFIG_LOADADDR			       0x12000000 -#define CONFIG_SYS_TEXT_BASE	       0x17800000 - -#define CONFIG_EXTRA_ENV_SETTINGS \ -	"script=boot.scr\0" \ -	"uimage=uImage\0" \ -	"console=ttymxc1\0" \ -	"fdt_high=0xffffffff\0" \ -	"initrd_high=0xffffffff\0" \ -	"fdt_file=imx6q-sabrelite.dtb\0" \ -	"fdt_addr=0x11000000\0" \ -	"boot_fdt=try\0" \ -	"ip_dyn=yes\0" \ -	"mmcdev=0\0" \ -	"mmcpart=1\0" \ -	"mmcroot=/dev/mmcblk0p2 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}; 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	       "MX6QSABRELITE U-Boot > " -#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       0x10000000 -#define CONFIG_SYS_MEMTEST_END	       0x10010000 -#define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000 - -#define CONFIG_SYS_LOAD_ADDR	       CONFIG_LOADADDR -#define CONFIG_SYS_HZ		       1000 - -#define CONFIG_CMDLINE_EDITING - -/* Physical Memory Map */ -#define CONFIG_NR_DRAM_BANKS	       1 -#define PHYS_SDRAM		       MMDC0_ARB_BASE_ADDR -#define PHYS_SDRAM_SIZE			       (1u * 1024 * 1024 * 1024) - -#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_SIZE			(8 * 1024) - -#define CONFIG_ENV_IS_IN_MMC -/* #define CONFIG_ENV_IS_IN_SPI_FLASH */ - -#if defined(CONFIG_ENV_IS_IN_MMC) -#define CONFIG_ENV_OFFSET		(6 * 64 * 1024) -#define CONFIG_SYS_MMC_ENV_DEV		0 -#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH) -#define CONFIG_ENV_OFFSET		(768 * 1024) -#define CONFIG_ENV_SECT_SIZE		(8 * 1024) -#define CONFIG_ENV_SPI_BUS		CONFIG_SF_DEFAULT_BUS -#define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS -#define CONFIG_ENV_SPI_MODE		CONFIG_SF_DEFAULT_MODE -#define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED -#endif - -#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/mx6sabre_common.h b/include/configs/mx6sabre_common.h index dad8618c0..bf6113b2a 100644 --- a/include/configs/mx6sabre_common.h +++ b/include/configs/mx6sabre_common.h @@ -12,6 +12,7 @@  #define CONFIG_MX6  #include "mx6_common.h" +#include <asm/sizes.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DISPLAY_BOARDINFO @@ -24,7 +25,7 @@  #define CONFIG_REVISION_TAG  /* Size of malloc() pool */ -#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 2 * 1024 * 1024) +#define CONFIG_SYS_MALLOC_LEN		(10 * SZ_1M)  #define CONFIG_BOARD_EARLY_INIT_F  #define CONFIG_BOARD_LATE_INIT diff --git a/include/configs/mx6sabresd.h b/include/configs/mx6sabresd.h index 57e1860b1..a3dd74a4a 100644 --- a/include/configs/mx6sabresd.h +++ b/include/configs/mx6sabresd.h @@ -9,6 +9,9 @@  #ifndef __MX6QSABRESD_CONFIG_H  #define __MX6QSABRESD_CONFIG_H +#include <asm/arch/imx-regs.h> +#include <asm/imx-common/gpio.h> +  #define CONFIG_MACH_TYPE	3980  #define CONFIG_MXC_UART_BASE	UART1_BASE  #define CONFIG_CONSOLE_DEV		"ttymxc0" @@ -23,4 +26,20 @@  #define CONFIG_SYS_MMC_ENV_DEV		1	/* SDHC3 */  #endif +/* Framebuffer */ +#define CONFIG_VIDEO +#define CONFIG_VIDEO_IPUV3 +#define CONFIG_CFB_CONSOLE +#define CONFIG_VGA_AS_SINGLE_DEVICE +#define CONFIG_SYS_CONSOLE_IS_IN_ENV +#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE +#define CONFIG_VIDEO_BMP_RLE8 +#define CONFIG_SPLASH_SCREEN +#define CONFIG_SPLASH_SCREEN_ALIGN +#define CONFIG_BMP_16BPP +#define CONFIG_VIDEO_LOGO +#define CONFIG_VIDEO_BMP_LOGO +#define CONFIG_IPUV3_CLK 260000000 +#define CONFIG_IMX_HDMI +  #endif                         /* __MX6QSABRESD_CONFIG_H */ diff --git a/include/configs/mxs.h b/include/configs/mxs.h new file mode 100644 index 000000000..a68416650 --- /dev/null +++ b/include/configs/mxs.h @@ -0,0 +1,191 @@ +/* + * Copyright (C) 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 __CONFIGS_MXS_H__ +#define __CONFIGS_MXS_H__ + +/* + * Includes + */ + +#if defined(CONFIG_MX23) && defined(CONFIG_MX28) +#error Select either CONFIG_MX23 or CONFIG_MX28 , never both! +#elif !defined(CONFIG_MX23) && !defined(CONFIG_MX28) +#error Select one of CONFIG_MX23 or CONFIG_MX28 ! +#endif + +#include <asm/arch/regs-base.h> + +#if defined(CONFIG_MX23) +#include <asm/arch/iomux-mx23.h> +#elif defined(CONFIG_MX28) +#include <asm/arch/iomux-mx28.h> +#endif + +/* + * CPU specifics + */ + +/* Ticks per second */ +#define CONFIG_SYS_HZ		1000 + +/* MXS uses FDT */ +#define CONFIG_OF_LIBFDT + +/* Startup hooks */ +#define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_ARCH_MISC_INIT + +/* SPL */ +#define CONFIG_SPL +#define CONFIG_SPL_NO_CPU_SUPPORT_CODE +#define CONFIG_SPL_START_S_PATH	"arch/arm/cpu/arm926ejs/mxs" +#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" +#define CONFIG_SPL_LIBCOMMON_SUPPORT +#define CONFIG_SPL_LIBGENERIC_SUPPORT +#define CONFIG_SPL_GPIO_SUPPORT + +/* Memory sizes */ +#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ +#define CONFIG_SYS_GBL_DATA_SIZE	128		/* Initial data */ +#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ +#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */ + +/* OCRAM at 0x0 ; 32kB on MX23 ; 128kB on MX28 */ +#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 +#if defined(CONFIG_MX23) +#define CONFIG_SYS_INIT_RAM_SIZE	(32 * 1024) +#elif defined(CONFIG_MX28) +#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) +#endif + +/* Point initial SP in SRAM so SPL can use it too. */ +#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) + +/* + * We need to sacrifice first 4 bytes of RAM here to avoid triggering some + * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot + * binary. In case there was more of this mess, 0x100 bytes are skipped. + */ +#define CONFIG_SYS_TEXT_BASE		0x40000100 + +/* U-Boot general configuration */ +#define CONFIG_SYS_LONGHELP +#ifndef CONFIG_SYS_PROMPT +#define CONFIG_SYS_PROMPT	"=> " +#endif +#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 +#define CONFIG_SYS_PROMPT_HUSH_PS2	"> " + +/* Booting Linux */ +#define CONFIG_CMDLINE_TAG +#define CONFIG_SETUP_MEMORY_TAGS + +/* + * Drivers + */ + +/* APBH DMA */ +#define CONFIG_APBH_DMA + +/* GPIO */ +#define CONFIG_MXS_GPIO + +/* DUART Serial Driver */ +#define CONFIG_PL011_SERIAL +#define CONFIG_PL011_CLOCK		24000000 +#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } +#define CONFIG_CONS_INDEX		0 +/* Default baudrate can be overriden by board! */ +#ifndef CONFIG_BAUDRATE +#define CONFIG_BAUDRATE			115200 +#endif + +/* FEC Ethernet on SoC */ +#ifdef CONFIG_FEC_MXC +#define CONFIG_MII +#ifndef CONFIG_ETHPRIME +#define CONFIG_ETHPRIME			"FEC0" +#endif +#ifndef CONFIG_FEC_XCV_TYPE +#define CONFIG_FEC_XCV_TYPE		RMII +#endif +#endif + +/* I2C */ +#ifdef CONFIG_CMD_I2C +#define CONFIG_I2C_MXS +#define CONFIG_HARD_I2C +#ifndef CONFIG_SYS_I2C_SPEED +#define CONFIG_SYS_I2C_SPEED		400000 +#endif +#endif + +/* LCD */ +#ifdef CONFIG_VIDEO +#define CONFIG_CFB_CONSOLE +#define CONFIG_VIDEO_MXS +#define CONFIG_VIDEO_SW_CURSOR +#define CONFIG_VGA_AS_SINGLE_DEVICE +#define CONFIG_SYS_CONSOLE_IS_IN_ENV +#endif + +/* MMC */ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_BOUNCE_BUFFER +#define CONFIG_MXS_MMC +#endif + +/* NAND */ +#ifdef CONFIG_CMD_NAND +#define CONFIG_NAND_MXS +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#define CONFIG_SYS_NAND_BASE		0x60000000 +#define CONFIG_SYS_NAND_5_ADDR_CYCLE +#endif + +/* SPI */ +#ifdef CONFIG_CMD_SPI +#define CONFIG_HARD_SPI +#define CONFIG_MXS_SPI +#define CONFIG_SPI_HALF_DUPLEX +#endif + +/* USB */ +#ifdef CONFIG_CMD_USB +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_MXS +#define CONFIG_EHCI_IS_TDI +#endif + +#endif	/* __CONFIGS_MXS_H__ */ diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h index 424241426..3454b862a 100644 --- a/include/configs/nitrogen6x.h +++ b/include/configs/nitrogen6x.h @@ -141,6 +141,7 @@  #define CONFIG_IPUV3_CLK 260000000  #define CONFIG_CMD_HDMIDETECT  #define CONFIG_CONSOLE_MUX +#define CONFIG_IMX_HDMI  /* allow to overwrite serial and ethaddr */  #define CONFIG_ENV_OVERWRITE @@ -173,6 +174,80 @@  #define CONFIG_DRIVE_TYPES CONFIG_DRIVE_SATA CONFIG_DRIVE_MMC +#if defined(CONFIG_SABRELITE) +#define CONFIG_EXTRA_ENV_SETTINGS \ +	"script=boot.scr\0" \ +	"uimage=uImage\0" \ +	"console=ttymxc1\0" \ +	"fdt_high=0xffffffff\0" \ +	"initrd_high=0xffffffff\0" \ +	"fdt_file=imx6q-sabrelite.dtb\0" \ +	"fdt_addr=0x11000000\0" \ +	"boot_fdt=try\0" \ +	"ip_dyn=yes\0" \ +	"mmcdev=0\0" \ +	"mmcpart=1\0" \ +	"mmcroot=/dev/mmcblk0p2 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}; 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" +#else  #define CONFIG_EXTRA_ENV_SETTINGS \  	"console=ttymxc1\0" \  	"clearenv=if sf probe || sf probe || sf probe 1 ; then " \ @@ -206,6 +281,7 @@  		"done ; " \  	"done\0" \ +#endif  /* Miscellaneous configurable options */  #define CONFIG_SYS_LONGHELP  #define CONFIG_SYS_HUSH_PARSER @@ -245,8 +321,11 @@  #define CONFIG_ENV_SIZE			(8 * 1024) -/* #define CONFIG_ENV_IS_IN_MMC */ +#if defined(CONFIG_SABRELITE) +#define CONFIG_ENV_IS_IN_MMC +#else  #define CONFIG_ENV_IS_IN_SPI_FLASH +#endif  #if defined(CONFIG_ENV_IS_IN_MMC)  #define CONFIG_ENV_OFFSET		(6 * 64 * 1024) diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 36c6800c5..cfc5f1205 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -28,6 +28,7 @@  #define CONFIG_OMAP3430			/* which is in a 3430 */  #define CONFIG_OMAP3_RX51		/* working with RX51 */  #define CONFIG_SYS_L2CACHE_OFF		/* pretend there is no L2 CACHE */ +#define CONFIG_OMAP_COMMON  #define CONFIG_MACH_TYPE		MACH_TYPE_NOKIA_RX51 diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h index 7958ca544..c1245e7b8 100644 --- a/include/configs/omap3_beagle.h +++ b/include/configs/omap3_beagle.h @@ -19,6 +19,7 @@  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_BEAGLE	1	/* working with BEAGLE */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ @@ -134,7 +135,7 @@  #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_FS_GENERIC	/* Generic FS support */  #define CONFIG_CMD_MTDPARTS	/* Enable MTD parts commands */  #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */  #define MTDIDS_DEFAULT			"nand0=nand" @@ -187,13 +188,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		3 @@ -201,8 +195,13 @@  #define CONFIG_EXTRA_ENV_SETTINGS \  	"loadaddr=0x80200000\0" \  	"rdaddr=0x81000000\0" \ +	"fdt_high=0xffffffff\0" \ +	"fdtaddr=0x80f80000\0" \  	"usbtty=cdc_acm\0" \ -	"bootfile=uImage.beagle\0" \ +	"bootfile=uImage\0" \ +	"ramdisk=ramdisk.gz\0" \ +	"bootdir=/boot\0" \ +	"bootpart=0:2\0" \  	"console=ttyO2,115200n8\0" \  	"mpurate=auto\0" \  	"buddy=none\0" \ @@ -238,6 +237,17 @@  		"omapdss.def_disp=${defaultdisplay} " \  		"root=${nandroot} " \  		"rootfstype=${nandrootfstype}\0" \ +	"findfdt=" \ +		"if test $beaglerev = AxBx; then " \ +			"setenv fdtfile omap3-beagle.dtb; fi; " \ +		"if test $beaglerev = Cx; then " \ +			"setenv fdtfile omap3-beagle.dtb; fi; " \ +		"if test $beaglerev = xMAB; then " \ +			"setenv fdtfile omap3-beagle-xm.dtb; fi; " \ +		"if test $beaglerev = xMC; then " \ +			"setenv fdtfile omap3-beagle-xm.dtb; fi; " \ +		"if test $fdtfile = undefined; then " \ +			"echo WARNING: Could not determine device tree to use; fi; \0" \  	"bootenv=uEnv.txt\0" \  	"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \  	"importbootenv=echo Importing environment from mmc ...; " \ @@ -251,12 +261,15 @@  		"omapdss.def_disp=${defaultdisplay} " \  		"root=${ramroot} " \  		"rootfstype=${ramrootfstype}\0" \ -	"loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ -	"loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ -	"loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uImage\0" \ +	"loadramdisk=load mmc ${bootpart} ${rdaddr} ${bootdir}/${ramdisk}\0" \ +	"loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \ +	"loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \  	"mmcboot=echo Booting from mmc ...; " \  		"run mmcargs; " \  		"bootm ${loadaddr}\0" \ +	"mmcbootz=echo Booting with DT from mmc${mmcdev} ...; " \ +		"run mmcargs; " \ +		"bootz ${loadaddr} - ${fdtaddr}\0" \  	"nandboot=echo Booting from nand ...; " \  		"run nandargs; " \  		"nand read ${loadaddr} 280000 400000; " \ @@ -270,6 +283,7 @@  	"userbutton_nonxm=gpio input 7;\0"  /* "run userbutton" will return 1 (false) if pressed and 0 (true) if not */  #define CONFIG_BOOTCOMMAND \ +	"run findfdt; " \  	"mmc dev ${mmcdev}; if mmc rescan; then " \  		"if run userbutton; then " \  			"setenv bootenv uEnv.txt;" \ @@ -285,11 +299,16 @@  			"echo Running uenvcmd ...;" \  			"run uenvcmd;" \  		"fi;" \ -		"if run loaduimage; then " \ +		"if run loadimage; then " \  			"run mmcboot;" \  		"fi;" \  	"fi;" \  	"run nandboot;" \ +	"setenv bootfile zImage;" \ +	"if run loadimage; then " \ +		"run loadfdt;" \ +		"run mmcbootz; " \ +	"fi; " \  #define CONFIG_AUTO_COMPLETE		1  /* diff --git a/include/configs/omap3_evm_common.h b/include/configs/omap3_evm_common.h index 3b3e25ad8..edf654344 100644 --- a/include/configs/omap3_evm_common.h +++ b/include/configs/omap3_evm_common.h @@ -15,6 +15,7 @@  #define CONFIG_OMAP			/* This is TI OMAP core */  #define CONFIG_OMAP34XX			/* belonging to 34XX family */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC			/* The chip has SDRC controller */ diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h index 3dd6d3296..ee6db5127 100644 --- a/include/configs/omap3_logic.h +++ b/include/configs/omap3_logic.h @@ -18,6 +18,7 @@  #define CONFIG_OMAP34XX			/* which is a 34XX */  #define CONFIG_OMAP3_LOGIC		/* working with Logic OMAP boards */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SYS_TEXT_BASE	0x80400000 diff --git a/include/configs/omap3_mvblx.h b/include/configs/omap3_mvblx.h index 5526b4314..0c88419f2 100644 --- a/include/configs/omap3_mvblx.h +++ b/include/configs/omap3_mvblx.h @@ -24,6 +24,7 @@  #define CONFIG_MVBLX		1	/* working with mvBlueLYNX-X */  #define CONFIG_MACH_TYPE	MACH_TYPE_MVBLX  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h index 3e018c00e..88380a42c 100644 --- a/include/configs/omap3_overo.h +++ b/include/configs/omap3_overo.h @@ -14,6 +14,7 @@  #define CONFIG_OMAP34XX				/* which is a 34XX */  #define CONFIG_OMAP3_OVERO			/* working with overo */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC				/* The chip has SDRC controller */ diff --git a/include/configs/omap3_pandora.h b/include/configs/omap3_pandora.h index 3e8bd67d2..91a25684c 100644 --- a/include/configs/omap3_pandora.h +++ b/include/configs/omap3_pandora.h @@ -17,6 +17,7 @@  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_PANDORA	1	/* working with pandora */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ diff --git a/include/configs/omap3_sdp3430.h b/include/configs/omap3_sdp3430.h index 836a3d847..a5e469ce3 100644 --- a/include/configs/omap3_sdp3430.h +++ b/include/configs/omap3_sdp3430.h @@ -23,6 +23,7 @@  #define CONFIG_OMAP		1	/* in a TI OMAP core */  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_3430SDP	1	/* working with SDP Rev2 */ +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h index 36870459e..c747d5247 100644 --- a/include/configs/omap3_zoom1.h +++ b/include/configs/omap3_zoom1.h @@ -19,6 +19,7 @@  #define CONFIG_OMAP		1	/* in a TI OMAP core */  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_ZOOM1	1	/* working with Zoom MDK Rev1 */ +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ diff --git a/include/configs/omap3_zoom2.h b/include/configs/omap3_zoom2.h index c57df8edb..cb8c7ec6f 100644 --- a/include/configs/omap3_zoom2.h +++ b/include/configs/omap3_zoom2.h @@ -21,6 +21,7 @@  #define CONFIG_OMAP34XX		1	/* which is a 34XX */  #define CONFIG_OMAP3_ZOOM2	1	/* working with Zoom II */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SDRC	/* The chip has SDRC controller */ diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h index 719cb83d9..e9f2383f7 100644 --- a/include/configs/omap4_common.h +++ b/include/configs/omap4_common.h @@ -20,6 +20,7 @@  #define CONFIG_OMAP44XX		1	/* which is a 44XX */  #define CONFIG_OMAP4430		1	/* which is in a 4430 */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  /* Get CPU defs */  #include <asm/arch/cpu.h> diff --git a/include/configs/omap5_common.h b/include/configs/omap5_common.h index 7dd56cfa7..8e82fed23 100644 --- a/include/configs/omap5_common.h +++ b/include/configs/omap5_common.h @@ -9,111 +9,59 @@   * TI OMAP5 AND DRA7XX common configuration settings   *   * SPDX-License-Identifier:	GPL-2.0+  + * + * For more details, please see the technical documents listed at + * http://www.ti.com/product/omap5432   */  #ifndef __CONFIG_OMAP5_COMMON_H  #define __CONFIG_OMAP5_COMMON_H -/* - * High Level Configuration Options - */ -#define CONFIG_OMAP	/* in a TI OMAP core */ -#define CONFIG_OMAP54XX	/* which is a 54XX */ -#define CONFIG_OMAP_GPIO - -/* Get CPU defs */ -#include <asm/arch/cpu.h> -#include <asm/arch/omap.h> - -/* Display CPU and Board Info */ +#define CONFIG_OMAP54XX  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DISPLAY_BOARDINFO -  #define CONFIG_MISC_INIT_R +#define CONFIG_ARCH_CPU_INIT -#define CONFIG_OF_LIBFDT -#define CONFIG_CMD_BOOTZ +#define CONFIG_SYS_CACHELINE_SIZE	64 -#define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ -#define CONFIG_SETUP_MEMORY_TAGS -#define CONFIG_INITRD_TAG +/* Use General purpose timer 1 */ +#define CONFIG_SYS_TIMERBASE		GPT2_BASE + +#define CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS + +/* Defines for SDRAM init */ +#ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS +#define CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION +#define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS +#endif + +#ifndef CONFIG_SPL_BUILD +#define CONFIG_PALMAS_POWER +#endif + +#include <asm/arch/cpu.h> +#include <asm/arch/omap.h> -/* - * Size of malloc() pool - * Total Size Environment - 128k - * Malloc - add 256k - */  #define CONFIG_ENV_SIZE			(128 << 10) -#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (256 << 10)) -/* Vector Base */ -#define CONFIG_SYS_CA9_VECTOR_BASE	SRAM_ROM_VECT_BASE -/* - * Hardware drivers - */ +#include <configs/ti_armv7_common.h>  /* - * serial port - NS16550 compatible + * Hardware drivers   */ -#define V_NS16550_CLK			48000000 -  #define CONFIG_SYS_NS16550  #define CONFIG_SYS_NS16550_SERIAL  #define CONFIG_SYS_NS16550_REG_SIZE	(-4) -#define CONFIG_SYS_NS16550_CLK		V_NS16550_CLK - -/* CPU */ -#define CONFIG_ARCH_CPU_INIT - -/* I2C  */ -#define CONFIG_HARD_I2C -#define CONFIG_SYS_I2C_SPEED		100000 -#define CONFIG_SYS_I2C_SLAVE		1 -#define CONFIG_DRIVER_OMAP34XX_I2C -#define CONFIG_I2C_MULTI_BUS - -/* MMC */ -#define CONFIG_GENERIC_MMC -#define CONFIG_MMC -#define CONFIG_OMAP_HSMMC -#define CONFIG_DOS_PARTITION - -#define CONFIG_SYS_CONSOLE_IS_IN_ENV - -/* Flash */ -#define CONFIG_SYS_NO_FLASH - -/* Cache */ -#define CONFIG_SYS_CACHELINE_SIZE	64 -#define CONFIG_SYS_CACHELINE_SHIFT	6 - -/* commands to include */ -#include <config_cmd_default.h> - -/* Enabled commands */ -#define CONFIG_CMD_EXT2		/* EXT2 Support                 */ -#define CONFIG_CMD_FAT		/* FAT support                  */ -#define CONFIG_CMD_I2C		/* I2C serial bus support	*/ -#define CONFIG_CMD_MMC		/* MMC support                  */ +#define CONFIG_SYS_NS16550_CLK		48000000 -/* Disabled commands */ +/* Per-SoC commands */  #undef CONFIG_CMD_NET  #undef CONFIG_CMD_NFS -#undef CONFIG_CMD_FPGA		/* FPGA configuration Support   */ -#undef CONFIG_CMD_IMLS		/* List all found images        */  /*   * Environment setup   */ - -#define CONFIG_BOOTDELAY	3 -#define CONFIG_ENV_VARS_UBOOT_CONFIG -#define CONFIG_CMD_FS_GENERIC -#define CONFIG_CMD_EXT2 -#define CONFIG_CMD_EXT4 - -#define CONFIG_ENV_OVERWRITE -  #ifndef PARTS_DEFAULT  #define PARTS_DEFAULT  #endif @@ -178,96 +126,11 @@  		"fi; " \  	"fi" -#define CONFIG_AUTO_COMPLETE		1 - -/* - * Miscellaneous configurable options - */ - -#define CONFIG_SYS_LONGHELP	/* undef to save memory */ -#define CONFIG_SYS_HUSH_PARSER	/* use "hush" command parser */ -#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 -/* Boot Argument Buffer Size */ -#define CONFIG_SYS_BARGSIZE		(CONFIG_SYS_CBSIZE) - -/* - * memtest setup - */ -#define CONFIG_SYS_MEMTEST_START	0x80000000 -#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + (32 << 20)) - -/* Default load address */ -#define CONFIG_SYS_LOAD_ADDR		0x80000000 - -/* Use General purpose timer 1 */ -#define CONFIG_SYS_TIMERBASE		GPT2_BASE -#define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */ -#define CONFIG_SYS_HZ			1000 - -/* - * SDRAM Memory Map - * Even though we use two CS all the memory - * is mapped to one contiguous block - */ -#define CONFIG_NR_DRAM_BANKS	1 - -#define CONFIG_SYS_SDRAM_BASE		0x80000000 -#define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \ -					 GENERATED_GBL_DATA_SIZE) - -#define CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS - -/* Defines for SDRAM init */ -#ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS -#define CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION -#define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS -#endif - -#ifndef CONFIG_SPL_BUILD -#define CONFIG_PALMAS_POWER -#endif  /* Defines for SPL */ -#define CONFIG_SPL -#define CONFIG_SPL_FRAMEWORK  #define CONFIG_SPL_TEXT_BASE		0x40300350  #define CONFIG_SPL_MAX_SIZE		0x19000	/* 100K */ -#define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR  #define CONFIG_SPL_DISPLAY_PRINT - -#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_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT  #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" -/* - * 64 bytes before this address should be set aside for u-boot.img's - * header. That is 80E7FFC0--0x80E80000 should not be used for any - * other needs. - */ -#define CONFIG_SYS_TEXT_BASE		0x80E80000 - -/* - * BSS and malloc area 64MB into memory to allow enough - * space for the kernel at the beginning of memory - */ -#define CONFIG_SPL_BSS_START_ADDR	0x84000000 -#define CONFIG_SPL_BSS_MAX_SIZE		0x100000	/* 1 MB */ -#define CONFIG_SYS_SPL_MALLOC_START	0x84100000 -#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000	/* 1 MB */ -#define CONFIG_SPL_GPIO_SUPPORT -  #endif /* __CONFIG_OMAP5_COMMON_H */ diff --git a/include/configs/omap5_uevm.h b/include/configs/omap5_uevm.h index 9c045d305..3c4249bdd 100644 --- a/include/configs/omap5_uevm.h +++ b/include/configs/omap5_uevm.h @@ -37,9 +37,33 @@  #define CONFIG_PARTITION_UUIDS  #define CONFIG_CMD_PART -#define CONFIG_SYS_PROMPT		"OMAP5432 uEVM # " +#define CONFIG_TCA642X +#define CONFIG_CMD_TCA642X +#define CONFIG_SYS_I2C_TCA642X_BUS_NUM 4 +#define CONFIG_SYS_I2C_TCA642X_ADDR 0x22 -#define CONSOLEDEV		"ttyO2" +/* USB UHH support options */ +#define CONFIG_CMD_USB +#define CONFIG_USB_HOST +#define CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_OMAP +#define CONFIG_USB_STORAGE +#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 +#define CONFIG_EHCI_HCD_INIT_AFTER_RESET + +#define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO 80 +#define CONFIG_OMAP_EHCI_PHY3_RESET_GPIO 79 + +/* Enabled commands */ +#define CONFIG_CMD_DHCP		/* DHCP Support			*/ +#define CONFIG_CMD_NET		/* bootp, tftpboot, rarpboot	*/ +#define CONFIG_CMD_NFS		/* NFS support			*/ +/* USB Networking options */ +#define CONFIG_USB_HOST_ETHER +#define CONFIG_USB_ETHER_SMSC95XX + +#define CONSOLEDEV		"ttyO2"  #define CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC	16296 +  #endif /* __CONFIG_OMAP5_EVM_H */ diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h index 1b0be23dd..5f0c4fb25 100644 --- a/include/configs/p1_p2_rdb_pc.h +++ b/include/configs/p1_p2_rdb_pc.h @@ -34,7 +34,7 @@  #define CONFIG_SYS_L2_SIZE	(256 << 10)  #endif -#if defined(CONFIG_P1020RDB) +#if defined(CONFIG_P1020RDB_PC)  #define CONFIG_BOARDNAME "P1020RDB-PC"  #define CONFIG_NAND_FSL_ELBC  #define CONFIG_P1020 @@ -50,6 +50,35 @@  #define CONFIG_SYS_L2_SIZE	(256 << 10)  #endif +/* + * P1020RDB-PD board has user selectable switches for evaluating different + * frequency and boot options for the P1020 device. The table that + * follow describe the available options. The front six binary number was in + * accordance with SW3[1:6]. + * 111101 533 533 267 667 NOR Core0 boot; Core1 hold-off + * 101101 667 667 333 667 NOR Core0 boot; Core1 hold-off + * 011001 800 800 400 667 NOR Core0 boot; Core1 hold-off + * 001001 800 800 400 667 SD/MMC Core0 boot; Core1 hold-off + * 001101 800 800 400 667 SPI Core0 boot; Core1 hold-off + * 010001 800 800 400 667 NAND Core0 boot; Core1 hold-off + * 011101 800 800 400 667 PCIe-2 Core0 boot; Core1 hold-off + */ +#if defined(CONFIG_P1020RDB_PD) +#define CONFIG_BOARDNAME "P1020RDB-PD" +#define CONFIG_NAND_FSL_ELBC +#define CONFIG_P1020 +#define CONFIG_SPI_FLASH +#define CONFIG_VSC7385_ENET +#define CONFIG_SLIC +#define __SW_BOOT_MASK		0x03 +#define __SW_BOOT_NOR		0x64 +#define __SW_BOOT_SPI		0x34 +#define __SW_BOOT_SD		0x24 +#define __SW_BOOT_NAND		0x44 +#define __SW_BOOT_PCIE		0x74 +#define CONFIG_SYS_L2_SIZE	(256 << 10) +#endif +  #if defined(CONFIG_P1021RDB)  #define CONFIG_BOARDNAME "P1021RDB-PC"  #define CONFIG_NAND_FSL_ELBC @@ -143,7 +172,6 @@  #define CONFIG_SPL_INIT_MINIMAL  #define CONFIG_SPL_SERIAL_SUPPORT  #define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_NAND_MINIMAL  #define CONFIG_SPL_FLUSH_IMAGE  #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin" @@ -259,7 +287,7 @@  #define SPD_EEPROM_ADDRESS 0x52  #undef CONFIG_FSL_DDR_INTERACTIVE -#ifdef CONFIG_P1020MBG +#if (defined(CONFIG_P1020MBG) || defined(CONFIG_P1020RDB_PD))  #define CONFIG_SYS_SDRAM_SIZE_LAW	LAW_SIZE_2G  #define CONFIG_CHIP_SELECTS_PER_CTRL	2  #else @@ -330,7 +358,7 @@  /*   * Local Bus Definitions   */ -#if defined(CONFIG_P1020MBG) +#if (defined(CONFIG_P1020MBG) || defined(CONFIG_P1020RDB_PD))  #define CONFIG_SYS_MAX_FLASH_SECT	512	/* 64M */  #define CONFIG_SYS_FLASH_BASE		0xec000000  #elif defined(CONFIG_P1020UTM) @@ -381,13 +409,27 @@  #define CONFIG_SYS_MAX_NAND_DEVICE	1  #define CONFIG_MTD_NAND_VERIFY_WRITE  #define CONFIG_CMD_NAND +#if defined(CONFIG_P1020RDB_PD) +#define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024) +#else  #define CONFIG_SYS_NAND_BLOCK_SIZE	(16 * 1024) +#endif  #define CONFIG_SYS_NAND_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \  	| (2<<BR_DECC_SHIFT)	/* Use HW ECC */ \  	| BR_PS_8	/* Port Size = 8 bit */ \  	| BR_MS_FCM	/* MSEL = FCM */ \  	| BR_V)	/* valid */ +#if defined(CONFIG_P1020RDB_PD) +#define CONFIG_SYS_NAND_OR_PRELIM	(OR_AM_32KB \ +	| OR_FCM_PGS	/* Large Page*/ \ +	| OR_FCM_CSCT \ +	| OR_FCM_CST \ +	| OR_FCM_CHT \ +	| OR_FCM_SCY_1 \ +	| OR_FCM_TRLX \ +	| OR_FCM_EHTR) +#else  #define CONFIG_SYS_NAND_OR_PRELIM	(OR_AM_32KB	/* small page */ \  	| OR_FCM_CSCT \  	| OR_FCM_CST \ @@ -395,6 +437,7 @@  	| OR_FCM_SCY_1 \  	| OR_FCM_TRLX \  	| OR_FCM_EHTR) +#endif  #endif /* CONFIG_NAND_FSL_ELBC */  #define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */ diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h new file mode 100644 index 000000000..4aa706422 --- /dev/null +++ b/include/configs/p1_twr.h @@ -0,0 +1,619 @@ +/* + * Copyright 2013 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +/* + * QorIQ P1 Tower boards configuration file + */ +#ifndef __CONFIG_H +#define __CONFIG_H + +#if defined(CONFIG_TWR_P1025) +#define CONFIG_BOARDNAME "TWR-P1025" +#define CONFIG_P1025 +#define CONFIG_PHY_ATHEROS +#define CONFIG_QE +#define CONFIG_SYS_LBC_LBCR	0x00080000	/* Conversion of LBC addr */ +#define CONFIG_SYS_LBC_LCRR	0x80000002	/* LB clock ratio reg */ +#endif + +#ifdef CONFIG_SDCARD +#define CONFIG_RAMBOOT_SDCARD +#define CONFIG_SYS_RAMBOOT +#define CONFIG_SYS_EXTRA_ENV_RELOC +#define CONFIG_SYS_TEXT_BASE		0x11000000 +#define CONFIG_RESET_VECTOR_ADDRESS	0x1107fffc +#endif + +#ifndef CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_TEXT_BASE		0xeff80000 +#endif + +#ifndef CONFIG_RESET_VECTOR_ADDRESS +#define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc +#endif + +#ifndef CONFIG_SYS_MONITOR_BASE +#define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE	/* start of monitor */ +#endif + +/* High Level Configuration Options */ +#define CONFIG_BOOKE +#define CONFIG_E500 +#define CONFIG_MPC85xx + +#define CONFIG_MP + +#define CONFIG_FSL_ELBC +#define CONFIG_PCI +#define CONFIG_PCIE1	/* PCIE controler 1 (slot 1) */ +#define CONFIG_PCIE2	/* PCIE controler 2 (slot 2) */ +#define CONFIG_FSL_PCI_INIT	/* Use common FSL init code */ +#define CONFIG_PCI_INDIRECT_BRIDGE	/* indirect PCI bridge support */ +#define CONFIG_FSL_PCIE_RESET	/* need PCIe reset errata */ +#define CONFIG_SYS_PCI_64BIT	/* enable 64-bit PCI resources */ + +#define CONFIG_FSL_LAW +#define CONFIG_TSEC_ENET	/* tsec ethernet support */ +#define CONFIG_ENV_OVERWRITE + +#define CONFIG_CMD_SATA +#define CONFIG_SATA_SIL3114 +#define CONFIG_SYS_SATA_MAX_DEVICE	2 +#define CONFIG_LIBATA +#define CONFIG_LBA48 + +#ifndef __ASSEMBLY__ +extern unsigned long get_board_sys_clk(unsigned long dummy); +#endif +#define CONFIG_SYS_CLK_FREQ	get_board_sys_clk(0) /*sysclk for TWR-P1025 */ + +#define CONFIG_DDR_CLK_FREQ	66666666 + +#define CONFIG_HWCONFIG +/* + * These can be toggled for performance analysis, otherwise use default. + */ +#define CONFIG_L2_CACHE +#define CONFIG_BTB + +#define CONFIG_BOARD_EARLY_INIT_F	/* Call board_pre_init */ + +#define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */ +#define CONFIG_SYS_MEMTEST_END		0x1fffffff +#define CONFIG_PANIC_HANG	/* do not reset board on panic */ + +#define CONFIG_SYS_CCSRBAR		0xffe00000 +#define CONFIG_SYS_CCSRBAR_PHYS_LOW	CONFIG_SYS_CCSRBAR + +/* DDR Setup */ +#define CONFIG_FSL_DDR3 + +#define CONFIG_SYS_SDRAM_SIZE_LAW	LAW_SIZE_512M +#define CONFIG_CHIP_SELECTS_PER_CTRL	1 + +#define CONFIG_SYS_SDRAM_SIZE		(1u << (CONFIG_SYS_SDRAM_SIZE_LAW - 19)) +#define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000 +#define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE + +#define CONFIG_NUM_DDR_CONTROLLERS	1 +#define CONFIG_DIMM_SLOTS_PER_CTLR	1 + +/* Default settings for DDR3 */ +#define CONFIG_SYS_DDR_CS0_BNDS		0x0000001f +#define CONFIG_SYS_DDR_CS0_CONFIG	0x80014202 +#define CONFIG_SYS_DDR_CS0_CONFIG_2	0x00000000 +#define CONFIG_SYS_DDR_CS1_BNDS		0x00000000 +#define CONFIG_SYS_DDR_CS1_CONFIG	0x00000000 +#define CONFIG_SYS_DDR_CS1_CONFIG_2	0x00000000 + +#define CONFIG_SYS_DDR_DATA_INIT	0xdeadbeef +#define CONFIG_SYS_DDR_INIT_ADDR	0x00000000 +#define CONFIG_SYS_DDR_INIT_EXT_ADDR	0x00000000 +#define CONFIG_SYS_DDR_MODE_CONTROL	0x00000000 + +#define CONFIG_SYS_DDR_ZQ_CONTROL	0x89080600 +#define CONFIG_SYS_DDR_WRLVL_CONTROL	0x8655a608 +#define CONFIG_SYS_DDR_SR_CNTR		0x00000000 +#define CONFIG_SYS_DDR_RCW_1		0x00000000 +#define CONFIG_SYS_DDR_RCW_2		0x00000000 +#define CONFIG_SYS_DDR_CONTROL		0xc70c0000	/* Type = DDR3	*/ +#define CONFIG_SYS_DDR_CONTROL_2	0x04401050 +#define CONFIG_SYS_DDR_TIMING_4		0x00220001 +#define CONFIG_SYS_DDR_TIMING_5		0x03402400 + +#define CONFIG_SYS_DDR_TIMING_3		0x00020000 +#define CONFIG_SYS_DDR_TIMING_0		0x00220004 +#define CONFIG_SYS_DDR_TIMING_1		0x5c5b6544 +#define CONFIG_SYS_DDR_TIMING_2		0x0fa880de +#define CONFIG_SYS_DDR_CLK_CTRL		0x03000000 +#define CONFIG_SYS_DDR_MODE_1		0x80461320 +#define CONFIG_SYS_DDR_MODE_2		0x00008000 +#define CONFIG_SYS_DDR_INTERVAL		0x09480000 + +/* + * Memory map + * + * 0x0000_0000 0x1fff_ffff	DDR		Up to 512MB cacheable + * 0x8000_0000 0xdfff_ffff	PCI Express Mem	1.5G non-cacheable(PCIe * 3) + * 0xffc0_0000 0xffc3_ffff	PCI IO range	256k non-cacheable + * + * Localbus + * 0xe000_0000 0xe002_0000	SSD1289		128K non-cacheable + * 0xec00_0000 0xefff_ffff	FLASH		Up to 64M non-cacheable + * + * 0xff90_0000 0xff97_ffff	L2 SRAM		Up to 512K cacheable + * 0xffd0_0000 0xffd0_3fff	init ram	16K Cacheable + * 0xffe0_0000 0xffef_ffff	CCSR		1M non-cacheable + */ + +/* + * Local Bus Definitions + */ +#define CONFIG_SYS_MAX_FLASH_SECT	512	/* 64M */ +#define CONFIG_SYS_FLASH_BASE		0xec000000 + +#define CONFIG_SYS_FLASH_BASE_PHYS	CONFIG_SYS_FLASH_BASE + +#define CONFIG_FLASH_BR_PRELIM (BR_PHYS_ADDR((CONFIG_SYS_FLASH_BASE_PHYS)) \ +	| BR_PS_16 | BR_V) + +#define CONFIG_FLASH_OR_PRELIM	0xfc0000b1 + +#define CONFIG_SYS_SSD_BASE	0xe0000000 +#define CONFIG_SYS_SSD_BASE_PHYS	CONFIG_SYS_SSD_BASE +#define CONFIG_SSD_BR_PRELIM	(BR_PHYS_ADDR(CONFIG_SYS_SSD_BASE_PHYS) | \ +					BR_PS_16 | BR_V) +#define CONFIG_SSD_OR_PRELIM	(OR_AM_64KB | OR_GPCM_CSNT | OR_GPCM_XACS | \ +				 OR_GPCM_ACS_DIV2 | OR_GPCM_SCY | \ +				 OR_GPCM_TRLX | OR_GPCM_EHTR | OR_GPCM_EAD) + +#define CONFIG_SYS_BR2_PRELIM CONFIG_SSD_BR_PRELIM +#define CONFIG_SYS_OR2_PRELIM CONFIG_SSD_OR_PRELIM + +#define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS} +#define CONFIG_SYS_FLASH_QUIET_TEST +#define CONFIG_FLASH_SHOW_PROGRESS	45	/* count down from 45/5: 9..1 */ + +#define CONFIG_SYS_MAX_FLASH_BANKS	1	/* number of banks */ + +#undef CONFIG_SYS_FLASH_CHECKSUM +#define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */ +#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */ + +#define CONFIG_FLASH_CFI_DRIVER +#define CONFIG_SYS_FLASH_CFI +#define CONFIG_SYS_FLASH_EMPTY_INFO +#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE + +#define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */ + +#define CONFIG_SYS_INIT_RAM_LOCK +#define CONFIG_SYS_INIT_RAM_ADDR	0xffd00000 +/* Initial L1 address */ +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS	CONFIG_SYS_INIT_RAM_ADDR +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0 +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR_PHYS +/* Size of used area in RAM */ +#define CONFIG_SYS_INIT_RAM_SIZE	0x00004000 + +#define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \ +					GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET + +#define CONFIG_SYS_MONITOR_LEN	(512 * 1024)/* Reserve 512 kB for Mon */ +#define CONFIG_SYS_MALLOC_LEN	(1024 * 1024)/* Reserved for malloc */ + +#define CONFIG_SYS_BR0_PRELIM	CONFIG_FLASH_BR_PRELIM	/* NOR Base Address */ +#define CONFIG_SYS_OR0_PRELIM	CONFIG_FLASH_OR_PRELIM	/* NOR Options */ + +/* Serial Port + * open - index 2 + * shorted - index 1 + */ +#define CONFIG_CONS_INDEX		1 +#undef CONFIG_SERIAL_SOFTWARE_FIFO +#define CONFIG_SYS_NS16550 +#define CONFIG_SYS_NS16550_SERIAL +#define CONFIG_SYS_NS16550_REG_SIZE	1 +#define CONFIG_SYS_NS16550_CLK		get_bus_freq(0) + +#define CONFIG_SYS_BAUDRATE_TABLE	\ +	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200} + +#define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x4500) +#define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x4600) + +/* Use the HUSH parser */ +#define CONFIG_SYS_HUSH_PARSER +#ifdef CONFIG_SYS_HUSH_PARSER +#define CONFIG_SYS_PROMPT_HUSH_PS2 "> " +#endif + +/* + * Pass open firmware flat tree + */ +#define CONFIG_OF_LIBFDT +#define CONFIG_OF_BOARD_SETUP +#define CONFIG_OF_STDOUT_VIA_ALIAS + +#define CONFIG_SYS_64BIT_VSPRINTF +#define CONFIG_SYS_64BIT_STRTOUL + +/* new uImage format support */ +#define CONFIG_FIT +#define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */ + +/* I2C */ +#define CONFIG_SYS_I2C +#define CONFIG_SYS_I2C_FSL			/* Use FSL common I2C driver */ +#define CONFIG_SYS_FSL_I2C_SPEED	400000	/* I2C spd and slave address */ +#define CONFIG_SYS_FSL_I2C_SLAVE	0x7F +#define CONFIG_SYS_FSL_I2C_OFFSET	0x3000 +#define CONFIG_SYS_I2C_EEPROM_ADDR	0x52 + +/* + * I2C2 EEPROM + */ +#define CONFIG_SYS_FSL_I2C2_SPEED	400000	/* I2C spd and slave address */ +#define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F +#define CONFIG_SYS_FSL_I2C2_OFFSET	0x3100 + +#define CONFIG_SYS_I2C_PCA9555_ADDR	0x23 + +/* enable read and write access to EEPROM */ +#define CONFIG_CMD_EEPROM +#define CONFIG_SYS_I2C_MULTI_EEPROMS +#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 + +/* + * eSPI - Enhanced SPI + */ +#define CONFIG_HARD_SPI +#define CONFIG_FSL_ESPI + +#if defined(CONFIG_PCI) +/* + * General PCI + * Memory space is mapped 1-1, but I/O space must start from 0. + */ + +/* controller 2, direct to uli, tgtid 2, Base address 9000 */ +#define CONFIG_SYS_PCIE2_NAME		"TWR-ELEV PCIe SLOT" +#define CONFIG_SYS_PCIE2_MEM_VIRT	0xa0000000 +#define CONFIG_SYS_PCIE2_MEM_BUS	0xa0000000 +#define CONFIG_SYS_PCIE2_MEM_PHYS	0xa0000000 +#define CONFIG_SYS_PCIE2_MEM_SIZE	0x20000000	/* 512M */ +#define CONFIG_SYS_PCIE2_IO_VIRT	0xffc10000 +#define CONFIG_SYS_PCIE2_IO_BUS		0x00000000 +#define CONFIG_SYS_PCIE2_IO_PHYS	0xffc10000 +#define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */ + +/* controller 1, tgtid 1, Base address a000 */ +#define CONFIG_SYS_PCIE1_NAME		"mini PCIe SLOT" +#define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000 +#define CONFIG_SYS_PCIE1_MEM_BUS	0x80000000 +#define CONFIG_SYS_PCIE1_MEM_PHYS	0x80000000 +#define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */ +#define CONFIG_SYS_PCIE1_IO_VIRT	0xffc00000 +#define CONFIG_SYS_PCIE1_IO_BUS		0x00000000 +#define CONFIG_SYS_PCIE1_IO_PHYS	0xffc00000 +#define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */ + +#define CONFIG_NET_MULTI +#define CONFIG_PCI_PNP	/* do pci plug-and-play */ +#define CONFIG_E1000	/* Defind e1000 pci Ethernet card*/ +#define CONFIG_CMD_PCI +#define CONFIG_CMD_NET + +#define CONFIG_PCI_SCAN_SHOW	/* show pci devices on startup */ +#define CONFIG_DOS_PARTITION +#endif /* CONFIG_PCI */ + +#if defined(CONFIG_TSEC_ENET) + +#ifndef CONFIG_NET_MULTI +#define CONFIG_NET_MULTI +#endif + +#define CONFIG_MII		/* MII PHY management */ +#define CONFIG_TSEC1 +#define CONFIG_TSEC1_NAME	"eTSEC1" +#undef CONFIG_TSEC2 +#undef CONFIG_TSEC2_NAME +#define CONFIG_TSEC3 +#define CONFIG_TSEC3_NAME	"eTSEC3" + +#define TSEC1_PHY_ADDR	2 +#define TSEC2_PHY_ADDR	0 +#define TSEC3_PHY_ADDR	1 + +#define TSEC1_FLAGS	(TSEC_GIGABIT | TSEC_REDUCED) +#define TSEC2_FLAGS	(TSEC_GIGABIT | TSEC_REDUCED) +#define TSEC3_FLAGS	(TSEC_GIGABIT | TSEC_REDUCED) + +#define TSEC1_PHYIDX	0 +#define TSEC2_PHYIDX	0 +#define TSEC3_PHYIDX	0 + +#define CONFIG_ETHPRIME	"eTSEC1" + +#define CONFIG_PHY_GIGE	1	/* Include GbE speed/duplex detection */ + +#define CONFIG_HAS_ETH0 +#define CONFIG_HAS_ETH1 +#undef CONFIG_HAS_ETH2 +#endif /* CONFIG_TSEC_ENET */ + +#ifdef CONFIG_QE +/* QE microcode/firmware address */ +#define CONFIG_SYS_QE_FMAN_FW_IN_NOR +#define CONFIG_SYS_QE_FMAN_FW_ADDR	0xefec0000 +#define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000 +#endif /* CONFIG_QE */ + +#ifdef CONFIG_TWR_P1025 +/* + * QE UEC ethernet configuration + */ +#define CONFIG_MIIM_ADDRESS	(CONFIG_SYS_CCSRBAR + 0x82120) + +#undef CONFIG_UEC_ETH +#define CONFIG_PHY_MODE_NEED_CHANGE + +#define CONFIG_UEC_ETH1	/* ETH1 */ +#define CONFIG_HAS_ETH0 + +#ifdef CONFIG_UEC_ETH1 +#define CONFIG_SYS_UEC1_UCC_NUM	0	/* UCC1 */ +#define CONFIG_SYS_UEC1_RX_CLK	QE_CLK12 /* CLK12 for MII */ +#define CONFIG_SYS_UEC1_TX_CLK	QE_CLK9 /* CLK9 for MII */ +#define CONFIG_SYS_UEC1_ETH_TYPE	FAST_ETH +#define CONFIG_SYS_UEC1_PHY_ADDR	0x18	/* 0x18 for MII */ +#define CONFIG_SYS_UEC1_INTERFACE_TYPE PHY_INTERFACE_MODE_MII +#define CONFIG_SYS_UEC1_INTERFACE_SPEED	100 +#endif /* CONFIG_UEC_ETH1 */ + +#define CONFIG_UEC_ETH5	/* ETH5 */ +#define CONFIG_HAS_ETH1 + +#ifdef CONFIG_UEC_ETH5 +#define CONFIG_SYS_UEC5_UCC_NUM	4	/* UCC5 */ +#define CONFIG_SYS_UEC5_RX_CLK	QE_CLK_NONE +#define CONFIG_SYS_UEC5_TX_CLK	QE_CLK13 /* CLK 13 for RMII */ +#define CONFIG_SYS_UEC5_ETH_TYPE	FAST_ETH +#define CONFIG_SYS_UEC5_PHY_ADDR	0x19	/* 0x19 for RMII */ +#define CONFIG_SYS_UEC5_INTERFACE_TYPE PHY_INTERFACE_MODE_RMII +#define CONFIG_SYS_UEC5_INTERFACE_SPEED	100 +#endif /* CONFIG_UEC_ETH5 */ +#endif /* CONFIG_TWR-P1025 */ + +/* + * Environment + */ +#ifdef CONFIG_SYS_RAMBOOT +#ifdef CONFIG_RAMBOOT_SDCARD +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_SYS_MMC_ENV_DEV	0 +#else +#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */ +#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000) +#define CONFIG_ENV_SIZE		0x2000 +#endif +#else +#define CONFIG_ENV_IS_IN_FLASH +#if CONFIG_SYS_MONITOR_BASE > 0xfff80000 +#define CONFIG_ENV_ADDR	0xfff80000 +#else +#define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) +#endif +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */ +#endif + +#define CONFIG_LOADS_ECHO		/* echo on for serial download */ +#define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */ + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> + +#define CONFIG_CMD_IRQ +#define CONFIG_CMD_PING +#define CONFIG_CMD_I2C +#define CONFIG_CMD_MII +#define CONFIG_CMD_ELF +#define CONFIG_CMD_SETEXPR +#define CONFIG_CMD_REGINFO + +/* + * USB + */ +#define CONFIG_HAS_FSL_DR_USB + +#if defined(CONFIG_HAS_FSL_DR_USB) +#define CONFIG_USB_EHCI + +#ifdef CONFIG_USB_EHCI +#define CONFIG_CMD_USB +#define CONFIG_EHCI_HCD_INIT_AFTER_RESET +#define CONFIG_USB_EHCI_FSL +#define CONFIG_USB_STORAGE +#endif +#endif + +#define CONFIG_MMC + +#ifdef CONFIG_MMC +#define CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#endif + +#if defined(CONFIG_MMC) || defined(CONFIG_USB_EHCI) \ +		 || defined(CONFIG_FSL_SATA) +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif + +#undef CONFIG_WATCHDOG	/* watchdog disabled */ + +/* + * Miscellaneous configurable options + */ +#define CONFIG_SYS_LONGHELP			/* undef to save memory */ +#define CONFIG_CMDLINE_EDITING			/* Command-line editing */ +#define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */ +#define CONFIG_SYS_PROMPT	"=> "		/* Monitor Command Prompt */ +#if defined(CONFIG_CMD_KGDB) +#define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size */ +#else +#define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size */ +#endif +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +	/* Print Buffer Size */ +#define CONFIG_SYS_MAXARGS	16	/* max number of command args */ +#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE/* Boot Argument Buffer Size */ +#define CONFIG_SYS_HZ		1000	/* decrementer freq: 1ms tick */ + +/* + * For booting Linux, the board info and command line data + * have to be in the first 64 MB of memory, since this is + * the maximum mapped by the Linux kernel during initialization. + */ +#define CONFIG_SYS_BOOTMAPSZ	(64 << 20)	/* Initial Memory for Linux*/ +#define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* Increase max gunzip size */ + +/* + * Environment Configuration + */ +#define CONFIG_HOSTNAME		unknown +#define CONFIG_ROOTPATH		"/opt/nfsroot" +#define CONFIG_BOOTFILE		"uImage" +#define CONFIG_UBOOTPATH	u-boot.bin /* U-Boot image on TFTP server */ + +/* default location for tftp and bootm */ +#define CONFIG_LOADADDR	1000000 + +#define CONFIG_BOOTDELAY 10	/* -1 disables auto-boot */ +#define CONFIG_BOOTARGS	/* the boot command will set bootargs */ + +#define CONFIG_BAUDRATE	115200 + +#define	CONFIG_EXTRA_ENV_SETTINGS	\ +"netdev=eth0\0"	\ +"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"	\ +"loadaddr=1000000\0"	\ +"bootfile=uImage\0"	\ +"dtbfile=twr-p1025twr.dtb\0"	\ +"ramdiskfile=rootfs.ext2.gz.uboot\0"	\ +"qefirmwarefile=fsl_qe_ucode_1021_10_A.bin\0"	\ +"tftpflash=tftpboot $loadaddr $uboot; "	\ +	"protect off " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; " \ +	"erase " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; "	\ +	"cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) " $filesize; " \ +	"protect on " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; "	\ +	"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) " $filesize\0" \ +"kernelflash=tftpboot $loadaddr $bootfile; "	\ +	"protect off 0xefa80000 +$filesize; "	\ +	"erase 0xefa80000 +$filesize; "	\ +	"cp.b $loadaddr 0xefa80000 $filesize; "	\ +	"protect on 0xefa80000 +$filesize; "	\ +	"cmp.b $loadaddr 0xefa80000 $filesize\0"	\ +"dtbflash=tftpboot $loadaddr $dtbfile; "	\ +	"protect off 0xefe80000 +$filesize; "	\ +	"erase 0xefe80000 +$filesize; "	\ +	"cp.b $loadaddr 0xefe80000 $filesize; "	\ +	"protect on 0xefe80000 +$filesize; "	\ +	"cmp.b $loadaddr 0xefe80000 $filesize\0"	\ +"ramdiskflash=tftpboot $loadaddr $ramdiskfile; "	\ +	"protect off 0xeeb80000 +$filesize; "	\ +	"erase 0xeeb80000 +$filesize; "	\ +	"cp.b $loadaddr 0xeeb80000 $filesize; "	\ +	"protect on 0xeeb80000 +$filesize; "	\ +	"cmp.b $loadaddr 0xeeb80000 $filesize\0"	\ +"qefirmwareflash=tftpboot $loadaddr $qefirmwarefile; "	\ +	"protect off 0xefec0000 +$filesize; "	\ +	"erase 0xefec0000 +$filesize; "	\ +	"cp.b $loadaddr 0xefec0000 $filesize; "	\ +	"protect on 0xefec0000 +$filesize; "	\ +	"cmp.b $loadaddr 0xefec0000 $filesize\0"	\ +"consoledev=ttyS0\0"	\ +"ramdiskaddr=2000000\0"	\ +"ramdiskfile=rootfs.ext2.gz.uboot\0"	\ +"fdtaddr=c00000\0"	\ +"bdev=sda1\0"	\ +"norbootaddr=ef080000\0"	\ +"norfdtaddr=ef040000\0"	\ +"ramdisk_size=120000\0" \ +"usbboot=setenv bootargs root=/dev/sda1 rw rootdelay=5 " \ +"console=$consoledev,$baudrate $othbootargs ; bootm 0xefa80000 - 0xefe80000" + +#define CONFIG_NFSBOOTCOMMAND	\ +"setenv bootargs root=/dev/nfs rw "	\ +"nfsroot=$serverip:$rootpath "	\ +"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ +"console=$consoledev,$baudrate $othbootargs;" \ +"tftp $loadaddr $bootfile&&"	\ +"tftp $fdtaddr $fdtfile&&"	\ +"bootm $loadaddr - $fdtaddr" + +#define CONFIG_HDBOOT	\ +"setenv bootargs root=/dev/$bdev rw rootdelay=30 "	\ +"console=$consoledev,$baudrate $othbootargs;" \ +"usb start;"	\ +"ext2load usb 0:1 $loadaddr /boot/$bootfile;"	\ +"ext2load usb 0:1 $fdtaddr /boot/$fdtfile;"	\ +"bootm $loadaddr - $fdtaddr" + +#define CONFIG_USB_FAT_BOOT	\ +"setenv bootargs root=/dev/ram rw "	\ +"console=$consoledev,$baudrate $othbootargs " \ +"ramdisk_size=$ramdisk_size;"	\ +"usb start;"	\ +"fatload usb 0:2 $loadaddr $bootfile;"	\ +"fatload usb 0:2 $fdtaddr $fdtfile;"	\ +"fatload usb 0:2 $ramdiskaddr $ramdiskfile;"	\ +"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_USB_EXT2_BOOT	\ +"setenv bootargs root=/dev/ram rw "	\ +"console=$consoledev,$baudrate $othbootargs " \ +"ramdisk_size=$ramdisk_size;"	\ +"usb start;"	\ +"ext2load usb 0:4 $loadaddr $bootfile;"	\ +"ext2load usb 0:4 $fdtaddr $fdtfile;" \ +"ext2load usb 0:4 $ramdiskaddr $ramdiskfile;" \ +"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_NORBOOT	\ +"setenv bootargs root=/dev/mtdblock3 rw "	\ +"console=$consoledev,$baudrate rootfstype=jffs2 $othbootargs;"	\ +"bootm $norbootaddr - $norfdtaddr" + +#define CONFIG_RAMBOOTCOMMAND_TFTP	\ +"setenv bootargs root=/dev/ram rw "	\ +"console=$consoledev,$baudrate $othbootargs " \ +"ramdisk_size=$ramdisk_size;"	\ +"tftp $ramdiskaddr $ramdiskfile;"	\ +"tftp $loadaddr $bootfile;"	\ +"tftp $fdtaddr $fdtfile;"	\ +"bootm $loadaddr $ramdiskaddr $fdtaddr" + +#define CONFIG_RAMBOOTCOMMAND	\ +"setenv bootargs root=/dev/ram rw "	\ +"console=$consoledev,$baudrate $othbootargs " \ +"ramdisk_size=$ramdisk_size;"	\ +"bootm 0xefa80000 0xeeb80000 0xefe80000" + +#define CONFIG_BOOTCOMMAND	CONFIG_RAMBOOTCOMMAND + +#endif /* __CONFIG_H */ diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h index 9b16c4782..e2b4de741 100644 --- a/include/configs/pcm051.h +++ b/include/configs/pcm051.h @@ -21,12 +21,10 @@  #define CONFIG_AM33XX  #define CONFIG_OMAP +#define CONFIG_OMAP_COMMON  #include <asm/arch/omap.h> -#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 */ @@ -125,7 +123,7 @@   * memtest works on 8 MB in DRAM after skipping 32MB from   * start addr of ram disk   */ -#define CONFIG_SYS_MEMTEST_START	(PHYS_DRAM_1 + (64 * 1024 * 1024)) +#define CONFIG_SYS_MEMTEST_START	(CONFIG_SYS_SDRAM_BASE + (64 << 20))  #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START \  					+ (8 * 1024 * 1024)) @@ -149,10 +147,9 @@   /* 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 << 19)	/* 512MiB */ -#define CONFIG_SYS_SDRAM_BASE		PHYS_DRAM_1 +#define CONFIG_SYS_SDRAM_BASE		0x80000000  #define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \  						GENERATED_GBL_DATA_SIZE)   /* Platform/Board specific defs */ @@ -292,7 +289,6 @@  #define CONFIG_CMD_PING  #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 diff --git a/include/configs/sc_sps_1.h b/include/configs/sc_sps_1.h index 9c2eb05c0..58ffa36dd 100644 --- a/include/configs/sc_sps_1.h +++ b/include/configs/sc_sps_1.h @@ -6,48 +6,16 @@   *   * SPDX-License-Identifier:	GPL-2.0+    */ -#ifndef __SC_SPS_1_H__ -#define __SC_SPS_1_H__ +#ifndef __CONFIGS_SC_SPS_1_H__ +#define __CONFIGS_SC_SPS_1_H__ -/* - * SoC configurations - */ +/* System configuration */  #define CONFIG_MX28				/* i.MX28 SoC */ -#define CONFIG_MXS_GPIO				/* GPIO control */ -#define CONFIG_SYS_HZ		1000		/* Ticks per second */ - -/* - * Define SC_SPS_1 machine type by hand until it lands in mach-types - */  #define MACH_TYPE_SC_SPS_1	4172 -  #define CONFIG_MACH_TYPE	MACH_TYPE_SC_SPS_1 -#include <asm/arch/regs-base.h> - +/* U-Boot Commands */  #define CONFIG_SYS_NO_FLASH -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_ARCH_CPU_INIT -#define CONFIG_ARCH_MISC_INIT - -#define CONFIG_ENV_IS_IN_MMC - -#define CONFIG_OF_LIBFDT - -/* - * SPL - */ -#define CONFIG_SPL -#define CONFIG_SPL_NO_CPU_SUPPORT_CODE -#define CONFIG_SPL_START_S_PATH		"arch/arm/cpu/arm926ejs/mxs" -#define CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT - -/* - * U-Boot Commands - */  #include <config_cmd_default.h>  #define CONFIG_DISPLAY_CPUINFO  #define CONFIG_DOS_PARTITION @@ -65,119 +33,47 @@  #define CONFIG_CMD_SETEXPR  #define CONFIG_CMD_USB -/* - * Memory configurations - */ +/* Memory configuration */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */  #define PHYS_SDRAM_1			0x40000000	/* Base address */  #define PHYS_SDRAM_1_SIZE		0x40000000	/* Max 1 GB RAM */ -#define CONFIG_STACKSIZE		0x00010000	/* 128 KB stack */ -#define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */ -#define CONFIG_SYS_GBL_DATA_SIZE	128		/* Initial data */ -#define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */ -#define CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */  #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1 -/* Point initial SP in SRAM so SPL can use it too. */ -#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000 -#define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024) - -#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) -/* - * We need to sacrifice first 4 bytes of RAM here to avoid triggering some - * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot - * binary. In case there was more of this mess, 0x100 bytes are skipped. - */ -#define CONFIG_SYS_TEXT_BASE		0x40000100 - -/* - * 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 -#define CONFIG_SYS_PROMPT_HUSH_PS2	"> " - -/* - * Serial Driver - */ -#define CONFIG_PL011_SERIAL -#define CONFIG_PL011_CLOCK		24000000 -#define CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE } -#define CONFIG_CONS_INDEX		0 -#define CONFIG_BAUDRATE			115200	/* Default baud rate */ -#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 } - -/* - * MMC Driver - */ -#ifdef CONFIG_CMD_MMC -#define CONFIG_APBH_DMA -#define CONFIG_MMC -#define CONFIG_BOUNCE_BUFFER -#define CONFIG_GENERIC_MMC -#define CONFIG_MXS_MMC -#endif +/* Environment */  #define CONFIG_ENV_SIZE			(16 * 1024) -#ifdef CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_IS_IN_MMC + +/* Environment is in MMC */ +#if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)  #define CONFIG_ENV_OFFSET		(256 * 1024)  #define CONFIG_SYS_MMC_ENV_DEV		0  #else  #define CONFIG_ENV_IS_NOWHERE  #endif -/* - * Ethernet on SOC (FEC) - */ +/* FEC Ethernet on SoC */  #ifdef CONFIG_CMD_NET -#define CONFIG_ETHPRIME			"FEC0"  #define CONFIG_FEC_MXC -#define CONFIG_MII -#define CONFIG_FEC_XCV_TYPE		RMII  #define CONFIG_PHYLIB  #define CONFIG_PHY_SMSC  #endif -/* - * USB - */ +/* USB */  #ifdef CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MXS  #define CONFIG_EHCI_MXS_PORT0  #define CONFIG_USB_MAX_CONTROLLER_COUNT	1 -#define CONFIG_EHCI_IS_TDI  #define CONFIG_USB_STORAGE  #endif -/* - * Boot Linux - */ -#define CONFIG_CMDLINE_TAG -#define CONFIG_SETUP_MEMORY_TAGS +/* Booting Linux */  #define CONFIG_BOOTDELAY	3  #define CONFIG_BOOTFILE		"uImage"  #define CONFIG_BOOTARGS		"console=ttyAMA0,115200" -#define CONFIG_BOOTCOMMAND	"bootm " +#define CONFIG_BOOTCOMMAND	"bootm"  #define CONFIG_LOADADDR		0x42000000  #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR -/* - * Extra Environments - */ +/* Extra Environment */  #define CONFIG_EXTRA_ENV_SETTINGS					\  	"update_sd_firmware_filename=u-boot.sd\0"			\  	"update_sd_firmware="		/* Update the SD firmware partition */ \ @@ -189,4 +85,7 @@  		"fi ; "							\  		"fi\0" -#endif /* __SC_SPS_1_H__ */ +/* The rest of the configuration is shared */ +#include <configs/mxs.h> + +#endif /* __CONFIGS_SC_SPS_1_H__ */ diff --git a/include/configs/t4qds.h b/include/configs/t4qds.h index 1ed53dbbb..3e82fc255 100644 --- a/include/configs/t4qds.h +++ b/include/configs/t4qds.h @@ -7,24 +7,8 @@  /*   * Corenet DS style board configuration file   */ -#ifndef __CONFIG_H -#define __CONFIG_H - -#ifdef CONFIG_RAMBOOT_PBL -#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE -#define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc -#define CONFIG_PBLPBI_CONFIG $(SRCTREE)/board/freescale/t4qds/t4_pbi.cfg -#define CONFIG_PBLRCW_CONFIG $(SRCTREE)/board/freescale/t4qds/t4_rcw.cfg -#endif - -#ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE -/* Set 1M boot space */ -#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000) -#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \ -		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR) -#define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc -#define CONFIG_SYS_NO_FLASH -#endif +#ifndef __T4QDS_H +#define __T4QDS_H  #define CONFIG_CMD_REGINFO @@ -34,7 +18,6 @@  #define CONFIG_E500MC			/* BOOKE e500mc family */  #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */  #define CONFIG_MPC85xx			/* MPC85xx/PQ3 platform */ -#define CONFIG_FSL_CORENET		/* Freescale CoreNet platform */  #define CONFIG_MP			/* support multiple processors */  #ifndef CONFIG_SYS_TEXT_BASE @@ -58,70 +41,16 @@  #define CONFIG_SYS_SRIO  #define CONFIG_SRIO1			/* SRIO port 1 */  #define CONFIG_SRIO2			/* SRIO port 2 */ -#define CONFIG_SRIO_PCIE_BOOT_MASTER  #define CONFIG_FSL_LAW			/* Use common FSL init code */  #define CONFIG_ENV_OVERWRITE -#ifdef CONFIG_SYS_NO_FLASH -#if !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) && !defined(CONFIG_RAMBOOT_PBL) -#define CONFIG_ENV_IS_NOWHERE -#endif -#else -#define CONFIG_FLASH_CFI_DRIVER -#define CONFIG_SYS_FLASH_CFI -#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE -#endif - -#if defined(CONFIG_SPIFLASH) -#define CONFIG_SYS_EXTRA_ENV_RELOC -#define CONFIG_ENV_IS_IN_SPI_FLASH -#define CONFIG_ENV_SPI_BUS              0 -#define CONFIG_ENV_SPI_CS               0 -#define CONFIG_ENV_SPI_MAX_HZ           10000000 -#define CONFIG_ENV_SPI_MODE             0 -#define CONFIG_ENV_SIZE                 0x2000          /* 8KB */ -#define CONFIG_ENV_OFFSET               0x100000        /* 1MB */ -#define CONFIG_ENV_SECT_SIZE            0x10000 -#elif defined(CONFIG_SDCARD) -#define CONFIG_SYS_EXTRA_ENV_RELOC -#define CONFIG_ENV_IS_IN_MMC -#define CONFIG_SYS_MMC_ENV_DEV          0 -#define CONFIG_ENV_SIZE			0x2000 -#define CONFIG_ENV_OFFSET		(512 * 1097) -#elif defined(CONFIG_NAND) -#define CONFIG_SYS_EXTRA_ENV_RELOC -#define CONFIG_ENV_IS_IN_NAND -#define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE -#define CONFIG_ENV_OFFSET		(5 * CONFIG_SYS_NAND_BLOCK_SIZE) -#elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) -#define CONFIG_ENV_IS_IN_REMOTE -#define CONFIG_ENV_ADDR		0xffe20000 -#define CONFIG_ENV_SIZE		0x2000 -#elif defined(CONFIG_ENV_IS_NOWHERE) -#define CONFIG_ENV_SIZE		0x2000 -#else -#define CONFIG_ENV_IS_IN_FLASH -#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) -#define CONFIG_ENV_SIZE		0x2000 -#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */ -#endif - -#define CONFIG_SYS_CLK_FREQ	get_board_sys_clk() -#define CONFIG_DDR_CLK_FREQ	get_board_ddr_clk() - -#ifndef __ASSEMBLY__ -unsigned long get_board_sys_clk(void); -unsigned long get_board_ddr_clk(void); -#endif -  /*   * These can be toggled for performance analysis, otherwise use default.   */  #define CONFIG_SYS_CACHE_STASHING  #define CONFIG_BTB			/* toggle branch predition */ -#define	CONFIG_DDR_ECC  #ifdef CONFIG_DDR_ECC  #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER  #define CONFIG_MEM_INIT_VALUE		0xdeadbeef @@ -129,14 +58,9 @@ unsigned long get_board_ddr_clk(void);  #define CONFIG_ENABLE_36BIT_PHYS -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_ADDR_MAP  #define CONFIG_SYS_NUM_ADDR_MAP		64	/* number of TLB1 entries */ -#endif -#if 0 -#define CONFIG_POST CONFIG_SYS_POST_MEMORY	/* test POST memory test */ -#endif  #define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */  #define CONFIG_SYS_MEMTEST_END		0x00400000  #define CONFIG_SYS_ALT_MEMTEST @@ -147,17 +71,8 @@ unsigned long get_board_ddr_clk(void);   */  #define CONFIG_SYS_INIT_L3_ADDR		CONFIG_RAMBOOT_TEXT_BASE -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_DCSRBAR		0xf0000000  #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull -#endif - -/* EEPROM */ -#define CONFIG_ID_EEPROM -#define CONFIG_SYS_I2C_EEPROM_NXID -#define CONFIG_SYS_EEPROM_BUS_NUM	0 -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x57 -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1  /*   * DDR Setup @@ -174,199 +89,16 @@ unsigned long get_board_ddr_clk(void);  #define CONFIG_DDR_SPD  #define CONFIG_FSL_DDR3 -#define CONFIG_SYS_SPD_BUS_NUM	0 -#define SPD_EEPROM_ADDRESS1	0x51 -#define SPD_EEPROM_ADDRESS2	0x52 -#define SPD_EEPROM_ADDRESS3	0x53 -#define SPD_EEPROM_ADDRESS4	0x54 -#define SPD_EEPROM_ADDRESS5	0x55 -#define SPD_EEPROM_ADDRESS6	0x56 -#define SPD_EEPROM_ADDRESS	SPD_EEPROM_ADDRESS1	/* for p3041/p5010 */ -#define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */  /*   * IFC Definitions   */  #define CONFIG_SYS_FLASH_BASE	0xe0000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_FLASH_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_FLASH_BASE) -#else -#define CONFIG_SYS_FLASH_BASE_PHYS	CONFIG_SYS_FLASH_BASE -#endif - -#define CONFIG_SYS_NOR0_CSPR_EXT	(0xf) -#define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \ -				+ 0x8000000) | \ -				CSPR_PORT_SIZE_16 | \ -				CSPR_MSEL_NOR | \ -				CSPR_V) -#define CONFIG_SYS_NOR1_CSPR_EXT	(0xf) -#define CONFIG_SYS_NOR1_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ -				CSPR_PORT_SIZE_16 | \ -				CSPR_MSEL_NOR | \ -				CSPR_V) -#define CONFIG_SYS_NOR_AMASK	IFC_AMASK(128*1024*1024) -/* NOR Flash Timing Params */ -#define CONFIG_SYS_NOR_CSOR	CSOR_NAND_TRHZ_80 - -#define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x4) | \ -				FTIM0_NOR_TEADC(0x5) | \ -				FTIM0_NOR_TEAHC(0x5)) -#define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x35) | \ -				FTIM1_NOR_TRAD_NOR(0x1A) |\ -				FTIM1_NOR_TSEQRAD_NOR(0x13)) -#define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x4) | \ -				FTIM2_NOR_TCH(0x4) | \ -				FTIM2_NOR_TWPH(0x0E) | \ -				FTIM2_NOR_TWP(0x1c)) -#define CONFIG_SYS_NOR_FTIM3	0x0 - -#define CONFIG_SYS_FLASH_QUIET_TEST -#define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */ -#define CONFIG_SYS_MAX_FLASH_BANKS	2	/* number of banks */ -#define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device */ -#define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */ -#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */ - -#define CONFIG_SYS_FLASH_EMPTY_INFO -#define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS \ -					+ 0x8000000, CONFIG_SYS_FLASH_BASE_PHYS} - -#define CONFIG_FSL_QIXIS	/* use common QIXIS code */ -#define QIXIS_BASE			0xffdf0000 -#define QIXIS_LBMAP_SWITCH		6 -#define QIXIS_LBMAP_MASK		0x0f -#define QIXIS_LBMAP_SHIFT		0 -#define QIXIS_LBMAP_DFLTBANK		0x00 -#define QIXIS_LBMAP_ALTBANK		0x04 -#define QIXIS_RST_CTL_RESET		0x83 -#define QIXIS_RCFG_CTL_RECONFIG_IDLE	0x20 -#define QIXIS_RCFG_CTL_RECONFIG_START	0x21 -#define QIXIS_RCFG_CTL_WATCHDOG_ENBLE	0x08 -#ifdef CONFIG_PHYS_64BIT -#define QIXIS_BASE_PHYS		(0xf00000000ull | QIXIS_BASE) -#else -#define QIXIS_BASE_PHYS		QIXIS_BASE -#endif - -#define CONFIG_SYS_CSPR3_EXT	(0xf) -#define CONFIG_SYS_CSPR3	(CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) \ -				| CSPR_PORT_SIZE_8 \ -				| CSPR_MSEL_GPCM \ -				| CSPR_V) -#define CONFIG_SYS_AMASK3	IFC_AMASK(4 * 1024) -#define CONFIG_SYS_CSOR3	0x0 -/* QIXIS Timing parameters for IFC CS3 */ -#define CONFIG_SYS_CS3_FTIM0		(FTIM0_GPCM_TACSE(0x0e) | \ -					FTIM0_GPCM_TEADC(0x0e) | \ -					FTIM0_GPCM_TEAHC(0x0e)) -#define CONFIG_SYS_CS3_FTIM1		(FTIM1_GPCM_TACO(0xff) | \ -					FTIM1_GPCM_TRAD(0x3f)) -#define CONFIG_SYS_CS3_FTIM2		(FTIM2_GPCM_TCS(0x0e) | \ -					FTIM2_GPCM_TCH(0x0) | \ -					FTIM2_GPCM_TWP(0x1f)) -#define CONFIG_SYS_CS3_FTIM3		0x0 - -/* NAND Flash on IFC */ -#define CONFIG_NAND_FSL_IFC -#define CONFIG_SYS_NAND_BASE		0xff800000 -#ifdef CONFIG_PHYS_64BIT -#define CONFIG_SYS_NAND_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_NAND_BASE) -#else -#define CONFIG_SYS_NAND_BASE_PHYS	CONFIG_SYS_NAND_BASE -#endif - -#define CONFIG_SYS_NAND_CSPR_EXT	(0xf) -#define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ -				| CSPR_PORT_SIZE_8 /* Port Size = 8 bit */ \ -				| CSPR_MSEL_NAND	/* MSEL = NAND */ \ -				| CSPR_V) -#define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024) - -#define CONFIG_SYS_NAND_CSOR    (CSOR_NAND_ECC_ENC_EN   /* ECC on encode */ \ -				| CSOR_NAND_ECC_DEC_EN  /* ECC on decode */ \ -				| CSOR_NAND_ECC_MODE_4  /* 4-bit ECC */ \ -				| CSOR_NAND_RAL_3	/* RAL = 2Byes */ \ -				| CSOR_NAND_PGS_2K	/* Page Size = 2K */ \ -				| CSOR_NAND_SPRZ_64/* Spare size = 64 */ \ -				| CSOR_NAND_PB(64))	/*Pages Per Block = 64*/ - -#define CONFIG_SYS_NAND_ONFI_DETECTION - -/* ONFI NAND Flash mode0 Timing Params */ -#define CONFIG_SYS_NAND_FTIM0		(FTIM0_NAND_TCCST(0x07) | \ -					FTIM0_NAND_TWP(0x18)   | \ -					FTIM0_NAND_TWCHT(0x07) | \ -					FTIM0_NAND_TWH(0x0a)) -#define CONFIG_SYS_NAND_FTIM1		(FTIM1_NAND_TADLE(0x32) | \ -					FTIM1_NAND_TWBE(0x39)  | \ -					FTIM1_NAND_TRR(0x0e)   | \ -					FTIM1_NAND_TRP(0x18)) -#define CONFIG_SYS_NAND_FTIM2		(FTIM2_NAND_TRAD(0x0f) | \ -					FTIM2_NAND_TREH(0x0a) | \ -					FTIM2_NAND_TWHRE(0x1e)) -#define CONFIG_SYS_NAND_FTIM3		0x0 - -#define CONFIG_SYS_NAND_DDR_LAW		11 - -#define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE } -#define CONFIG_SYS_MAX_NAND_DEVICE	1 -#define CONFIG_MTD_NAND_VERIFY_WRITE -#define CONFIG_CMD_NAND - -#define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024) - -#if defined(CONFIG_NAND) -#define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NAND_CSPR_EXT -#define CONFIG_SYS_CSPR0		CONFIG_SYS_NAND_CSPR -#define CONFIG_SYS_AMASK0		CONFIG_SYS_NAND_AMASK -#define CONFIG_SYS_CSOR0		CONFIG_SYS_NAND_CSOR -#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NAND_FTIM0 -#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NAND_FTIM1 -#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2 -#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3 -#define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR0_CSPR_EXT -#define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR0_CSPR -#define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK -#define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR -#define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0 -#define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1 -#define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2 -#define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3 -#else -#define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT -#define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR -#define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK -#define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR -#define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0 -#define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1 -#define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2 -#define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3 -#define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NAND_CSPR_EXT -#define CONFIG_SYS_CSPR2		CONFIG_SYS_NAND_CSPR -#define CONFIG_SYS_AMASK2		CONFIG_SYS_NAND_AMASK -#define CONFIG_SYS_CSOR2		CONFIG_SYS_NAND_CSOR -#define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NAND_FTIM0 -#define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NAND_FTIM1 -#define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NAND_FTIM2 -#define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3 -#endif -#define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR1_CSPR_EXT -#define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR1_CSPR -#define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK -#define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR -#define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0 -#define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1 -#define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2 -#define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3  #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE -#if defined(CONFIG_RAMBOOT_PBL) -#define CONFIG_SYS_RAMBOOT -#endif -  #define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */  #define CONFIG_MISC_INIT_R @@ -376,18 +108,12 @@ unsigned long get_board_ddr_clk(void);  #define CONFIG_L1_INIT_RAM  #define CONFIG_SYS_INIT_RAM_LOCK  #define CONFIG_SYS_INIT_RAM_ADDR	0xfdd00000	/* Initial L1 address */ -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH	0xf  #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW	0xfe0ec000  /* The assembler doesn't like typecast */  #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \  	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \  	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW) -#else -#define CONFIG_SYS_INIT_RAM_ADDR_PHYS	0xfe0ec000 /* Initial L1 address */ -#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0 -#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR_PHYS -#endif  #define CONFIG_SYS_INIT_RAM_SIZE		0x00004000  #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \ @@ -431,149 +157,55 @@ unsigned long get_board_ddr_clk(void);  /* I2C */  #define CONFIG_SYS_I2C  #define CONFIG_SYS_I2C_FSL -#define CONFIG_SYS_FSL_I2C_SPEED	100000  #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F  #define CONFIG_SYS_FSL_I2C_OFFSET	0x118000 -#define CONFIG_SYS_FSL_I2C2_SPEED	100000  #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F  #define CONFIG_SYS_FSL_I2C2_OFFSET	0x118100 -#define I2C_MUX_PCA_ADDR_PRI		0x77 /* I2C bus multiplexer,primary */ -#define I2C_MUX_PCA_ADDR_SEC		0x76 /* I2C bus multiplexer,secondary */ - -#define I2C_MUX_CH_DEFAULT	0x8 -#define I2C_MUX_CH_VOL_MONITOR	0xa -#define I2C_MUX_CH_VSC3316_FS	0xc -#define I2C_MUX_CH_VSC3316_BS	0xd - -/* Voltage monitor on channel 2*/ -#define I2C_VOL_MONITOR_ADDR		0x40 -#define I2C_VOL_MONITOR_BUS_V_OFFSET	0x2 -#define I2C_VOL_MONITOR_BUS_V_OVF	0x1 -#define I2C_VOL_MONITOR_BUS_V_SHIFT	3 - -/* VSC Crossbar switches */ -#define CONFIG_VSC_CROSSBAR -#define VSC3316_FSM_TX_ADDR	0x70 -#define VSC3316_FSM_RX_ADDR	0x71 -  /*   * RapidIO   */  #define CONFIG_SYS_SRIO1_MEM_VIRT	0xa0000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_SRIO1_MEM_PHYS	0xc20000000ull -#else -#define CONFIG_SYS_SRIO1_MEM_PHYS	0xa0000000 -#endif  #define CONFIG_SYS_SRIO1_MEM_SIZE	0x10000000	/* 256M */  #define CONFIG_SYS_SRIO2_MEM_VIRT	0xb0000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_SRIO2_MEM_PHYS	0xc30000000ull -#else -#define CONFIG_SYS_SRIO2_MEM_PHYS	0xb0000000 -#endif  #define CONFIG_SYS_SRIO2_MEM_SIZE	0x10000000	/* 256M */  /* - * for slave u-boot IMAGE instored in master memory space, - * PHYS must be aligned based on the SIZE - */ -#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef080000ull -#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff80000ull -#define CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x80000	/* 512K */ -#define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff80000ull -/* - * for slave UCODE and ENV instored in master memory space, - * PHYS must be aligned based on the SIZE - */ -#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef040000ull -#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull -#define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000	/* 256K */ - -/* slave core release by master*/ -#define CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4 -#define CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */ - -/* - * SRIO_PCIE_BOOT - SLAVE - */ -#ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE -#define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000 -#define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \ -		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR) -#endif -/* - * eSPI - Enhanced SPI - */ -#define CONFIG_FSL_ESPI -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_SST -#define CONFIG_CMD_SF -#define CONFIG_SF_DEFAULT_SPEED         10000000 -#define CONFIG_SF_DEFAULT_MODE          0 - -/*   * General PCI   * Memory space is mapped 1-1, but I/O space must start from 0.   */  /* controller 1, direct to uli, tgtid 3, Base address 20000 */  #define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE1_MEM_BUS	0xe0000000  #define CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull -#else -#define CONFIG_SYS_PCIE1_MEM_BUS	0x80000000 -#define CONFIG_SYS_PCIE1_MEM_PHYS	0x80000000 -#endif  #define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */  #define CONFIG_SYS_PCIE1_IO_VIRT	0xf8000000  #define CONFIG_SYS_PCIE1_IO_BUS		0x00000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE1_IO_PHYS	0xff8000000ull -#else -#define CONFIG_SYS_PCIE1_IO_PHYS	0xf8000000 -#endif  #define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */  /* controller 2, Slot 2, tgtid 2, Base address 201000 */  #define CONFIG_SYS_PCIE2_MEM_VIRT	0xa0000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE2_MEM_BUS	0xe0000000  #define CONFIG_SYS_PCIE2_MEM_PHYS	0xc20000000ull -#else -#define CONFIG_SYS_PCIE2_MEM_BUS	0xa0000000 -#define CONFIG_SYS_PCIE2_MEM_PHYS	0xa0000000 -#endif  #define CONFIG_SYS_PCIE2_MEM_SIZE	0x20000000	/* 512M */  #define CONFIG_SYS_PCIE2_IO_VIRT	0xf8010000  #define CONFIG_SYS_PCIE2_IO_BUS		0x00000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE2_IO_PHYS	0xff8010000ull -#else -#define CONFIG_SYS_PCIE2_IO_PHYS	0xf8010000 -#endif  #define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */  /* controller 3, Slot 1, tgtid 1, Base address 202000 */  #define CONFIG_SYS_PCIE3_MEM_VIRT	0xc0000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE3_MEM_BUS	0xe0000000  #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc40000000ull -#else -#define CONFIG_SYS_PCIE3_MEM_BUS	0xc0000000 -#define CONFIG_SYS_PCIE3_MEM_PHYS	0xc0000000 -#endif  #define CONFIG_SYS_PCIE3_MEM_SIZE	0x20000000	/* 512M */  #define CONFIG_SYS_PCIE3_IO_VIRT	0xf8020000  #define CONFIG_SYS_PCIE3_IO_BUS		0x00000000 -#ifdef CONFIG_PHYS_64BIT  #define CONFIG_SYS_PCIE3_IO_PHYS	0xff8020000ull -#else -#define CONFIG_SYS_PCIE3_IO_PHYS	0xf8020000 -#endif  #define CONFIG_SYS_PCIE3_IO_SIZE	0x00010000	/* 64k */  /* controller 4, Base address 203000 */ @@ -584,84 +216,6 @@ unsigned long get_board_ddr_clk(void);  #define CONFIG_SYS_PCIE4_IO_PHYS	0xff8030000ull  #define CONFIG_SYS_PCIE4_IO_SIZE	0x00010000	/* 64k */ -/* Qman/Bman */ -#ifndef CONFIG_NOBQFMAN -#define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */ -#define CONFIG_SYS_BMAN_NUM_PORTALS	50 -#define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000 -#ifdef CONFIG_PHYS_64BIT -#define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull -#else -#define CONFIG_SYS_BMAN_MEM_PHYS	CONFIG_SYS_BMAN_MEM_BASE -#endif -#define CONFIG_SYS_BMAN_MEM_SIZE	0x02000000 -#define CONFIG_SYS_QMAN_NUM_PORTALS	50 -#define CONFIG_SYS_QMAN_MEM_BASE	0xf6000000 -#ifdef CONFIG_PHYS_64BIT -#define CONFIG_SYS_QMAN_MEM_PHYS	0xff6000000ull -#else -#define CONFIG_SYS_QMAN_MEM_PHYS	CONFIG_SYS_QMAN_MEM_BASE -#endif -#define CONFIG_SYS_QMAN_MEM_SIZE	0x02000000 - -#define CONFIG_SYS_DPAA_FMAN -#define CONFIG_SYS_DPAA_PME -#define CONFIG_SYS_PMAN -#define CONFIG_SYS_DPAA_DCE -#define CONFIG_SYS_INTERLAKEN - -/* Default address of microcode for the Linux Fman driver */ -#if defined(CONFIG_SPIFLASH) -/* - * env is stored at 0x100000, sector size is 0x10000, ucode is stored after - * env, so we got 0x110000. - */ -#define CONFIG_SYS_QE_FW_IN_SPIFLASH -#define CONFIG_SYS_QE_FMAN_FW_ADDR	0x110000 -#elif defined(CONFIG_SDCARD) -/* - * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is - * about 545KB (1089 blocks), Env is stored after the image, and the env size is - * 0x2000 (16 blocks), 8 + 1089 + 16 = 1113, enlarge it to 1130. - */ -#define CONFIG_SYS_QE_FMAN_FW_IN_MMC -#define CONFIG_SYS_QE_FMAN_FW_ADDR	(512 * 1130) -#elif defined(CONFIG_NAND) -#define CONFIG_SYS_QE_FMAN_FW_IN_NAND -#define CONFIG_SYS_QE_FMAN_FW_ADDR	(6 * CONFIG_SYS_NAND_BLOCK_SIZE) -#elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) -/* - * Slave has no ucode locally, it can fetch this from remote. When implementing - * in two corenet boards, slave's ucode could be stored in master's memory - * space, the address can be mapped from slave TLB->slave LAW-> - * slave SRIO or PCIE outbound window->master inbound window-> - * master LAW->the ucode address in master's memory space. - */ -#define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE -#define CONFIG_SYS_QE_FMAN_FW_ADDR	0xFFE00000 -#else -#define CONFIG_SYS_QE_FMAN_FW_IN_NOR -#define CONFIG_SYS_QE_FMAN_FW_ADDR		0xEFF40000 -#endif -#define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000 -#define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) -#endif /* CONFIG_NOBQFMAN */ - -#ifdef CONFIG_SYS_DPAA_FMAN -#define CONFIG_FMAN_ENET -#define CONFIG_PHYLIB_10G -#define CONFIG_PHY_VITESSE -#define CONFIG_PHY_TERANETICS -#define SGMII_CARD_PORT1_PHY_ADDR 0x1C -#define SGMII_CARD_PORT2_PHY_ADDR 0x1D -#define SGMII_CARD_PORT3_PHY_ADDR 0x1E -#define SGMII_CARD_PORT4_PHY_ADDR 0x1F -#define FM1_10GEC1_PHY_ADDR	0x0 -#define FM1_10GEC2_PHY_ADDR	0x1 -#define FM2_10GEC1_PHY_ADDR	0x2 -#define FM2_10GEC2_PHY_ADDR	0x3 -#endif -  #ifdef CONFIG_PCI  #define CONFIG_PCI_INDIRECT_BRIDGE  #define CONFIG_NET_MULTI @@ -724,30 +278,6 @@ unsigned long get_board_ddr_clk(void);  #endif  /* -* USB -*/ -#define CONFIG_CMD_USB -#define CONFIG_USB_STORAGE -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_FSL -#define CONFIG_EHCI_HCD_INIT_AFTER_RESET -#define CONFIG_CMD_EXT2 -#define CONFIG_HAS_FSL_DR_USB - -#define CONFIG_MMC - -#ifdef CONFIG_MMC -#define CONFIG_FSL_ESDHC -#define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR -#define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT -#define CONFIG_CMD_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_CMD_EXT2 -#define CONFIG_CMD_FAT -#define CONFIG_DOS_PARTITION -#endif - -/*   * Miscellaneous configurable options   */  #define CONFIG_SYS_LONGHELP			/* undef to save memory	*/ @@ -788,112 +318,11 @@ unsigned long get_board_ddr_clk(void);  /* default location for tftp and bootm */  #define CONFIG_LOADADDR		1000000 -#define CONFIG_BOOTDELAY	10	/* -1 disables auto-boot */  #define CONFIG_BAUDRATE	115200 -#define __USB_PHY_TYPE	utmi - -/* - * T4240 has 3 DDR controllers. Default to 3way_4KB interleaving. It can be - * 3way_1KB, 3way_4KB, 3way_8KB. T4160 has 2 DDR controllers. Default to - * cacheline interleaving. It can be cacheline, page, bank, superbank. - * See doc/README.fsl-ddr for details. - */ -#ifdef CONFIG_PPC_T4240 -#define CTRL_INTLV_PREFERED 3way_4KB -#else -#define CTRL_INTLV_PREFERED cacheline -#endif - -#define	CONFIG_EXTRA_ENV_SETTINGS				\ -	"hwconfig=fsl_ddr:"					\ -	"ctlr_intlv=" __stringify(CTRL_INTLV_PREFERED) ","	\ -	"bank_intlv=auto;"					\ -	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\ -	"netdev=eth0\0"						\ -	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\ -	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\ -	"tftpflash=tftpboot $loadaddr $uboot && "		\ -	"protect off $ubootaddr +$filesize && "			\ -	"erase $ubootaddr +$filesize && "			\ -	"cp.b $loadaddr $ubootaddr $filesize && "		\ -	"protect on $ubootaddr +$filesize && "			\ -	"cmp.b $loadaddr $ubootaddr $filesize\0"		\ -	"consoledev=ttyS0\0"					\ -	"ramdiskaddr=2000000\0"					\ -	"ramdiskfile=t4240qds/ramdisk.uboot\0"			\ -	"fdtaddr=c00000\0"					\ -	"fdtfile=t4240qds/t4240qds.dtb\0"				\ -	"bdev=sda3\0"						\ -	"c=ffe\0" - -/* For emulation this causes u-boot to jump to the start of the proof point -   app code automatically */ -#define CONFIG_PROOF_POINTS			\ - "setenv bootargs root=/dev/$bdev rw "		\ - "console=$consoledev,$baudrate $othbootargs;"	\ - "cpu 1 release 0x29000000 - - -;"		\ - "cpu 2 release 0x29000000 - - -;"		\ - "cpu 3 release 0x29000000 - - -;"		\ - "cpu 4 release 0x29000000 - - -;"		\ - "cpu 5 release 0x29000000 - - -;"		\ - "cpu 6 release 0x29000000 - - -;"		\ - "cpu 7 release 0x29000000 - - -;"		\ - "go 0x29000000" -  #define CONFIG_HVBOOT				\   "setenv bootargs config-addr=0x60000000; "	\   "bootm 0x01000000 - 0x00f00000" -#define CONFIG_ALU				\ - "setenv bootargs root=/dev/$bdev rw "		\ - "console=$consoledev,$baudrate $othbootargs;"	\ - "cpu 1 release 0x01000000 - - -;"		\ - "cpu 2 release 0x01000000 - - -;"		\ - "cpu 3 release 0x01000000 - - -;"		\ - "cpu 4 release 0x01000000 - - -;"		\ - "cpu 5 release 0x01000000 - - -;"		\ - "cpu 6 release 0x01000000 - - -;"		\ - "cpu 7 release 0x01000000 - - -;"		\ - "go 0x01000000" - -#define CONFIG_LINUX				\ - "setenv bootargs root=/dev/ram rw "		\ - "console=$consoledev,$baudrate $othbootargs;"	\ - "setenv ramdiskaddr 0x02000000;"		\ - "setenv fdtaddr 0x00c00000;"			\ - "setenv loadaddr 0x1000000;"			\ - "bootm $loadaddr $ramdiskaddr $fdtaddr" - -#define CONFIG_HDBOOT					\ -	"setenv bootargs root=/dev/$bdev rw "		\ -	"console=$consoledev,$baudrate $othbootargs;"	\ -	"tftp $loadaddr $bootfile;"			\ -	"tftp $fdtaddr $fdtfile;"			\ -	"bootm $loadaddr - $fdtaddr" - -#define CONFIG_NFSBOOTCOMMAND			\ -	"setenv bootargs root=/dev/nfs rw "	\ -	"nfsroot=$serverip:$rootpath "		\ -	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ -	"console=$consoledev,$baudrate $othbootargs;"	\ -	"tftp $loadaddr $bootfile;"		\ -	"tftp $fdtaddr $fdtfile;"		\ -	"bootm $loadaddr - $fdtaddr" - -#define CONFIG_RAMBOOTCOMMAND				\ -	"setenv bootargs root=/dev/ram rw "		\ -	"console=$consoledev,$baudrate $othbootargs;"	\ -	"tftp $ramdiskaddr $ramdiskfile;"		\ -	"tftp $loadaddr $bootfile;"			\ -	"tftp $fdtaddr $fdtfile;"			\ -	"bootm $loadaddr $ramdiskaddr $fdtaddr" - -#define CONFIG_BOOTCOMMAND		CONFIG_LINUX - -#ifdef CONFIG_SECURE_BOOT -#include <asm/fsl_secure_boot.h> -#endif -  #endif	/* __CONFIG_H */ diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index c297827d8..60dd8ff11 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -16,6 +16,7 @@  #define CONFIG_OMAP		/* in a TI OMAP core */  #define CONFIG_OMAP34XX		/* which is a 34XX */  #define CONFIG_OMAP_GPIO +#define CONFIG_OMAP_COMMON  #define CONFIG_SYS_TEXT_BASE 0x80008000 @@ -214,7 +215,6 @@  #define CONFIG_DRIVER_TI_EMAC_USE_RMII  #define CONFIG_MII  #define CONFIG_EMAC_MDIO_PHY_NUM	0 -#define CONFIG_BOOTP_DEFAULT  #define CONFIG_BOOTP_DNS  #define CONFIG_BOOTP_DNS2  #define CONFIG_BOOTP_SEND_HOSTNAME diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h index eac5ad024..2fc2c1067 100644 --- a/include/configs/ti814x_evm.h +++ b/include/configs/ti814x_evm.h @@ -20,12 +20,10 @@  #define CONFIG_TI814X  #define CONFIG_SYS_NO_FLASH  #define CONFIG_OMAP +#define CONFIG_OMAP_COMMON  #include <asm/arch/omap.h> -#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 */ @@ -119,7 +117,7 @@  /* Boot Argument Buffer Size */  #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE -#define CONFIG_SYS_MEMTEST_START	PHYS_DRAM_1 +#define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE  #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START \  					+ PHYS_DRAM_1_SIZE - (8 << 12)) @@ -139,11 +137,10 @@   * Physical Memory Map   */  #define CONFIG_NR_DRAM_BANKS		1		/* 1 banks of DRAM */ -#define PHYS_DRAM_1			0x80000000	/* DRAM Bank #1 */  #define PHYS_DRAM_1_SIZE		0x20000000	/* 512MB */  #define CONFIG_MAX_RAM_BANK_SIZE	(1024 << 20)	/* 1024MB */ -#define CONFIG_SYS_SDRAM_BASE		PHYS_DRAM_1 +#define CONFIG_SYS_SDRAM_BASE		0x80000000  #define CONFIG_SYS_INIT_SP_ADDR		(NON_SECURE_SRAM_END - \  					 GENERATED_GBL_DATA_SIZE) @@ -229,7 +226,6 @@  #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 diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h new file mode 100644 index 000000000..e90490c75 --- /dev/null +++ b/include/configs/ti816x_evm.h @@ -0,0 +1,180 @@ +/* + * ti816x_evm.h + * + * Copyright (C) 2013, Adeneo Embedded <www.adeneo-embedded.com> + * Antoine Tenart, <atenart@adeneo-embedded.com> + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +#ifndef __CONFIG_TI816X_EVM_H +#define __CONFIG_TI816X_EVM_H + +#define CONFIG_TI81XX +#define CONFIG_TI816X +#define CONFIG_SYS_NO_FLASH +#define CONFIG_OMAP +#define CONFIG_OMAP_COMMON + +#define CONFIG_ARCH_CPU_INIT + +#include <asm/arch/omap.h> + +#define CONFIG_ENV_SIZE			0x2000 +#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (32 * 1024)) +#define CONFIG_SYS_LONGHELP		/* undef save memory */ +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_SYS_PROMPT		"u-boot/ti816x# " +#define CONFIG_MACH_TYPE		MACH_TYPE_TI8168EVM + +#define CONFIG_OF_LIBFDT +#define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */ +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG		/* required for ramdisk support */ + +#include <config_cmd_default.h>		/* u-boot default commands */ + +#define CONFIG_VERSION_VARIABLE +#define CONFIG_DISPLAY_CPUINFO + +#define CONFIG_BOOTDELAY		3 /* set negative for no autoboot */ +#define CONFIG_EXTRA_ENV_SETTINGS	\ +	"loadaddr=0x81000000\0"		\ + +#define CONFIG_BOOTCOMMAND			\ +	"mmc rescan;"				\ +	"fatload mmc 0 ${loadaddr} uImage;"	\ +	"bootm ${loadaddr}"			\ + +#define CONFIG_BOOTARGS	"console=ttyO2,115200n8 noinitrd earlyprintk" + +/* Clock Defines */ +#define V_OSCK          24000000    /* Clock output from T2 */ +#define V_SCLK          (V_OSCK >> 1) + +#define CONFIG_SYS_MAXARGS	32 +#define CONFIG_SYS_CBSIZE	512 /* console I/O buffer size */ +#define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE \ +		+ sizeof(CONFIG_SYS_PROMPT) + 16) /* print buffer size */ +#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE /* boot arg buffer size */ + +#undef  CONFIG_SYS_CLKS_IN_HZ +#define CONFIG_SYS_LOAD_ADDR		0x81000000 /* Default load address */ +#define CONFIG_SYS_HZ			1000	   /* 1ms clock */ + +#define CONFIG_CMD_ASKEN +#define CONFIG_CMD_ECHO +#define CONFIG_OMAP_GPIO +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_OMAP_HSMMC +#define CONFIG_CMD_MMC +#define CONFIG_DOS_PARTITION +#define CONFIG_CMD_FAT +#define CONFIG_CMD_EXT2 + +#define CONFIG_FS_FAT + +/* + * Only one of the following two options (DDR3/DDR2) should be enabled + * CONFIG_TI816X_EVM_DDR2 + * CONFIG_TI816X_EVM_DDR3 + */ +#define CONFIG_TI816X_EVM_DDR3 + +/* + * Supported values: 400, 531, 675 or 796 MHz + */ +#define CONFIG_TI816X_DDR_PLL_796 + +#define CONFIG_TI816X_USE_EMIF0	1 +#define CONFIG_TI816X_USE_EMIF1	1 + + +#define CONFIG_NR_DRAM_BANKS	2		/* we have 2 banks of DRAM */ +#define PHYS_DRAM_1		0x80000000	/* DRAM Bank #1 */ +#define PHYS_DRAM_1_SIZE        0x40000000	/* 1 GB */ +#define PHYS_DRAM_2		0xC0000000	/* DRAM Bank #2 */ +#define PHYS_DRAM_2_SIZE	0x40000000	/* 1 GB */ + +#define CONFIG_MAX_RAM_BANK_SIZE	(2048 << 20)	/* 2048MB */ +#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_CLK_FREQ     27000000 +#define CONFIG_SYS_TIMERBASE    0x4802E000 +#define CONFIG_SYS_PTV          2   /* Divisor: 2^(PTV+1) => 8 */ + +#undef CONFIG_NAND_OMAP_GPMC + +/* + * 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     0x48024000  /* Base EVM has UART2 */ + +#define CONFIG_BAUDRATE     115200 + +/* allow overwriting serial config and ethaddr */ +#define CONFIG_ENV_OVERWRITE + +#define CONFIG_SERIAL1 +#define CONFIG_SERIAL2 +#define CONFIG_SERIAL3 +#define CONFIG_CONS_INDEX	1 +#define CONFIG_SYS_CONSOLE_INFO_QUIET + +#define CONFIG_ENV_IS_NOWHERE + +/* SPL */ +/* Defines for SPL */ +#define CONFIG_SPL +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_TEXT_BASE    0x40400000 +#define CONFIG_SPL_MAX_SIZE     ((128 - 18) * 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_SYS_SPI_U_BOOT_OFFS  0x20000 +#define CONFIG_SYS_SPI_U_BOOT_SIZE  0x40000 +#define CONFIG_SPL_LDSCRIPT     "$(CPUDIR)/omap-common/u-boot-spl.lds" + +#define CONFIG_SPL_BOARD_INIT + +#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 + +/* Unsupported features */ +#undef CONFIG_USE_IRQ + +#endif diff --git a/include/configs/ti_am335x_common.h b/include/configs/ti_am335x_common.h new file mode 100644 index 000000000..fd3ffab01 --- /dev/null +++ b/include/configs/ti_am335x_common.h @@ -0,0 +1,60 @@ +/* + * ti_am335x_common.h + * + * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ + * + * SPDX-License-Identifier:	GPL-2.0+ + * + * For more details, please see the technical documents listed at + * http://www.ti.com/product/am3359#technicaldocuments + */ + +#ifndef __CONFIG_TI_AM335X_COMMON_H__ +#define __CONFIG_TI_AM335X_COMMON_H__ + +#define CONFIG_AM33XX +#define CONFIG_BOARD_LATE_INIT +#define CONFIG_ARCH_CPU_INIT +#define CONFIG_SYS_CACHELINE_SIZE       64 +#define CONFIG_MAX_RAM_BANK_SIZE	(1024 << 20)	/* 1GB */ +#define CONFIG_SYS_TIMERBASE		0x48040000	/* Use Timer2 */ + +#include <asm/arch/omap.h> + +/* NS16550 Configuration */ +#define CONFIG_SYS_NS16550 +#define CONFIG_SYS_NS16550_SERIAL +#define CONFIG_SYS_NS16550_REG_SIZE	(-4) +#define CONFIG_SYS_NS16550_CLK		48000000 + +/* Network defines. */ +#define CONFIG_CMD_NET +#define CONFIG_CMD_DHCP +#define CONFIG_CMD_PING +#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 + +/* SPL defines. */ +#define CONFIG_SPL_TEXT_BASE		0x402F0400 +#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE) +#define CONFIG_SPL_YMODEM_SUPPORT + +/* + * Since SPL did pll and ddr initialization for us, + * we don't need to do it twice. + */ +#if !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_NOR_BOOT) +#define CONFIG_SKIP_LOWLEVEL_INIT +#endif + +/* Now bring in the rest of the common code. */ +#include <configs/ti_armv7_common.h> + +#endif	/* __CONFIG_TI_AM335X_COMMON_H__ */ diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h new file mode 100644 index 000000000..e0ab6912b --- /dev/null +++ b/include/configs/ti_armv7_common.h @@ -0,0 +1,250 @@ +/* + * ti_armv7_common.h + * + * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ + * + * SPDX-License-Identifier:	GPL-2.0+ + * + * The various ARMv7 SoCs from TI all share a number of IP blocks when + * implementing a given feature.  Rather than define these in every + * board or even SoC common file, we define a common file to be re-used + * in all cases.  While technically true that some of these details are + * configurable at the board design, they are common throughout SoC + * reference platforms as well as custom designs and become de facto + * standards. + */ + +#ifndef __CONFIG_TI_ARMV7_COMMON_H__ +#define __CONFIG_TI_ARMV7_COMMON_H__ + +/* Common define for many platforms. */ +#define CONFIG_OMAP +#define CONFIG_OMAP_COMMON + +/* + * We typically do not contain NOR flash.  In the cases where we do, we + * undefine this later. + */ +#define CONFIG_SYS_NO_FLASH + +/* Support both device trees and ATAGs. */ +#define CONFIG_OF_LIBFDT +#define CONFIG_CMDLINE_TAG +#define CONFIG_SETUP_MEMORY_TAGS +#define CONFIG_INITRD_TAG + +/* + * Our DDR memory always starts at 0x80000000 and U-Boot shall have + * relocated itself to higher in memory by the time this value is used. + */ +#define CONFIG_SYS_LOAD_ADDR		0x80000000 + +/* + * Default to a quick boot delay. + */ +#define CONFIG_BOOTDELAY		1 + +/* + * DDR information.  We say (for simplicity) that we have 1 bank, + * always, even when we have more.  We always start at 0x80000000, + * and we place the initial stack pointer in our SRAM. + */ +#define CONFIG_NR_DRAM_BANKS		1 +#define CONFIG_SYS_SDRAM_BASE		0x80000000 +#define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \ +						GENERATED_GBL_DATA_SIZE) + +/* Timer information. */ +#define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */ +#define CONFIG_SYS_HZ			1000	/* 1ms clock */ + +/* I2C IP block */ +#define CONFIG_I2C +#define CONFIG_CMD_I2C +#define CONFIG_HARD_I2C +#define CONFIG_SYS_I2C_SPEED		100000 +#define CONFIG_SYS_I2C_SLAVE		1 +#define CONFIG_I2C_MULTI_BUS +#define CONFIG_DRIVER_OMAP24XX_I2C + +/* MMC/SD IP block */ +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_OMAP_HSMMC +#define CONFIG_CMD_MMC + +/* McSPI IP block */ +#define CONFIG_SPI +#define CONFIG_OMAP3_SPI +#define CONFIG_CMD_SPI + +/* GPIO block */ +#define CONFIG_OMAP_GPIO +#define CONFIG_CMD_GPIO + +/* + * GPMC NAND block.  We support 1 device and the physical address to + * access CS0 at is 0x8000000. + */ +#ifdef CONFIG_NAND +#define CONFIG_CMD_NAND +#define CONFIG_NAND_OMAP_GPMC +#define CONFIG_SYS_NAND_BASE		0x8000000 +#define CONFIG_SYS_MAX_NAND_DEVICE	1 +#endif + +/* + * The following are general good-enough settings for U-Boot.  We set a + * large malloc pool as we generally have a lot of DDR, and we opt for + * function over binary size in the main portion of U-Boot as this is + * generally easily constrained later if needed.  We enable the config + * options that give us information in the environment about what board + * we are on so we do not need to rely on the command prompt.  We set a + * console baudrate of 115200 and use the default baud rate table. + */ +#define CONFIG_SYS_MALLOC_LEN		(1024 << 10) +#define CONFIG_SYS_LONGHELP +#define CONFIG_SYS_HUSH_PARSER +#define CONFIG_AUTO_COMPLETE +#define CONFIG_CMDLINE_EDITING +#define CONFIG_SYS_PROMPT		"U-Boot# " +#define CONFIG_VERSION_VARIABLE +#define CONFIG_ENV_VARS_UBOOT_CONFIG +#define CONFIG_BAUDRATE			115200 + +/* We set the max number of command args high to avoid HUSH bugs. */ +#define CONFIG_SYS_MAXARGS		64 + +/* 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_ENV_OVERWRITE +#define CONFIG_SYS_CONSOLE_INFO_QUIET + +/* + * When we have SPI, NOR or NAND flash we expect to be making use of + * mtdparts, both for ease of use in U-Boot and for passing information + * on to the Linux kernel. + */ +#if defined(CONFIG_SPI_BOOT) || defined(CONFIG_NOR) || defined(CONFIG_NAND) +#define CONFIG_MTD_DEVICE		/* Required for mtdparts */ +#define CONFIG_CMD_MTDPARTS +#endif + +/* + * For commands to use, we take the default list and add a few other + * useful commands.  Note that we must have set CONFIG_SYS_NO_FLASH + * prior to this include, in order to skip a few commands.  When we do + * have flash, if we expect these commands they must be enabled in that + * config. + */ +#include <config_cmd_default.h> +#define CONFIG_CMD_ASKENV +#define CONFIG_CMD_ECHO +#define CONFIG_CMD_BOOTZ + +/* + * Common filesystems support.  When we have removable storage we + * enabled a number of useful commands and support. + */ +#if defined(CONFIG_MMC) || defined(CONFIG_USB_STORAGE) +#define CONFIG_DOS_PARTITION +#define CONFIG_CMD_FAT +#define CONFIG_FAT_WRITE +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_EXT4 +#define CONFIG_CMD_FS_GENERIC +#endif + +/* + * Our platforms make use of SPL to initalize the hardware (primarily + * memory) enough for full U-Boot to be loaded.  We also support Falcon + * Mode so that the Linux kernel can be booted directly from SPL + * instead, if desired.  We make use of the general SPL framework found + * under common/spl/.  Given our generally common memory map, we set a + * number of related defaults and sizes here. + */ +#ifndef CONFIG_NOR_BOOT +#define CONFIG_SPL +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_OS_BOOT + +/* + * Place the image at the start of the ROM defined image space. + * We limit our size to the ROM-defined downloaded image area, and use the + * rest of the space for stack.  We load U-Boot itself into memory at + * 0x80800000 for legacy reasons (to not conflict with older SPLs).  We + * have our BSS be placed 1MiB after this, to allow for the default + * Linux kernel address of 0x80008000 to work, in the Falcon Mode case. + * We have the SPL malloc pool at the end of the BSS area. + */ +#define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR +#define CONFIG_SYS_TEXT_BASE		0x80800000 +#define CONFIG_SPL_BSS_START_ADDR	0x80a00000 +#define CONFIG_SPL_BSS_MAX_SIZE		0x80000		/* 512 KB */ +#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \ +					 CONFIG_SPL_BSS_MAX_SIZE) +#define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN + +/* RAW SD card / eMMC locations. */ +#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR	0x300 /* address 0x60000 */ +#define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	0x200 /* 256 KB */ + +/* FAT sd card locations. */ +#define CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION	1 +#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME	"u-boot.img" + +#ifdef CONFIG_SPL_OS_BOOT +#define CONFIG_SYS_SPL_ARGS_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x100) + +/* FAT */ +#define CONFIG_SPL_FAT_LOAD_KERNEL_NAME		"uImage" +#define CONFIG_SPL_FAT_LOAD_ARGS_NAME		"args" + +/* RAW SD card / eMMC */ +#define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR	0x900	/* address 0x120000 */ +#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x80	/* address 0x10000 */ +#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0x80	/* 64KiB */ + +/* NAND */ +#ifdef CONFIG_NAND +#define CONFIG_CMD_SPL_NAND_OFS			0x240000 /* end of u-boot */ +#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x280000 +#define CONFIG_CMD_SPL_WRITE_SIZE		0x2000 +#endif + +/* spl export command */ +#define CONFIG_CMD_SPL +#endif + +#ifdef CONFIG_MMC +#define CONFIG_SPL_MMC_SUPPORT +#define CONFIG_SPL_FAT_SUPPORT +#endif + +/* General parts of the framework. */ +#define CONFIG_SPL_I2C_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_BOARD_INIT + +#ifdef CONFIG_NAND +#define CONFIG_SPL_NAND_AM33XX_BCH	/* OMAP4 and later ELM support */ +#define CONFIG_SPL_NAND_SUPPORT +#define CONFIG_SPL_NAND_BASE +#define CONFIG_SPL_NAND_DRIVERS +#define CONFIG_SPL_NAND_ECC +#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000 +#endif +#endif /* !CONFIG_NOR_BOOT */ + +#endif	/* __CONFIG_TI_ARMV7_COMMON_H__ */ diff --git a/include/configs/trats.h b/include/configs/trats.h index 9b6aac96e..24ea06b92 100644 --- a/include/configs/trats.h +++ b/include/configs/trats.h @@ -263,6 +263,9 @@  #define CONFIG_SYS_I2C_SOFT		/* I2C bit-banged */  #define CONFIG_SYS_I2C_SOFT_SPEED	50000  #define CONFIG_SYS_I2C_SOFT_SLAVE	0xFE +#define I2C_SOFT_DECLARATIONS2 +#define CONFIG_SYS_I2C_SOFT_SPEED_2     50000 +#define CONFIG_SYS_I2C_SOFT_SLAVE_2     0x7F  #define CONFIG_SOFT_I2C_READ_REPEATED_START  #define CONFIG_SYS_I2C_INIT_BOARD  #define CONFIG_I2C_MULTI_BUS diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h index 4e2cb65b0..a9b271464 100644 --- a/include/configs/tricorder.h +++ b/include/configs/tricorder.h @@ -19,6 +19,7 @@  /* High Level Configuration Options */  #define CONFIG_OMAP			/* in a TI OMAP core */  #define CONFIG_OMAP34XX			/* which is a 34XX */ +#define CONFIG_OMAP_COMMON  #define CONFIG_MACH_TYPE		MACH_TYPE_TRICORDER  /* diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h index 9c23b2620..665cfc3cf 100644 --- a/include/configs/wandboard.h +++ b/include/configs/wandboard.h @@ -97,6 +97,7 @@  #define CONFIG_VIDEO_LOGO  #define CONFIG_VIDEO_BMP_LOGO  #define CONFIG_IPUV3_CLK 260000000 +#define CONFIG_IMX_HDMI  #if defined(CONFIG_MX6DL)  #define CONFIG_DEFAULT_FDT_FILE		"imx6dl-wandboard.dtb" @@ -110,6 +111,7 @@  	"script=boot.scr\0" \  	"uimage=uImage\0" \  	"console=ttymxc0\0" \ +	"splashpos=m,m\0" \  	"fdt_high=0xffffffff\0" \  	"initrd_high=0xffffffff\0" \  	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ diff --git a/include/configs/zynq.h b/include/configs/zynq.h index 79fa5bb53..b9f381f64 100644 --- a/include/configs/zynq.h +++ b/include/configs/zynq.h @@ -72,6 +72,15 @@  # define CONFIG_CPU_V6 /* Required by CONFIG_ARM_DCC */  #endif +#define CONFIG_ZYNQ_SPI + +/* SPI */ +#ifdef CONFIG_ZYNQ_SPI +# define CONFIG_SPI_FLASH +# define CONFIG_SPI_FLASH_SST +# define CONFIG_CMD_SF +#endif +  /* Enable the PL to be downloaded */  #define CONFIG_FPGA  #define CONFIG_FPGA_XILINX diff --git a/include/cpsw.h b/include/cpsw.h index 296b0e557..743cb96e7 100644 --- a/include/cpsw.h +++ b/include/cpsw.h @@ -39,6 +39,7 @@ struct cpsw_platform_data {  	int	ale_entries;	/* ale table size			*/  	u32	host_port_reg_ofs;	/* cpdma host port registers	*/  	u32	hw_stats_reg_ofs;	/* cpsw hw stats counters	*/ +	u32	bd_ram_ofs;		/* Buffer Descriptor RAM offset */  	u32	mac_control;  	struct cpsw_slave_data	*slave_data;  	void	(*control)(int enabled); diff --git a/include/dfu.h b/include/dfu.h index 1d4006de8..47b90559d 100644 --- a/include/dfu.h +++ b/include/dfu.h @@ -47,6 +47,8 @@ struct nand_internal_data {  	unsigned int dev;  	unsigned int part; +	/* for nand/ubi use */ +	unsigned int ubi;  };  static inline unsigned int get_mmc_blk_size(int dev) diff --git a/include/e500.h b/include/e500.h index 0ff8e89a1..0c2432657 100644 --- a/include/e500.h +++ b/include/e500.h @@ -10,19 +10,19 @@  typedef struct  { -  unsigned long freqProcessor[CONFIG_MAX_CPUS]; -  unsigned long freqSystemBus; -  unsigned long freqDDRBus; -  unsigned long freqLocalBus; -  unsigned long freqQE; +	unsigned long freq_processor[CONFIG_MAX_CPUS]; +	unsigned long freq_systembus; +	unsigned long freq_ddrbus; +	unsigned long freq_localbus; +	unsigned long freq_qe;  #ifdef CONFIG_SYS_DPAA_FMAN -  unsigned long freqFMan[CONFIG_SYS_NUM_FMAN]; +	unsigned long freq_fman[CONFIG_SYS_NUM_FMAN];  #endif  #ifdef CONFIG_SYS_DPAA_QBMAN -  unsigned long freqQMAN; +	unsigned long freq_qman;  #endif  #ifdef CONFIG_SYS_DPAA_PME -  unsigned long freqPME; +	unsigned long freq_pme;  #endif  } MPC85xx_SYS_INFO; diff --git a/include/edid.h b/include/edid.h index f153091f6..480a773d0 100644 --- a/include/edid.h +++ b/include/edid.h @@ -54,7 +54,7 @@ struct edid_detailed_timing {  	 (_x).vertical_blanking)  	unsigned char hsync_offset;  	unsigned char hsync_pulse_width; -	unsigned char sync_offset_pulse_width; +	unsigned char vsync_offset_pulse_width;  	unsigned char hsync_vsync_offset_pulse_width_hi;  #define EDID_DETAILED_TIMING_HSYNC_OFFSET(_x) \  	((GET_BITS((_x).hsync_vsync_offset_pulse_width_hi, 7, 6) << 8) + \ diff --git a/include/elf.h b/include/elf.h index 29f276d3f..b8ecc4106 100644 --- a/include/elf.h +++ b/include/elf.h @@ -2,27 +2,7 @@   * Copyright (c) 1995, 1996, 2001, 2002   * Erik Theisen.  All rights reserved.   * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *    notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *    notice, this list of conditions and the following disclaimer in the - *    documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - *    derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * SPDX-License-Identifier:	BSD-3-Clause   */  /* diff --git a/include/fsl_esdhc.h b/include/fsl_esdhc.h index 2c97398f4..89bcbd170 100644 --- a/include/fsl_esdhc.h +++ b/include/fsl_esdhc.h @@ -182,5 +182,6 @@ void fdt_fixup_esdhc(void *blob, bd_t *bd);  static inline int fsl_esdhc_mmc_init(bd_t *bis) { return -ENOSYS; }  static inline void fdt_fixup_esdhc(void *blob, bd_t *bd) {}  #endif /* CONFIG_FSL_ESDHC */ +void __noreturn mmc_boot(void);  #endif  /* __FSL_ESDHC_H__ */ diff --git a/include/fsl_usb.h b/include/fsl_usb.h new file mode 100644 index 000000000..915774cba --- /dev/null +++ b/include/fsl_usb.h @@ -0,0 +1,64 @@ +/* + * Freescale USB Controller + * + * Copyright 2013 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +#ifndef _ASM_FSL_USB_H_ +#define _ASM_FSL_USB_H_ + +#ifdef CONFIG_SYS_FSL_USB_DUAL_PHY_ENABLE +struct ccsr_usb_port_ctrl { +	u32	ctrl; +	u32	drvvbuscfg; +	u32	pwrfltcfg; +	u32	sts; +	u8	res_14[0xc]; +	u32	bistcfg; +	u32	biststs; +	u32	abistcfg; +	u32	abiststs; +	u8	res_30[0x10]; +	u32	xcvrprg; +	u32	anaprg; +	u32	anadrv; +	u32	anasts; +}; + +struct ccsr_usb_phy { +	u32	id; +	struct ccsr_usb_port_ctrl port1; +	u8	res_50[0xc]; +	u32	tvr; +	u32	pllprg[4]; +	u8	res_70[0x4]; +	u32	anaccfg; +	u32	dbg; +	u8	res_7c[0x4]; +	struct ccsr_usb_port_ctrl port2; +	u8	res_dc[0x334]; +}; + +#define CONFIG_SYS_FSL_USB_CTRL_PHY_EN (1 << 0) +#define CONFIG_SYS_FSL_USB_DRVVBUS_CR_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PWRFLT_CR_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PLLPRG1_PHY_DIV (1 << 0) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PHY2_CLK_EN (1 << 0) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PHY1_CLK_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PLLPRG2_FRAC_LPF_EN (1 << 13) +#define CONFIG_SYS_FSL_USB_PLLPRG2_REF_DIV (1 << 4) +#define CONFIG_SYS_FSL_USB_PLLPRG2_MFI (5 << 16) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PLL_EN (1 << 21) +#define CONFIG_SYS_FSL_USB_SYS_CLK_VALID (1 << 0) +#else +struct ccsr_usb_phy { +	u8	res0[0x18]; +	u32	usb_enable_override; +	u8	res[0xe4]; +}; +#define	CONFIG_SYS_FSL_USB_ENABLE_OVERRIDE	1 +#endif + +#endif /*_ASM_FSL_USB_H_ */ diff --git a/include/i2c.h b/include/i2c.h index d8674efe5..8fd17d190 100644 --- a/include/i2c.h +++ b/include/i2c.h @@ -390,7 +390,7 @@ unsigned int i2c_get_bus_speed(void);  # if !defined(CONFIG_SYS_MAX_I2C_BUS)  #  define CONFIG_SYS_MAX_I2C_BUS		2  # endif -# define I2C_MULTI_BUS				0 +# define I2C_MULTI_BUS				1  #else  # define CONFIG_SYS_MAX_I2C_BUS		1  # define I2C_MULTI_BUS				0 diff --git a/include/miiphy.h b/include/miiphy.h index ca5040ed8..657b49624 100644 --- a/include/miiphy.h +++ b/include/miiphy.h @@ -1,27 +1,8 @@ -/*----------------------------------------------------------------------------+ -|   This source code is dual-licensed.  You may use it under the terms of the -|   GNU General Public License version 2, or under the license below. -| -|	This source code has been made available to you by IBM on an AS-IS -|	basis.	Anyone receiving this source is licensed under IBM -|	copyrights to use it in any way he or she deems fit, including -|	copying it, modifying it, compiling it, and redistributing it either -|	with or without modifications.	No license under IBM patents or -|	patent applications is to be implied by the copyright license. -| -|	Any user of this software should understand that IBM cannot provide -|	technical support for this software and will not be responsible for -|	any consequences resulting from the use of this software. -| -|	Any person who transfers this source code or any derivative work -|	must include the IBM copyright notice, this paragraph, and the -|	preceding two paragraphs in the transferred software. -| -|	COPYRIGHT   I B M   CORPORATION 1999 -|	LICENSED MATERIAL  -  PROGRAM PROPERTY OF I B M -| -|   Additions (C) Copyright 2009 Industrie Dial Face S.p.A. -+----------------------------------------------------------------------------*/ +/* + * SPDX-License-Identifier:	GPL-2.0	ibm-pibs + * + * Additions (C) Copyright 2009 Industrie Dial Face S.p.A. + */  /*----------------------------------------------------------------------------+  |  |  File Name:	miiphy.h diff --git a/include/mpc86xx.h b/include/mpc86xx.h index 31e83f2cc..9fe474803 100644 --- a/include/mpc86xx.h +++ b/include/mpc86xx.h @@ -41,9 +41,9 @@  #ifndef __ASSEMBLY__  typedef struct { -	unsigned long freqProcessor; -	unsigned long freqSystemBus; -	unsigned long freqLocalBus; +	unsigned long freq_processor; +	unsigned long freq_systembus; +	unsigned long freq_localbus;  } MPC86xx_SYS_INFO;  #define l1icache_enable	icache_enable diff --git a/include/net.h b/include/net.h index 767347004..5aedc17aa 100644 --- a/include/net.h +++ b/include/net.h @@ -357,7 +357,7 @@ struct icmp_hdr {  		} echo;  		ulong	gateway;  		struct { -			ushort	__unused; +			ushort	unused;  			ushort	mtu;  		} frag;  		uchar data[0]; diff --git a/include/pci.h b/include/pci.h index 01002a430..911ba89ac 100644 --- a/include/pci.h +++ b/include/pci.h @@ -410,13 +410,6 @@  #define PCI_MAX_PCI_DEVICES	32  #define PCI_MAX_PCI_FUNCTIONS	8 -#define PCI_DCR		0x54    /* PCIe Device Control Register */ -#define PCI_DSR		0x56    /* PCIe Device Status Register */ -#define PCI_LSR		0x5e    /* PCIe Link Status Register */ -#define PCI_LCR		0x5c    /* PCIe Link Control Register */ -#define PCI_LTSSM	0x404   /* PCIe Link Training, Status State Machine */ -#define  PCI_LTSSM_L0	0x16    /* L0 state */ -  /* Include the ID list */  #include <pci_ids.h> diff --git a/include/serial.h b/include/serial.h index f6bb2b90a..d232d470a 100644 --- a/include/serial.h +++ b/include/serial.h @@ -26,7 +26,7 @@ extern struct serial_device serial_smc_device;  extern struct serial_device serial_scc_device;  extern struct serial_device *default_serial_console(void); -#if	defined(CONFIG_405GP) || defined(CONFIG_405CR) || \ +#if	defined(CONFIG_405GP) || \  	defined(CONFIG_405EP) || defined(CONFIG_405EZ) || \  	defined(CONFIG_405EX) || defined(CONFIG_440) || \  	defined(CONFIG_MB86R0x) || defined(CONFIG_MPC5xxx) || \ diff --git a/include/stdio_dev.h b/include/stdio_dev.h index d0b5593e5..e6dc12ac3 100644 --- a/include/stdio_dev.h +++ b/include/stdio_dev.h @@ -83,9 +83,6 @@ struct list_head* stdio_get_list(void);  struct stdio_dev* stdio_get_by_name(const char* name);  struct stdio_dev* stdio_clone(struct stdio_dev *dev); -#ifdef CONFIG_ARM_DCC -int drv_arm_dcc_init(void); -#endif  #ifdef CONFIG_LCD  int	drv_lcd_init (void);  #endif diff --git a/include/tca642x.h b/include/tca642x.h new file mode 100644 index 000000000..bda86c1ed --- /dev/null +++ b/include/tca642x.h @@ -0,0 +1,69 @@ +/* + * Copyright 2013 Texas Instruments, Inc. + * Author: Dan Murphy <dmurphy@ti.com> + * + * Derived work from the pca953x.c driver + * + * 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 __TCA642X_H_ +#define __TCA642X_H_ + +#ifdef CONFIG_CMD_TCA642X +enum { +	TCA642X_CMD_INFO, +	TCA642X_CMD_DEVICE, +	TCA642X_CMD_OUTPUT, +	TCA642X_CMD_INPUT, +	TCA642X_CMD_INVERT, +}; +#endif + +#define TCA642X_OUT_LOW		0 +#define TCA642X_OUT_HIGH	1 +#define TCA642X_POL_NORMAL	0 +#define TCA642X_POL_INVERT	1 +#define TCA642X_DIR_OUT		0 +#define TCA642X_DIR_IN		1 + +/* Default to an address that hopefully won't corrupt other i2c devices */ +#ifndef CONFIG_SYS_I2C_TCA642X_ADDR +#define CONFIG_SYS_I2C_TCA642X_ADDR	(~0) +#endif + +/* Default to an address that hopefully won't corrupt other i2c devices */ +#ifndef CONFIG_SYS_I2C_TCA642X_BUS_NUM +#define CONFIG_SYS_I2C_TCA642X_BUS_NUM	(0) +#endif + +struct tca642x_bank_info { +	uint8_t input_reg; +	uint8_t output_reg; +	uint8_t polarity_reg; +	uint8_t configuration_reg; +}; + +int tca642x_set_val(uchar chip, uint8_t gpio_bank, +			uint8_t reg_bit, uint8_t data); +int tca642x_set_pol(uchar chip, uint8_t gpio_bank, +			uint8_t reg_bit, uint8_t data); +int tca642x_set_dir(uchar chip, uint8_t gpio_bank, +			uint8_t reg_bit, uint8_t data); +int tca642x_get_val(uchar chip, uint8_t gpio_bank); +int tca642x_set_inital_state(uchar chip, struct tca642x_bank_info init_data[]); + +#endif /* __TCA642X_H_ */ diff --git a/include/video_font.h b/include/video_font.h index 7ef951999..96b9edb0d 100644 --- a/include/video_font.h +++ b/include/video_font.h @@ -8,9 +8,10 @@  #ifndef _VIDEO_FONT_  #define _VIDEO_FONT_ -#define VIDEO_FONT_CHARS	256 -#define VIDEO_FONT_WIDTH	8 -#define VIDEO_FONT_HEIGHT	16 -#define VIDEO_FONT_SIZE		(VIDEO_FONT_CHARS * VIDEO_FONT_HEIGHT) +#ifdef CONFIG_VIDEO_FONT_4X6 +#include <video_font_4x6.h> +#else +#include <video_font_data.h> +#endif  #endif /* _VIDEO_FONT_ */ diff --git a/include/video_font_4x6.h b/include/video_font_4x6.h new file mode 100644 index 000000000..d1778d5b5 --- /dev/null +++ b/include/video_font_4x6.h @@ -0,0 +1,2154 @@ + +/* Hand composed "Minuscule" 4x6 font, with binary data generated using + * Perl stub. + * + * Use 'perl -x mini_4x6.c < mini_4x6.c > new_version.c' to regenerate + * binary data. + * + * Created by Kenneth Albanowski. + * No rights reserved, released to the public domain. + * + * Version 1.0 + */ + +/* + +#!/usr/bin/perl -pn + +s{((0x)?[0-9a-fA-F]+)(.*\[([\*\ ]{4})\])}{ + +	($num,$pat,$bits) = ($1,$3,$4); +	 +	$bits =~ s/([^\s0])|(.)/ defined($1) + 0 /ge; +	 +	$num = ord(pack("B8", $bits)); +	$num |= $num >> 4; +	$num = sprintf("0x%.2x", $num); +	 +	#print "$num,$pat,$bits\n"; +	 +	$num . $pat; +}ge; + +__END__; +*/ + +/* Note: binary data consists of one byte for each row of each character top +   to bottom, character 0 to character 255, six bytes per character. Each +   byte contains the same four character bits in both nybbles. +   MSBit to LSBit = left to right. + */ + +#ifndef _VIDEO_FONT_DATA_ +#define _VIDEO_FONT_DATA_ + +#define VIDEO_FONT_CHARS	256 +#define VIDEO_FONT_WIDTH	4 +#define VIDEO_FONT_HEIGHT	6 +#define VIDEO_FONT_SIZE		(VIDEO_FONT_CHARS * VIDEO_FONT_HEIGHT) + +static unsigned char video_fontdata[VIDEO_FONT_SIZE] = { + +	/*{*/ +	  	/*   Char 0: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 1: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 2: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 3: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 4: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 5: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 6: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 7: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 8: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 9: ' '  */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 10: '' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 11: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 12: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 13: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 14: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 15: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 16: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 17: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 18: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 19: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 20: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 21: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 22: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 23: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 24: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 25: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 26: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 27: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 28: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 29: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 30: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 31: ' ' */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 32: ' ' */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 33: '!' */ +	0x44,	/*=  [ *  ]       */ +	0x44,	/*=  [ *  ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 34: '"' */ +	0xaa,	/*=  [* * ]       */ +	0xaa,	/*=  [* * ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 35: '#' */ +	0xaa,	/*=  [* * ]       */ +	0xff,	/*=  [****]       */ +	0xff,	/*=  [****]       */ +	0xaa,	/*=  [* * ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 36: '$' */ +	0x44,	/*=  [ *  ]       */ +	0x66,	/*=  [ ** ]       */ +	0xee,	/*=  [*** ]       */ +	0xcc,	/*=  [**  ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 37: '%' */ +	0xaa,	/*=  [* * ]       */ +	0x22,	/*=  [  * ]       */ +	0x44,	/*=  [ *  ]       */ +	0x88,	/*=  [*   ]       */ +	0xaa,	/*=  [* * ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 38: '&' */ +	0x66,	/*=  [ ** ]       */ +	0x99,	/*=  [*  *]       */ +	0x66,	/*=  [ ** ]       */ +	0xaa,	/*=  [* * ]       */ +	0xdd,	/*=  [** *]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 39: ''' */ +	0x22,	/*=  [  * ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 40: '(' */ +	0x22,	/*=  [  * ]       */ +	0x44,	/*=  [ *  ]       */ +	0x44,	/*=  [ *  ]       */ +	0x44,	/*=  [ *  ]       */ +	0x22,	/*=  [  * ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 41: ')' */ +	0x44,	/*=  [ *  ]       */ +	0x22,	/*=  [  * ]       */ +	0x22,	/*=  [  * ]       */ +	0x22,	/*=  [  * ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 42: '*' */ +	0x00,	/*=  [    ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 43: '+' */ +	0x00,	/*=  [    ]       */ +	0x44,	/*=  [ *  ]       */ +	0xee,	/*=  [*** ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 44: ',' */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x44,	/*=  [ *  ]       */ +	0x88,	/*=  [*   ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 45: '-' */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0xee,	/*=  [*** ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 46: '.' */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	0x44,	/*=  [ *  ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 47: '/' */ +	0x00,	/*=  [    ]       */ +	0x22,	/*=  [  * ]       */ +	0x44,	/*=  [ *  ]       */ +	0x88,	/*=  [*   ]       */ +	0x00,	/*=  [    ]       */ +	0x00,	/*=  [    ]       */ +	/*}*/ +	/*{*/ +	  	/*   Char 48: '0'   */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ +	  	/*   Char 49: '1'   */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ +	  	/*   Char 50: '2'   */ +	0xcc,	/*=   [**  ]        */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ +	  	/*   Char 51: '3'   */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x22,	/*=   [  * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 52: '4'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 53: '5'   */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 54: '6'   */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 55: '7'   */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 56: '8'   */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 57: '9'   */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 58: ':'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 59: ';'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	/*}*/ +	/*{*/ 	/*   Char 60: '<'   */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 61: '='   */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 62: '>'   */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 63: '?'   */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 64: '@'   */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 65: 'A'   */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 66: 'B'   */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 67: 'C'   */ +	0x66,	/*=   [ ** ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 68: 'D'   */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 69: 'E'   */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 70: 'F'   */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 71: 'G'   */ +	0x66,	/*=   [ ** ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 72: 'H'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 73: 'I'   */ +	0xee,	/*=   [*** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 74: 'J'   */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 75: 'K'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 76: 'L'   */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 77: 'M'   */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 78: 'N'   */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 79: 'O'   */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 80: 'P'   */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 81: 'Q'   */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 82: 'R'   */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 83: 'S'   */ +	0x66,	/*=   [ ** ]        */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x22,	/*=   [  * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 84: 'T'   */ +	0xee,	/*=   [*** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 85: 'U'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 86: 'V'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 87: 'W'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 88: 'X'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 89: 'Y'   */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 90: 'Z'   */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 91: '['   */ +	0x66,	/*=   [ ** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 92: '\'   */ +	0x00,	/*=   [    ]        */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 93: ']'   */ +	0x66,	/*=   [ ** ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 94: '^'   */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 95: '_'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	/*}*/ +	/*{*/ 	/*   Char 96: '`'   */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 97: 'a'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 98: 'b'   */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 99: 'c'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0x88,	/*=   [*   ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 100: 'd'   */ +	0x22,	/*=   [  * ]        */ +	0x22,	/*=   [  * ]        */ +	0x66,	/*=   [ ** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 101: 'e'   */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x88,	/*=   [*   ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 102: 'f'   */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 103: 'g'   */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 104: 'h'   */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 105: 'i'   */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 106: 'j'   */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 107: 'k'   */ +	0x00,	/*=   [    ]        */ +	0x88,	/*=   [*   ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 108: 'l'   */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 109: 'm'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 110: 'n'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 111: 'o'   */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 112: 'p'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x88,	/*=   [*   ]        */ +	/*}*/ +	/*{*/ 	/*   Char 113: 'q'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x22,	/*=   [  * ]        */ +	/*}*/ +	/*{*/ 	/*   Char 114: 'r'   */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0xaa,	/*=   [* * ]        */ +	0x88,	/*=   [*   ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 115: 's'   */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0xcc,	/*=   [**  ]        */ +	0x22,	/*=   [  * ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 116: 't'   */ +	0x00,	/*=   [    ]        */ +	0x44,	/*=   [ *  ]        */ +	0xee,	/*=   [*** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 117: 'u'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 118: 'v'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 119: 'w'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 120: 'x'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xaa,	/*=   [* * ]        */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 121: 'y'   */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x22,	/*=   [  * ]        */ +	0xcc,	/*=   [**  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 122: 'z' */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xcc,	/*=   [**  ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 123: '{' */ +	0x22,	/*=   [  * ]        */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x22,	/*=   [  * ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 124: '|' */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 125: '}' */ +	0x88,	/*=   [*   ]        */ +	0x44,	/*=   [ *  ]        */ +	0x66,	/*=   [ ** ]        */ +	0x44,	/*=   [ *  ]        */ +	0x88,	/*=   [*   ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 126: '~' */ +	0x55,	/*=   [ * *]        */ +	0xaa,	/*=   [* * ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 127: '' */ +	0x44,	/*=   [ *  ]        */ +	0xaa,	/*=   [* * ]        */ +	0xaa,	/*=   [* * ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 128:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 129:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 130:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 131:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 132:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 133:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 134:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 135:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 136:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 137:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 138:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 139:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 140:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 141:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 142:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 143:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 144:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 145:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 146:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 147:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 148:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 149:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 150:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 151:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 152:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 153:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 154:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 155:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 156:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 157:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 158:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 159:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 160:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 161:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 162:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 163:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 164:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 165:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 166:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 167:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 168:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 169:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 170:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 171:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 172:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 173:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 174:  */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0xcc,	/*=   [**  ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 175:  */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0x66,	/*=   [ ** ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 176:  */ +	0x88,	/*=   [*   ]        */ +	0x22,	/*=   [  * ]        */ +	0x88,	/*=   [*   ]        */ +	0x22,	/*=   [  * ]        */ +	0x88,	/*=   [*   ]        */ +	0x22,	/*=   [  * ]        */ +	/*}*/ +	/*{*/ 	/*   Char 177:  */ +	0xaa,	/*=   [* * ]        */ +	0x55,	/*=   [ * *]        */ +	0xaa,	/*=   [* * ]        */ +	0x55,	/*=   [ * *]        */ +	0xaa,	/*=   [* * ]        */ +	0x55,	/*=   [ * *]        */ +	/*}*/ +	/*{*/ 	/*   Char 178:  */ +	0xdd,	/*=   [** *]        */ +	0xbb,	/*=   [* **]        */ +	0xdd,	/*=   [** *]        */ +	0xbb,	/*=   [* **]        */ +	0xdd,	/*=   [** *]        */ +	0xbb,	/*=   [* **]        */ +	/*}*/ +	/*{*/ 	/*   Char 179:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 180:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 181:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 182:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 183:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 184:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 185:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 186:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 187:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 188:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 189:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 190:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 191:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xcc,	/*=   [**  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 192:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x77,	/*=   [ ***]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 193:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 194:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 195:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x77,	/*=   [ ***]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 196:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 197:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xff,	/*=   [****]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 198:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 199:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x77,	/*=   [ ***]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 200:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 201:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 202:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 203:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 204:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 205:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 206:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 207:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 208:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 209:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 210:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 211:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x77,	/*=   [ ***]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 212:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 213:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x77,	/*=   [ ***]        */ +	0x77,	/*=   [ ***]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 214:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x77,	/*=   [ ***]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 215:  */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0xff,	/*=   [****]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	/*}*/ +	/*{*/ 	/*   Char 216:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 217:  */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0xcc,	/*=   [**  ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 218:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x77,	/*=   [ ***]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	0x44,	/*=   [ *  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 219:  */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	/*}*/ +	/*{*/ 	/*   Char 220:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	/*}*/ +	/*{*/ 	/*   Char 221:  */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	0xcc,	/*=   [**  ]        */ +	/*}*/ +	/*{*/ 	/*   Char 222:  */ +	0x33,	/*=   [  **]        */ +	0x33,	/*=   [  **]        */ +	0x33,	/*=   [  **]        */ +	0x33,	/*=   [  **]        */ +	0x33,	/*=   [  **]        */ +	0x33,	/*=   [  **]        */ +	/*}*/ +	/*{*/ 	/*   Char 223:  */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0xff,	/*=   [****]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 224:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 225:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 226:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 227:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 228:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 229:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 230:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 231:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 232:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 233:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 234:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 235:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 236:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 237:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 238:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 239:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 240:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 241:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 242:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 243:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 244:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 245:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 246:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 247:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 248:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 249:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 250:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 251:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 252:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 253:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 254:  */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	0x66,	/*=   [ ** ]        */ +	0x66,	/*=   [ ** ]        */ +	0x00,	/*=   [    ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +	/*{*/ 	/*   Char 255:  */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0xee,	/*=   [*** ]        */ +	0x00,	/*=   [    ]        */ +	/*}*/ +}; + +#endif diff --git a/include/video_font_data.h b/include/video_font_data.h index 4e544f0d7..346a162f5 100644 --- a/include/video_font_data.h +++ b/include/video_font_data.h @@ -8,7 +8,12 @@  #ifndef _VIDEO_FONT_DATA_  #define _VIDEO_FONT_DATA_ -static unsigned char video_fontdata[VIDEO_FONT_SIZE] = { +#define VIDEO_FONT_CHARS	256 +#define VIDEO_FONT_WIDTH	8 +#define VIDEO_FONT_HEIGHT	16 +#define VIDEO_FONT_SIZE		(VIDEO_FONT_CHARS * VIDEO_FONT_HEIGHT) + +static unsigned char __maybe_unused video_fontdata[VIDEO_FONT_SIZE] = {  	/* 0 0x00 '^@' */  	0x00, /* 00000000 */ diff --git a/include/zynqpl.h b/include/zynqpl.h index f8211cdba..6107cbf3a 100644 --- a/include/zynqpl.h +++ b/include/zynqpl.h @@ -20,12 +20,14 @@ extern int zynq_info(Xilinx_desc *desc);  #define XILINX_ZYNQ_7020	0x7  #define XILINX_ZYNQ_7030	0xc  #define XILINX_ZYNQ_7045	0x11 +#define XILINX_ZYNQ_7100	0x16  /* Device Image Sizes */  #define XILINX_XC7Z010_SIZE	16669920/8  #define XILINX_XC7Z020_SIZE	32364512/8  #define XILINX_XC7Z030_SIZE	47839328/8  #define XILINX_XC7Z045_SIZE	106571232/8 +#define XILINX_XC7Z100_SIZE	139330784/8  /* Descriptor Macros */  #define XILINX_XC7Z010_DESC(cookie) \ @@ -40,4 +42,7 @@ extern int zynq_info(Xilinx_desc *desc);  #define XILINX_XC7Z045_DESC(cookie) \  { xilinx_zynq, devcfg, XILINX_XC7Z045_SIZE, NULL, cookie, "7z045" } +#define XILINX_XC7Z100_DESC(cookie) \ +{ xilinx_zynq, devcfg, XILINX_XC7Z100_SIZE, NULL, cookie, "7z100" } +  #endif /* _ZYNQPL_H_ */ |