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 <asm/arch/imx-regs.h> 174579dc37SOtavio Salvador #include <linux/sizes.h> 184579dc37SOtavio Salvador #include "mx6_common.h" 194579dc37SOtavio Salvador 204579dc37SOtavio Salvador #define CONFIG_MX6 214579dc37SOtavio Salvador #define CONFIG_DISPLAY_CPUINFO 224579dc37SOtavio Salvador #define CONFIG_DISPLAY_BOARDINFO 234579dc37SOtavio Salvador #define CONFIG_SYS_GENERIC_BOARD 244579dc37SOtavio Salvador 254579dc37SOtavio Salvador #define CONFIG_CMDLINE_TAG 264579dc37SOtavio Salvador #define CONFIG_SETUP_MEMORY_TAGS 274579dc37SOtavio Salvador #define CONFIG_INITRD_TAG 284579dc37SOtavio Salvador #define CONFIG_REVISION_TAG 294579dc37SOtavio Salvador 304579dc37SOtavio Salvador /* Size of malloc() pool */ 31*97ee4590SFabio Estevam #define CONFIG_SYS_MALLOC_LEN (35 * SZ_1M) /* Increase due to DFU */ 324579dc37SOtavio Salvador 334579dc37SOtavio Salvador #define CONFIG_BOARD_EARLY_INIT_F 344579dc37SOtavio Salvador #define CONFIG_BOARD_LATE_INIT 354579dc37SOtavio Salvador #define CONFIG_MXC_GPIO 364579dc37SOtavio Salvador 374579dc37SOtavio Salvador #define CONFIG_MXC_UART 384579dc37SOtavio Salvador #define CONFIG_MXC_UART_BASE UART1_IPS_BASE_ADDR 394579dc37SOtavio Salvador 404579dc37SOtavio Salvador /* MMC Configs */ 414579dc37SOtavio Salvador #define CONFIG_FSL_ESDHC 424579dc37SOtavio Salvador #define CONFIG_FSL_USDHC 434579dc37SOtavio Salvador #define CONFIG_SYS_FSL_ESDHC_ADDR 0 444579dc37SOtavio Salvador #define CONFIG_SYS_FSL_ESDHC_FORCE_VSELECT 454579dc37SOtavio Salvador 464579dc37SOtavio Salvador #define CONFIG_MMC 474579dc37SOtavio Salvador #define CONFIG_CMD_MMC 484579dc37SOtavio Salvador #define CONFIG_GENERIC_MMC 49b16c37e4SFabio Estevam #define CONFIG_BOUNCE_BUFFER 50b16c37e4SFabio Estevam #define CONFIG_CMD_EXT2 51b16c37e4SFabio Estevam #define CONFIG_CMD_EXT4 52b16c37e4SFabio Estevam #define CONFIG_CMD_EXT4_WRITE 534579dc37SOtavio Salvador #define CONFIG_CMD_FAT 544579dc37SOtavio Salvador #define CONFIG_DOS_PARTITION 554579dc37SOtavio Salvador 564579dc37SOtavio Salvador /* allow to overwrite serial and ethaddr */ 574579dc37SOtavio Salvador #define CONFIG_ENV_OVERWRITE 584579dc37SOtavio Salvador #define CONFIG_CONS_INDEX 1 594579dc37SOtavio Salvador #define CONFIG_BAUDRATE 115200 604579dc37SOtavio Salvador 614579dc37SOtavio Salvador /* FLASH and environment organization */ 624579dc37SOtavio Salvador #define CONFIG_SYS_NO_FLASH 634579dc37SOtavio Salvador 644579dc37SOtavio Salvador /* Command definition */ 654579dc37SOtavio Salvador #include <config_cmd_default.h> 664579dc37SOtavio Salvador #undef CONFIG_CMD_NET 674579dc37SOtavio Salvador #undef CONFIG_CMD_NFS 684579dc37SOtavio Salvador 694579dc37SOtavio Salvador #define CONFIG_BOOTDELAY 3 704579dc37SOtavio Salvador 714579dc37SOtavio Salvador #define CONFIG_LOADADDR 0x82000000 724579dc37SOtavio Salvador #define CONFIG_SYS_TEXT_BASE 0x87800000 734579dc37SOtavio Salvador 744579dc37SOtavio Salvador /* Miscellaneous configurable options */ 754579dc37SOtavio Salvador #define CONFIG_SYS_LONGHELP 764579dc37SOtavio Salvador #define CONFIG_SYS_HUSH_PARSER 774579dc37SOtavio Salvador #define CONFIG_AUTO_COMPLETE 784579dc37SOtavio Salvador #define CONFIG_SYS_CBSIZE 256 794579dc37SOtavio Salvador 804579dc37SOtavio Salvador /* Watchdog */ 814579dc37SOtavio Salvador #define CONFIG_HW_WATCHDOG 824579dc37SOtavio Salvador #define CONFIG_IMX_WATCHDOG 834579dc37SOtavio Salvador #define CONFIG_WATCHDOG_TIMEOUT_MSECS 30000 /* 30s */ 844579dc37SOtavio Salvador #define CONFIG_SYS_MAXARGS 16 854579dc37SOtavio Salvador #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 864579dc37SOtavio Salvador 874579dc37SOtavio Salvador #define CONFIG_SYS_MEMTEST_START 0x80000000 884579dc37SOtavio Salvador #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + SZ_256M) 894579dc37SOtavio Salvador 904579dc37SOtavio Salvador #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 914579dc37SOtavio Salvador 924579dc37SOtavio Salvador #define CONFIG_CMDLINE_EDITING 934579dc37SOtavio Salvador #define CONFIG_STACKSIZE SZ_128K 944579dc37SOtavio Salvador 954579dc37SOtavio Salvador /* Physical Memory Map */ 964579dc37SOtavio Salvador #define CONFIG_NR_DRAM_BANKS 1 974579dc37SOtavio Salvador #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 984579dc37SOtavio Salvador #define PHYS_SDRAM_SIZE SZ_512M 994579dc37SOtavio Salvador 1004579dc37SOtavio Salvador #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 1014579dc37SOtavio Salvador #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 1024579dc37SOtavio Salvador #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 1034579dc37SOtavio Salvador 1044579dc37SOtavio Salvador #define CONFIG_SYS_INIT_SP_OFFSET \ 1054579dc37SOtavio Salvador (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1064579dc37SOtavio Salvador #define CONFIG_SYS_INIT_SP_ADDR \ 1074579dc37SOtavio Salvador (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 1084579dc37SOtavio Salvador 1094579dc37SOtavio Salvador #define CONFIG_ENV_OFFSET (6 * SZ_64K) 1104579dc37SOtavio Salvador #define CONFIG_ENV_SIZE SZ_8K 1114579dc37SOtavio Salvador #define CONFIG_ENV_IS_IN_MMC 1124579dc37SOtavio Salvador #define CONFIG_SYS_MMC_ENV_DEV 0 1134579dc37SOtavio Salvador 1144579dc37SOtavio Salvador /* VDD voltage 1.65 - 1.95 */ 1154579dc37SOtavio Salvador #define CONFIG_SYS_SD_VOLTAGE 0x00000080 1164579dc37SOtavio Salvador 1174579dc37SOtavio Salvador #define CONFIG_OF_LIBFDT 1184579dc37SOtavio Salvador #define CONFIG_CMD_BOOTZ 1194579dc37SOtavio Salvador 1204579dc37SOtavio Salvador #ifndef CONFIG_SYS_DCACHE_OFF 1214579dc37SOtavio Salvador #define CONFIG_CMD_CACHE 1224579dc37SOtavio Salvador #endif 1234579dc37SOtavio Salvador 12409ac7b59SFabio Estevam /* USB Configs */ 12509ac7b59SFabio Estevam #define CONFIG_CMD_USB 12609ac7b59SFabio Estevam #ifdef CONFIG_CMD_USB 12709ac7b59SFabio Estevam #define CONFIG_USB_EHCI 12809ac7b59SFabio Estevam #define CONFIG_USB_EHCI_MX6 12909ac7b59SFabio Estevam #define CONFIG_USB_STORAGE 13009ac7b59SFabio Estevam #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 13109ac7b59SFabio Estevam #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) 13209ac7b59SFabio Estevam #define CONFIG_MXC_USB_FLAGS 0 13309ac7b59SFabio Estevam #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 /* Only OTG2 port enabled */ 13409ac7b59SFabio Estevam #endif 13509ac7b59SFabio Estevam 13609ac7b59SFabio Estevam #define CONFIG_CI_UDC 13709ac7b59SFabio Estevam #define CONFIG_USBD_HS 13809ac7b59SFabio Estevam #define CONFIG_USB_GADGET_DUALSPEED 13909ac7b59SFabio Estevam 14009ac7b59SFabio Estevam #define CONFIG_USB_GADGET 14109ac7b59SFabio Estevam #define CONFIG_CMD_USB_MASS_STORAGE 14209ac7b59SFabio Estevam #define CONFIG_USB_GADGET_MASS_STORAGE 14309ac7b59SFabio Estevam #define CONFIG_USBDOWNLOAD_GADGET 14409ac7b59SFabio Estevam #define CONFIG_USB_GADGET_VBUS_DRAW 2 14509ac7b59SFabio Estevam 14609ac7b59SFabio Estevam #define CONFIG_G_DNL_VENDOR_NUM 0x0525 14709ac7b59SFabio Estevam #define CONFIG_G_DNL_PRODUCT_NUM 0xa4a5 14809ac7b59SFabio Estevam #define CONFIG_G_DNL_MANUFACTURER "FSL" 14909ac7b59SFabio Estevam 150*97ee4590SFabio Estevam #define CONFIG_CMD_DFU 151*97ee4590SFabio Estevam #define CONFIG_DFU_FUNCTION 152*97ee4590SFabio Estevam #define CONFIG_DFU_MMC 153*97ee4590SFabio Estevam #define CONFIG_SYS_DFU_DATA_BUF_SIZE SZ_32M 154*97ee4590SFabio Estevam #define DFU_DEFAULT_POLL_TIMEOUT 300 155*97ee4590SFabio Estevam 1564579dc37SOtavio Salvador #define CONFIG_EXTRA_ENV_SETTINGS \ 1574579dc37SOtavio Salvador "script=boot.scr\0" \ 1584579dc37SOtavio Salvador "image=zImage\0" \ 1594579dc37SOtavio Salvador "console=ttymxc0\0" \ 1604579dc37SOtavio Salvador "fdt_high=0xffffffff\0" \ 1614579dc37SOtavio Salvador "initrd_high=0xffffffff\0" \ 1624579dc37SOtavio Salvador "fdt_file=imx6sl-warp.dtb\0" \ 1634579dc37SOtavio Salvador "fdt_addr=0x88000000\0" \ 1644579dc37SOtavio Salvador "initrd_addr=0x83800000\0" \ 1654579dc37SOtavio Salvador "boot_fdt=try\0" \ 1664579dc37SOtavio Salvador "ip_dyn=yes\0" \ 1674579dc37SOtavio Salvador "mmcdev=0\0" \ 1684579dc37SOtavio Salvador "mmcpart=1\0" \ 1694579dc37SOtavio Salvador "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \ 170*97ee4590SFabio Estevam "dfu_alt_info=boot raw 0x2 0x400 mmcpart 1\0" \ 1714579dc37SOtavio Salvador "mmcargs=setenv bootargs console=${console},${baudrate} " \ 1724579dc37SOtavio Salvador "root=${mmcroot}\0" \ 1734579dc37SOtavio Salvador "loadbootscript=" \ 1744579dc37SOtavio Salvador "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 1754579dc37SOtavio Salvador "bootscript=echo Running bootscript from mmc ...; " \ 1764579dc37SOtavio Salvador "source\0" \ 1774579dc37SOtavio Salvador "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ 1784579dc37SOtavio Salvador "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 1794579dc37SOtavio Salvador "mmcboot=echo Booting from mmc ...; " \ 1804579dc37SOtavio Salvador "run mmcargs; " \ 1814579dc37SOtavio Salvador "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 1824579dc37SOtavio Salvador "if run loadfdt; then " \ 1834579dc37SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 1844579dc37SOtavio Salvador "else " \ 1854579dc37SOtavio Salvador "if test ${boot_fdt} = try; then " \ 1864579dc37SOtavio Salvador "bootz; " \ 1874579dc37SOtavio Salvador "else " \ 1884579dc37SOtavio Salvador "echo WARN: Cannot load the DT; " \ 1894579dc37SOtavio Salvador "fi; " \ 1904579dc37SOtavio Salvador "fi; " \ 1914579dc37SOtavio Salvador "else " \ 1924579dc37SOtavio Salvador "bootz; " \ 1934579dc37SOtavio Salvador "fi;\0" \ 1944579dc37SOtavio Salvador "netargs=setenv bootargs console=${console},${baudrate} " \ 1954579dc37SOtavio Salvador "root=/dev/nfs " \ 1964579dc37SOtavio Salvador "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 1974579dc37SOtavio Salvador "netboot=echo Booting from net ...; " \ 1984579dc37SOtavio Salvador "run netargs; " \ 1994579dc37SOtavio Salvador "if test ${ip_dyn} = yes; then " \ 2004579dc37SOtavio Salvador "setenv get_cmd dhcp; " \ 2014579dc37SOtavio Salvador "else " \ 2024579dc37SOtavio Salvador "setenv get_cmd tftp; " \ 2034579dc37SOtavio Salvador "fi; " \ 2044579dc37SOtavio Salvador "${get_cmd} ${image}; " \ 2054579dc37SOtavio Salvador "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 2064579dc37SOtavio Salvador "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 2074579dc37SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 2084579dc37SOtavio Salvador "else " \ 2094579dc37SOtavio Salvador "if test ${boot_fdt} = try; then " \ 2104579dc37SOtavio Salvador "bootz; " \ 2114579dc37SOtavio Salvador "else " \ 2124579dc37SOtavio Salvador "echo WARN: Cannot load the DT; " \ 2134579dc37SOtavio Salvador "fi; " \ 2144579dc37SOtavio Salvador "fi; " \ 2154579dc37SOtavio Salvador "else " \ 2164579dc37SOtavio Salvador "bootz; " \ 2174579dc37SOtavio Salvador "fi;\0" 2184579dc37SOtavio Salvador 2194579dc37SOtavio Salvador #define CONFIG_BOOTCOMMAND \ 2204579dc37SOtavio Salvador "mmc dev ${mmcdev};" \ 2214579dc37SOtavio Salvador "mmc dev ${mmcdev}; if mmc rescan; then " \ 2224579dc37SOtavio Salvador "if run loadbootscript; then " \ 2234579dc37SOtavio Salvador "run bootscript; " \ 2244579dc37SOtavio Salvador "else " \ 2254579dc37SOtavio Salvador "if run loadimage; then " \ 2264579dc37SOtavio Salvador "run mmcboot; " \ 2274579dc37SOtavio Salvador "else run netboot; " \ 2284579dc37SOtavio Salvador "fi; " \ 2294579dc37SOtavio Salvador "fi; " \ 2304579dc37SOtavio Salvador "else run netboot; fi" 2314579dc37SOtavio Salvador 2324579dc37SOtavio Salvador #endif /* __CONFIG_H */ 233