diff options
| author | Matthew McClintock <msm@freescale.com> | 2012-05-18 06:04:17 +0000 | 
|---|---|---|
| committer | Andy Fleming <afleming@freescale.com> | 2012-08-08 17:13:37 -0500 | 
| commit | af2536088e2feae2cf1274f48376e3310e0f709e (patch) | |
| tree | 50111b432dd0abc06c960b91991c38a1e6ce419c /include | |
| parent | 56249fea3d5e32cddcd9160e51ec93a9c4327c6b (diff) | |
| download | olio-uboot-2014.01-af2536088e2feae2cf1274f48376e3310e0f709e.tar.xz olio-uboot-2014.01-af2536088e2feae2cf1274f48376e3310e0f709e.zip | |
powerpc/p1022ds: add support for SPI and SD boot
Add TLB mappings, board target options, and configuration items
need for SPI/SD boot.
Since P1022DS RevB board, the NOR flash have been changed to 16 bit/28bit
address flash, therefore, when SDHC/ESPI booting and access to eLBC,
the PMUXCR[0~1] must be set to 10b, and PMUXCR[9~10] must be set to
00b for them.
Configure the PX_BRDCFG0[0~1] to 10b which is connected to
SPI devices as SPI_CS(0:3)_B.
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Signed-off-by: Jiang Yutang <b14898@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Diffstat (limited to 'include')
| -rw-r--r-- | include/configs/P1022DS.h | 51 | 
1 files changed, 48 insertions, 3 deletions
| diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h index 50d3f8d70..86217a46d 100644 --- a/include/configs/P1022DS.h +++ b/include/configs/P1022DS.h @@ -18,6 +18,22 @@  #define CONFIG_PHYS_64BIT  #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 + +#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 +#endif +  /* High Level Configuration Options */  #define CONFIG_BOOKE			/* BOOKE */  #define CONFIG_E500			/* BOOKE e500 family */ @@ -402,11 +418,40 @@  /*   * Environment   */ +#ifdef CONFIG_SYS_RAMBOOT +#ifdef 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_SIZE		0x2000	/* 8KB */ +#define CONFIG_ENV_OFFSET	0x100000	/* 1MB */ +#define CONFIG_ENV_SECT_SIZE	0x10000 +#elif defined(CONFIG_RAMBOOT_SDCARD) +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_SIZE		0x2000 +#define CONFIG_SYS_MMC_ENV_DEV	0 +#elif defined(CONFIG_NAND_U_BOOT) +#define CONFIG_ENV_IS_IN_NAND +#define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE +#define CONFIG_ENV_OFFSET	((512 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE) +#define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE) +#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 -#define CONFIG_ENV_OVERWRITE -#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) +#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 +#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */ +#endif  #define CONFIG_LOADS_ECHO  #define CONFIG_SYS_LOADS_BAUD_CHANGE |