uboot/include/configs/edb93xx.h
<<
>>
Prefs
   1/*
   2 * U-Boot - Configuration file for Cirrus Logic EDB93xx boards
   3 */
   4
   5#ifndef __CONFIG_H
   6#define __CONFIG_H
   7
   8#ifdef CONFIG_MK_edb9301
   9#define CONFIG_EDB9301
  10#elif defined(CONFIG_MK_edb9302)
  11#define CONFIG_EDB9302
  12#elif defined(CONFIG_MK_edb9302a)
  13#define CONFIG_EDB9302A
  14#elif defined(CONFIG_MK_edb9307)
  15#define CONFIG_EDB9307
  16#elif defined(CONFIG_MK_edb9307a)
  17#define CONFIG_EDB9307A
  18#elif defined(CONFIG_MK_edb9312)
  19#define CONFIG_EDB9312
  20#elif defined(CONFIG_MK_edb9315)
  21#define CONFIG_EDB9315
  22#elif defined(CONFIG_MK_edb9315a)
  23#define CONFIG_EDB9315A
  24#else
  25#error "no board defined"
  26#endif
  27
  28/* Initial environment and monitor configuration options. */
  29#define CONFIG_CMDLINE_TAG              1
  30#define CONFIG_INITRD_TAG               1
  31#define CONFIG_SETUP_MEMORY_TAGS        1
  32#define CONFIG_BOOTFILE         "edb93xx.img"
  33
  34#define CONFIG_SYS_LDSCRIPT     "board/cirrus/edb93xx/u-boot.lds"
  35
  36#ifdef CONFIG_EDB9301
  37#define CONFIG_EP9301
  38#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9301
  39#define CONFIG_ENV_SECT_SIZE            0x00020000
  40#elif defined(CONFIG_EDB9302)
  41#define CONFIG_EP9302
  42#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9302
  43#define CONFIG_ENV_SECT_SIZE            0x00020000
  44#elif defined(CONFIG_EDB9302A)
  45#define CONFIG_EP9302
  46#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9302A
  47#define CONFIG_ENV_SECT_SIZE            0x00020000
  48#elif defined(CONFIG_EDB9307)
  49#define CONFIG_EP9307
  50#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9307
  51#define CONFIG_ENV_SECT_SIZE            0x00040000
  52#elif defined(CONFIG_EDB9307A)
  53#define CONFIG_EP9307
  54#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9307A
  55#define CONFIG_ENV_SECT_SIZE            0x00020000
  56#elif defined(CONFIG_EDB9312)
  57#define CONFIG_EP9312
  58#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9312
  59#define CONFIG_ENV_SECT_SIZE            0x00040000
  60#elif defined(CONFIG_EDB9315)
  61#define CONFIG_EP9315
  62#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9315
  63#define CONFIG_ENV_SECT_SIZE            0x00040000
  64#elif defined(CONFIG_EDB9315A)
  65#define CONFIG_EP9315
  66#define CONFIG_MACH_TYPE                MACH_TYPE_EDB9315A
  67#define CONFIG_ENV_SECT_SIZE            0x00020000
  68#else
  69#error "no board defined"
  70#endif
  71
  72/* High-level configuration options */
  73#define CONFIG_EP93XX           1               /* This is a Cirrus Logic 93xx SoC */
  74
  75#define CONFIG_SYS_CLK_FREQ     14745600        /* EP93xx has a 14.7456 clock */
  76
  77/* Monitor configuration */
  78
  79#define CONFIG_SYS_LONGHELP                     /* Enable "long" help in mon */
  80#define CONFIG_SYS_CBSIZE               1024    /* Console I/O buffer size */
  81
  82/* Serial port hardware configuration */
  83#define CONFIG_PL010_SERIAL
  84#define CONFIG_CONS_INDEX               0
  85#define CONFIG_SYS_BAUDRATE_TABLE       {9600, 19200, 38400, 57600, \
  86                        115200, 230400}
  87#define CONFIG_SYS_SERIAL0              0x808C0000
  88#define CONFIG_SYS_SERIAL1              0x808D0000
  89/*#define CONFIG_PL01x_PORTS    {(void *)CONFIG_SYS_SERIAL0, \
  90            (void *)CONFIG_SYS_SERIAL1} */
  91
  92#define CONFIG_PL01x_PORTS      {(void *)CONFIG_SYS_SERIAL0}
  93
  94/* Status LED */
  95/* Optional value */
  96
  97/* Network hardware configuration */
  98#define CONFIG_DRIVER_EP93XX_MAC
  99#define CONFIG_MII_SUPPRESS_PREAMBLE
 100#define CONFIG_MII
 101#define CONFIG_PHY_ADDR         1
 102#undef CONFIG_NETCONSOLE
 103
 104/* SDRAM configuration */
 105#if defined(CONFIG_EDB9301) || defined(CONFIG_EDB9302) || \
 106    defined(CONFIG_EDB9307) || defined CONFIG_EDB9312 || \
 107    defined(CONFIG_EDB9315)
 108/*
 109 * EDB9301/2 has 4 banks of SDRAM consisting of 1x Samsung K4S561632E-TC75
 110 * 256 Mbit SDRAM on a 16-bit data bus, for a total of 32MB of SDRAM. We set
 111 * the SROMLL bit on the processor, resulting in this non-contiguous memory map.
 112 *
 113 * The EDB9307, EDB9312, and EDB9315 have 2 banks of SDRAM consisting of
 114 * 2x Samsung K4S561632E-TC75 256 Mbit on a 32-bit data bus, for a total of
 115 * 64 MB of SDRAM.
 116 */
 117
 118#define CONFIG_EDB93XX_SDCS3
 119
 120#elif defined(CONFIG_EDB9302A) || \
 121    defined(CONFIG_EDB9307A) || defined(CONFIG_EDB9315A)
 122/*
 123 * EDB9302a has 4 banks of SDRAM consisting of 1x Samsung K4S561632E-TC75
 124 * 256 Mbit SDRAM on a 16-bit data bus, for a total of 32MB of SDRAM. We set
 125 * the SROMLL bit on the processor, resulting in this non-contiguous memory map.
 126 *
 127 * The EDB9307A and EDB9315A have 2 banks of SDRAM consisting of 2x Samsung
 128 * K4S561632E-TC75 256 Mbit on a 32-bit data bus, for a total of 64 MB of SDRAM.
 129 */
 130#define CONFIG_EDB93XX_SDCS0
 131
 132#else
 133#error "no SDCS configuration for this board"
 134#endif
 135
 136#if defined(CONFIG_EDB93XX_SDCS3)
 137#define CONFIG_SYS_LOAD_ADDR    0x01000000      /* Default load address */
 138#define PHYS_SDRAM_1            0x00000000
 139#elif defined(CONFIG_EDB93XX_SDCS0)
 140#define CONFIG_SYS_LOAD_ADDR    0xc1000000      /* Default load address */
 141#define PHYS_SDRAM_1            0xc0000000
 142#endif
 143
 144#define CONFIG_SYS_SDRAM_BASE           PHYS_SDRAM_1
 145#define CONFIG_NR_DRAM_BANKS            8
 146
 147#define CONFIG_SYS_INIT_SP_ADDR \
 148    (CONFIG_SYS_SDRAM_BASE + 32*1024 - GENERATED_GBL_DATA_SIZE)
 149
 150/* Must match kernel config */
 151#define LINUX_BOOT_PARAM_ADDR   (PHYS_SDRAM_1 + 0x100)
 152
 153/* Run-time memory allocatons */
 154#define CONFIG_SYS_GBL_DATA_SIZE        128
 155
 156#define CONFIG_SYS_MALLOC_LEN           (512 * 1024)
 157
 158/* -----------------------------------------------------------------------------
 159 * FLASH and environment organization
 160 *
 161 * The EDB9301, EDB9302(a), EDB9307a, EDB9315a have 1 bank of flash memory at
 162 * 0x60000000 consisting of 1x Intel TE28F128J3C-150 128 Mbit flash on a 16-bit
 163 * data bus, for a total of 16 MB of CFI-compatible flash.
 164 *
 165 * The EDB9307, EDB9312, and EDB9315 have 1 bank of flash memory at
 166 * 0x60000000 consisting of 2x Micron MT28F128J3-12 128 Mbit flash on a 32-bit
 167 * data bus, for a total of 32 MB of CFI-compatible flash.
 168 *
 169 *
 170 *                            EDB9301/02(a)7a/15a    EDB9307/12/15
 171 * 0x60000000 - 0x0003FFFF    u-boot                 u-boot
 172 * 0x60040000 - 0x0005FFFF    environment #1         environment #1
 173 * 0x60060000 - 0x0007FFFF    environment #2         environment #1 (continued)
 174 * 0x60080000 - 0x0009FFFF    unused                 environment #2
 175 * 0x600A0000 - 0x000BFFFF    unused                 environment #2 (continued)
 176 * 0x600C0000 - 0x00FFFFFF    unused                 unused
 177 * 0x61000000 - 0x01FFFFFF    not present            unused
 178 */
 179#define CONFIG_SYS_FLASH_CFI
 180#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
 181
 182#define CONFIG_SYS_FLASH_PROTECTION
 183#define CONFIG_FLASH_CFI_DRIVER
 184#define CONFIG_SYS_MAX_FLASH_BANKS      1
 185#define CONFIG_SYS_MAX_FLASH_SECT       (256+8)
 186
 187#define CONFIG_SYS_TEXT_BASE            0x60000000
 188#define PHYS_FLASH_1                    CONFIG_SYS_TEXT_BASE
 189#define CONFIG_SYS_FLASH_BASE           CONFIG_SYS_TEXT_BASE
 190
 191#define CONFIG_SYS_MONITOR_BASE         CONFIG_SYS_FLASH_BASE
 192#define CONFIG_SYS_MONITOR_LEN          (256 * 1024)
 193
 194#define CONFIG_ENV_OVERWRITE            /* Vendor params unprotected */
 195
 196#define CONFIG_ENV_ADDR                 0x60040000
 197#define CONFIG_ENV_ADDR_REDUND          (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
 198
 199#define CONFIG_ENV_SIZE                 CONFIG_ENV_SECT_SIZE
 200#define CONFIG_ENV_SIZE_REDUND          CONFIG_ENV_SIZE
 201
 202#define CONFIG_USB_OHCI_NEW
 203#define CONFIG_USB_OHCI_EP93XX
 204#define CONFIG_SYS_USB_OHCI_CPU_INIT
 205#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS      3
 206#define CONFIG_SYS_USB_OHCI_SLOT_NAME           "ep93xx-ohci"
 207#define CONFIG_SYS_USB_OHCI_REGS_BASE           0x80020000
 208
 209/* Define to disable flash configuration*/
 210/* #define CONFIG_EP93XX_NO_FLASH_CFG */
 211
 212/* Define this for indusrial rated chips */
 213/* #define CONFIG_EDB93XX_INDUSTRIAL */
 214
 215#endif /* !defined (__CONFIG_H) */
 216