X-Git-Url: https://git.kernelconcepts.de/?p=karo-tx-uboot.git;a=blobdiff_plain;f=include%2Fconfigs%2Ftx28.h;h=3877461bb5c2ec409d1ceff4fc24d5e8653c74a0;hp=405de39a1cd9fb37710d3a76fd30dd356e6c5fad;hb=23a3382f25e518d2ca10bae4cec08ca82524cdf0;hpb=ff5f6d371ef18c0e3413c6b6c0c3959aca165763 diff --git a/include/configs/tx28.h b/include/configs/tx28.h index 405de39a1c..3877461bb5 100644 --- a/include/configs/tx28.h +++ b/include/configs/tx28.h @@ -8,9 +8,8 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_MX28 /* must be defined before including regs-base.h */ - -#include +#include +#include #include /* @@ -18,13 +17,14 @@ */ #define CONFIG_MXS_GPIO /* GPIO control */ #define CONFIG_SYS_HZ 1000 /* Ticks per second */ -#define PHYS_SDRAM_1_SIZE CONFIG_SDRAM_SIZE +#define PHYS_SDRAM_1_SIZE CONFIG_SYS_SDRAM_SIZE #ifdef CONFIG_TX28_S #define TX28_MOD_SUFFIX "1" #else #define CONFIG_SYS_SPL_FIXED_BATT_SUPPLY #define TX28_MOD_SUFFIX "0" #endif +#define IRAM_BASE_ADDR 0x00000000 #ifndef CONFIG_SPL_BUILD #define CONFIG_SKIP_LOWLEVEL_INIT @@ -35,15 +35,15 @@ #define CONFIG_DISPLAY_BOARDINFO #define CONFIG_BOARD_LATE_INIT #define CONFIG_BOARD_EARLY_INIT_F +#define CONFIG_SYS_GENERIC_BOARD /* LCD Logo and Splash screen support */ -#define CONFIG_LCD #ifdef CONFIG_LCD #define CONFIG_SPLASH_SCREEN #define CONFIG_SPLASH_SCREEN_ALIGN #define CONFIG_VIDEO_MXS #define CONFIG_LCD_LOGO -#define LCD_BPP LCD_COLOR24 +#define LCD_BPP LCD_COLOR32 #define CONFIG_CMD_BMP #define CONFIG_VIDEO_BMP_RLE8 #endif /* CONFIG_LCD */ @@ -52,7 +52,7 @@ /* * Memory configuration options */ -#define CONFIG_NR_DRAM_BANKS 1 /* 1 bank of SDRAM */ +#define CONFIG_NR_DRAM_BANKS 0x1 /* 1 bank of SDRAM */ #define PHYS_SDRAM_1 0x40000000 /* SDRAM Bank #1 */ #define CONFIG_STACKSIZE SZ_64K #define CONFIG_SYS_MALLOC_LEN SZ_4M @@ -63,7 +63,6 @@ * U-Boot general configurations */ #define CONFIG_SYS_LONGHELP -#define CONFIG_SYS_PROMPT "TX28 U-Boot > " #define CONFIG_SYS_CBSIZE 2048 /* Console I/O buffer size */ #define CONFIG_SYS_PBSIZE \ (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) @@ -76,23 +75,18 @@ #define CONFIG_CMDLINE_EDITING /* Command history etc */ #define CONFIG_SYS_64BIT_VSPRINTF -#define CONFIG_SYS_NO_FLASH /* * Flattened Device Tree (FDT) support */ -#define CONFIG_OF_LIBFDT #ifdef CONFIG_OF_LIBFDT -#define CONFIG_FDT_FIXUP_PARTITIONS -#define CONFIG_OF_BOARD_SETUP -#define CONFIG_SYS_FDT_ADDR (PHYS_SDRAM_1 + SZ_16M) #endif /* * Boot Linux */ -#define xstr(s) str(s) -#define str(s) #s +#define xstr(s) str(s) +#define str(s) #s #define __pfx(x, s) (x##s) #define _pfx(x, s) __pfx(x, s) @@ -102,43 +96,59 @@ #define CONFIG_ZERO_BOOTDELAY_CHECK #define CONFIG_SYS_AUTOLOAD "no" #define CONFIG_BOOTFILE "uImage" -#define CONFIG_BOOTARGS "console=ttyAMA0,115200 ro debug panic=1" -#define CONFIG_BOOTCOMMAND "run bootcmd_nand" +#define CONFIG_BOOTARGS "init=/linuxrc console=ttyAMA0,115200 ro debug panic=1" +#define CONFIG_BOOTCOMMAND "run bootcmd_${boot_mode} bootm_cmd" +#ifdef CONFIG_TX28_S +#define CONFIG_LOADADDR 41000000 +#else #define CONFIG_LOADADDR 43000000 +#endif +#define CONFIG_FDTADDR 40800000 #define CONFIG_SYS_LOAD_ADDR _pfx(0x, CONFIG_LOADADDR) +#define CONFIG_SYS_FDT_ADDR _pfx(0x, CONFIG_FDTADDR) #define CONFIG_U_BOOT_IMG_SIZE SZ_1M /* - * Extra Environments + * Extra Environment Settings */ -#ifdef CONFIG_ENV_IS_NOWHERE +#ifdef CONFIG_TX28_UBOOT_NOENV #define CONFIG_EXTRA_ENV_SETTINGS \ "autostart=no\0" \ "autoload=no\0" \ + "baseboard=stk5-v3\0" \ "bootdelay=-1\0" \ - "fdtaddr=11000000\0" \ + "fdtaddr=" xstr(CONFIG_FDTADDR) "\0" \ "mtdids=" MTDIDS_DEFAULT "\0" \ "mtdparts=" MTDPARTS_DEFAULT "\0" #else #define CONFIG_EXTRA_ENV_SETTINGS \ "autostart=no\0" \ "baseboard=stk5-v3\0" \ - "bootargs_mmc=run default_bootargs;set bootargs ${bootargs}" \ - " root=/dev/mmcblk0p3 rootwait\0" \ - "bootargs_nand=run default_bootargs;set bootargs ${bootargs}" \ + "bootargs_jffs2=run default_bootargs" \ + ";setenv bootargs ${bootargs}" \ " root=/dev/mtdblock3 rootfstype=jffs2\0" \ - "bootargs_nfs=run default_bootargs;set bootargs ${bootargs}" \ - " root=/dev/nfs ip=dhcp nfsroot=${nfs_server}:${nfsroot},nolock\0" \ - "bootcmd_mmc=set autostart no;run bootargs_mmc" \ - ";fatload mmc 0 ${loadaddr} uImage;run bootm_cmd\0" \ - "bootcmd_nand=set autostart no;run bootargs_nand" \ - ";nboot linux;run bootm_cmd\0" \ - "bootcmd_net=set autostart no;run bootargs_nfs;dhcp" \ - ";run bootm_cmd\0" \ + "bootargs_mmc=run default_bootargs;setenv bootargs ${bootargs}" \ + " root=/dev/mmcblk0p3 rootwait\0" \ + "bootargs_nfs=run default_bootargs;setenv bootargs ${bootargs}" \ + " root=/dev/nfs nfsroot=${nfs_server}:${nfsroot},nolock" \ + " ip=dhcp\0" \ + "bootargs_ubifs=run default_bootargs" \ + ";setenv bootargs ${bootargs}" \ + " ubi.mtd=rootfs root=ubi0:rootfs rootfstype=ubifs\0" \ + "bootcmd_jffs2=setenv autostart no;run bootargs_jffs2" \ + ";nboot linux\0" \ + "bootcmd_mmc=setenv autostart no;run bootargs_mmc" \ + ";fatload mmc 0 ${loadaddr} uImage\0" \ + "bootcmd_nand=setenv autostart no;run bootargs_ubifs" \ + ";nboot linux\0" \ + "bootcmd_net=setenv autoload y;setenv autostart n" \ + ";run bootargs_nfs" \ + ";dhcp\0" \ "bootm_cmd=bootm ${loadaddr} - ${fdtaddr}\0" \ - "default_bootargs=set bootargs " CONFIG_BOOTARGS \ - " ${append_bootargs}\0" \ - "fdtaddr=41000000\0" \ + "boot_mode=nand\0" \ + "default_bootargs=setenv bootargs " CONFIG_BOOTARGS \ + " ${append_bootargs}\0" \ + "fdtaddr=" xstr(CONFIG_FDTADDR) "\0" \ "fdtsave=fdt resize;nand erase.part dtb" \ ";nand write ${fdtaddr} dtb ${fdtsize}\0" \ "mtdids=" MTDIDS_DEFAULT "\0" \ @@ -152,18 +162,6 @@ #define MTD_NAME "gpmi-nand" #define MTDIDS_DEFAULT "nand0=" MTD_NAME -/* - * U-Boot Commands - */ -#include -#define CONFIG_CMD_CACHE -#define CONFIG_CMD_MMC -#define CONFIG_CMD_NAND -#define CONFIG_CMD_MTDPARTS -#define CONFIG_CMD_BOOTCE -#define CONFIG_CMD_TIME -#define CONFIG_CMD_MEMTEST - /* * Serial Driver */ @@ -180,138 +178,100 @@ /* * Ethernet Driver */ -#define CONFIG_FEC_MXC #ifdef CONFIG_FEC_MXC /* This is required for the FEC driver to work with cache enabled */ #define CONFIG_SYS_ARM_CACHE_WRITETHROUGH #define CONFIG_SYS_CACHELINE_SIZE 32 -#ifndef CONFIG_TX28_S -#define CONFIG_FEC_MXC_MULTI -#else +#ifdef CONFIG_TX28_S +#define CONFIG_FEC_MXC_PHYADDR 0 #define IMX_FEC_BASE MXS_ENET0_BASE -#define CONFIG_FEC_MXC_PHYADDR 0x00 #endif -#define CONFIG_PHY_SMSC -#define CONFIG_PHYLIB -#define CONFIG_MII #define CONFIG_FEC_XCV_TYPE RMII -#define CONFIG_GET_FEC_MAC_ADDR_FROM_IIM -#define CONFIG_NET_MULTI -#define CONFIG_CMD_MII -#define CONFIG_CMD_DHCP -#define CONFIG_CMD_PING -/* Add for working with "strict" DHCP server */ -#define CONFIG_BOOTP_SUBNETMASK -#define CONFIG_BOOTP_GATEWAY -#define CONFIG_BOOTP_DNS -#define CONFIG_BOOTP_RANDOM_ID -#endif - -#ifndef CONFIG_ENV_IS_NOWHERE -/* define one of the following options: -#define CONFIG_ENV_IS_IN_NAND -#define CONFIG_ENV_IS_IN_MMC -*/ -#define CONFIG_ENV_IS_IN_NAND #endif -#define CONFIG_ENV_OVERWRITE /* * NAND flash driver */ -#ifdef CONFIG_CMD_NAND -#define CONFIG_MTD_DEVICE -#define CONFIG_NAND_MXS -#define CONFIG_APBH_DMA -#define CONFIG_APBH_DMA_BURST -#define CONFIG_APBH_DMA_BURST8 -#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x20000 -#define CONFIG_CMD_NAND_TRIMFFS +#ifdef CONFIG_NAND +#define CONFIG_SYS_NAND_BLOCK_SIZE SZ_128K +#define CONFIG_SYS_NAND_U_BOOT_OFFS CONFIG_SYS_NAND_BLOCK_SIZE #define CONFIG_SYS_MXS_DMA_CHANNEL 4 -#define CONFIG_SYS_MAX_FLASH_SECT 1024 -#define CONFIG_SYS_MAX_FLASH_BANKS 1 -#define CONFIG_SYS_NAND_MAX_CHIPS 1 -#define CONFIG_SYS_MAX_NAND_DEVICE 1 +#define CONFIG_SYS_NAND_MAX_CHIPS 0x1 +#define CONFIG_SYS_MAX_NAND_DEVICE 0x1 #define CONFIG_SYS_NAND_5_ADDR_CYCLE -#define CONFIG_SYS_NAND_USE_FLASH_BBT #define CONFIG_SYS_NAND_BASE 0x00000000 -#define CONFIG_CMD_ROMUPDATE -#else -#undef CONFIG_ENV_IS_IN_NAND -#endif /* CONFIG_CMD_NAND */ +#endif /* CONFIG_NAND */ +#define CONFIG_ENV_OVERWRITE + +#ifdef CONFIG_ENV_IS_IN_NAND #define CONFIG_ENV_OFFSET (CONFIG_U_BOOT_IMG_SIZE + CONFIG_SYS_NAND_U_BOOT_OFFS) #define CONFIG_ENV_SIZE SZ_128K -#define CONFIG_ENV_RANGE 0x60000 +#define CONFIG_ENV_RANGE (3 * CONFIG_SYS_NAND_BLOCK_SIZE) +#endif /* CONFIG_ENV_IS_IN_NAND */ + #ifdef CONFIG_ENV_OFFSET_REDUND -#define CONFIG_SYS_ENV_PART_STR xstr(CONFIG_ENV_RANGE) \ +#define CONFIG_SYS_ENV_PART_STR xstr(CONFIG_SYS_ENV_PART_SIZE) \ "(env)," \ - xstr(CONFIG_ENV_RANGE) \ + xstr(CONFIG_SYS_ENV_PART_SIZE) \ "(env2)," -#define CONFIG_SYS_USERFS_PART_STR "89216k(userfs)" +#define CONFIG_SYS_USERFS_PART_STR xstr(CONFIG_SYS_USERFS_PART_SIZE2) "(userfs)" #else -#define CONFIG_SYS_ENV_PART_STR xstr(CONFIG_ENV_RANGE) \ +#define CONFIG_SYS_ENV_PART_STR xstr(CONFIG_SYS_ENV_PART_SIZE) \ "(env)," -#define CONFIG_SYS_USERFS_PART_STR "89600k(userfs)" +#define CONFIG_SYS_USERFS_PART_STR xstr(CONFIG_SYS_USERFS_PART_SIZE) "(userfs)" #endif /* CONFIG_ENV_OFFSET_REDUND */ /* * MMC Driver */ +#ifdef CONFIG_MXS_MMC #ifdef CONFIG_CMD_MMC -#define CONFIG_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_MXS_MMC -#define CONFIG_BOUNCE_BUFFER - -#define CONFIG_DOS_PARTITION #define CONFIG_CMD_FAT #define CONFIG_FAT_WRITE #define CONFIG_CMD_EXT2 +#endif /* * Environments on MMC */ #ifdef CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 -#undef CONFIG_ENV_OFFSET -#undef CONFIG_ENV_SIZE /* Associated with the MMC layout defined in mmcops.c */ #define CONFIG_ENV_OFFSET SZ_1K #define CONFIG_ENV_SIZE (SZ_128K - CONFIG_ENV_OFFSET) #define CONFIG_DYNAMIC_MMC_DEVNO #endif /* CONFIG_ENV_IS_IN_MMC */ -#else -#undef CONFIG_ENV_IS_IN_MMC -#endif /* CONFIG_CMD_MMC */ - -#ifdef CONFIG_ENV_IS_NOWHERE -#undef CONFIG_ENV_SIZE -#define CONFIG_ENV_SIZE SZ_4K -#endif +#endif /* CONFIG_MXS_MMC */ #define MTDPARTS_DEFAULT "mtdparts=" MTD_NAME ":" \ "1m@" xstr(CONFIG_SYS_NAND_U_BOOT_OFFS) "(u-boot)," \ CONFIG_SYS_ENV_PART_STR \ - "6m(linux),32m(rootfs)," \ - CONFIG_SYS_USERFS_PART_STR ",512k@0x7f00000(dtb),512k@0x7f80000(bbt)ro" + "6m(linux),32m(rootfs)," CONFIG_SYS_USERFS_PART_STR \ + ",512k@" xstr(CONFIG_SYS_NAND_DTB_OFFSET) "(dtb)" \ + ",512k@" xstr(CONFIG_SYS_NAND_BBT_OFFSET) "(bbt)ro" #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 -#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - /* Fix this */ \ +#ifndef CONFIG_SPL_BUILD +#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - \ GENERATED_GBL_DATA_SIZE) +#else +#define CONFIG_SYS_INIT_SP_ADDR CONFIG_SPL_STACK +#endif /* Defines for SPL */ -#define CONFIG_SPL -#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_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_SERIAL_SUPPORT #define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SYS_SPL_VDDD_VAL 1500 -#define CONFIG_SYS_SPL_BATT_BO_LEVEL 2800 +#define CONFIG_SYS_SPL_BATT_BO_LEVEL 2400 +#define CONFIG_SYS_SPL_VDDA_BO_VAL 100 #define CONFIG_SYS_SPL_VDDMEM_VAL 0 /* VDDMEM is not utilized on TX28 */ +#define CONFIG_SPL_STACK 0x1fffc /* End of OCRAM */ -#endif /* __CONFIGS_TX28_H */ +#endif /* __CONFIG_H */