uboot/include/configs/baltos.h
<<
>>
Prefs
   1/*
   2 * am335x_evm.h
   3 *
   4 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
   5 *
   6 * This program is free software; you can redistribute it and/or
   7 * modify it under the terms of the GNU General Public License as
   8 * published by the Free Software Foundation version 2.
   9 *
  10 * This program is distributed "as is" WITHOUT ANY WARRANTY of any
  11 * kind, whether express or implied; without even the implied warranty
  12 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13 * GNU General Public License for more details.
  14 */
  15
  16#ifndef __CONFIG_BALTOS_H
  17#define __CONFIG_BALTOS_H
  18
  19#include <linux/sizes.h>
  20#include <configs/ti_am335x_common.h>
  21
  22#define MACH_TYPE_TIAM335EVM            3589    /* Until the next sync */
  23#define CONFIG_MACH_TYPE                MACH_TYPE_TIAM335EVM
  24#define CONFIG_BOARD_LATE_INIT
  25
  26/* Clock Defines */
  27#define V_OSCK                          24000000  /* Clock output from T2 */
  28#define V_SCLK                          (V_OSCK)
  29
  30/* Custom script for NOR */
  31#define CONFIG_SYS_LDSCRIPT             "board/vscom/baltos/u-boot.lds"
  32
  33/* Always 128 KiB env size */
  34#define CONFIG_ENV_SIZE                 (128 << 10)
  35
  36/* Enhance our eMMC support / experience. */
  37#define CONFIG_CMD_GPT
  38#define CONFIG_EFI_PARTITION
  39#define CONFIG_PARTITION_UUIDS
  40#define CONFIG_CMD_PART
  41
  42/* FIT support */
  43#define CONFIG_SYS_BOOTM_LEN         SZ_64M
  44
  45/* UBI Support */
  46#define CONFIG_CMD_MTDPARTS
  47#define CONFIG_MTD_PARTITIONS
  48#define CONFIG_MTD_DEVICE
  49#define CONFIG_RBTREE
  50#define CONFIG_LZO
  51#define CONFIG_CMD_UBIFS
  52
  53/* I2C configuration */
  54#undef CONFIG_SYS_OMAP24_I2C_SPEED
  55#define CONFIG_SYS_OMAP24_I2C_SPEED 1000
  56
  57#ifdef CONFIG_NAND
  58#define CONFIG_SYS_NAND_U_BOOT_OFFS     0x00080000
  59#ifdef CONFIG_SPL_OS_BOOT
  60#define CONFIG_CMD_SPL_NAND_OFS 0x00080000 /* os parameters */
  61#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 /* kernel offset */
  62#define CONFIG_CMD_SPL_WRITE_SIZE       0x2000
  63#endif
  64#define NANDARGS \
  65        "mtdids=" MTDIDS_DEFAULT "\0" \
  66        "mtdparts=" MTDPARTS_DEFAULT "\0" \
  67        "nandargs=setenv bootargs console=${console} " \
  68                "${optargs} " \
  69                "${mtdparts} " \
  70                "root=${nandroot} " \
  71                "rootfstype=${nandrootfstype}\0" \
  72        "nandroot=ubi0:rootfs rw ubi.mtd=5\0" \
  73        "nandrootfstype=ubifs rootwait=1\0" \
  74        "nandboot=echo Booting from nand ...; " \
  75                "run nandargs; " \
  76                "setenv loadaddr 0x84000000; " \
  77                "ubi part UBI; " \
  78                "ubifsmount ubi0:kernel; " \
  79                "ubifsload $loadaddr kernel-fit.itb;" \
  80                "ubifsumount; " \
  81                "bootm ${loadaddr}#conf${board_name}; " \
  82                "if test $? -ne 0; then echo Using default FIT config; " \
  83                "bootm ${loadaddr}; fi;\0"
  84#else
  85#define NANDARGS ""
  86#endif
  87
  88#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
  89
  90#ifndef CONFIG_SPL_BUILD
  91#define CONFIG_EXTRA_ENV_SETTINGS \
  92        DEFAULT_LINUX_BOOT_ENV \
  93        "boot_fdt=try\0" \
  94        "bootpart=0:2\0" \
  95        "bootdir=/boot\0" \
  96        "bootfile=zImage\0" \
  97        "fdtfile=undefined\0" \
  98        "console=ttyO0,115200n8\0" \
  99        "partitions=" \
 100                "uuid_disk=${uuid_gpt_disk};" \
 101                "name=rootfs,start=2MiB,size=-,uuid=${uuid_gpt_rootfs}\0" \
 102        "optargs=\0" \
 103        "mmcdev=0\0" \
 104        "mmcroot=/dev/mmcblk0p2 ro\0" \
 105        "mmcrootfstype=ext4 rootwait\0" \
 106        "rootpath=/export/rootfs\0" \
 107        "nfsopts=nolock\0" \
 108        "static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}" \
 109                "::off\0" \
 110        "ramroot=/dev/ram0 rw\0" \
 111        "ramrootfstype=ext2\0" \
 112        "mmcargs=setenv bootargs console=${console} " \
 113                "${optargs} " \
 114                "${mtdparts} " \
 115                "root=${mmcroot} " \
 116                "rootfstype=${mmcrootfstype}\0" \
 117        "spiroot=/dev/mtdblock4 rw\0" \
 118        "spirootfstype=jffs2\0" \
 119        "spisrcaddr=0xe0000\0" \
 120        "spiimgsize=0x362000\0" \
 121        "spibusno=0\0" \
 122        "spiargs=setenv bootargs console=${console} " \
 123                "${optargs} " \
 124                "root=${spiroot} " \
 125                "rootfstype=${spirootfstype}\0" \
 126        "netargs=setenv bootargs console=${console} " \
 127                "${optargs} " \
 128                "root=/dev/nfs " \
 129                "nfsroot=${serverip}:${rootpath},${nfsopts} rw " \
 130                "ip=dhcp\0" \
 131        "bootenv=uEnv.txt\0" \
 132        "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
 133        "importbootenv=echo Importing environment from mmc ...; " \
 134                "env import -t $loadaddr $filesize\0" \
 135        "ramargs=setenv bootargs console=${console} " \
 136                "${optargs} " \
 137                "root=${ramroot} " \
 138                "rootfstype=${ramrootfstype}\0" \
 139        "loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
 140        "loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
 141        "loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \
 142        "mmcloados=run mmcargs; " \
 143                "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
 144                        "if run loadfdt; then " \
 145                                "bootz ${loadaddr} - ${fdtaddr}; " \
 146                        "else " \
 147                                "if test ${boot_fdt} = try; then " \
 148                                        "bootz; " \
 149                                "else " \
 150                                        "echo WARN: Cannot load the DT; " \
 151                                "fi; " \
 152                        "fi; " \
 153                "else " \
 154                        "bootz; " \
 155                "fi;\0" \
 156        "mmcboot=mmc dev ${mmcdev}; " \
 157                "if mmc rescan; then " \
 158                        "echo SD/MMC found on device ${mmcdev};" \
 159                        "if run loadbootenv; then " \
 160                                "echo Loaded environment from ${bootenv};" \
 161                                "run importbootenv;" \
 162                        "fi;" \
 163                        "if test -n $uenvcmd; then " \
 164                                "echo Running uenvcmd ...;" \
 165                                "run uenvcmd;" \
 166                        "fi;" \
 167                        "if run loadimage; then " \
 168                                "run mmcloados;" \
 169                        "fi;" \
 170                "fi;\0" \
 171        "spiboot=echo Booting from spi ...; " \
 172                "run spiargs; " \
 173                "sf probe ${spibusno}:0; " \
 174                "sf read ${loadaddr} ${spisrcaddr} ${spiimgsize}; " \
 175                "bootz ${loadaddr}\0" \
 176        "netboot=echo Booting from network ...; " \
 177                "setenv autoload no; " \
 178                "dhcp; " \
 179                "tftp ${loadaddr} ${bootfile}; " \
 180                "tftp ${fdtaddr} ${fdtfile}; " \
 181                "run netargs; " \
 182                "bootz ${loadaddr} - ${fdtaddr}\0" \
 183        "ramboot=echo Booting from ramdisk ...; " \
 184                "run ramargs; " \
 185                "bootz ${loadaddr} ${rdaddr} ${fdtaddr}\0" \
 186        "findfdt=setenv fdtfile am335x-baltos.dtb\0" \
 187        NANDARGS
 188        /*DFUARGS*/
 189#endif
 190
 191#define CONFIG_BOOTCOMMAND \
 192        "run findfdt; " \
 193        "run mmcboot;" \
 194        "setenv mmcdev 1; " \
 195        "setenv bootpart 1:2; " \
 196        "run mmcboot;" \
 197        "run nandboot;"
 198
 199/* NS16550 Configuration */
 200#define CONFIG_SYS_NS16550_COM1         0x44e09000      /* Base EVM has UART0 */
 201#define CONFIG_SYS_NS16550_COM2         0x48022000      /* UART1 */
 202#define CONFIG_SYS_NS16550_COM3         0x48024000      /* UART2 */
 203#define CONFIG_SYS_NS16550_COM4         0x481a6000      /* UART3 */
 204#define CONFIG_SYS_NS16550_COM5         0x481a8000      /* UART4 */
 205#define CONFIG_SYS_NS16550_COM6         0x481aa000      /* UART5 */
 206#define CONFIG_BAUDRATE                 115200
 207
 208#define CONFIG_CMD_EEPROM
 209#define CONFIG_ENV_EEPROM_IS_ON_I2C
 210#define CONFIG_SYS_I2C_EEPROM_ADDR      0x50    /* Main EEPROM */
 211#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN  2
 212
 213/* PMIC support */
 214#define CONFIG_POWER_TPS65910
 215
 216/* SPL */
 217#ifndef CONFIG_NOR_BOOT
 218/* Bootcount using the RTC block */
 219#define CONFIG_BOOTCOUNT_LIMIT
 220#define CONFIG_BOOTCOUNT_AM33XX
 221
 222/* USB gadget RNDIS */
 223
 224/* General network SPL, both CPSW and USB gadget RNDIS */
 225#define CONFIG_SPL_NET_VCI_STRING       "AM335x U-Boot SPL"*/
 226
 227#define CONFIG_SPL_LDSCRIPT             "$(CPUDIR)/am33xx/u-boot-spl.lds"
 228
 229#ifdef CONFIG_NAND
 230#define CONFIG_NAND_OMAP_GPMC
 231#define CONFIG_NAND_OMAP_GPMC_PREFETCH
 232#define CONFIG_NAND_OMAP_ELM
 233#define CONFIG_SYS_NAND_5_ADDR_CYCLE
 234#define CONFIG_SYS_NAND_PAGE_COUNT      (CONFIG_SYS_NAND_BLOCK_SIZE / \
 235                                         CONFIG_SYS_NAND_PAGE_SIZE)
 236#define CONFIG_SYS_NAND_PAGE_SIZE       2048
 237#define CONFIG_SYS_NAND_OOBSIZE         64
 238#define CONFIG_SYS_NAND_BLOCK_SIZE      (128*1024)
 239#define CONFIG_SYS_NAND_BAD_BLOCK_POS   NAND_LARGE_BADBLOCK_POS
 240#define CONFIG_SYS_NAND_ECCPOS          { 2, 3, 4, 5, 6, 7, 8, 9, \
 241                                         10, 11, 12, 13, 14, 15, 16, 17, \
 242                                         18, 19, 20, 21, 22, 23, 24, 25, \
 243                                         26, 27, 28, 29, 30, 31, 32, 33, \
 244                                         34, 35, 36, 37, 38, 39, 40, 41, \
 245                                         42, 43, 44, 45, 46, 47, 48, 49, \
 246                                         50, 51, 52, 53, 54, 55, 56, 57, }
 247
 248#define CONFIG_SYS_NAND_ECCSIZE         512
 249#define CONFIG_SYS_NAND_ECCBYTES        14
 250#define CONFIG_SYS_NAND_ONFI_DETECTION
 251#define CONFIG_NAND_OMAP_ECCSCHEME      OMAP_ECC_BCH8_CODE_HW
 252#define CONFIG_SYS_NAND_U_BOOT_START    CONFIG_SYS_TEXT_BASE
 253#endif
 254#endif
 255
 256/*
 257 * USB configuration.  We enable MUSB support, both for host and for
 258 * gadget.  We set USB0 as peripheral and USB1 as host, based on the
 259 * board schematic and physical port wired to each.  Then for host we
 260 * add mass storage support and for gadget we add both RNDIS ethernet
 261 * and DFU.
 262 */
 263#define CONFIG_USB_MUSB_DSPS
 264#define CONFIG_ARCH_MISC_INIT
 265#define CONFIG_USB_MUSB_PIO_ONLY
 266#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 267#define CONFIG_AM335X_USB0
 268#define CONFIG_AM335X_USB0_MODE MUSB_HOST
 269#define CONFIG_AM335X_USB1
 270#define CONFIG_AM335X_USB1_MODE MUSB_OTG
 271
 272#ifdef CONFIG_USB_MUSB_GADGET
 273#define CONFIG_USB_ETHER
 274#define CONFIG_USB_ETH_RNDIS
 275#define CONFIG_USBNET_HOST_ADDR "de:ad:be:af:00:00"
 276#endif /* CONFIG_USB_MUSB_GADGET */
 277
 278#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 279/* disable host part of MUSB in SPL */
 280/* disable EFI partitions and partition UUID support */
 281#undef CONFIG_PARTITION_UUIDS
 282#undef CONFIG_EFI_PARTITION
 283/*
 284 * Disable CPSW SPL support so we fit within the 101KiB limit.
 285 */
 286#endif
 287
 288/* Network. */
 289#define CONFIG_PHY_GIGE
 290#define CONFIG_PHYLIB
 291#define CONFIG_PHY_ADDR                 0
 292#define CONFIG_PHY_SMSC
 293#define CONFIG_MII
 294#define CONFIG_PHY_ATHEROS
 295
 296/* NAND support */
 297#ifdef CONFIG_NAND
 298#define CONFIG_CMD_NAND
 299#define GPMC_NAND_ECC_LP_x8_LAYOUT      1
 300#if !defined(CONFIG_SPI_BOOT) && !defined(CONFIG_NOR_BOOT)
 301#define MTDIDS_DEFAULT                  "nand0=omap2-nand.0"
 302#define MTDPARTS_DEFAULT                "mtdparts=omap2-nand.0:128k(SPL)," \
 303                                        "128k(SPL.backup1)," \
 304                                        "128k(SPL.backup2)," \
 305                                        "128k(SPL.backup3)," \
 306                                        "1920k(u-boot)," \
 307                                        "-(UBI)"
 308#define CONFIG_ENV_IS_NOWHERE
 309#endif
 310#endif
 311
 312#endif  /* ! __CONFIG_BALTOS_H */
 313