uboot/include/configs/vme8349.h
<<
>>
Prefs
   1/*
   2 * esd vme8349 U-Boot configuration file
   3 * Copyright (c) 2008, 2009 esd gmbh Hannover Germany
   4 *
   5 * (C) Copyright 2006-2010
   6 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
   7 *
   8 * reinhard.arlt@esd-electronics.de
   9 * Based on the MPC8349EMDS config.
  10 *
  11 * See file CREDITS for list of people who contributed to this
  12 * project.
  13 *
  14 * This program is free software; you can redistribute it and/or
  15 * modify it under the terms of the GNU General Public License as
  16 * published by the Free Software Foundation; either version 2 of
  17 * the License, or (at your option) any later version.
  18 *
  19 * This program is distributed in the hope that it will be useful,
  20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  22 * GNU General Public License for more details.
  23 *
  24 * You should have received a copy of the GNU General Public License
  25 * along with this program; if not, write to the Free Software
  26 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  27 * MA 02111-1307 USA
  28 */
  29
  30/*
  31 * vme8349 board configuration file.
  32 */
  33
  34#ifndef __CONFIG_H
  35#define __CONFIG_H
  36
  37/*
  38 * Top level Makefile configuration choices
  39 */
  40#ifdef CONFIG_CADDY2
  41#define VME_CADDY2
  42#endif
  43
  44/*
  45 * High Level Configuration Options
  46 */
  47#define CONFIG_E300             1       /* E300 Family */
  48#define CONFIG_MPC83xx          1       /* MPC83xx family */
  49#define CONFIG_MPC834x          1       /* MPC834x family */
  50#define CONFIG_MPC8349          1       /* MPC8349 specific */
  51#define CONFIG_VME8349          1       /* ESD VME8349 board specific */
  52
  53#define CONFIG_SYS_TEXT_BASE    0xFFF00000
  54
  55#define CONFIG_MISC_INIT_R
  56
  57#define CONFIG_PCI
  58/* Don't enable PCI2 on vme834x - it doesn't exist physically. */
  59#undef CONFIG_MPC83XX_PCI2              /* support for 2nd PCI controller */
  60
  61#define CONFIG_PCI_66M
  62#ifdef CONFIG_PCI_66M
  63#define CONFIG_83XX_CLKIN       66000000        /* in Hz */
  64#else
  65#define CONFIG_83XX_CLKIN       33000000        /* in Hz */
  66#endif
  67
  68#ifndef CONFIG_SYS_CLK_FREQ
  69#ifdef CONFIG_PCI_66M
  70#define CONFIG_SYS_CLK_FREQ     66000000
  71#define HRCWL_CSB_TO_CLKIN      HRCWL_CSB_TO_CLKIN_4X1
  72#else
  73#define CONFIG_SYS_CLK_FREQ     33000000
  74#define HRCWL_CSB_TO_CLKIN      HRCWL_CSB_TO_CLKIN_8X1
  75#endif
  76#endif
  77
  78#define CONFIG_SYS_IMMR         0xE0000000
  79
  80#undef CONFIG_SYS_DRAM_TEST                     /* memory test, takes time */
  81#define CONFIG_SYS_MEMTEST_START        0x00000000      /* memtest region */
  82#define CONFIG_SYS_MEMTEST_END          0x00100000
  83
  84/*
  85 * DDR Setup
  86 */
  87#define CONFIG_DDR_ECC                  /* only for ECC DDR module */
  88#define CONFIG_DDR_ECC_CMD              /* use DDR ECC user commands */
  89#define CONFIG_SPD_EEPROM
  90#define SPD_EEPROM_ADDRESS              0x54
  91#define CONFIG_SYS_READ_SPD             vme8349_read_spd
  92#define CONFIG_SYS_83XX_DDR_USES_CS0    /* esd; Fsl board uses CS2/CS3 */
  93
  94/*
  95 * 32-bit data path mode.
  96 *
  97 * Please note that using this mode for devices with the real density of 64-bit
  98 * effectively reduces the amount of available memory due to the effect of
  99 * wrapping around while translating address to row/columns, for example in the
 100 * 256MB module the upper 128MB get aliased with contents of the lower
 101 * 128MB); normally this define should be used for devices with real 32-bit
 102 * data path.
 103 */
 104#undef CONFIG_DDR_32BIT
 105
 106#define CONFIG_SYS_DDR_BASE             0x00000000      /* DDR is sys memory*/
 107#define CONFIG_SYS_SDRAM_BASE           CONFIG_SYS_DDR_BASE
 108#define CONFIG_SYS_DDR_SDRAM_BASE       CONFIG_SYS_DDR_BASE
 109#define CONFIG_SYS_DDR_SDRAM_CLK_CNTL   (DDR_SDRAM_CLK_CNTL_SS_EN \
 110                                        | DDR_SDRAM_CLK_CNTL_CLK_ADJUST_075)
 111#define CONFIG_DDR_2T_TIMING
 112#define CONFIG_SYS_DDRCDR               (DDRCDR_DHC_EN \
 113                                        | DDRCDR_ODT \
 114                                        | DDRCDR_Q_DRN)
 115                                        /* 0x80080001 */
 116
 117/*
 118 * FLASH on the Local Bus
 119 */
 120#define CONFIG_SYS_FLASH_CFI
 121#define CONFIG_FLASH_CFI_DRIVER                         /* use the CFI driver */
 122#ifdef VME_CADDY2
 123#define CONFIG_SYS_FLASH_BASE           0xffc00000      /* start of FLASH   */
 124#define CONFIG_SYS_FLASH_SIZE           4               /* flash size in MB */
 125#define CONFIG_SYS_BR0_PRELIM           (CONFIG_SYS_FLASH_BASE | \
 126                                         BR_PS_16 |     /*  16bit */ \
 127                                         BR_MS_GPCM |   /*  MSEL = GPCM */ \
 128                                         BR_V)          /* valid */
 129
 130#define CONFIG_SYS_OR0_PRELIM           (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \
 131                                        | OR_GPCM_XAM \
 132                                        | OR_GPCM_CSNT \
 133                                        | OR_GPCM_ACS_DIV2 \
 134                                        | OR_GPCM_XACS \
 135                                        | OR_GPCM_SCY_15 \
 136                                        | OR_GPCM_TRLX_SET \
 137                                        | OR_GPCM_EHTR_SET \
 138                                        | OR_GPCM_EAD)
 139                                        /* 0xffc06ff7 */
 140#define CONFIG_SYS_LBLAWBAR0_PRELIM     CONFIG_SYS_FLASH_BASE
 141#define CONFIG_SYS_LBLAWAR0_PRELIM      (LBLAWAR_EN | LBLAWAR_4MB)
 142#else
 143#define CONFIG_SYS_FLASH_BASE           0xf8000000      /* start of FLASH   */
 144#define CONFIG_SYS_FLASH_SIZE           128             /* flash size in MB */
 145#define CONFIG_SYS_BR0_PRELIM           (CONFIG_SYS_FLASH_BASE | \
 146                                         BR_PS_16 |     /*  16bit */ \
 147                                         BR_MS_GPCM |   /*  MSEL = GPCM */ \
 148                                         BR_V)          /* valid */
 149
 150#define CONFIG_SYS_OR0_PRELIM           (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \
 151                                        | OR_GPCM_XAM \
 152                                        | OR_GPCM_CSNT \
 153                                        | OR_GPCM_ACS_DIV2 \
 154                                        | OR_GPCM_XACS \
 155                                        | OR_GPCM_SCY_15 \
 156                                        | OR_GPCM_TRLX_SET \
 157                                        | OR_GPCM_EHTR_SET \
 158                                        | OR_GPCM_EAD)
 159                                        /* 0xf8006ff7 */
 160#define CONFIG_SYS_LBLAWBAR0_PRELIM     CONFIG_SYS_FLASH_BASE
 161#define CONFIG_SYS_LBLAWAR0_PRELIM      (LBLAWAR_EN | LBLAWAR_128MB)
 162#endif
 163/* #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE */
 164
 165#define CONFIG_SYS_WINDOW1_BASE         0xf0000000
 166#define CONFIG_SYS_BR1_PRELIM           (CONFIG_SYS_WINDOW1_BASE \
 167                                        | BR_PS_32 \
 168                                        | BR_MS_GPCM \
 169                                        | BR_V)
 170                                        /* 0xF0001801 */
 171#define CONFIG_SYS_OR1_PRELIM           (OR_AM_256KB \
 172                                        | OR_GPCM_SETA)
 173                                        /* 0xfffc0208 */
 174#define CONFIG_SYS_LBLAWBAR1_PRELIM     CONFIG_SYS_WINDOW1_BASE
 175#define CONFIG_SYS_LBLAWAR1_PRELIM      (LBLAWAR_EN | LBLAWAR_256KB)
 176
 177#define CONFIG_SYS_MAX_FLASH_BANKS      1       /* number of banks */
 178#define CONFIG_SYS_MAX_FLASH_SECT       1024    /* sectors per device*/
 179
 180#undef CONFIG_SYS_FLASH_CHECKSUM
 181#define CONFIG_SYS_FLASH_ERASE_TOUT     60000   /* Flash Erase TO (ms) */
 182#define CONFIG_SYS_FLASH_WRITE_TOUT     500     /* Flash Write TO (ms) */
 183
 184#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE    /* start of monitor */
 185
 186#if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE)
 187#define CONFIG_SYS_RAMBOOT
 188#else
 189#undef CONFIG_SYS_RAMBOOT
 190#endif
 191
 192#define CONFIG_SYS_INIT_RAM_LOCK        1
 193#define CONFIG_SYS_INIT_RAM_ADDR        0xF7000000      /* Initial RAM addr */
 194#define CONFIG_SYS_INIT_RAM_SIZE                0x1000          /* size */
 195
 196#define CONFIG_SYS_GBL_DATA_OFFSET      (CONFIG_SYS_INIT_RAM_SIZE - \
 197                                         GENERATED_GBL_DATA_SIZE)
 198#define CONFIG_SYS_INIT_SP_OFFSET       CONFIG_SYS_GBL_DATA_OFFSET
 199
 200#define CONFIG_SYS_MONITOR_LEN          (256 * 1024)    /* Reserve 256 kB */
 201#define CONFIG_SYS_MALLOC_LEN           (128 * 1024)    /* Malloc size */
 202
 203/*
 204 * Local Bus LCRR and LBCR regs
 205 *    LCRR:  no DLL bypass, Clock divider is 4
 206 * External Local Bus rate is
 207 *    CLKIN * HRCWL_CSB_TO_CLKIN / HRCWL_LCL_BUS_TO_SCB_CLK / LCRR_CLKDIV
 208 */
 209#define CONFIG_SYS_LCRR_CLKDIV  LCRR_CLKDIV_4
 210#define CONFIG_SYS_LBC_LBCR     0x00000000
 211
 212#undef CONFIG_SYS_LB_SDRAM      /* if board has SDRAM on local bus */
 213
 214/*
 215 * Serial Port
 216 */
 217#define CONFIG_CONS_INDEX       1
 218#define CONFIG_SYS_NS16550
 219#define CONFIG_SYS_NS16550_SERIAL
 220#define CONFIG_SYS_NS16550_REG_SIZE     1
 221#define CONFIG_SYS_NS16550_CLK          get_bus_freq(0)
 222
 223#define CONFIG_SYS_BAUDRATE_TABLE  \
 224                {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200}
 225
 226#define CONFIG_SYS_NS16550_COM1         (CONFIG_SYS_IMMR + 0x4500)
 227#define CONFIG_SYS_NS16550_COM2         (CONFIG_SYS_IMMR + 0x4600)
 228
 229#define CONFIG_CMDLINE_EDITING          /* add command line history     */
 230#define CONFIG_AUTO_COMPLETE            /* add autocompletion support */
 231/* Use the HUSH parser */
 232#define CONFIG_SYS_HUSH_PARSER
 233#ifdef CONFIG_SYS_HUSH_PARSER
 234#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 235#endif
 236
 237/* pass open firmware flat tree */
 238#define CONFIG_OF_LIBFDT
 239#define CONFIG_OF_BOARD_SETUP
 240#define CONFIG_OF_STDOUT_VIA_ALIAS
 241
 242/* I2C */
 243#define CONFIG_I2C_MULTI_BUS
 244#define CONFIG_HARD_I2C         /* I2C with hardware support*/
 245#undef CONFIG_SOFT_I2C          /* I2C bit-banged */
 246#define CONFIG_FSL_I2C
 247#define CONFIG_I2C_CMD_TREE
 248#define CONFIG_SYS_I2C_SPEED    400000  /* I2C speed and slave address */
 249#define CONFIG_SYS_I2C_SLAVE    0x7F
 250#define CONFIG_SYS_I2C_NOPROBES { {0, 0x69} } /* Don't probe these addrs */
 251#define CONFIG_SYS_I2C1_OFFSET  0x3000
 252#define CONFIG_SYS_I2C2_OFFSET  0x3100
 253#define CONFIG_SYS_I2C_OFFSET   CONFIG_SYS_I2C1_OFFSET
 254/* could also use CONFIG_I2C_MULTI_BUS and CONFIG_SYS_SPD_BUS_NUM... */
 255
 256#define CONFIG_SYS_I2C_8574_ADDR2       0x20    /* I2C1, PCF8574 */
 257
 258/* TSEC */
 259#define CONFIG_SYS_TSEC1_OFFSET 0x24000
 260#define CONFIG_SYS_TSEC1        (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET)
 261#define CONFIG_SYS_TSEC2_OFFSET 0x25000
 262#define CONFIG_SYS_TSEC2        (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC2_OFFSET)
 263
 264/*
 265 * General PCI
 266 * Addresses are mapped 1-1.
 267 */
 268#define CONFIG_SYS_PCI1_MEM_BASE        0x80000000
 269#define CONFIG_SYS_PCI1_MEM_PHYS        CONFIG_SYS_PCI1_MEM_BASE
 270#define CONFIG_SYS_PCI1_MEM_SIZE        0x10000000      /* 256M */
 271#define CONFIG_SYS_PCI1_MMIO_BASE       0x90000000
 272#define CONFIG_SYS_PCI1_MMIO_PHYS       CONFIG_SYS_PCI1_MMIO_BASE
 273#define CONFIG_SYS_PCI1_MMIO_SIZE       0x10000000      /* 256M */
 274#define CONFIG_SYS_PCI1_IO_BASE         0x00000000
 275#define CONFIG_SYS_PCI1_IO_PHYS         0xE2000000
 276#define CONFIG_SYS_PCI1_IO_SIZE         0x00100000      /* 1M */
 277
 278#define CONFIG_SYS_PCI2_MEM_BASE        0xA0000000
 279#define CONFIG_SYS_PCI2_MEM_PHYS        CONFIG_SYS_PCI2_MEM_BASE
 280#define CONFIG_SYS_PCI2_MEM_SIZE        0x10000000      /* 256M */
 281#define CONFIG_SYS_PCI2_MMIO_BASE       0xB0000000
 282#define CONFIG_SYS_PCI2_MMIO_PHYS       CONFIG_SYS_PCI2_MMIO_BASE
 283#define CONFIG_SYS_PCI2_MMIO_SIZE       0x10000000      /* 256M */
 284#define CONFIG_SYS_PCI2_IO_BASE         0x00000000
 285#define CONFIG_SYS_PCI2_IO_PHYS         0xE2100000
 286#define CONFIG_SYS_PCI2_IO_SIZE         0x00100000      /* 1M */
 287
 288#if defined(CONFIG_PCI)
 289
 290#define PCI_64BIT
 291#define PCI_ONE_PCI1
 292#if defined(PCI_64BIT)
 293#undef PCI_ALL_PCI1
 294#undef PCI_TWO_PCI1
 295#undef PCI_ONE_PCI1
 296#endif
 297
 298#ifndef VME_CADDY2
 299#endif
 300#define CONFIG_PCI_PNP          /* do pci plug-and-play */
 301
 302#undef CONFIG_EEPRO100
 303#undef CONFIG_TULIP
 304
 305#if !defined(CONFIG_PCI_PNP)
 306        #define PCI_ENET0_IOADDR        0xFIXME
 307        #define PCI_ENET0_MEMADDR       0xFIXME
 308        #define PCI_IDSEL_NUMBER        0xFIXME
 309#endif
 310
 311#define CONFIG_PCI_SCAN_SHOW            /* show pci devices on startup */
 312#define CONFIG_SYS_PCI_SUBSYS_VENDORID  0x1957  /* Freescale */
 313
 314#endif  /* CONFIG_PCI */
 315
 316/*
 317 * TSEC configuration
 318 */
 319#ifdef VME_CADDY2
 320#define CONFIG_E1000
 321#else
 322#define CONFIG_TSEC_ENET                /* TSEC ethernet support */
 323#endif
 324
 325#if defined(CONFIG_TSEC_ENET)
 326
 327#define CONFIG_GMII                     /* MII PHY management */
 328#define CONFIG_TSEC1
 329#define CONFIG_TSEC1_NAME       "TSEC0"
 330#define CONFIG_TSEC2
 331#define CONFIG_TSEC2_NAME       "TSEC1"
 332#define CONFIG_PHY_M88E1111
 333#define TSEC1_PHY_ADDR          0x08
 334#define TSEC2_PHY_ADDR          0x10
 335#define TSEC1_PHYIDX            0
 336#define TSEC2_PHYIDX            0
 337#define TSEC1_FLAGS             TSEC_GIGABIT
 338#define TSEC2_FLAGS             TSEC_GIGABIT
 339
 340/* Options are: TSEC[0-1] */
 341#define CONFIG_ETHPRIME         "TSEC0"
 342
 343#endif  /* CONFIG_TSEC_ENET */
 344
 345/*
 346 * Environment
 347 */
 348#ifndef CONFIG_SYS_RAMBOOT
 349        #define CONFIG_ENV_IS_IN_FLASH
 350        #define CONFIG_ENV_ADDR         (CONFIG_SYS_MONITOR_BASE + 0xc0000)
 351        #define CONFIG_ENV_SECT_SIZE    0x20000 /* 128K(one sector) for env */
 352        #define CONFIG_ENV_SIZE         0x2000
 353
 354/* Address and size of Redundant Environment Sector     */
 355#define CONFIG_ENV_ADDR_REDUND  (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
 356#define CONFIG_ENV_SIZE_REDUND  (CONFIG_ENV_SIZE)
 357
 358#else
 359        #define CONFIG_SYS_NO_FLASH             /* Flash is not usable now */
 360        #define CONFIG_ENV_IS_NOWHERE           /* Store ENV in memory only */
 361        #define CONFIG_ENV_ADDR         (CONFIG_SYS_MONITOR_BASE - 0x1000)
 362        #define CONFIG_ENV_SIZE         0x2000
 363#endif
 364
 365#define CONFIG_LOADS_ECHO               /* echo on for serial download */
 366#define CONFIG_SYS_LOADS_BAUD_CHANGE    /* allow baudrate change */
 367
 368/*
 369 * BOOTP options
 370 */
 371#define CONFIG_BOOTP_BOOTFILESIZE
 372#define CONFIG_BOOTP_BOOTPATH
 373#define CONFIG_BOOTP_GATEWAY
 374#define CONFIG_BOOTP_HOSTNAME
 375
 376/*
 377 * Command line configuration.
 378 */
 379#include <config_cmd_default.h>
 380
 381#define CONFIG_CMD_I2C
 382#define CONFIG_CMD_MII
 383#define CONFIG_CMD_PING
 384#define CONFIG_CMD_DATE
 385#define CONFIG_SYS_RTC_BUS_NUM  0x01
 386#define CONFIG_SYS_I2C_RTC_ADDR 0x32
 387#define CONFIG_RTC_RX8025
 388#define CONFIG_CMD_TSI148
 389
 390#if defined(CONFIG_PCI)
 391    #define CONFIG_CMD_PCI
 392#endif
 393
 394#if defined(CONFIG_SYS_RAMBOOT)
 395    #undef CONFIG_CMD_ENV
 396    #undef CONFIG_CMD_LOADS
 397#endif
 398
 399#define CONFIG_CMD_ELF
 400/* Pass Ethernet MAC to VxWorks */
 401#define CONFIG_SYS_VXWORKS_MAC_PTR      0x000043f0
 402
 403#undef CONFIG_WATCHDOG                  /* watchdog disabled */
 404
 405/*
 406 * Miscellaneous configurable options
 407 */
 408#define CONFIG_SYS_LONGHELP                     /* undef to save memory */
 409#define CONFIG_SYS_LOAD_ADDR    0x2000000       /* default load address */
 410#define CONFIG_SYS_PROMPT       "=> "           /* Monitor Command Prompt */
 411
 412#if defined(CONFIG_CMD_KGDB)
 413        #define CONFIG_SYS_CBSIZE       1024    /* Console I/O Buffer Size */
 414#else
 415        #define CONFIG_SYS_CBSIZE       256     /* Console I/O Buffer Size */
 416#endif
 417
 418#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
 419#define CONFIG_SYS_MAXARGS      16              /* max num of command args */
 420#define CONFIG_SYS_BARGSIZE     CONFIG_SYS_CBSIZE /* Boot Argument Buf Size */
 421#define CONFIG_SYS_HZ           1000            /* decr freq: 1ms ticks */
 422
 423/*
 424 * For booting Linux, the board info and command line data
 425 * have to be in the first 256 MB of memory, since this is
 426 * the maximum mapped by the Linux kernel during initialization.
 427 */
 428#define CONFIG_SYS_BOOTMAPSZ    (256 << 20)     /* Init Memory map for Linux*/
 429
 430#define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST  */
 431
 432#define CONFIG_SYS_HRCW_LOW (\
 433        HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\
 434        HRCWL_DDR_TO_SCB_CLK_1X1 |\
 435        HRCWL_CSB_TO_CLKIN |\
 436        HRCWL_VCO_1X2 |\
 437        HRCWL_CORE_TO_CSB_2X1)
 438
 439#if defined(PCI_64BIT)
 440#define CONFIG_SYS_HRCW_HIGH (\
 441        HRCWH_PCI_HOST |\
 442        HRCWH_64_BIT_PCI |\
 443        HRCWH_PCI1_ARBITER_ENABLE |\
 444        HRCWH_PCI2_ARBITER_DISABLE |\
 445        HRCWH_CORE_ENABLE |\
 446        HRCWH_FROM_0X00000100 |\
 447        HRCWH_BOOTSEQ_DISABLE |\
 448        HRCWH_SW_WATCHDOG_DISABLE |\
 449        HRCWH_ROM_LOC_LOCAL_16BIT |\
 450        HRCWH_TSEC1M_IN_GMII |\
 451        HRCWH_TSEC2M_IN_GMII)
 452#else
 453#define CONFIG_SYS_HRCW_HIGH (\
 454        HRCWH_PCI_HOST |\
 455        HRCWH_32_BIT_PCI |\
 456        HRCWH_PCI1_ARBITER_ENABLE |\
 457        HRCWH_PCI2_ARBITER_ENABLE |\
 458        HRCWH_CORE_ENABLE |\
 459        HRCWH_FROM_0X00000100 |\
 460        HRCWH_BOOTSEQ_DISABLE |\
 461        HRCWH_SW_WATCHDOG_DISABLE |\
 462        HRCWH_ROM_LOC_LOCAL_16BIT |\
 463        HRCWH_TSEC1M_IN_GMII |\
 464        HRCWH_TSEC2M_IN_GMII)
 465#endif
 466
 467/* System IO Config */
 468#define CONFIG_SYS_SICRH 0
 469#define CONFIG_SYS_SICRL SICRL_LDP_A
 470
 471#define CONFIG_SYS_HID0_INIT    0x000000000
 472#define CONFIG_SYS_HID0_FINAL   (HID0_ENABLE_MACHINE_CHECK | \
 473                                 HID0_ENABLE_INSTRUCTION_CACHE)
 474
 475#define CONFIG_SYS_HID2         HID2_HBE
 476
 477#define CONFIG_SYS_GPIO1_PRELIM
 478#define CONFIG_SYS_GPIO1_DIR    0x00100000
 479#define CONFIG_SYS_GPIO1_DAT    0x00100000
 480
 481#define CONFIG_SYS_GPIO2_PRELIM
 482#define CONFIG_SYS_GPIO2_DIR    0x78900000
 483#define CONFIG_SYS_GPIO2_DAT    0x70100000
 484
 485#define CONFIG_HIGH_BATS                /* High BATs supported */
 486
 487/* DDR @ 0x00000000 */
 488#define CONFIG_SYS_IBAT0L       (CONFIG_SYS_SDRAM_BASE | BATL_PP_RW | \
 489                                 BATL_MEMCOHERENCE)
 490#define CONFIG_SYS_IBAT0U       (CONFIG_SYS_SDRAM_BASE | BATU_BL_256M | \
 491                                 BATU_VS | BATU_VP)
 492
 493/* PCI @ 0x80000000 */
 494#ifdef CONFIG_PCI
 495#define CONFIG_SYS_IBAT1L       (CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW | \
 496                                 BATL_MEMCOHERENCE)
 497#define CONFIG_SYS_IBAT1U       (CONFIG_SYS_PCI1_MEM_BASE | BATU_BL_256M | \
 498                                 BATU_VS | BATU_VP)
 499#define CONFIG_SYS_IBAT2L       (CONFIG_SYS_PCI1_MMIO_BASE | BATL_PP_RW | \
 500                                 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
 501#define CONFIG_SYS_IBAT2U       (CONFIG_SYS_PCI1_MMIO_BASE | BATU_BL_256M | \
 502                                 BATU_VS | BATU_VP)
 503#else
 504#define CONFIG_SYS_IBAT1L       (0)
 505#define CONFIG_SYS_IBAT1U       (0)
 506#define CONFIG_SYS_IBAT2L       (0)
 507#define CONFIG_SYS_IBAT2U       (0)
 508#endif
 509
 510#ifdef CONFIG_MPC83XX_PCI2
 511#define CONFIG_SYS_IBAT3L       (CONFIG_SYS_PCI2_MEM_BASE | BATL_PP_RW | \
 512                                 BATL_MEMCOHERENCE)
 513#define CONFIG_SYS_IBAT3U       (CONFIG_SYS_PCI2_MEM_BASE | BATU_BL_256M | \
 514                                 BATU_VS | BATU_VP)
 515#define CONFIG_SYS_IBAT4L       (CONFIG_SYS_PCI2_MMIO_BASE | BATL_PP_RW | \
 516                                 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
 517#define CONFIG_SYS_IBAT4U       (CONFIG_SYS_PCI2_MMIO_BASE | BATU_BL_256M | \
 518                                 BATU_VS | BATU_VP)
 519#else
 520#define CONFIG_SYS_IBAT3L       (0)
 521#define CONFIG_SYS_IBAT3U       (0)
 522#define CONFIG_SYS_IBAT4L       (0)
 523#define CONFIG_SYS_IBAT4U       (0)
 524#endif
 525
 526/* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 */
 527#define CONFIG_SYS_IBAT5L       (CONFIG_SYS_IMMR | BATL_PP_RW | \
 528                                 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
 529#define CONFIG_SYS_IBAT5U       (CONFIG_SYS_IMMR | BATU_BL_256M | \
 530                                 BATU_VS | BATU_VP)
 531
 532#define CONFIG_SYS_IBAT6L       (0xF0000000 | BATL_PP_RW | BATL_MEMCOHERENCE)
 533#define CONFIG_SYS_IBAT6U       (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP)
 534
 535#if (CONFIG_SYS_DDR_SIZE == 512)
 536#define CONFIG_SYS_IBAT7L       (CONFIG_SYS_SDRAM_BASE+0x10000000 | \
 537                                 BATL_PP_RW | BATL_MEMCOHERENCE)
 538#define CONFIG_SYS_IBAT7U       (CONFIG_SYS_SDRAM_BASE+0x10000000 | \
 539                                 BATU_BL_256M | BATU_VS | BATU_VP)
 540#else
 541#define CONFIG_SYS_IBAT7L       (0)
 542#define CONFIG_SYS_IBAT7U       (0)
 543#endif
 544
 545#define CONFIG_SYS_DBAT0L       CONFIG_SYS_IBAT0L
 546#define CONFIG_SYS_DBAT0U       CONFIG_SYS_IBAT0U
 547#define CONFIG_SYS_DBAT1L       CONFIG_SYS_IBAT1L
 548#define CONFIG_SYS_DBAT1U       CONFIG_SYS_IBAT1U
 549#define CONFIG_SYS_DBAT2L       CONFIG_SYS_IBAT2L
 550#define CONFIG_SYS_DBAT2U       CONFIG_SYS_IBAT2U
 551#define CONFIG_SYS_DBAT3L       CONFIG_SYS_IBAT3L
 552#define CONFIG_SYS_DBAT3U       CONFIG_SYS_IBAT3U
 553#define CONFIG_SYS_DBAT4L       CONFIG_SYS_IBAT4L
 554#define CONFIG_SYS_DBAT4U       CONFIG_SYS_IBAT4U
 555#define CONFIG_SYS_DBAT5L       CONFIG_SYS_IBAT5L
 556#define CONFIG_SYS_DBAT5U       CONFIG_SYS_IBAT5U
 557#define CONFIG_SYS_DBAT6L       CONFIG_SYS_IBAT6L
 558#define CONFIG_SYS_DBAT6U       CONFIG_SYS_IBAT6U
 559#define CONFIG_SYS_DBAT7L       CONFIG_SYS_IBAT7L
 560#define CONFIG_SYS_DBAT7U       CONFIG_SYS_IBAT7U
 561
 562#if defined(CONFIG_CMD_KGDB)
 563#define CONFIG_KGDB_BAUDRATE    230400  /* speed of kgdb serial port */
 564#define CONFIG_KGDB_SER_INDEX   2       /* which serial port to use */
 565#endif
 566
 567/*
 568 * Environment Configuration
 569 */
 570#define CONFIG_ENV_OVERWRITE
 571
 572#if defined(CONFIG_TSEC_ENET)
 573#define CONFIG_HAS_ETH0
 574#define CONFIG_HAS_ETH1
 575#endif
 576
 577#define CONFIG_HOSTNAME         VME8349
 578#define CONFIG_ROOTPATH         "/tftpboot/rootfs"
 579#define CONFIG_BOOTFILE         "uImage"
 580
 581#define CONFIG_LOADADDR         800000  /* def location for tftp and bootm */
 582
 583#define CONFIG_BOOTDELAY        6       /* -1 disables auto-boot */
 584#undef  CONFIG_BOOTARGS                 /* boot command will set bootargs */
 585
 586#define CONFIG_BAUDRATE  9600
 587
 588#define CONFIG_EXTRA_ENV_SETTINGS                                       \
 589        "netdev=eth0\0"                                                 \
 590        "hostname=vme8349\0"                                            \
 591        "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
 592                "nfsroot=${serverip}:${rootpath}\0"                     \
 593        "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
 594        "addip=setenv bootargs ${bootargs} "                            \
 595                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
 596                ":${hostname}:${netdev}:off panic=1\0"                  \
 597        "addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\
 598        "flash_nfs=run nfsargs addip addtty;"                           \
 599                "bootm ${kernel_addr}\0"                                \
 600        "flash_self=run ramargs addip addtty;"                          \
 601                "bootm ${kernel_addr} ${ramdisk_addr}\0"                \
 602        "net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;"     \
 603                "bootm\0"                                               \
 604        "load=tftp 100000 /tftpboot/bdi2000/vme8349.bin\0"              \
 605        "update=protect off fff00000 fff3ffff; "                        \
 606                "era fff00000 fff3ffff; cp.b 100000 fff00000 ${filesize}\0" \
 607        "upd=run load update\0"                                         \
 608        "fdtaddr=780000\0"                                              \
 609        "fdtfile=vme8349.dtb\0"                                         \
 610        ""
 611
 612#define CONFIG_NFSBOOTCOMMAND                                           \
 613        "setenv bootargs root=/dev/nfs rw "                             \
 614                "nfsroot=$serverip:$rootpath "                          \
 615                "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:"   \
 616                                                        "$netdev:off "  \
 617                "console=$consoledev,$baudrate $othbootargs;"           \
 618        "tftp $loadaddr $bootfile;"                                     \
 619        "tftp $fdtaddr $fdtfile;"                                       \
 620        "bootm $loadaddr - $fdtaddr"
 621
 622#define CONFIG_RAMBOOTCOMMAND                                           \
 623        "setenv bootargs root=/dev/ram rw "                             \
 624                "console=$consoledev,$baudrate $othbootargs;"           \
 625        "tftp $ramdiskaddr $ramdiskfile;"                               \
 626        "tftp $loadaddr $bootfile;"                                     \
 627        "tftp $fdtaddr $fdtfile;"                                       \
 628        "bootm $loadaddr $ramdiskaddr $fdtaddr"
 629
 630#define CONFIG_BOOTCOMMAND      "run flash_self"
 631
 632#ifndef __ASSEMBLY__
 633int vme8349_read_spd(unsigned char chip, unsigned int addr, int alen,
 634                     unsigned char *buffer, int len);
 635#endif
 636
 637#endif  /* __CONFIG_H */
 638