diff options
author | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2015-04-28 02:07:36 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2015-04-28 02:07:36 +0200 |
commit | 92d747bf338ceb8d6dbdd3e5e5f7f72226ce0792 (patch) | |
tree | fa0799533bc44115939977c52973254f514d49ba /include | |
parent | dcca76ea36fc778fa750473aee09fa0297dc5e2b (diff) |
colibri_t20: migrate
Migrate Colibri T20 to U-Boot 2015.04.
Diffstat (limited to 'include')
-rw-r--r-- | include/configs/colibri_t20.h | 154 |
1 files changed, 148 insertions, 6 deletions
diff --git a/include/configs/colibri_t20.h b/include/configs/colibri_t20.h index 5ce930cdbf8..475edee6fde 100644 --- a/include/configs/colibri_t20.h +++ b/include/configs/colibri_t20.h @@ -1,5 +1,7 @@ /* - * Copyright (C) 2012 Lucas Stach + * Copyright (c) 2011-2015 Toradex, Inc. + * + * Configuration settings for the Toradex Colibri T20 modules. * * SPDX-License-Identifier: GPL-2.0+ */ @@ -9,9 +11,14 @@ #include "tegra20-common.h" +#undef CONFIG_SYS_DCACHE_OFF /* breaks L4T kernel boot */ +#define CONFIG_ARCH_MISC_INIT + /* High-level configuration options */ #define V_PROMPT "Colibri T20 # " -#define CONFIG_TEGRA_BOARD_STRING "Toradex Colibri T20" +#define CONFIG_CUSTOM_BOARDINFO /* not from device-tree model node */ +#undef CONFIG_DISPLAY_BOARDINFO +#define CONFIG_DISPLAY_BOARDINFO_LATE /* Board-specific serial config */ #define CONFIG_SERIAL_MULTI @@ -21,6 +28,15 @@ #define CONFIG_MACH_TYPE MACH_TYPE_COLIBRI_T20 +#define CONFIG_INITRD_TAG +#define CONFIG_REVISION_TAG +#define CONFIG_SERIAL_TAG + +/* Make the HW version stuff available in U-Boot env */ +#define CONFIG_VERSION_VARIABLE /* ver environment variable */ +#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +#define CONFIG_CMD_ASKENV + /* I2C */ #define CONFIG_SYS_I2C_TEGRA #define CONFIG_CMD_I2C @@ -31,6 +47,20 @@ #define CONFIG_TEGRA_MMC #define CONFIG_CMD_MMC +/* USB client support */ +#define CONFIG_TRDX_VID 0x1B67 +/* TBD */ +#define CONFIG_TRDX_PID_COLIBRI_T20_256 0x0020 +#define CONFIG_TRDX_PID_COLIBRI_T20_512 0x0021 +#define CONFIG_TRDX_PID_COLIBRI_T20_256_IT 0x0022 +#define CONFIG_TRDX_PID_COLIBRI_T20_512_IT 0x0023 +#define CONFIG_G_DNL_MANUFACTURER "Toradex" +#define CONFIG_G_DNL_VENDOR_NUM CONFIG_TRDX_VID +#define CONFIG_G_DNL_PRODUCT_NUM CONFIG_TRDX_PID_COLIBRI_T20_256 + +/* USB DFU */ +#define CONFIG_DFU_NAND + /* USB host support */ #define CONFIG_USB_EHCI #define CONFIG_USB_EHCI_TEGRA @@ -61,13 +91,34 @@ /* NAND support */ #define CONFIG_CMD_NAND #define CONFIG_TEGRA_NAND -#define CONFIG_SYS_MAX_NAND_DEVICE 1 +#define CONFIG_SYS_MAX_NAND_DEVICE 1 +#define CONFIG_SYS_NAND_ONFI_DETECTION + +/* Dynamic MTD partition support */ +#define CONFIG_CMD_MTDPARTS /* Enable 'mtdparts' command line support */ +#define CONFIG_MTD_PARTITIONS +#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ +#define MTDIDS_DEFAULT "nand0=tegra_nand" +#define MTDPARTS_DEFAULT "mtdparts=tegra_nand:" \ + "2m(u-boot)ro," \ + "512k(cfgblock)ro," \ + "512k(u-boot-env)," \ + "-(ubi)" + +#undef CONFIG_CMD_IMLS /* Environment in NAND, 64K is a bit excessive but erase block is 512K anyway */ #define CONFIG_ENV_IS_IN_NAND -#define CONFIG_ENV_OFFSET (SZ_2M) -#undef CONFIG_ENV_SIZE /* undef size from tegra20-common.h */ -#define CONFIG_ENV_SIZE (SZ_64K) +#define CONFIG_ENV_OFFSET (SZ_2M + SZ_512K) +#undef CONFIG_ENV_SIZE /* undef size from tegra20-common.h */ +#define CONFIG_ENV_SIZE (SZ_64K) + +#define CONFIG_RBTREE +#define CONFIG_LZO +#define CONFIG_CMD_BOOTZ +#define CONFIG_CMD_UBI +#define CONFIG_MTD_UBI_FASTMAP +#define CONFIG_CMD_UBIFS /* increases size by almost 60 KB */ /* Debug commands */ #define CONFIG_CMD_BDI @@ -77,6 +128,93 @@ #define CONFIG_CMD_SETEXPR #define CONFIG_FAT_WRITE +#undef CONFIG_BOOTDELAY +#define CONFIG_BOOTDELAY 1 +#undef CONFIG_IPADDR +#define CONFIG_IPADDR 192.168.10.2 +#define CONFIG_NETMASK 255.255.255.0 +#undef CONFIG_SERVERIP +#define CONFIG_SERVERIP 192.168.10.1 + +#define CONFIG_BOOTCOMMAND \ + "run ubiboot; echo; echo ubiboot failed; " \ + "run sdboot; echo; echo sdboot failed; " \ + "run usbboot; echo; echo usbboot failed; " \ + "run nfsboot; echo; echo nfsboot failed" + +#define DFU_ALT_NAND_INFO "u-boot part 0,0;ubi part 0,3" + +#define NFS_BOOTCMD \ + "nfsargs=ip=:::::eth0:on root=/dev/nfs rw netdevwait\0" \ + "nfsboot=usb start; run setup; setenv bootargs ${defargs} ${mtdparts}" \ + " ${nfsargs} ${setupargs} ${vidargs}; echo Booting via DHCP/" \ + "TFTP/NFS...; run nfsdtbload; dhcp ${kernel_addr_r} " \ + "&& bootz ${kernel_addr_r} - ${dtbparam}\0" \ + "nfsdtbload=setenv dtbparam; tftp ${fdt_addr_r} " \ + "${soc}-colibri-${fdt_board}.dtb " \ + "&& setenv dtbparam ${fdt_addr_r}\0" + +#define SD_BOOTCMD \ + "sdargs=ip=off root=/dev/mmcblk0p2 rw,noatime rootfstype=ext3 " \ + "rootwait\0" \ + "sdboot=run setup; setenv bootargs ${defargs} ${mtdparts} ${sdargs} " \ + "${setupargs} ${vidargs}; echo Booting from SD card...; " \ + "run sddtbload; load mmc 1:1 ${kernel_addr_r} ${boot_file} " \ + "&& bootz ${kernel_addr_r} - ${dtbparam}\0" \ + "sddtbload=setenv dtbparam; load mmc 1:1 ${fdt_addr_r} " \ + "${soc}-colibri-${fdt_board}.dtb " \ + "&& setenv dtbparam ${fdt_addr_r}\0" + +#define UBI_BOOTCMD \ + "ubiargs=ubi.mtd=ubi root=ubi0:rootfs rootfstype=ubifs " \ + "ubi.fm_autoconvert=1\0" \ + "ubiboot=run setup; setenv bootargs ${defargs} ${ubiargs} ${mtdparts}" \ + " ${setupargs} ${vidargs}; echo Booting from NAND...; " \ + "ubi part ubi && ubifsmount ubi0:rootfs && run ubidtbload; " \ + "ubifsload ${kernel_addr_r} /boot/${boot_file} && " \ + "bootz ${kernel_addr_r} - ${dtbparam}\0" \ + "ubidtbload=setenv dtbparam; ubifsload ${fdt_addr_r} " \ + "/boot/${soc}-colibri-${fdt_board}.dtb && " \ + "setenv dtbparam ${fdt_addr_r}\0" + +#define USB_BOOTCMD \ + "usbargs=ip=off root=/dev/sda2 rw,noatime rootfstype=ext3 " \ + "rootwait\0" \ + "usbboot=run setup; setenv bootargs ${defargs} ${mtdparts} " \ + "${setupargs} ${usbargs} ${vidargs}; echo Booting from USB " \ + "stick...; usb start && run usbdtbload; load usb 0:1 " \ + "${kernel_addr_r} ${boot_file} && " \ + "bootz ${kernel_addr_r} - ${dtbparam}\0" \ + "usbdtbload=setenv dtbparam; load usb 0:1 ${fdt_addr_r} " \ + "${soc}-colibri-${fdt_board}.dtb " \ + "&& setenv dtbparam ${fdt_addr_r}\0" + +#define BOARD_EXTRA_ENV_SETTINGS \ + "boot_file=zImage\0" \ + "console=ttyS0\0" \ + "defargs=vmalloc=128M usb_high_speed=1\0" \ + "dfu_alt_info=" DFU_ALT_NAND_INFO "\0" \ + "fdt_board=eval-v3\0" \ + "mtdparts=" MTDPARTS_DEFAULT "\0" \ + NFS_BOOTCMD \ + SD_BOOTCMD \ + "setethupdate=tftpboot ${kernel_addr_r} flash_eth.img\0" \ + "setsdupdate=setenv interface mmc; setenv drive 0; mmc rescan; " \ + "load ${interface} ${drive}:1 ${kernel_addr_r} " \ + "flash_blk.img\0" \ + "setup=setenv setupargs asix_mac=${ethaddr} " \ + "consoleblank=0 no_console_suspend=1 console=tty1 " \ + "console=${console},${baudrate}n8 debug_uartport=lsport,0 " \ + "${memargs}\0" \ + "setusbupdate=usb start && setenv interface usb; setenv drive 0; " \ + "load ${interface} ${drive}:1 ${kernel_addr_r} " \ + "flash_blk.img\0" \ + "setupdate=run setsdupdate || run setusbupdate || run setethupdate &&" \ + " source ${loadaddr}\0" \ + UBI_BOOTCMD \ + USB_BOOTCMD \ + "vidargs=video=tegrafb0:640x480-16@60\0" + /* Increase console I/O buffer size */ #undef CONFIG_SYS_CBSIZE #define CONFIG_SYS_CBSIZE 1024 @@ -92,6 +230,10 @@ #undef CONFIG_SYS_MAXARGS #define CONFIG_SYS_MAXARGS 32 +#define CONFIG_CMD_TIME +#define CONFIG_CMD_MEMTEST +#define CONFIG_SYS_ALT_MEMTEST + #include "tegra-common-usb-gadget.h" #include "tegra-common-post.h" |