14579dc37SOtavio Salvador /* 24579dc37SOtavio Salvador * Copyright (C) 2014 O.S. Systems Software LTDA. 34579dc37SOtavio Salvador * Copyright (C) 2014 Kynetics LLC. 44579dc37SOtavio Salvador * Copyright (C) 2014 Revolution Robotics, Inc. 54579dc37SOtavio Salvador * 64579dc37SOtavio Salvador * Author: Otavio Salvador <otavio@ossystems.com.br> 74579dc37SOtavio Salvador * 84579dc37SOtavio Salvador * Configuration settings for the WaRP Board 94579dc37SOtavio Salvador * 104579dc37SOtavio Salvador * SPDX-License-Identifier: GPL-2.0+ 114579dc37SOtavio Salvador */ 124579dc37SOtavio Salvador 134579dc37SOtavio Salvador #ifndef __CONFIG_H 144579dc37SOtavio Salvador #define __CONFIG_H 154579dc37SOtavio Salvador 164579dc37SOtavio Salvador #include "mx6_common.h" 174579dc37SOtavio Salvador 184579dc37SOtavio Salvador /* Size of malloc() pool */ 1997ee4590SFabio Estevam #define CONFIG_SYS_MALLOC_LEN (35 * SZ_1M) /* Increase due to DFU */ 204579dc37SOtavio Salvador 214579dc37SOtavio Salvador #define CONFIG_BOARD_EARLY_INIT_F 224579dc37SOtavio Salvador #define CONFIG_BOARD_LATE_INIT 234579dc37SOtavio Salvador 244579dc37SOtavio Salvador #define CONFIG_MXC_UART 254579dc37SOtavio Salvador #define CONFIG_MXC_UART_BASE UART1_IPS_BASE_ADDR 264579dc37SOtavio Salvador 274579dc37SOtavio Salvador /* MMC Configs */ 28b4598033SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR USDHC2_BASE_ADDR 294579dc37SOtavio Salvador #define CONFIG_SYS_FSL_ESDHC_FORCE_VSELECT 30ed914302SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_HAS_DDR_MODE 31e6434d7eSFabio Estevam #define CONFIG_SUPPORT_EMMC_BOOT 324579dc37SOtavio Salvador 334579dc37SOtavio Salvador /* Watchdog */ 344579dc37SOtavio Salvador #define CONFIG_HW_WATCHDOG 354579dc37SOtavio Salvador #define CONFIG_IMX_WATCHDOG 364579dc37SOtavio Salvador #define CONFIG_WATCHDOG_TIMEOUT_MSECS 30000 /* 30s */ 374579dc37SOtavio Salvador 384579dc37SOtavio Salvador #define CONFIG_SYS_MEMTEST_START 0x80000000 394579dc37SOtavio Salvador #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + SZ_256M) 404579dc37SOtavio Salvador 414579dc37SOtavio Salvador #define CONFIG_STACKSIZE SZ_128K 424579dc37SOtavio Salvador 434579dc37SOtavio Salvador /* Physical Memory Map */ 444579dc37SOtavio Salvador #define CONFIG_NR_DRAM_BANKS 1 454579dc37SOtavio Salvador #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 464579dc37SOtavio Salvador #define PHYS_SDRAM_SIZE SZ_512M 474579dc37SOtavio Salvador 484579dc37SOtavio Salvador #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 494579dc37SOtavio Salvador #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 504579dc37SOtavio Salvador #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 514579dc37SOtavio Salvador 524579dc37SOtavio Salvador #define CONFIG_SYS_INIT_SP_OFFSET \ 534579dc37SOtavio Salvador (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 544579dc37SOtavio Salvador #define CONFIG_SYS_INIT_SP_ADDR \ 554579dc37SOtavio Salvador (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 564579dc37SOtavio Salvador 574579dc37SOtavio Salvador #define CONFIG_ENV_OFFSET (6 * SZ_64K) 584579dc37SOtavio Salvador #define CONFIG_ENV_SIZE SZ_8K 594579dc37SOtavio Salvador #define CONFIG_ENV_IS_IN_MMC 604579dc37SOtavio Salvador #define CONFIG_SYS_MMC_ENV_DEV 0 614579dc37SOtavio Salvador 624579dc37SOtavio Salvador /* VDD voltage 1.65 - 1.95 */ 634579dc37SOtavio Salvador #define CONFIG_SYS_SD_VOLTAGE 0x00000080 644579dc37SOtavio Salvador 6509ac7b59SFabio Estevam /* USB Configs */ 6609ac7b59SFabio Estevam #define CONFIG_CMD_USB 6709ac7b59SFabio Estevam #ifdef CONFIG_CMD_USB 6809ac7b59SFabio Estevam #define CONFIG_USB_EHCI 6909ac7b59SFabio Estevam #define CONFIG_USB_EHCI_MX6 7009ac7b59SFabio Estevam #define CONFIG_USB_STORAGE 7109ac7b59SFabio Estevam #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 7209ac7b59SFabio Estevam #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) 7309ac7b59SFabio Estevam #define CONFIG_MXC_USB_FLAGS 0 7409ac7b59SFabio Estevam #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 /* Only OTG2 port enabled */ 7509ac7b59SFabio Estevam #endif 7609ac7b59SFabio Estevam 7709ac7b59SFabio Estevam #define CONFIG_CI_UDC 7809ac7b59SFabio Estevam #define CONFIG_USBD_HS 7909ac7b59SFabio Estevam #define CONFIG_USB_GADGET_DUALSPEED 8009ac7b59SFabio Estevam 8109ac7b59SFabio Estevam #define CONFIG_USB_GADGET 8209ac7b59SFabio Estevam #define CONFIG_CMD_USB_MASS_STORAGE 83*01acd6abSPaul Kocialkowski #define CONFIG_USB_FUNCTION_MASS_STORAGE 84*01acd6abSPaul Kocialkowski #define CONFIG_USB_GADGET_DOWNLOAD 8509ac7b59SFabio Estevam #define CONFIG_USB_GADGET_VBUS_DRAW 2 8609ac7b59SFabio Estevam 8709ac7b59SFabio Estevam #define CONFIG_G_DNL_VENDOR_NUM 0x0525 8809ac7b59SFabio Estevam #define CONFIG_G_DNL_PRODUCT_NUM 0xa4a5 8909ac7b59SFabio Estevam #define CONFIG_G_DNL_MANUFACTURER "FSL" 9009ac7b59SFabio Estevam 9197ee4590SFabio Estevam #define CONFIG_CMD_DFU 92*01acd6abSPaul Kocialkowski #define CONFIG_USB_FUNCTION_DFU 9397ee4590SFabio Estevam #define CONFIG_DFU_MMC 94825adb99SFabio Estevam #define CONFIG_SYS_DFU_DATA_BUF_SIZE SZ_16M 9597ee4590SFabio Estevam #define DFU_DEFAULT_POLL_TIMEOUT 300 9697ee4590SFabio Estevam 97fdf71898SFabio Estevam /* Fuses */ 98fdf71898SFabio Estevam #define CONFIG_CMD_FUSE 99fdf71898SFabio Estevam #define CONFIG_MXC_OCOTP 100fdf71898SFabio Estevam 1014579dc37SOtavio Salvador #define CONFIG_EXTRA_ENV_SETTINGS \ 1024579dc37SOtavio Salvador "script=boot.scr\0" \ 1034579dc37SOtavio Salvador "image=zImage\0" \ 1044579dc37SOtavio Salvador "console=ttymxc0\0" \ 1054579dc37SOtavio Salvador "fdt_high=0xffffffff\0" \ 1064579dc37SOtavio Salvador "initrd_high=0xffffffff\0" \ 1074579dc37SOtavio Salvador "fdt_file=imx6sl-warp.dtb\0" \ 1084579dc37SOtavio Salvador "fdt_addr=0x88000000\0" \ 1094579dc37SOtavio Salvador "initrd_addr=0x83800000\0" \ 1104579dc37SOtavio Salvador "boot_fdt=try\0" \ 1114579dc37SOtavio Salvador "ip_dyn=yes\0" \ 1124579dc37SOtavio Salvador "mmcdev=0\0" \ 1134579dc37SOtavio Salvador "mmcpart=1\0" \ 1144579dc37SOtavio Salvador "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \ 11597ee4590SFabio Estevam "dfu_alt_info=boot raw 0x2 0x400 mmcpart 1\0" \ 1164579dc37SOtavio Salvador "mmcargs=setenv bootargs console=${console},${baudrate} " \ 1174579dc37SOtavio Salvador "root=${mmcroot}\0" \ 1184579dc37SOtavio Salvador "loadbootscript=" \ 1194579dc37SOtavio Salvador "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 1204579dc37SOtavio Salvador "bootscript=echo Running bootscript from mmc ...; " \ 1214579dc37SOtavio Salvador "source\0" \ 1224579dc37SOtavio Salvador "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ 1234579dc37SOtavio Salvador "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 1244579dc37SOtavio Salvador "mmcboot=echo Booting from mmc ...; " \ 1254579dc37SOtavio Salvador "run mmcargs; " \ 1264579dc37SOtavio Salvador "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 1274579dc37SOtavio Salvador "if run loadfdt; then " \ 1284579dc37SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 1294579dc37SOtavio Salvador "else " \ 1304579dc37SOtavio Salvador "if test ${boot_fdt} = try; then " \ 1314579dc37SOtavio Salvador "bootz; " \ 1324579dc37SOtavio Salvador "else " \ 1334579dc37SOtavio Salvador "echo WARN: Cannot load the DT; " \ 1344579dc37SOtavio Salvador "fi; " \ 1354579dc37SOtavio Salvador "fi; " \ 1364579dc37SOtavio Salvador "else " \ 1374579dc37SOtavio Salvador "bootz; " \ 1384579dc37SOtavio Salvador "fi;\0" \ 1394579dc37SOtavio Salvador "netargs=setenv bootargs console=${console},${baudrate} " \ 1404579dc37SOtavio Salvador "root=/dev/nfs " \ 1414579dc37SOtavio Salvador "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 1424579dc37SOtavio Salvador "netboot=echo Booting from net ...; " \ 1434579dc37SOtavio Salvador "run netargs; " \ 1444579dc37SOtavio Salvador "if test ${ip_dyn} = yes; then " \ 1454579dc37SOtavio Salvador "setenv get_cmd dhcp; " \ 1464579dc37SOtavio Salvador "else " \ 1474579dc37SOtavio Salvador "setenv get_cmd tftp; " \ 1484579dc37SOtavio Salvador "fi; " \ 1494579dc37SOtavio Salvador "${get_cmd} ${image}; " \ 1504579dc37SOtavio Salvador "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 1514579dc37SOtavio Salvador "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 1524579dc37SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 1534579dc37SOtavio Salvador "else " \ 1544579dc37SOtavio Salvador "if test ${boot_fdt} = try; then " \ 1554579dc37SOtavio Salvador "bootz; " \ 1564579dc37SOtavio Salvador "else " \ 1574579dc37SOtavio Salvador "echo WARN: Cannot load the DT; " \ 1584579dc37SOtavio Salvador "fi; " \ 1594579dc37SOtavio Salvador "fi; " \ 1604579dc37SOtavio Salvador "else " \ 1614579dc37SOtavio Salvador "bootz; " \ 1624579dc37SOtavio Salvador "fi;\0" 1634579dc37SOtavio Salvador 1644579dc37SOtavio Salvador #define CONFIG_BOOTCOMMAND \ 1654579dc37SOtavio Salvador "mmc dev ${mmcdev};" \ 1664579dc37SOtavio Salvador "mmc dev ${mmcdev}; if mmc rescan; then " \ 1674579dc37SOtavio Salvador "if run loadbootscript; then " \ 1684579dc37SOtavio Salvador "run bootscript; " \ 1694579dc37SOtavio Salvador "else " \ 1704579dc37SOtavio Salvador "if run loadimage; then " \ 1714579dc37SOtavio Salvador "run mmcboot; " \ 1724579dc37SOtavio Salvador "else run netboot; " \ 1734579dc37SOtavio Salvador "fi; " \ 1744579dc37SOtavio Salvador "fi; " \ 1754579dc37SOtavio Salvador "else run netboot; fi" 1764579dc37SOtavio Salvador 1774579dc37SOtavio Salvador #endif /* __CONFIG_H */ 178