uboot/include/configs/ima3-mx53.h
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2012, Stefano Babic <sbabic@denx.de>
   3 *
   4 * Copyright (C) 2010 Freescale Semiconductor, Inc.
   5 *
   6 * Configuration settings for the MX53-EVK Freescale board.
   7 *
   8 * This program is free software; you can redistribute it and/or
   9 * modify it under the terms of the GNU General Public License as
  10 * published by the Free Software Foundation; either version 2 of
  11 * the License, or (at your option) any later version.
  12 *
  13 * This program is distributed in the hope that it will be useful,
  14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16 * GNU General Public License for more details.
  17 *
  18 * You should have received a copy of the GNU General Public License
  19 * along with this program; if not, write to the Free Software
  20 * Foundation, Inc.
  21 */
  22
  23#ifndef __CONFIG_H
  24#define __CONFIG_H
  25
  26/* SOC type must be included before imx-regs.h */
  27#define CONFIG_MX53
  28#include <asm/arch/imx-regs.h>
  29#include <asm/arch/mx5x_pins.h>
  30
  31#define CONFIG_DISPLAY_CPUINFO
  32#define CONFIG_DISPLAY_BOARDINFO
  33
  34#define CONFIG_CMDLINE_TAG              /* enable passing of ATAGs */
  35#define CONFIG_SETUP_MEMORY_TAGS
  36#define CONFIG_INITRD_TAG
  37
  38#define CONFIG_OF_LIBFDT
  39
  40/* Size of malloc() pool */
  41#define CONFIG_SYS_MALLOC_LEN           (CONFIG_ENV_SIZE + 2 * 1024 * 1024)
  42
  43#define CONFIG_BOARD_EARLY_INIT_F
  44
  45/* Enable GPIOs */
  46#define CONFIG_MXC_GPIO
  47
  48/* UART */
  49#define CONFIG_MXC_UART
  50#define CONFIG_MXC_UART_BASE    UART4_BASE_ADDR
  51
  52/* MMC */
  53#define CONFIG_FSL_ESDHC
  54#define CONFIG_SYS_FSL_ESDHC_ADDR       0
  55#define CONFIG_SYS_FSL_ESDHC_NUM        1
  56
  57#define CONFIG_MMC
  58#define CONFIG_GENERIC_MMC
  59#define CONFIG_DOS_PARTITION
  60
  61/* Ethernet on FEC */
  62#define CONFIG_NET_MULTI
  63#define CONFIG_MII
  64
  65#define CONFIG_FEC_MXC
  66#define IMX_FEC_BASE                    FEC_BASE_ADDR
  67#define CONFIG_FEC_MXC_PHYADDR          0x01
  68#define CONFIG_PHY_ADDR                 CONFIG_FEC_MXC_PHYADDR
  69#define CONFIG_RESET_PHY_R
  70#define CONFIG_FEC_MXC_NO_ANEG
  71#define CONFIG_ETHPRIME                 "FEC0"
  72
  73/* SPI */
  74#define CONFIG_HARD_SPI
  75#define CONFIG_MXC_SPI
  76#define CONFIG_DEFAULT_SPI_BUS          1
  77#define CONFIG_DEFAULT_SPI_MODE         SPI_MODE_0
  78
  79/* SPI FLASH - not used for environment */
  80#define CONFIG_SPI_FLASH
  81#define CONFIG_SPI_FLASH_STMICRO
  82#define CONFIG_SPI_FLASH_CS             (IOMUX_TO_GPIO(MX53_PIN_CSI0_D11) \
  83                                                 << 8) | 0
  84#define CONFIG_SF_DEFAULT_MODE          SPI_MODE_0
  85#define CONFIG_SF_DEFAULT_SPEED         25000000
  86
  87/* allow to overwrite serial and ethaddr */
  88#define CONFIG_ENV_OVERWRITE
  89#define CONFIG_CONS_INDEX               1
  90#define CONFIG_BAUDRATE                 115200
  91
  92/* Command definition */
  93#include <config_cmd_default.h>
  94#define CONFIG_CMD_PING
  95#define CONFIG_CMD_DHCP
  96#define CONFIG_CMD_MII
  97#define CONFIG_CMD_MMC
  98#define CONFIG_CMD_FAT
  99#define CONFIG_CMD_EXT2
 100#define CONFIG_CMD_MTDPARTS
 101#define CONFIG_CMD_SPI
 102#define CONFIG_CMD_SF
 103#define CONFIG_CMD_GPIO
 104
 105#define CONFIG_BOOTDELAY        3
 106
 107#define CONFIG_LOADADDR         0x70800000      /* loadaddr env var */
 108#define CONFIG_SYS_TEXT_BASE    0xf0001400 /* uboot in nor flash */
 109
 110#define CONFIG_ARP_TIMEOUT      200UL
 111
 112/* Miscellaneous configurable options */
 113#define CONFIG_SYS_LONGHELP             /* undef to save memory */
 114#define CONFIG_SYS_HUSH_PARSER          /* use "hush" command parser */
 115#define CONFIG_SYS_PROMPT               "IMA3 MX53 U-Boot > "
 116#define CONFIG_AUTO_COMPLETE
 117#define CONFIG_SYS_CBSIZE               256     /* Console I/O Buffer Size */
 118
 119/* Print Buffer Size */
 120#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
 121#define CONFIG_SYS_MAXARGS      16      /* max number of command args */
 122#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */
 123
 124#define CONFIG_SYS_MEMTEST_START       0x70000000
 125#define CONFIG_SYS_MEMTEST_END         0x10000
 126
 127#define CONFIG_SYS_LOAD_ADDR            CONFIG_LOADADDR
 128
 129#define CONFIG_SYS_HZ           1000
 130#define CONFIG_CMDLINE_EDITING
 131
 132/* Physical Memory Map */
 133#define CONFIG_NR_DRAM_BANKS    1
 134#define PHYS_SDRAM_1            CSD0_BASE_ADDR
 135#define PHYS_SDRAM_1_SIZE       (1024 * 1024 * 1024)
 136
 137#define CONFIG_SYS_SDRAM_BASE           (PHYS_SDRAM_1)
 138#define CONFIG_SYS_INIT_RAM_ADDR        (IRAM_BASE_ADDR)
 139#define CONFIG_SYS_INIT_RAM_SIZE        (IRAM_SIZE)
 140
 141#define CONFIG_SYS_INIT_SP_OFFSET \
 142        (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
 143#define CONFIG_SYS_INIT_SP_ADDR \
 144        (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 145
 146#define CONFIG_MTD_DEVICE               /* needed for mtdparts commands */
 147#define MTDIDS_DEFAULT          "nor0=f0000000.flash"
 148
 149/* FLASH and environment organization */
 150
 151#define CONFIG_SYS_FLASH_BASE           0xF0000000
 152#define CONFIG_SYS_FLASH_CFI            /* Flash is CFI conformant */
 153#define CONFIG_FLASH_CFI_DRIVER         /* Use the common driver */
 154#define CONFIG_FLASH_CFI_MTD            /* with MTD support */
 155#define CONFIG_SYS_FLASH_BANKS_LIST     { CONFIG_SYS_FLASH_BASE }
 156#define CONFIG_SYS_MAX_FLASH_BANKS      1
 157#define CONFIG_SYS_MAX_FLASH_SECT       1024
 158
 159#define CONFIG_SYS_FLASH_EMPTY_INFO
 160#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
 161
 162#define CONFIG_SYS_MONITOR_BASE         CONFIG_SYS_FLASH_BASE
 163#define CONFIG_SYS_MONITOR_LEN          (512 * 1024)
 164
 165#define CONFIG_ENV_SIZE        (8 * 1024)
 166#define CONFIG_ENV_IS_IN_FLASH
 167#define CONFIG_ENV_ADDR         (CONFIG_SYS_MONITOR_BASE + \
 168                                CONFIG_SYS_MONITOR_LEN)
 169#define CONFIG_ENV_SECT_SIZE    0x20000
 170#define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET + \
 171                                        CONFIG_ENV_SECT_SIZE)
 172#define CONFIG_ENV_SIZE_REDUND  CONFIG_ENV_SIZE
 173
 174/*
 175 * Default environment and default scripts
 176 * to update uboot and load kernel
 177 */
 178
 179#define HOSTNAME ima3-mx53
 180
 181#define CONFIG_HOSTNAME ima3-mx53
 182#define CONFIG_EXTRA_ENV_SETTINGS                                       \
 183        "netdev=eth0\0"                                                 \
 184        "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
 185                "nfsroot=${serverip}:${rootpath}\0"                     \
 186        "ramargs=setenv bootargs root=/dev/ram0 rw\0"                   \
 187        "addip_sta=setenv bootargs ${bootargs} "                        \
 188                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
 189                ":${hostname}:${netdev}:off panic=1\0"                  \
 190        "addip_dyn=setenv bootargs ${bootargs} ip=dhcp\0"               \
 191        "addip=if test -n ${ipdyn};then run addip_dyn;"                 \
 192                "else run addip_sta;fi\0"       \
 193        "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0"              \
 194        "addtty=setenv bootargs ${bootargs}"                            \
 195                " console=${console},${baudrate}\0"                     \
 196        "addmisc=setenv bootargs ${bootargs} ${misc}\0"                 \
 197        "console=ttymxc3\0"                                             \
 198        "loadaddr=70800000\0"                                           \
 199        "kernel_addr_r=70800000\0"                                      \
 200        "ramdisk_addr_r=71000000\0"                                     \
 201        "hostname=" __stringify(CONFIG_HOSTNAME) "\0"                   \
 202        "bootfile=" __stringify(CONFIG_HOSTNAME) "/uImage\0"            \
 203        "ramdisk_file=" __stringify(CONFIG_HOSTNAME) "/uRamdisk\0"      \
 204        "mmcargs=setenv bootargs root=${mmcroot} "                      \
 205                "rootfstype=${mmcrootfstype}\0"                         \
 206        "mmcroot=/dev/mmcblk0p3 rw\0"                                   \
 207        "mmcboot=echo Booting from mmc ...; "                           \
 208                "run mmcargs addip addtty addmtd addmisc mmcload;"      \
 209                "bootm\0"                                               \
 210        "mmcload=fatload mmc ${mmcdev}:${mmcpart} "                     \
 211                "${loadaddr} ${uimage}\0"                               \
 212        "mmcrootfstype=ext3 rootwait\0"                                 \
 213        "flash_self=run ramargs addip addtty addmtd addmisc;"           \
 214                "bootm ${kernel_addr} ${ramdisk_addr}\0"                \
 215        "flash_nfs=run nfsargs addip addtty addmtd addmisc;"            \
 216                "bootm ${kernel_addr}\0"                                \
 217        "net_nfs=tftp ${kernel_addr_r} ${bootfile}; "                   \
 218                "run nfsargs addip addtty addmtd addmisc;"              \
 219                "bootm ${kernel_addr_r}\0"                              \
 220        "net_self_load=tftp ${ramdisk_addr_r} ${ramdisk_file};"         \
 221                "tftp ${kernel_addr_r} ${bootfile}\0"                   \
 222        "net_self=if run net_self_load;then "                           \
 223                "run ramargs addip addtty addmtd addmisc;"              \
 224                "bootm ${kernel_addr_r} ${ramdisk_addr_r};"             \
 225                "else echo Images not loades;fi\0"                      \
 226        "satargs=setenv bootargs root=/dev/sda1\0"                      \
 227        "satafile=boot/uImage\0"                                        \
 228        "ssdboot=echo Booting from ssd ...; "                           \
 229                "run satargs addip addtty addmtd addmisc;"              \
 230                "sata init;ext2load sata 0:1 ${kernel_addr_r} "         \
 231                "${satafile};bootm\0"                                   \
 232        "u-boot=" __stringify(CONFIG_HOSTNAME) "/u-boot.imx\0"          \
 233        "uimage=uImage\0"                                               \
 234        "load=tftp ${loadaddr} ${u-boot}\0"                             \
 235        "uboot_addr=0xf0001000\0"                                       \
 236        "update=protect off 0xf0000000 +60000;"                         \
 237                "erase ${uboot_addr} +60000;"                           \
 238                "cp.b ${loadaddr} ${uboot_addr} ${filesize}\0"          \
 239        "upd=if run load;then echo Updating u-boot;if run update;"      \
 240                "then echo U-Boot updated;"                             \
 241                        "else echo Error updating u-boot !;"            \
 242                        "echo Board without bootloader !!;"             \
 243                "fi;"                                                   \
 244                "else echo U-Boot not downloaded..exiting;fi\0"         \
 245        "bootcmd=run net_nfs\0"
 246
 247
 248#define CONFIG_CMD_SATA
 249#ifdef CONFIG_CMD_SATA
 250        #define CONFIG_DWC_AHSATA
 251        #define CONFIG_SYS_SATA_MAX_DEVICE      1
 252        #define CONFIG_DWC_AHSATA_PORT_ID       0
 253        #define CONFIG_DWC_AHSATA_BASE_ADDR     SATA_BASE_ADDR
 254        #define CONFIG_LBA48
 255        #define CONFIG_LIBATA
 256#endif
 257
 258#endif                          /* __CONFIG_H */
 259