uboot/include/configs/nitrogen6x.h
<<
>>
Prefs
   1/*
   2 * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
   3 *
   4 * Configuration settings for the Boundary Devices Nitrogen6X
   5 * and Freescale i.MX6Q Sabre Lite boards.
   6 *
   7 * SPDX-License-Identifier:     GPL-2.0+
   8 */
   9
  10#ifndef __CONFIG_H
  11#define __CONFIG_H
  12
  13#include "mx6_common.h"
  14
  15#define CONFIG_MACH_TYPE        3769
  16
  17/* Size of malloc() pool */
  18#define CONFIG_SYS_MALLOC_LEN           (10 * 1024 * 1024)
  19
  20#define CONFIG_MISC_INIT_R
  21#define CONFIG_USBD_HS
  22#define CONFIG_USB_ETHER
  23#define CONFIG_USB_ETH_CDC
  24#define CONFIG_NETCONSOLE
  25
  26#define CONFIG_MXC_UART
  27#define CONFIG_MXC_UART_BASE           UART2_BASE
  28
  29#ifdef CONFIG_CMD_SF
  30#define CONFIG_MXC_SPI
  31#define CONFIG_SF_DEFAULT_BUS  0
  32#define CONFIG_SF_DEFAULT_CS   0
  33#define CONFIG_SF_DEFAULT_SPEED 25000000
  34#define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0)
  35#endif
  36
  37/* I2C Configs */
  38#define CONFIG_SYS_I2C
  39#define CONFIG_SYS_I2C_MXC
  40#define CONFIG_SYS_I2C_MXC_I2C1         /* enable I2C bus 1 */
  41#define CONFIG_SYS_I2C_MXC_I2C2         /* enable I2C bus 2 */
  42#define CONFIG_SYS_I2C_MXC_I2C3         /* enable I2C bus 3 */
  43#define CONFIG_SYS_I2C_SPEED            100000
  44#define CONFIG_I2C_EDID
  45
  46/* MMC Configs */
  47#define CONFIG_SYS_FSL_ESDHC_ADDR      0
  48#define CONFIG_SYS_FSL_USDHC_NUM       2
  49
  50/*
  51 * SATA Configs
  52 */
  53#ifdef CONFIG_CMD_SATA
  54#define CONFIG_DWC_AHSATA
  55#define CONFIG_SYS_SATA_MAX_DEVICE      1
  56#define CONFIG_DWC_AHSATA_PORT_ID       0
  57#define CONFIG_DWC_AHSATA_BASE_ADDR     SATA_ARB_BASE_ADDR
  58#define CONFIG_LBA48
  59#define CONFIG_LIBATA
  60#endif
  61
  62#define CONFIG_FEC_MXC
  63#define CONFIG_MII
  64#define IMX_FEC_BASE                    ENET_BASE_ADDR
  65#define CONFIG_FEC_XCV_TYPE             RGMII
  66#define CONFIG_ETHPRIME                 "FEC"
  67#define CONFIG_FEC_MXC_PHYADDR          6
  68
  69/* USB Configs */
  70#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
  71#define CONFIG_EHCI_HCD_INIT_AFTER_RESET        /* For OTG port */
  72#define CONFIG_MXC_USB_PORTSC   (PORT_PTS_UTMI | PORT_PTS_PTW)
  73#define CONFIG_MXC_USB_FLAGS    0
  74
  75/* Framebuffer and LCD */
  76#define CONFIG_VIDEO_IPUV3
  77#define CONFIG_VIDEO_BMP_RLE8
  78#define CONFIG_SPLASH_SCREEN
  79#define CONFIG_SPLASH_SCREEN_ALIGN
  80#define CONFIG_VIDEO_BMP_GZIP
  81#define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE (6 * 1024 * 1024)
  82#define CONFIG_BMP_16BPP
  83#define CONFIG_IPUV3_CLK 260000000
  84#define CONFIG_IMX_HDMI
  85#define CONFIG_IMX_VIDEO_SKIP
  86
  87#define CONFIG_PREBOOT                 ""
  88
  89#ifdef CONFIG_CMD_SATA
  90#define CONFIG_DRIVE_SATA "sata "
  91#else
  92#define CONFIG_DRIVE_SATA
  93#endif
  94
  95#ifdef CONFIG_CMD_MMC
  96#define CONFIG_DRIVE_MMC "mmc "
  97#else
  98#define CONFIG_DRIVE_MMC
  99#endif
 100
 101#ifdef CONFIG_USB_STORAGE
 102#define CONFIG_DRIVE_USB "usb "
 103#else
 104#define CONFIG_DRIVE_USB
 105#endif
 106
 107#define CONFIG_DRIVE_TYPES CONFIG_DRIVE_SATA CONFIG_DRIVE_MMC CONFIG_DRIVE_USB
 108#define CONFIG_UMSDEVS CONFIG_DRIVE_SATA CONFIG_DRIVE_MMC
 109
 110#if defined(CONFIG_SABRELITE)
 111#define CONFIG_EXTRA_ENV_SETTINGS \
 112        "script=boot.scr\0" \
 113        "uimage=uImage\0" \
 114        "console=ttymxc1\0" \
 115        "fdt_high=0xffffffff\0" \
 116        "initrd_high=0xffffffff\0" \
 117        "fdt_file=imx6q-sabrelite.dtb\0" \
 118        "fdt_addr=0x18000000\0" \
 119        "boot_fdt=try\0" \
 120        "ip_dyn=yes\0" \
 121        "usb_pgood_delay=2000\0" \
 122        "mmcdevs=0 1\0" \
 123        "mmcpart=1\0" \
 124        "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
 125        "mmcargs=setenv bootargs console=${console},${baudrate} " \
 126                "root=${mmcroot}\0" \
 127        "loadbootscript=" \
 128                "load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
 129        "bootscript=echo Running bootscript from mmc ...; " \
 130                "source\0" \
 131        "loaduimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
 132        "loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
 133        "mmcboot=echo Booting from mmc ...; " \
 134                "run mmcargs; " \
 135                "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
 136                        "if run loadfdt; then " \
 137                                "bootm ${loadaddr} - ${fdt_addr}; " \
 138                        "else " \
 139                                "if test ${boot_fdt} = try; then " \
 140                                        "bootm; " \
 141                                "else " \
 142                                        "echo WARN: Cannot load the DT; " \
 143                                "fi; " \
 144                        "fi; " \
 145                "else " \
 146                        "bootm; " \
 147                "fi;\0" \
 148        "netargs=setenv bootargs console=${console},${baudrate} " \
 149                "root=/dev/nfs " \
 150        "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
 151                "netboot=echo Booting from net ...; " \
 152                "run netargs; " \
 153                "if test ${ip_dyn} = yes; then " \
 154                        "setenv get_cmd dhcp; " \
 155                "else " \
 156                        "setenv get_cmd tftp; " \
 157                "fi; " \
 158                "${get_cmd} ${uimage}; " \
 159                "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
 160                        "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
 161                                "bootm ${loadaddr} - ${fdt_addr}; " \
 162                        "else " \
 163                                "if test ${boot_fdt} = try; then " \
 164                                        "bootm; " \
 165                                "else " \
 166                                        "echo WARN: Cannot load the DT; " \
 167                                "fi; " \
 168                        "fi; " \
 169                "else " \
 170                        "bootm; " \
 171                "fi;\0"
 172
 173#define CONFIG_BOOTCOMMAND \
 174        "for mmcdev in ${mmcdevs}; do " \
 175                "mmc dev ${mmcdev}; " \
 176                "if mmc rescan; then " \
 177                        "if run loadbootscript; then " \
 178                                "run bootscript; " \
 179                        "else " \
 180                                "if run loaduimage; then " \
 181                                        "run mmcboot; " \
 182                                "fi; " \
 183                        "fi; " \
 184                "fi; " \
 185        "done; " \
 186        "run netboot; "
 187#else
 188#define CONFIG_EXTRA_ENV_SETTINGS \
 189        "bootdevs=" CONFIG_DRIVE_TYPES "\0" \
 190        "umsdevs=" CONFIG_UMSDEVS "\0" \
 191        "usb_pgood_delay=2000\0" \
 192        "console=ttymxc1\0" \
 193        "clearenv=if sf probe || sf probe || sf probe 1 ; then " \
 194                "sf erase 0xc0000 0x2000 && " \
 195                "echo restored environment to factory default ; fi\0" \
 196        "bootcmd=for dtype in ${bootdevs}" \
 197                "; do " \
 198                        "if itest.s \"xusb\" == \"x${dtype}\" ; then " \
 199                                "usb start ;" \
 200                        "fi; " \
 201                        "for disk in 0 1 ; do ${dtype} dev ${disk} ;" \
 202                                "load " \
 203                                        "${dtype} ${disk}:1 " \
 204                                        "10008000 " \
 205                                        "/6x_bootscript" \
 206                                        "&& source 10008000 ; " \
 207                        "done ; " \
 208                "done; " \
 209                "setenv stdout serial,vga ; " \
 210                "echo ; echo 6x_bootscript not found ; " \
 211                "echo ; echo serial console at 115200, 8N1 ; echo ; " \
 212                "echo details at http://boundarydevices.com/6q_bootscript ; " \
 213                "setenv stdout serial;" \
 214                "setenv stdin serial,usbkbd;" \
 215                "for dtype in ${umsdevs} ; do " \
 216                        "if itest.s sata == ${dtype}; then " \
 217                                "initcmd='sata init' ;" \
 218                        "else " \
 219                                "initcmd='mmc rescan' ;" \
 220                        "fi; " \
 221                        "for disk in 0 1 ; do " \
 222                                "if $initcmd && $dtype dev $disk ; then " \
 223                                        "setenv stdout serial,vga; " \
 224                                        "echo expose ${dtype} ${disk} " \
 225                                                "over USB; " \
 226                                        "ums 0 $dtype $disk ;" \
 227                                "fi; " \
 228                "       done; " \
 229                "done ;" \
 230                "setenv stdout serial,vga; " \
 231                "echo no block devices found;" \
 232                "\0" \
 233        "initrd_high=0xffffffff\0" \
 234        "upgradeu=for dtype in ${bootdevs}" \
 235                "; do " \
 236                "for disk in 0 1 ; do ${dtype} dev ${disk} ;" \
 237                        "load ${dtype} ${disk}:1 10008000 " \
 238                                "/6x_upgrade " \
 239                                "&& source 10008000 ; " \
 240                "done ; " \
 241        "done\0" \
 242
 243#endif
 244/* Miscellaneous configurable options */
 245#define CONFIG_SYS_MEMTEST_START       0x10000000
 246#define CONFIG_SYS_MEMTEST_END         0x10010000
 247#define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000
 248
 249/* Physical Memory Map */
 250#define CONFIG_NR_DRAM_BANKS           1
 251#define PHYS_SDRAM                     MMDC0_ARB_BASE_ADDR
 252
 253#define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM
 254#define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
 255#define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
 256
 257#define CONFIG_SYS_INIT_SP_OFFSET \
 258        (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
 259#define CONFIG_SYS_INIT_SP_ADDR \
 260        (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 261
 262/* Environment organization */
 263#define CONFIG_ENV_SIZE                 (8 * 1024)
 264
 265#if defined(CONFIG_ENV_IS_IN_MMC)
 266#define CONFIG_ENV_OFFSET               (6 * 64 * 1024)
 267#define CONFIG_SYS_MMC_ENV_DEV          0
 268#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
 269#define CONFIG_ENV_OFFSET               (768 * 1024)
 270#define CONFIG_ENV_SECT_SIZE            (8 * 1024)
 271#define CONFIG_ENV_SPI_BUS              CONFIG_SF_DEFAULT_BUS
 272#define CONFIG_ENV_SPI_CS               CONFIG_SF_DEFAULT_CS
 273#define CONFIG_ENV_SPI_MODE             CONFIG_SF_DEFAULT_MODE
 274#define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
 275#endif
 276
 277#define CONFIG_SYS_ALT_MEMTEST
 278
 279/*
 280 * PCI express
 281 */
 282#ifdef CONFIG_CMD_PCI
 283#define CONFIG_PCI_SCAN_SHOW
 284#define CONFIG_PCIE_IMX
 285#endif
 286
 287#define CONFIG_USB_FUNCTION_MASS_STORAGE
 288
 289#endif         /* __CONFIG_H */
 290