X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fconfigs%2Fti_armv7_common.h;h=d13fc94785badf952ff681bd34bb65b9778e7a37;hb=a5b24110cad65c73d6bcf6ecada07d926975ed54;hp=6dc5ebdd3497d3296d456754eb211b9c0d3f791b;hpb=66d10c18bf2c34698362b6fe1891bcc6e8755243;p=u-boot diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h index 6dc5ebdd34..d13fc94785 100644 --- a/include/configs/ti_armv7_common.h +++ b/include/configs/ti_armv7_common.h @@ -17,9 +17,6 @@ #ifndef __CONFIG_TI_ARMV7_COMMON_H__ #define __CONFIG_TI_ARMV7_COMMON_H__ -/* Common define for many platforms. */ -#define CONFIG_SYS_GENERIC_BOARD - /* * We typically do not contain NOR flash. In the cases where we do, we * undefine this later. @@ -27,7 +24,6 @@ #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 @@ -56,12 +52,80 @@ "fdt_addr_r=0x88000000\0" \ "rdaddr=0x88080000\0" \ "ramdisk_addr_r=0x88080000\0" \ - "bootm_size=0x10000000\0" - -/* - * Default to a quick boot delay. - */ -#define CONFIG_BOOTDELAY 1 + "scriptaddr=0x80000000\0" \ + "pxefile_addr_r=0x80100000\0" \ + "bootm_size=0x10000000\0" \ + "boot_fdt=try\0" + +#define DEFAULT_MMC_TI_ARGS \ + "mmcdev=0\0" \ + "mmcrootfstype=ext4 rootwait\0" \ + "finduuid=part uuid mmc ${bootpart} uuid\0" \ + "args_mmc=run finduuid;setenv bootargs console=${console} " \ + "${optargs} " \ + "root=PARTUUID=${uuid} rw " \ + "rootfstype=${mmcrootfstype}\0" \ + "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ + "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ + "source ${loadaddr}\0" \ + "bootenvfile=uEnv.txt\0" \ + "importbootenv=echo Importing environment from mmc${mmcdev} ...; " \ + "env import -t ${loadaddr} ${filesize}\0" \ + "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenvfile}\0" \ + "loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \ + "loadfdt=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \ + "envboot=mmc dev ${mmcdev}; " \ + "if mmc rescan; then " \ + "echo SD/MMC found on device ${mmcdev};" \ + "if run loadbootscript; then " \ + "run bootscript;" \ + "else " \ + "if run loadbootenv; then " \ + "echo Loaded env from ${bootenvfile};" \ + "run importbootenv;" \ + "fi;" \ + "if test -n $uenvcmd; then " \ + "echo Running uenvcmd ...;" \ + "run uenvcmd;" \ + "fi;" \ + "fi;" \ + "fi;\0" \ + "mmcloados=run args_mmc; " \ + "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ + "if run loadfdt; then " \ + "bootz ${loadaddr} - ${fdtaddr}; " \ + "else " \ + "if test ${boot_fdt} = try; then " \ + "bootz; " \ + "else " \ + "echo WARN: Cannot load the DT; " \ + "fi; " \ + "fi; " \ + "else " \ + "bootz; " \ + "fi;\0" \ + "mmcboot=mmc dev ${mmcdev}; " \ + "setenv devnum ${mmcdev}; " \ + "setenv devtype mmc; " \ + "if mmc rescan; then " \ + "echo SD/MMC found on device ${mmcdev};" \ + "if run loadimage; then " \ + "if test ${boot_fit} -eq 1; then " \ + "run loadfit; " \ + "else " \ + "run mmcloados;" \ + "fi;" \ + "fi;" \ + "fi;\0" \ + +#define DEFAULT_FIT_TI_ARGS \ + "boot_fit=0\0" \ + "fit_loadaddr=0x88000000\0" \ + "fit_bootfile=fitImage.itb\0" \ + "update_to_fit=setenv loadaddr ${fit_loadaddr}; setenv bootfile ${fit_bootfile}\0" \ + "args_fit=setenv bootargs console=${console} \0" \ + "loadfit=run args_fit; bootm ${loadaddr}:kernel@1 " \ + "${loadaddr}:ramdisk@1 ${loadaddr}:${fdtfile};\0" \ /* * DDR information. If the CONFIG_NR_DRAM_BANKS is not defined, @@ -83,22 +147,34 @@ /* Timer information. */ #define CONFIG_SYS_PTV 2 /* Divisor: 2^(PTV+1) => 8 */ +/* + * Disable DM_* for SPL build and can be re-enabled after adding + * DM support in SPL + */ +#ifdef CONFIG_SPL_BUILD +#undef CONFIG_DM_I2C +#endif + /* I2C IP block */ #define CONFIG_I2C -#define CONFIG_CMD_I2C +#ifndef CONFIG_DM_I2C #define CONFIG_SYS_I2C +#else +/* + * Enable CONFIG_DM_I2C_COMPAT temporarily until all the i2c client + * devices are adopted to DM + */ +#define CONFIG_DM_I2C_COMPAT +#endif /* MMC/SD IP block */ #define CONFIG_MMC #define CONFIG_GENERIC_MMC -#define CONFIG_CMD_MMC /* McSPI IP block */ #define CONFIG_SPI -#define CONFIG_CMD_SPI /* GPIO block */ -#define CONFIG_CMD_GPIO /* * The following are general good-enough settings for U-Boot. We set a @@ -109,14 +185,7 @@ * 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. */ -#ifdef CONFIG_DFU_MMC -#define CONFIG_SYS_MALLOC_LEN ((16 << 20) + CONFIG_SYS_DFU_DATA_BUF_SIZE) -#else -#define CONFIG_SYS_MALLOC_LEN (16 << 20) -#endif -#define CONFIG_SYS_HUSH_PARSER -#define CONFIG_SYS_PROMPT "U-Boot# " -#define CONFIG_SYS_CONSOLE_INFO_QUIET +#define CONFIG_SYS_MALLOC_LEN SZ_32M #define CONFIG_BAUDRATE 115200 #define CONFIG_ENV_VARS_UBOOT_CONFIG /* Strongly encouraged */ #define CONFIG_ENV_OVERWRITE /* Overwrite ethaddr / serial# */ @@ -125,13 +194,12 @@ #define CONFIG_SYS_LONGHELP #define CONFIG_AUTO_COMPLETE #define CONFIG_CMDLINE_EDITING -#define CONFIG_VERSION_VARIABLE /* 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 +#define CONFIG_SYS_CBSIZE 1024 /* Print Buffer Size */ #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE \ + sizeof(CONFIG_SYS_PROMPT) + 16) @@ -148,8 +216,6 @@ #define CONFIG_CMD_MTDPARTS #endif -#define CONFIG_CMD_ASKENV -#define CONFIG_CMD_BOOTZ #define CONFIG_SUPPORT_RAW_INITRD /* @@ -158,39 +224,37 @@ */ #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 #define CONFIG_PARTITION_UUIDS #define CONFIG_CMD_PART #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. + * memory) enough for full U-Boot to be loaded. 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. */ #if !defined(CONFIG_NOR_BOOT) && \ !(defined(CONFIG_QSPI_BOOT) && defined(CONFIG_AM43XX)) #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_OS_BOOT + +/* + * We also support Falcon Mode so that the Linux kernel can be booted + * directly from SPL. This is not currently available on HS devices. + */ /* * Place the image at the start of the ROM defined image space (per * CONFIG_SPL_TEXT_BASE and we limit our size to the ROM-defined - * downloaded image area. We initalize DRAM as soon as we can so that - * we can place stack, malloc and BSS there. We load U-Boot itself into - * memory at 0x80800000 for legacy reasons (to not conflict with older - * SPLs). We have our BSS be placed 2MiB after this, to allow for the - * default Linux kernel address of 0x80008000 to work with most sized - * kernels, in the Falcon Mode case. We have the SPL malloc pool at the - * end of the BSS area. We suggest that the stack be placed at 32MiB after - * the start of DRAM to allow room for all of the above (handled in Kconfig). + * downloaded image area minus 1KiB for scratch space. We initalize DRAM as + * soon as we can so that we can place stack, malloc and BSS there. We load + * U-Boot itself into memory at 0x80800000 for legacy reasons (to not conflict + * with older SPLs). We have our BSS be placed 2MiB after this, to allow for + * the default Linux kernel address of 0x80008000 to work with most sized + * kernels, in the Falcon Mode case. We have the SPL malloc pool at the end + * of the BSS area. We suggest that the stack be placed at 32MiB after the + * start of DRAM to allow room for all of the above (handled in Kconfig). */ #ifndef CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_TEXT_BASE 0x80800000 @@ -202,12 +266,13 @@ #ifndef CONFIG_SYS_SPL_MALLOC_START #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 +#define CONFIG_SYS_SPL_MALLOC_SIZE SZ_8M +#endif +#ifndef CONFIG_SPL_MAX_SIZE +#define CONFIG_SPL_MAX_SIZE (SRAM_SCRATCH_SPACE_ADDR - \ + CONFIG_SPL_TEXT_BASE) #endif -/* 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_MMCSD_FS_BOOT_PARTITION 1 @@ -227,30 +292,15 @@ #define CONFIG_CMD_SPL #endif -#ifdef CONFIG_MMC -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_EXT_SUPPORT -#endif - #define CONFIG_SYS_THUMB_BUILD /* General parts of the framework, required. */ -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SPL_BOARD_INIT #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_MTD_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE #endif #endif /* !CONFIG_NOR_BOOT */ @@ -281,4 +331,6 @@ #define NETARGS "" #endif +#include + #endif /* __CONFIG_TI_ARMV7_COMMON_H__ */