uboot/include/configs/trab.h
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2002-2005
   3 * Gary Jennejohn <garyj@denx.de>
   4 *
   5 * Configuation settings for the TRAB board.
   6 *
   7 * See file CREDITS for list of people who contributed to this
   8 * project.
   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 __CONFIG_H
  27#define __CONFIG_H
  28
  29/*
  30 * Default configuration is with 8 MB Flash, 32 MB RAM
  31 */
  32#if (!defined(CONFIG_FLASH_8MB)) && (!defined(CONFIG_FLASH_16MB))
  33# define CONFIG_FLASH_8MB       /*  8 MB Flash  */
  34#endif
  35#if (!defined(CONFIG_RAM_16MB)) && (!defined(CONFIG_RAM_32MB))
  36# define CONFIG_RAM_32MB        /* 32 MB SDRAM  */
  37#endif
  38
  39/*
  40 * High Level Configuration Options
  41 * (easy to change)
  42 */
  43#define CONFIG_ARM920T          1       /* This is an arm920t CPU       */
  44#define CONFIG_S3C2400          1       /* in a SAMSUNG S3C2400 SoC     */
  45#define CONFIG_TRAB             1       /* on a TRAB Board              */
  46#undef CONFIG_TRAB_50MHZ                /* run the CPU at 50 MHz        */
  47
  48/* automatic software updates (see board/trab/auto_update.c) */
  49#define CONFIG_AUTO_UPDATE      1
  50
  51/* input clock of PLL */
  52#define CONFIG_SYS_CLK_FREQ     12000000 /* TRAB has 12 MHz input clock */
  53
  54#undef CONFIG_USE_IRQ                   /* we don't need IRQ/FIQ stuff */
  55
  56#define CONFIG_CMDLINE_TAG       1      /* enable passing of ATAGs      */
  57#define CONFIG_SETUP_MEMORY_TAGS 1
  58#define CONFIG_INITRD_TAG        1
  59
  60#define CONFIG_SYS_DEVICE_NULLDEV        1      /* enble null device            */
  61#define CONFIG_SILENT_CONSOLE    1      /* enable silent startup        */
  62
  63#define CONFIG_VERSION_VARIABLE 1       /* include version env variable */
  64
  65/***********************************************************
  66 * I2C stuff:
  67 * the TRAB is equipped with an ATMEL 24C04 EEPROM at
  68 * address 0x54 with 8bit addressing
  69 ***********************************************************/
  70#define CONFIG_HARD_I2C                 /* I2C with hardware support */
  71#define CONFIG_SYS_I2C_SPEED            100000  /* I2C speed */
  72#define CONFIG_SYS_I2C_SLAVE            0x7F    /* I2C slave addr */
  73
  74#define CONFIG_SYS_I2C_EEPROM_ADDR      0x54    /* EEPROM address */
  75#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN  1       /* 1 address byte */
  76
  77#define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW 0x01
  78#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3     /* 8 bytes page write mode on 24C04 */
  79#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
  80
  81/* USB stuff */
  82#define CONFIG_USB_OHCI_NEW     1
  83#define CONFIG_USB_STORAGE      1
  84#define CONFIG_DOS_PARTITION    1
  85
  86#undef CONFIG_SYS_USB_OHCI_BOARD_INIT
  87#define CONFIG_SYS_USB_OHCI_CPU_INIT    1
  88
  89#define CONFIG_SYS_USB_OHCI_REGS_BASE   0x14200000
  90#define CONFIG_SYS_USB_OHCI_SLOT_NAME   "s3c2400"
  91#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS      15
  92
  93/*
  94 * Size of malloc() pool
  95 */
  96#define CONFIG_SYS_MALLOC_LEN           (CONFIG_ENV_SIZE + 128*1024)
  97#define CONFIG_SYS_GBL_DATA_SIZE        128     /* size in bytes reserved for initial data */
  98
  99/*
 100 * Hardware drivers
 101 */
 102#define CONFIG_DRIVER_CS8900    1       /* we have a CS8900 on-board */
 103#define CS8900_BASE             0x07000300 /* agrees with WIN CE PA */
 104#define CS8900_BUS16            1 /* the Linux driver does accesses as shorts */
 105
 106#define CONFIG_DRIVER_S3C24X0_I2C 1     /* we use the buildin I2C controller */
 107
 108#define CONFIG_VFD              1       /* VFD linear frame buffer driver */
 109#define VFD_TEST_LOGO           1       /* output a test logo to the VFDs */
 110
 111/*
 112 * select serial console configuration
 113 */
 114#define CONFIG_S3C24X0_SERIAL
 115#define CONFIG_SERIAL1          1       /* we use SERIAL 1 on TRAB */
 116
 117#define CONFIG_HWFLOW                   /* include RTS/CTS flow control support */
 118
 119#define CONFIG_MODEM_SUPPORT    1       /* enable modem initialization stuff */
 120
 121#define CONFIG_MODEM_KEY_MAGIC  "23"    /* hold down these keys to enable modem */
 122
 123/*
 124 * The following enables modem debugging stuff. The dbg() and
 125 * 'char screen[1024]' are used for debug printfs. Unfortunately,
 126 * it is usable only from BDI
 127 */
 128#undef CONFIG_MODEM_SUPPORT_DEBUG
 129
 130/* allow to overwrite serial and ethaddr */
 131#define CONFIG_ENV_OVERWRITE
 132
 133#define CONFIG_BAUDRATE         115200
 134
 135#define CONFIG_TIMESTAMP        1       /* Print timestamp info for images */
 136
 137/* Use s3c2400's RTC */
 138#define CONFIG_RTC_S3C24X0      1
 139
 140
 141/*
 142 * BOOTP options
 143 */
 144#define CONFIG_BOOTP_BOOTFILESIZE
 145#define CONFIG_BOOTP_BOOTPATH
 146#define CONFIG_BOOTP_GATEWAY
 147#define CONFIG_BOOTP_HOSTNAME
 148
 149
 150/*
 151 * Command line configuration.
 152 */
 153#include <config_cmd_default.h>
 154
 155#define CONFIG_CMD_BSP
 156#define CONFIG_CMD_DATE
 157#define CONFIG_CMD_DHCP
 158#define CONFIG_CMD_FAT
 159#define CONFIG_CMD_NFS
 160#define CONFIG_CMD_SNTP
 161#define CONFIG_CMD_USB
 162
 163#ifdef CONFIG_HWFLOW
 164    #define CONFIG_CMD_HWFLOW
 165#endif
 166
 167#ifdef  CONFIG_VFD
 168    #define CONFIG_CMD_VFD
 169#endif
 170
 171#ifdef CONFIG_DRIVER_S3C24X0_I2C
 172    #define CONFIG_CMD_EEPROM
 173    #define CONFIG_CMD_I2C
 174#endif
 175
 176#ifndef USE_920T_MMU
 177    #undef CONFIG_CMD_CACHE
 178#endif
 179
 180
 181/* moved up */
 182#define CONFIG_SYS_HUSH_PARSER          1       /* use "hush" command parser    */
 183
 184#define CONFIG_BOOTDELAY        5
 185#define CONFIG_ZERO_BOOTDELAY_CHECK     /* allow to break in always */
 186#define CONFIG_PREBOOT          "echo;echo *** booting ***;echo"
 187#define CONFIG_BOOTARGS         "console=ttyS0"
 188#define CONFIG_NETMASK          255.255.0.0
 189#define CONFIG_IPADDR           192.168.3.68
 190#define CONFIG_HOSTNAME         trab
 191#define CONFIG_SERVERIP         192.168.3.1
 192#define CONFIG_BOOTCOMMAND      "burn_in"
 193
 194#ifndef CONFIG_FLASH_8MB        /* current config: 16 MB flash */
 195#ifdef CONFIG_SYS_HUSH_PARSER
 196#define CONFIG_EXTRA_ENV_SETTINGS       \
 197        "nfs_args=setenv bootargs root=/dev/nfs rw " \
 198                "nfsroot=$serverip:$rootpath\0" \
 199        "rootpath=/opt/eldk/arm_920TDI\0" \
 200        "ram_args=setenv bootargs root=/dev/ram rw\0" \
 201        "add_net=setenv bootargs $bootargs ethaddr=$ethaddr " \
 202                "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname::off\0" \
 203        "add_misc=setenv bootargs $bootargs console=ttyS0 panic=1\0" \
 204        "u-boot=/tftpboot/TRAB/u-boot.bin\0" \
 205        "load=tftp C100000 ${u-boot}\0" \
 206        "update=protect off 0 5FFFF;era 0 5FFFF;" \
 207                "cp.b C100000 0 $filesize\0" \
 208        "loadfile=/tftpboot/TRAB/uImage\0" \
 209        "loadaddr=c400000\0" \
 210        "net_load=tftpboot $loadaddr $loadfile\0" \
 211        "net_nfs=run net_load nfs_args add_net add_misc;bootm\0" \
 212        "kernel_addr=00060000\0" \
 213        "flash_nfs=run nfs_args add_net add_misc;bootm $kernel_addr\0" \
 214        "mdm_init1=ATZ\0" \
 215        "mdm_init2=ATS0=1\0" \
 216        "mdm_flow_control=rts/cts\0"
 217#else /* !CONFIG_SYS_HUSH_PARSER */
 218#define CONFIG_EXTRA_ENV_SETTINGS       \
 219        "nfs_args=setenv bootargs root=/dev/nfs rw " \
 220                "nfsroot=${serverip}:${rootpath}\0" \
 221        "rootpath=/opt/eldk/arm_920TDI\0" \
 222        "ram_args=setenv bootargs root=/dev/ram rw\0" \
 223        "add_net=setenv bootargs ${bootargs} ethaddr=${ethaddr} " \
 224                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off\0" \
 225        "add_misc=setenv bootargs ${bootargs} console=ttyS0 panic=1\0" \
 226        "u-boot=/tftpboot/TRAB/u-boot.bin\0" \
 227        "load=tftp C100000 ${u-boot}\0" \
 228        "update=protect off 0 5FFFF;era 0 5FFFF;" \
 229                "cp.b C100000 0 ${filesize}\0" \
 230        "loadfile=/tftpboot/TRAB/uImage\0" \
 231        "loadaddr=c400000\0" \
 232        "net_load=tftpboot ${loadaddr} ${loadfile}\0" \
 233        "net_nfs=run net_load nfs_args add_net add_misc;bootm\0" \
 234        "kernel_addr=000C0000\0" \
 235        "flash_nfs=run nfs_args add_net add_misc;bootm ${kernel_addr}\0" \
 236        "mdm_init1=ATZ\0" \
 237        "mdm_init2=ATS0=1\0" \
 238        "mdm_flow_control=rts/cts\0"
 239#endif  /* CONFIG_SYS_HUSH_PARSER */
 240#else   /* CONFIG_FLASH_8MB      => 8 MB flash */
 241#ifdef CONFIG_SYS_HUSH_PARSER
 242#define CONFIG_EXTRA_ENV_SETTINGS       \
 243        "nfs_args=setenv bootargs root=/dev/nfs rw " \
 244                "nfsroot=$serverip:$rootpath\0" \
 245        "rootpath=/opt/eldk/arm_920TDI\0" \
 246        "ram_args=setenv bootargs root=/dev/ram rw\0" \
 247        "add_net=setenv bootargs $bootargs ethaddr=$ethaddr " \
 248                "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname::off\0" \
 249        "add_misc=setenv bootargs $bootargs console=ttyS0 panic=1\0" \
 250        "u-boot=/tftpboot/TRAB/u-boot.bin\0" \
 251        "load=tftp C100000 ${u-boot}\0" \
 252        "update=protect off 0 3FFFF;era 0 3FFFF;" \
 253                "cp.b C100000 0 $filesize;" \
 254                "setenv filesize;saveenv\0" \
 255        "loadfile=/tftpboot/TRAB/uImage\0" \
 256        "loadaddr=C400000\0" \
 257        "net_load=tftpboot $loadaddr $loadfile\0" \
 258        "net_nfs=run net_load nfs_args add_net add_misc;bootm\0" \
 259        "kernel_addr=000C0000\0" \
 260        "flash_nfs=run nfs_args add_net add_misc;bootm $kernel_addr\0" \
 261        "mdm_init1=ATZ\0" \
 262        "mdm_init2=ATS0=1\0" \
 263        "mdm_flow_control=rts/cts\0"
 264#else /* !CONFIG_SYS_HUSH_PARSER */
 265#define CONFIG_EXTRA_ENV_SETTINGS       \
 266        "nfs_args=setenv bootargs root=/dev/nfs rw " \
 267                "nfsroot=${serverip}:${rootpath}\0" \
 268        "rootpath=/opt/eldk/arm_920TDI\0" \
 269        "ram_args=setenv bootargs root=/dev/ram rw\0" \
 270        "add_net=setenv bootargs ${bootargs} ethaddr=${ethaddr} " \
 271                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off\0" \
 272        "add_misc=setenv bootargs ${bootargs} console=ttyS0 panic=1\0" \
 273        "u-boot=/tftpboot/TRAB/u-boot.bin\0" \
 274        "load=tftp C100000 ${u-boot}\0" \
 275        "update=protect off 0 3FFFF;era 0 3FFFF;" \
 276                "cp.b C100000 0 ${filesize};" \
 277                "setenv filesize;saveenv\0" \
 278        "loadfile=/tftpboot/TRAB/uImage\0" \
 279        "loadaddr=C400000\0" \
 280        "net_load=tftpboot ${loadaddr} ${loadfile}\0" \
 281        "net_nfs=run net_load nfs_args add_net add_misc;bootm\0" \
 282        "kernel_addr=000C0000\0" \
 283        "flash_nfs=run nfs_args add_net add_misc;bootm ${kernel_addr}\0" \
 284        "mdm_init1=ATZ\0" \
 285        "mdm_init2=ATS0=1\0" \
 286        "mdm_flow_control=rts/cts\0"
 287#endif /* CONFIG_SYS_HUSH_PARSER */
 288#endif  /* CONFIG_FLASH_8MB */
 289
 290#if 1   /* feel free to disable for development */
 291#define CONFIG_AUTOBOOT_KEYED           /* Enable password protection   */
 292#define CONFIG_AUTOBOOT_PROMPT          \
 293        "\nEnter password - autoboot in %d sec...\n", bootdelay
 294#define CONFIG_AUTOBOOT_DELAY_STR       "R"     /* 1st "password"       */
 295#endif
 296
 297#if defined(CONFIG_CMD_KGDB)
 298#define CONFIG_KGDB_BAUDRATE    115200          /* speed to run kgdb serial port */
 299/* what's this ? it's not used anywhere */
 300#define CONFIG_KGDB_SER_INDEX   1               /* which serial port to use */
 301#endif
 302
 303/*
 304 * Miscellaneous configurable options
 305 */
 306#define CONFIG_SYS_LONGHELP                             /* undef to save memory         */
 307#define CONFIG_SYS_PROMPT               "TRAB # "       /* Monitor Command Prompt       */
 308#ifdef  CONFIG_SYS_HUSH_PARSER
 309#define CONFIG_SYS_PROMPT_HUSH_PS2      "> "
 310#endif
 311
 312#define CONFIG_SYS_CBSIZE               256             /* Console I/O Buffer Size      */
 313#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
 314#define CONFIG_SYS_MAXARGS              16              /* max number of command args   */
 315#define CONFIG_SYS_BARGSIZE             CONFIG_SYS_CBSIZE       /* Boot Argument Buffer Size    */
 316
 317#define CONFIG_SYS_MEMTEST_START        0x0C000000      /* memtest works on     */
 318#define CONFIG_SYS_MEMTEST_END          0x0D000000      /* 16 MB in DRAM        */
 319
 320#define CONFIG_SYS_LOAD_ADDR            0x0CF00000      /* default load address */
 321
 322#ifdef CONFIG_TRAB_50MHZ
 323/* the PWM TImer 4 uses a counter of 15625 for 10 ms, so we need */
 324/* it to wrap 100 times (total 1562500) to get 1 sec. */
 325/* this should _really_ be calculated !! */
 326#define CONFIG_SYS_HZ                   1562500
 327#else
 328/* the PWM TImer 4 uses a counter of 10390 for 10 ms, so we need */
 329/* it to wrap 100 times (total 1039000) to get 1 sec. */
 330/* this should _really_ be calculated !! */
 331#define CONFIG_SYS_HZ                   1039000
 332#endif
 333
 334/* valid baudrates */
 335#define CONFIG_SYS_BAUDRATE_TABLE       { 9600, 19200, 38400, 57600, 115200 }
 336
 337#define CONFIG_MISC_INIT_R              /* have misc_init_r() function  */
 338
 339/*-----------------------------------------------------------------------
 340 * burn-in test stuff.
 341 *
 342 * BURN_IN_CYCLE_DELAY defines the seconds to wait between each burn-in cycle
 343 * Because the burn-in test itself causes also an delay of about 4 seconds,
 344 * this time must be subtracted from the desired overall burn-in cycle time.
 345 */
 346#define BURN_IN_CYCLE_DELAY     296     /* seconds between burn-in cycles */
 347
 348/*-----------------------------------------------------------------------
 349 * Stack sizes
 350 *
 351 * The stack sizes are set up in start.S using the settings below
 352 */
 353#define CONFIG_STACKSIZE        (128*1024)      /* regular stack */
 354#ifdef CONFIG_USE_IRQ
 355#define CONFIG_STACKSIZE_IRQ    (4*1024)        /* IRQ stack */
 356#define CONFIG_STACKSIZE_FIQ    (4*1024)        /* FIQ stack */
 357#endif
 358
 359/*-----------------------------------------------------------------------
 360 * Physical Memory Map
 361 */
 362#define CONFIG_NR_DRAM_BANKS    1               /* we have 1 bank of DRAM */
 363#define PHYS_SDRAM_1            0x0C000000      /* SDRAM Bank #1 */
 364#ifndef CONFIG_RAM_16MB
 365#define PHYS_SDRAM_1_SIZE       0x02000000      /* 32 MB */
 366#else
 367#define PHYS_SDRAM_1_SIZE       0x01000000      /* 16 MB */
 368#endif
 369
 370#define CONFIG_SYS_FLASH_BASE           0x00000000      /* Flash Bank #1 */
 371
 372/* The following #defines are needed to get flash environment right */
 373#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
 374#define CONFIG_SYS_MONITOR_LEN          (256 << 10)
 375
 376/* Dynamic MTD partition support */
 377#define CONFIG_CMD_MTDPARTS
 378#define CONFIG_MTD_DEVICE               /* needed for mtdparts commands */
 379#define CONFIG_FLASH_CFI_MTD
 380#define MTDIDS_DEFAULT          "nor0=0"
 381
 382/* production flash layout */
 383#define MTDPARTS_DEFAULT        "mtdparts=0:16k(Firmware1)ro,"          \
 384                                                "16k(Env1),"            \
 385                                                "16k(Env2),"            \
 386                                                "336k(Firmware2)ro,"    \
 387                                                "896k(Kernel),"         \
 388                                                "5376k(Root-FS),"       \
 389                                                "1408k(JFFS2),"         \
 390                                                "-(VFD)"
 391
 392/*-----------------------------------------------------------------------
 393 * FLASH and environment organization
 394 */
 395#define CONFIG_SYS_MAX_FLASH_BANKS      1       /* max number of memory banks */
 396#ifndef CONFIG_FLASH_8MB
 397#define CONFIG_SYS_MAX_FLASH_SECT       128     /* max number of sectors on one chip */
 398#else
 399#define CONFIG_SYS_MAX_FLASH_SECT       71      /* max number of sectors on one chip */
 400#endif
 401
 402/* timeout values are in ticks */
 403#define CONFIG_SYS_FLASH_ERASE_TOUT     (15*CONFIG_SYS_HZ) /* Timeout for Flash Erase */
 404#define CONFIG_SYS_FLASH_WRITE_TOUT     (2*CONFIG_SYS_HZ) /* Timeout for Flash Write */
 405
 406#define CONFIG_ENV_IS_IN_FLASH  1
 407
 408/* Address and size of Primary Environment Sector       */
 409#ifndef CONFIG_FLASH_8MB
 410#define CONFIG_ENV_ADDR         (CONFIG_SYS_FLASH_BASE + 0x60000)
 411#define CONFIG_ENV_SIZE         0x4000
 412#define CONFIG_ENV_SECT_SIZE    0x20000
 413#else
 414#define CONFIG_ENV_ADDR         (CONFIG_SYS_FLASH_BASE + 0x4000)
 415#define CONFIG_ENV_SIZE         0x4000
 416#define CONFIG_ENV_SECT_SIZE    0x4000
 417#endif
 418
 419/* Address and size of Redundant Environment Sector     */
 420#define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_ADDR+CONFIG_ENV_SECT_SIZE)
 421#define CONFIG_ENV_SIZE_REDUND  (CONFIG_ENV_SIZE)
 422
 423#define CONFIG_SYS_USE_PPCENV                   /* Environment embedded in sect .ppcenv */
 424
 425/* Initial value of the on-board touch screen brightness */
 426#define CONFIG_SYS_BRIGHTNESS 0x20
 427
 428#endif  /* __CONFIG_H */
 429