mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 07:31:15 +00:00
d3022c5f5c
Currently nand_spl_simple puts it's temp data at 0x10000 offset in SDRAM which is likely to contain already loaded data. The patch saves the oob data and the ecc on the stack replacing the fixed address in RAM. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Ilya Yanok <yanok@emcraft.com> CC: Scott Wood <scottwood@freescale.com> CC: Tom Rini <tom.rini@gmail.com> CC: Simon Schwarz <simonschwarzcor@googlemail.com> CC: Wolfgang Denk <wd@denx.de> Signed-off-by: Scott Wood <scottwood@freescale.com>
174 lines
5.3 KiB
C
174 lines
5.3 KiB
C
/*
|
|
* Configuration settings for the TI OMAP3 EVM board.
|
|
*
|
|
* Copyright (C) 2006-2011 Texas Instruments Incorporated - http://www.ti.com/
|
|
*
|
|
* Author :
|
|
* Manikandan Pillai <mani.pillai@ti.com>
|
|
* Derived from Beagle Board and 3430 SDP code by
|
|
* Richard Woodruff <r-woodruff2@ti.com>
|
|
* Syed Mohammed Khasim <khasim@ti.com>
|
|
*
|
|
* Manikandan Pillai <mani.pillai@ti.com>
|
|
*
|
|
* See file CREDITS for list of people who contributed to this
|
|
* project.
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of
|
|
* the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
* MA 02111-1307 USA
|
|
*/
|
|
|
|
#ifndef __OMAP3EVM_CONFIG_H
|
|
#define __OMAP3EVM_CONFIG_H
|
|
|
|
#include <asm/arch/cpu.h>
|
|
#include <asm/arch/omap3.h>
|
|
|
|
/* ----------------------------------------------------------------------------
|
|
* Supported U-boot commands
|
|
* ----------------------------------------------------------------------------
|
|
*/
|
|
#include <config_cmd_default.h>
|
|
|
|
#define CONFIG_CMD_EXT2
|
|
#define CONFIG_CMD_FAT
|
|
#define CONFIG_CMD_JFFS2
|
|
|
|
#define CONFIG_CMD_I2C
|
|
#define CONFIG_CMD_MMC
|
|
#define CONFIG_CMD_NAND
|
|
#define CONFIG_CMD_DHCP
|
|
#define CONFIG_CMD_PING
|
|
|
|
#undef CONFIG_CMD_FLASH /* flinfo, erase, protect */
|
|
#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
|
|
#undef CONFIG_CMD_IMI /* iminfo */
|
|
#undef CONFIG_CMD_IMLS /* List all found images */
|
|
|
|
/* ----------------------------------------------------------------------------
|
|
* Supported U-boot features
|
|
* ----------------------------------------------------------------------------
|
|
*/
|
|
#define CONFIG_SYS_LONGHELP
|
|
#define CONFIG_SYS_HUSH_PARSER
|
|
|
|
/* Display CPU and Board information */
|
|
#define CONFIG_DISPLAY_CPUINFO
|
|
#define CONFIG_DISPLAY_BOARDINFO
|
|
|
|
/* Allow to overwrite serial and ethaddr */
|
|
#define CONFIG_ENV_OVERWRITE
|
|
|
|
/* Add auto-completion support */
|
|
#define CONFIG_AUTO_COMPLETE
|
|
|
|
/* ----------------------------------------------------------------------------
|
|
* Supported hardware
|
|
* ----------------------------------------------------------------------------
|
|
*/
|
|
|
|
/* MMC */
|
|
#define CONFIG_MMC
|
|
#define CONFIG_GENERIC_MMC
|
|
#define CONFIG_OMAP_HSMMC
|
|
|
|
/* SPL */
|
|
#define CONFIG_SPL_MMC_SUPPORT
|
|
#define CONFIG_SPL_FAT_SUPPORT
|
|
#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"
|
|
|
|
/* Partition tables */
|
|
/* Only need DOS partition support for SPL, currently */
|
|
#ifndef CONFIG_SPL_BUILD
|
|
#define CONFIG_EFI_PARTITION
|
|
#endif
|
|
#define CONFIG_DOS_PARTITION
|
|
|
|
/* USB
|
|
*
|
|
* Enable CONFIG_MUSB_HCD for Host functionalities MSC, keyboard
|
|
* Enable CONFIG_MUSB_UDD for Device functionalities.
|
|
*/
|
|
#define CONFIG_USB_OMAP3
|
|
#define CONFIG_MUSB_HCD
|
|
/* #define CONFIG_MUSB_UDC */
|
|
|
|
/* NAND SPL */
|
|
#define CONFIG_SPL_NAND_SIMPLE
|
|
#define CONFIG_SPL_NAND_SUPPORT
|
|
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
|
|
#define CONFIG_SYS_NAND_PAGE_COUNT 64
|
|
#define CONFIG_SYS_NAND_PAGE_SIZE 2048
|
|
#define CONFIG_SYS_NAND_OOBSIZE 64
|
|
#define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024)
|
|
#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0
|
|
#define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\
|
|
10, 11, 12, 13}
|
|
#define CONFIG_SYS_NAND_ECCSIZE 512
|
|
#define CONFIG_SYS_NAND_ECCBYTES 3
|
|
#define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE
|
|
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* Include common board configuration
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
#include "omap3_evm_common.h"
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* Default environment
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
#define CONFIG_BOOTDELAY 10
|
|
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"loadaddr=0x82000000\0" \
|
|
"usbtty=cdc_acm\0" \
|
|
"mmcdev=0\0" \
|
|
"console=ttyO0,115200n8\0" \
|
|
"mmcargs=setenv bootargs console=${console} " \
|
|
"root=/dev/mmcblk0p2 rw " \
|
|
"rootfstype=ext3 rootwait\0" \
|
|
"nandargs=setenv bootargs console=${console} " \
|
|
"root=/dev/mtdblock4 rw " \
|
|
"rootfstype=jffs2\0" \
|
|
"loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
|
|
"bootscript=echo Running bootscript from mmc ...; " \
|
|
"source ${loadaddr}\0" \
|
|
"loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
|
|
"mmcboot=echo Booting from mmc ...; " \
|
|
"run mmcargs; " \
|
|
"bootm ${loadaddr}\0" \
|
|
"nandboot=echo Booting from nand ...; " \
|
|
"run nandargs; " \
|
|
"onenand read ${loadaddr} 280000 400000; " \
|
|
"bootm ${loadaddr}\0" \
|
|
|
|
#define CONFIG_BOOTCOMMAND \
|
|
"if mmc rescan ${mmcdev}; then " \
|
|
"if run loadbootscript; then " \
|
|
"run bootscript; " \
|
|
"else " \
|
|
"if run loaduimage; then " \
|
|
"run mmcboot; " \
|
|
"else run nandboot; " \
|
|
"fi; " \
|
|
"fi; " \
|
|
"else run nandboot; fi"
|
|
|
|
#endif /* __OMAP3EVM_CONFIG_H */
|