uboot/include/configs/novena.h
<<
>>
Prefs
   1/*
   2 * Configuration settings for the Novena U-Boot.
   3 *
   4 * Copyright (C) 2014 Marek Vasut <marex@denx.de>
   5 *
   6 * SPDX-License-Identifier:     GPL-2.0+
   7 */
   8
   9#ifndef __CONFIG_H
  10#define __CONFIG_H
  11
  12/* System configurations */
  13#define CONFIG_BOARD_EARLY_INIT_F
  14#define CONFIG_BOARD_LATE_INIT
  15#define CONFIG_MISC_INIT_R
  16#define CONFIG_KEYBOARD
  17
  18#include <config_distro_defaults.h>
  19#include "mx6_common.h"
  20
  21/* U-Boot Commands */
  22#define CONFIG_CMD_BMODE
  23#define CONFIG_CMD_EEPROM
  24#define CONFIG_FAT_WRITE
  25#define CONFIG_CMD_PCI
  26#define CONFIG_CMD_SATA
  27#define CONFIG_VIDEO
  28
  29/* U-Boot general configurations */
  30#define CONFIG_VERSION_VARIABLE                 /* U-BOOT version */
  31
  32/* U-Boot environment */
  33#define CONFIG_ENV_SIZE                 (16 * 1024)
  34/*
  35 * Environment is on MMC, starting at offset 512KiB from start of the card.
  36 * Please place first partition at offset 1MiB from the start of the card
  37 * as recommended by GNU/fdisk. See below for details:
  38 * http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/disc-partition-alignment.html
  39 */
  40#ifdef CONFIG_CMD_MMC
  41#define CONFIG_ENV_IS_IN_MMC
  42#define CONFIG_SYS_MMC_ENV_DEV          0
  43#define CONFIG_ENV_OFFSET               (512 * 1024)
  44#define CONFIG_ENV_SIZE_REDUND          CONFIG_ENV_SIZE
  45#define CONFIG_ENV_OFFSET_REDUND        \
  46                (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
  47#else
  48#define CONFIG_ENV_IS_NOWHERE
  49#endif
  50
  51/* Booting Linux */
  52#define CONFIG_BOOTFILE                 "fitImage"
  53#define CONFIG_BOOTARGS                 "console=ttymxc1,115200 "
  54#define CONFIG_BOOTCOMMAND              "run distro_bootcmd ; run net_nfs"
  55#define CONFIG_HOSTNAME                 novena
  56
  57/* Physical Memory Map */
  58#define CONFIG_NR_DRAM_BANKS            1
  59#define PHYS_SDRAM                      MMDC0_ARB_BASE_ADDR
  60#define PHYS_SDRAM_SIZE                 0xF0000000
  61
  62#define CONFIG_SYS_SDRAM_BASE           PHYS_SDRAM
  63#define CONFIG_SYS_INIT_RAM_ADDR        IRAM_BASE_ADDR
  64#define CONFIG_SYS_INIT_RAM_SIZE        IRAM_SIZE
  65
  66#define CONFIG_SYS_INIT_SP_OFFSET \
  67        (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
  68#define CONFIG_SYS_INIT_SP_ADDR \
  69        (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
  70
  71#define CONFIG_SYS_MEMTEST_START        0x10000000
  72#define CONFIG_SYS_MEMTEST_END          0x20000000
  73
  74#define CONFIG_SYS_MALLOC_LEN           (64 * 1024 * 1024)
  75
  76/* SPL */
  77#define CONFIG_SPL_FAT_SUPPORT
  78#define CONFIG_SPL_MMC_SUPPORT
  79#include "imx6_spl.h"                   /* common IMX6 SPL configuration */
  80
  81/* Ethernet Configuration */
  82#ifdef CONFIG_CMD_NET
  83#define CONFIG_FEC_MXC
  84#define CONFIG_MII
  85#define IMX_FEC_BASE                    ENET_BASE_ADDR
  86#define CONFIG_FEC_XCV_TYPE             RGMII
  87#define CONFIG_ETHPRIME                 "FEC"
  88#define CONFIG_FEC_MXC_PHYADDR          0x7
  89#define CONFIG_PHYLIB
  90#define CONFIG_PHY_MICREL
  91#define CONFIG_PHY_MICREL_KSZ9021
  92#define CONFIG_ARP_TIMEOUT              200UL
  93#endif
  94
  95/* I2C */
  96#define CONFIG_SYS_I2C
  97#define CONFIG_SYS_I2C_MXC
  98#define CONFIG_SYS_I2C_MXC_I2C1         /* enable I2C bus 1 */
  99#define CONFIG_SYS_I2C_MXC_I2C2         /* enable I2C bus 2 */
 100#define CONFIG_SYS_I2C_MXC_I2C3         /* enable I2C bus 3 */
 101#define CONFIG_I2C_MULTI_BUS
 102#define CONFIG_I2C_MXC
 103#define CONFIG_SYS_I2C_SPEED            100000
 104#define CONFIG_SYS_SPD_BUS_NUM          0
 105
 106/* I2C EEPROM */
 107#ifdef CONFIG_CMD_EEPROM
 108#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN  2
 109#define CONFIG_SYS_I2C_EEPROM_BUS       2
 110#endif
 111
 112/* MMC Configs */
 113#define CONFIG_SYS_FSL_ESDHC_ADDR       0
 114#define CONFIG_SYS_FSL_USDHC_NUM        2
 115
 116/* PCI express */
 117#ifdef CONFIG_CMD_PCI
 118#define CONFIG_PCI
 119#define CONFIG_PCI_PNP
 120#define CONFIG_PCI_SCAN_SHOW
 121#define CONFIG_PCIE_IMX
 122#define CONFIG_PCIE_IMX_PERST_GPIO      IMX_GPIO_NR(3, 29)
 123#define CONFIG_PCIE_IMX_POWER_GPIO      IMX_GPIO_NR(7, 12)
 124#endif
 125
 126/* PMIC */
 127#define CONFIG_POWER
 128#define CONFIG_POWER_I2C
 129#define CONFIG_POWER_PFUZE100
 130#define CONFIG_POWER_PFUZE100_I2C_ADDR  0x08
 131
 132/* SATA Configs */
 133#ifdef CONFIG_CMD_SATA
 134#define CONFIG_DWC_AHSATA
 135#define CONFIG_SYS_SATA_MAX_DEVICE      1
 136#define CONFIG_DWC_AHSATA_PORT_ID       0
 137#define CONFIG_DWC_AHSATA_BASE_ADDR     SATA_ARB_BASE_ADDR
 138#define CONFIG_LBA48
 139#define CONFIG_LIBATA
 140#endif
 141
 142/* UART */
 143#define CONFIG_MXC_UART
 144#define CONFIG_MXC_UART_BASE            UART2_BASE
 145
 146/* USB Configs */
 147#ifdef CONFIG_CMD_USB
 148#define CONFIG_USB_EHCI
 149#define CONFIG_USB_EHCI_MX6
 150#define CONFIG_USB_STORAGE
 151#define CONFIG_USB_KEYBOARD
 152#define CONFIG_SYS_STDIO_DEREGISTER
 153#define CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP
 154#define CONFIG_USB_HOST_ETHER
 155#define CONFIG_USB_ETHER_ASIX
 156#define CONFIG_USB_ETHER_SMSC95XX
 157#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
 158#define CONFIG_MXC_USB_PORTSC           (PORT_PTS_UTMI | PORT_PTS_PTW)
 159#define CONFIG_MXC_USB_FLAGS            0
 160/* Gadget part */
 161#define CONFIG_USBD_HS
 162#define CONFIG_USB_ETHER
 163#define CONFIG_USB_ETH_CDC
 164#define CONFIG_NETCONSOLE
 165#endif
 166
 167/* Video output */
 168#ifdef CONFIG_VIDEO
 169#define CONFIG_VIDEO_IPUV3
 170#define CONFIG_CFB_CONSOLE
 171#define CONFIG_VGA_AS_SINGLE_DEVICE
 172#define CONFIG_SYS_CONSOLE_IS_IN_ENV
 173#define CONFIG_VIDEO_BMP_RLE8
 174#define CONFIG_SPLASH_SCREEN
 175#define CONFIG_BMP_16BPP
 176#define CONFIG_VIDEO_LOGO
 177#define CONFIG_IPUV3_CLK                260000000
 178#define CONFIG_CMD_HDMIDETECT
 179#define CONFIG_CONSOLE_MUX
 180#define CONFIG_IMX_HDMI
 181#define CONFIG_IMX_VIDEO_SKIP
 182#endif
 183
 184/* Extra U-Boot environment. */
 185#ifndef CONFIG_SPL_BUILD
 186#define CONFIG_EXTRA_ENV_SETTINGS                                       \
 187        "fdt_high=0xffffffff\0"                                         \
 188        "initrd_high=0xffffffff\0"                                      \
 189        "consdev=ttymxc1\0"                                             \
 190        "baudrate=115200\0"                                             \
 191        "bootdev=/dev/mmcblk0p1\0"                                      \
 192        "rootdev=/dev/mmcblk0p2\0"                                      \
 193        "netdev=eth0\0"                                                 \
 194        "kernel_addr_r="__stringify(CONFIG_LOADADDR)"\0"                \
 195        "pxefile_addr_r="__stringify(CONFIG_LOADADDR)"\0"               \
 196        "scriptaddr="__stringify(CONFIG_LOADADDR)"\0"                   \
 197        "ramdisk_addr_r=0x28000000\0"                                   \
 198        "fdt_addr_r=0x18000000\0"                                       \
 199        "fdtfile=imx6q-novena.dtb\0"                                    \
 200        "addcons="                                                      \
 201                "setenv bootargs ${bootargs} "                          \
 202                "console=${consdev},${baudrate}\0"                      \
 203        "addip="                                                        \
 204                "setenv bootargs ${bootargs} "                          \
 205                "ip=${ipaddr}:${serverip}:${gatewayip}:"                \
 206                        "${netmask}:${hostname}:${netdev}:off\0"        \
 207        "addmisc="                                                      \
 208                "setenv bootargs ${bootargs} ${miscargs}\0"             \
 209        "addargs=run addcons addmisc\0"                                 \
 210        "mmcload="                                                      \
 211                "mmc rescan ; "                                         \
 212                "ext4load mmc 0:1 ${kernel_addr_r} ${bootfile}\0"       \
 213        "netload="                                                      \
 214                "tftp ${kernel_addr_r} ${hostname}/${bootfile}\0"       \
 215        "miscargs=nohlt panic=1\0"                                      \
 216        "mmcargs=setenv bootargs root=${rootdev} rw rootwait\0"         \
 217        "nfsargs="                                                      \
 218                "setenv bootargs root=/dev/nfs rw "                     \
 219                        "nfsroot=${serverip}:${rootpath},v3,tcp\0"      \
 220        "mmc_mmc="                                                      \
 221                "run mmcload mmcargs addargs ; "                        \
 222                "bootm ${kernel_addr_r}\0"                              \
 223        "mmc_nfs="                                                      \
 224                "run mmcload nfsargs addip addargs ; "                  \
 225                "bootm ${kernel_addr_r}\0"                              \
 226        "net_mmc="                                                      \
 227                "run netload mmcargs addargs ; "                        \
 228                "bootm ${kernel_addr_r}\0"                              \
 229        "net_nfs="                                                      \
 230                "run netload nfsargs addip addargs ; "                  \
 231                "bootm ${kernel_addr_r}\0"                              \
 232        "update_sd_spl_filename=SPL\0"                                  \
 233        "update_sd_uboot_filename=u-boot.img\0"                         \
 234        "update_sd_firmware="   /* Update the SD firmware partition */  \
 235                "if mmc rescan ; then "                                 \
 236                "if dhcp ${update_sd_spl_filename} ; then "             \
 237                "mmc write ${loadaddr} 2 0x200 ; "                      \
 238                "fi ; "                                                 \
 239                "if dhcp ${update_sd_uboot_filename} ; then "           \
 240                "fatwrite mmc 0:1 ${loadaddr} u-boot.img ${filesize} ; "\
 241                "fi ; "                                                 \
 242                "fi\0"                                                  \
 243        BOOTENV
 244
 245#define BOOT_TARGET_DEVICES(func) \
 246        func(MMC, mmc, 0) \
 247        func(USB, usb, 0) \
 248        func(SATA, sata, 0) \
 249        func(PXE, pxe, na) \
 250        func(DHCP, dhcp, na)
 251
 252#include <config_distro_bootcmd.h>
 253
 254#else
 255#define CONFIG_EXTRA_ENV_SETTINGS
 256#endif /* CONFIG_SPL_BUILD */
 257
 258#endif                          /* __CONFIG_H */
 259