]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - include/configs/tx28.h
karo: tx28: enable U-Boot build with different (or none) console UART
[karo-tx-uboot.git] / include / configs / tx28.h
index ac7f3d94e3a09d087aaa331e707a1142e57e0c5f..d221846b71c0a1578b5fa81c86c4fea01a102fc4 100644 (file)
@@ -8,9 +8,8 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX28                    /* must be defined before including regs-base.h */
-
-#include <asm/sizes.h>
+#include <linux/kconfig.h>
+#include <linux/sizes.h>
 #include <asm/arch/regs-base.h>
 
 /*
@@ -18,7 +17,7 @@
  */
 #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_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 */
@@ -64,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)
 #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
 #endif
 
 /*
 #else
 #define CONFIG_LOADADDR                        43000000
 #endif
-#define CONFIG_FDTADDR                 41000000
+#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 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=" 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_jffs2=run default_bootargs;set bootargs ${bootargs}"  \
+       "bootargs_jffs2=run default_bootargs"                           \
+       ";setenv bootargs ${bootargs}"                                  \
        " root=/dev/mtdblock3 rootfstype=jffs2\0"                       \
-       "bootargs_mmc=run default_bootargs;set bootargs ${bootargs}"    \
+       "bootargs_mmc=run default_bootargs;setenv bootargs ${bootargs}" \
        " root=/dev/mmcblk0p3 rootwait\0"                               \
-       "bootargs_nfs=run default_bootargs;set bootargs ${bootargs}"    \
+       "bootargs_nfs=run default_bootargs;setenv bootargs ${bootargs}" \
        " root=/dev/nfs nfsroot=${nfs_server}:${nfsroot},nolock"        \
        " ip=dhcp\0"                                                    \
-       "bootargs_ubifs=run default_bootargs;set bootargs ${bootargs}"  \
+       "bootargs_ubifs=run default_bootargs"                           \
+       ";setenv bootargs ${bootargs}"                                  \
        " ubi.mtd=rootfs root=ubi0:rootfs rootfstype=ubifs\0"           \
-       "bootcmd_jffs2=set autostart no;run bootargs_jffs2"             \
+       "bootcmd_jffs2=setenv autostart no;run bootargs_jffs2"          \
        ";nboot linux\0"                                                \
-       "bootcmd_mmc=set autostart no;run bootargs_mmc"                 \
+       "bootcmd_mmc=setenv autostart no;run bootargs_mmc"              \
        ";fatload mmc 0 ${loadaddr} uImage\0"                           \
-       "bootcmd_nand=set autostart no;run bootargs_ubifs;nboot linux\0"\
-       "bootcmd_net=set autoload y;set autostart n;run bootargs_nfs"   \
+       "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"                    \
        "boot_mode=nand\0"                                              \
-       "default_bootargs=set bootargs " CONFIG_BOOTARGS                \
+       "default_bootargs=setenv bootargs " CONFIG_BOOTARGS             \
        " ${append_bootargs}\0"                                         \
        "fdtaddr=" xstr(CONFIG_FDTADDR) "\0"                            \
        "fdtsave=fdt resize;nand erase.part dtb"                        \
 #define MTDIDS_DEFAULT                 "nand0=" MTD_NAME
 
 /*
- * U-Boot Commands
+ * Serial Driver
  */
-#include <config_cmd_default.h>
-#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
-
+#ifdef CONFIG_CONS_INDEX
 /*
- * Serial Driver
+ * select STK5 UART port 0: 1st UART (DUART) 1,2 2nd,3rd UART (Appl. UART)
  */
+#if CONFIG_CONS_INDEX == 0
 #define CONFIG_PL011_SERIAL
 #define CONFIG_PL011_CLOCK             24000000
 #define CONFIG_PL01x_PORTS     {       \
        (void *)MXS_UARTDBG_BASE,       \
        }
-#define CONFIG_CONS_INDEX              0               /* do not change! */
+#else /* CONFIG_CONS_INDEX == 0 */
+#define CONFIG_MXS_AUART
+#if CONFIG_CONS_INDEX == 1
+#define CONFIG_MXS_AUART_BASE          ((void *)MXS_UARTAPP1_BASE)
+#elif CONFIG_CONS_INDEX == 2
+#define CONFIG_MXS_AUART_BASE          ((void *)MXS_UARTAPP3_BASE)
+#elif CONFIG_CONS_INDEX != -1
+#error Unsupported console UART selection
+#endif
+#endif /* CONFIG_CONS_INDEX == 0 */
+#endif /* ifdef CONFIG_CONS_INDEX */
 #define CONFIG_BAUDRATE                        115200          /* Default baud rate */
 #define CONFIG_SYS_BAUDRATE_TABLE      { 9600, 19200, 38400, 57600, 115200, }
 #define CONFIG_SYS_CONSOLE_INFO_QUIET
 /*
  * 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
+#ifdef CONFIG_NAND
 #define CONFIG_SYS_NAND_BLOCK_SIZE     SZ_128K
-#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    CONFIG_SYS_NAND_BLOCK_SIZE
-#define CONFIG_CMD_NAND_TRIMFFS
 #define CONFIG_SYS_MXS_DMA_CHANNEL     4
 #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)
 /*
  * 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
 #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),"             \
        ",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_LIBCOMMON_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 */