uboot/include/configs/netstal-common.h
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2008
   3 * Niklaus Giger, Netstal Maschinen AG, niklaus.giger@netstal.com
   4 * adapted from amcc-common.h by
   5 * (C) Copyright 2008
   6 *  * Stefan Roese, DENX Software Engineering, sr@denx.de.
   7 *
   8 * Common configuration options for all Netstal boards
   9 *
  10 * This program is free software; you can redistribute it and/or
  11 * modify it under the terms of the GNU General Public License as
  12 * published by the Free Software Foundation; either version 2 of
  13 * the License, or (at your option) any later version.
  14 *
  15 * This program is distributed in the hope that it will be useful,
  16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18 * GNU General Public License for more details.
  19 *
  20 * You should have received a copy of the GNU General Public License
  21 * along with this program; if not, write to the Free Software
  22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  23 * MA 02111-1307 USA
  24 */
  25
  26#ifndef __NETSTAL_COMMON_H
  27#define __NETSTAL_COMMON_H
  28
  29#define CONFIG_SYS_SDRAM_BASE           0x00000000      /* _must_ be 0          */
  30#define CONFIG_SYS_MONITOR_BASE TEXT_BASE       /* Start of U-Boot      */
  31#define CONFIG_SYS_MONITOR_LEN          (320 * 1024)    /* Reserve 320 kB for Monitor   */
  32#define CONFIG_SYS_MALLOC_LEN           (256 * 1024)    /* Reserve 256 kB for malloc() */
  33
  34/*
  35 * UART
  36 */
  37#define CONFIG_SERIAL_MULTI
  38#define CONFIG_SYS_BAUDRATE_TABLE  \
  39    {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
  40
  41/*
  42 * I2C
  43 */
  44#define CONFIG_HARD_I2C         1       /* I2C with hardware support */
  45#define CONFIG_PPC4XX_I2C               /* use PPC4xx driver            */
  46#define CONFIG_SYS_I2C_SPEED            400000  /* I2C speed and slave address  */
  47#define CONFIG_SYS_I2C_SLAVE            0x7F
  48
  49/* This is the 7bit address of the device, not including P. */
  50#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50
  51#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
  52
  53/* The EEPROM can do 16byte ( 1 << 4 ) page writes. */
  54#define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW     0x07
  55#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4
  56#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
  57#define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE
  58
  59/*
  60 * Ethernet/EMAC/PHY
  61 */
  62#define CONFIG_PPC4xx_EMAC
  63#define CONFIG_MII                      /* MII PHY management           */
  64#define CONFIG_PHY_ADDR         1       /* PHY address                  */
  65#define CONFIG_NET_MULTI        1
  66#if defined(CONFIG_440)
  67#define CONFIG_NETCONSOLE               /* include NetConsole support   */
  68#define CONFIG_SYS_RX_ETH_BUFFER        32      /* number of eth rx buffers     */
  69#else
  70#define CONFIG_SYS_RX_ETH_BUFFER        16      /* number of eth rx buffers     */
  71#endif
  72#define CONFIG_HAS_ETH0
  73
  74/*
  75 * Commands
  76 */
  77#include <config_cmd_default.h>
  78
  79#define CONFIG_CMD_ASKENV
  80#if defined(CONFIG_440)
  81#define CONFIG_CMD_CACHE
  82#endif
  83#define CONFIG_CMD_DHCP
  84#define CONFIG_CMD_DIAG
  85#define CONFIG_CMD_EEPROM
  86#define CONFIG_CMD_ELF
  87#define CONFIG_CMD_I2C
  88#define CONFIG_CMD_IRQ
  89#define CONFIG_CMD_MII
  90#define CONFIG_CMD_NET
  91#define CONFIG_CMD_NFS
  92#define CONFIG_CMD_PING
  93#define CONFIG_CMD_REGINFO
  94#define CONFIG_BOOT_RETRY_TIME 30
  95#define CONFIG_RESET_TO_RETRY
  96/*
  97 * Miscellaneous configurable options
  98 */
  99#define CONFIG_BOOTDELAY        1       /* autoboot after 1 second      */
 100#define CONFIG_SYS_LONGHELP                     /* undef to save memory         */
 101#define CONFIG_SYS_PROMPT               "=> "   /* Monitor Command Prompt       */
 102#if defined(CONFIG_CMD_KGDB)
 103#define CONFIG_SYS_CBSIZE               1024    /* Console I/O Buffer Size      */
 104#else
 105#define CONFIG_SYS_CBSIZE               256     /* Console I/O Buffer Size      */
 106#endif
 107#define CONFIG_SYS_PBSIZE               (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
 108#define CONFIG_SYS_MAXARGS              16      /* max number of command args   */
 109#define CONFIG_SYS_BARGSIZE             CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size  */
 110
 111#define CONFIG_SYS_MEMTEST_START        0x0400000 /* memtest works on           */
 112#define CONFIG_SYS_MEMTEST_END          0x0C00000 /* 4 ... 12 MB in DRAM        */
 113
 114#define CONFIG_SYS_LOAD_ADDR            0x100000  /* default load address       */
 115#define CONFIG_SYS_EXTBDINFO                    /* To use extended board_into (bd_t) */
 116
 117#define CONFIG_SYS_HZ                   1000    /* decrementer freq: 1 ms ticks */
 118
 119#define CONFIG_CMDLINE_EDITING          /* add command line history     */
 120#define CONFIG_AUTO_COMPLETE            /* add autocompletion support   */
 121#define CONFIG_LOOPW                    /* enable loopw command         */
 122#define CONFIG_MX_CYCLIC                /* enable mdc/mwc commands      */
 123#define CONFIG_ZERO_BOOTDELAY_CHECK     /* check for keypress on bootdelay==0 */
 124#define CONFIG_VERSION_VARIABLE         /* include version env variable */
 125#define CONFIG_SYS_CONSOLE_INFO_QUIET           /* don't print console @ startup*/
 126
 127#define CONFIG_SYS_HUSH_PARSER                  /* Use the HUSH parser          */
 128#ifdef  CONFIG_SYS_HUSH_PARSER
 129#define CONFIG_SYS_PROMPT_HUSH_PS2      "> "
 130#endif
 131
 132#define CONFIG_LOADS_ECHO               /* echo on for serial download  */
 133#define CONFIG_SYS_LOADS_BAUD_CHANGE            /* allow baudrate change        */
 134
 135/*
 136 * BOOTP options
 137 */
 138#define CONFIG_BOOTP_BOOTFILESIZE
 139#define CONFIG_BOOTP_BOOTPATH
 140#define CONFIG_BOOTP_GATEWAY
 141#define CONFIG_BOOTP_HOSTNAME
 142#define CONFIG_BOOTP_SUBNETMASK
 143
 144/*
 145 * For booting Linux, the board info and command line data
 146 * have to be in the first 8 MB of memory, since this is
 147 * the maximum mapped by the Linux kernel during initialization.
 148 */
 149#define CONFIG_SYS_BOOTMAPSZ            (8 << 20) /* Initial Memory map for Linux */
 150
 151/*
 152 * Internal Definitions
 153 */
 154#if defined(CONFIG_CMD_KGDB)
 155#define CONFIG_KGDB_BAUDRATE    230400  /* speed to run kgdb serial port*/
 156#define CONFIG_KGDB_SER_INDEX   2       /* which serial port to use     */
 157#endif
 158
 159/*
 160 * Pass open firmware flat tree
 161 */
 162#define CONFIG_OF_LIBFDT
 163#define CONFIG_OF_BOARD_SETUP
 164
 165/*
 166 * Booting and default environment
 167 */
 168#define CONFIG_PREBOOT  "echo;" \
 169        "echo Type \"run net_nfs\" to mount root filesystem over NFS;" \
 170        "echo"
 171#define CONFIG_BOOTCOMMAND      "run vx"
 172
 173/*
 174 * Only very few boards have default console not on ttyS0 (like Taishan)
 175 */
 176#if !defined(CONFIG_USE_TTY)
 177#define CONFIG_USE_TTY  ttyS0
 178#endif
 179
 180/*
 181 * Only some 4xx PPC's are equipped with an FPU
 182 */
 183#if defined(CONFIG_440EP) || defined(CONFIG_440EPX) || \
 184    defined(CONFIG_460EX) || defined(CONFIG_460GT)
 185#define CONFIG_NETSTAL_DEF_ENV_ROOTPATH "rootpath=/opt/eldk/ppc_4xxFP\0"
 186#else
 187#define CONFIG_NETSTAL_DEF_ENV_ROOTPATH "rootpath=/opt/eldk/ppc_4xx\0"
 188#endif
 189
 190/*
 191 * Only some boards need to extend the bootargs by some additional
 192 * parameters (like Makalu)
 193 */
 194#if !defined(CONFIG_ADDMISC)
 195#define CONFIG_ADDMISC  "addmisc=setenv bootargs ${bootargs}\0"
 196#endif
 197
 198#define xstr(s) str(s)
 199#define str(s)  #s
 200
 201/* Setup some values for the default environment variables */
 202#define CONFIG_SERVERIP         172.25.1.1
 203#define CONFIG_ETHADDR      00:60:13:00:00:00   /* Netstal Machines AG MAC */
 204#define CONFIG_OVERWRITE_ETHADDR_ONCE
 205
 206#define CONFIG_SYS_TFTP_LOADADDR        0x01000000
 207#define CONFIG_SYS_VXWORKS_ADD_PARAMS   "u=dpu pw=netstal8752"
 208#define CONFIG_SYS_VXWORKS_SERVERNAME   "c"
 209/*
 210 * General common environment variables shared by all boards produced by Netstal Maschinen
 211 */
 212#define CONFIG_NETSTAL_DEF_ENV                                          \
 213        "netdev=eth0\0"                                                 \
 214        "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
 215                "nfsroot=${serverip}:${rootpath}\0"                     \
 216        "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
 217        "addip=setenv bootargs ${bootargs} "                            \
 218                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
 219                ":${hostname}:${netdev}:off panic=1\0"                  \
 220        "addtty=setenv bootargs ${bootargs}"                            \
 221                " console=" xstr(CONFIG_USE_TTY) ",${baudrate}\0"       \
 222        CONFIG_ADDMISC                                                  \
 223        "initrd_high=30000000\0"                                        \
 224        "kernel_addr_r=400000\0"                                        \
 225        "fdt_addr_r=800000\0"                                           \
 226        "hostname=" xstr(CONFIG_HOSTNAME) "\0"                          \
 227        "bootfile=" xstr(CONFIG_HOSTNAME) "/uImage\0"                   \
 228        "uload=tftp " xstr(CONFIG_SYS_TFTP_LOADADDR) " "                \
 229                xstr(CONFIG_HOSTNAME) "/u-boot.bin\0"                   \
 230        "vx_rom=" xstr(CONFIG_HOSTNAME) "/"                             \
 231                xstr(CONFIG_HOSTNAME) "_vx_rom\0"                       \
 232        "update=protect off " xstr(CONFIG_SYS_MONITOR_BASE) " FFFFFFFF;"\
 233                "era " xstr(CONFIG_SYS_MONITOR_BASE) " FFFFFFFF;"       \
 234                "cp.b ${fileaddr} "xstr(CONFIG_SYS_MONITOR_BASE)        \
 235                " ${filesize}; setenv filesize\0"                       \
 236        "upd=run uload update\0"                                        \
 237        "vx=setenv bootfile ${vx_rom}; tftp "                           \
 238                xstr(CONFIG_SYS_TFTP_LOADADDR) "; bootvx\0"             \
 239        CONFIG_NETSTAL_DEF_ENV_ROOTPATH
 240
 241/*
 242 * Default environment for arch/powerpc booting
 243 * for boards that are ported to arch/powerpc
 244 */
 245#define CONFIG_NETSTAL_DEF_ENV_POWERPC                                  \
 246        "flash_self=run ramargs addip addtty addmisc;"                  \
 247                "bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0"    \
 248        "flash_nfs=run nfsargs addip addtty addmisc;"                   \
 249                "bootm ${kernel_addr} - ${fdt_addr}\0"                  \
 250        "net_nfs=tftp ${kernel_addr_r} ${bootfile}; "                   \
 251                "tftp ${fdt_addr_r} ${fdt_file}; "                      \
 252                "run nfsargs addip addtty addmisc;"                     \
 253                "bootm ${kernel_addr_r} - ${fdt_addr_r}\0"              \
 254        "fdt_file=" xstr(CONFIG_HOSTNAME) "/" xstr(CONFIG_HOSTNAME) ".dtb\0"
 255
 256#endif /* __NETSTAL_COMMON_H */
 257