/*
* Copyright ( C ) 2010 - 2011 Freescale Semiconductor , Inc .
*
* Configuration settings for the Freescale i . MX6Q Armadillo2 board .
*
* SPDX - License - Identifier : GPL - 2.0 +
*/
# ifndef __CONFIG_H
# define __CONFIG_H
# include "mx6_common.h"
/* Size of malloc() pool */
# define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024)
# define CONFIG_BOARD_EARLY_INIT_F
# define CONFIG_MXC_UART
# define CONFIG_MXC_UART_BASE UART4_BASE
/* MMC Configs */
# define CONFIG_SYS_FSL_ESDHC_ADDR USDHC4_BASE_ADDR
# define CONFIG_SYS_FSL_USDHC_NUM 2
# define CONFIG_CMD_PING
# define CONFIG_CMD_DHCP
# define CONFIG_CMD_MII
# define CONFIG_FEC_MXC
# define CONFIG_MII
# define IMX_FEC_BASE ENET_BASE_ADDR
# define CONFIG_FEC_XCV_TYPE RGMII
# define CONFIG_FEC_MXC_PHYADDR 0
# define CONFIG_EXTRA_ENV_SETTINGS \
" script=boot.scr \0 " \
" image=zImage \0 " \
" console=ttymxc3 \0 " \
" fdt_file=imx6q-arm2.dtb \0 " \
" fdt_addr=0x18000000 \0 " \
" fdt_high=0xffffffff \0 " \
" initrd_high=0xffffffff \0 " \
" boot_fdt=try \0 " \
" ip_dyn=yes \0 " \
" mmcdev=1 \0 " \
" mmcpart=1 \0 " \
" mmcroot=/dev/mmcblk0p2 rootwait rw \0 " \
" mmcargs=setenv bootargs console=${console},${baudrate} " \
" root=${mmcroot} \0 " \
" loadbootscript= " \
" fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script}; \0 " \
" bootscript=echo Running bootscript from mmc ...; " \
" source \0 " \
" loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image} \0 " \
" loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file} \0 " \
" mmcboot=echo Booting from mmc ...; " \
" run mmcargs; " \
" if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
" if run loadfdt; then " \
" bootz ${loadaddr} - ${fdt_addr}; " \
" else " \
" if test ${boot_fdt} = try; then " \
" bootz; " \
" else " \
" echo WARN: Cannot load the DT; " \
" fi; " \
" fi; " \
" else " \
" bootz; " \
" fi; \0 " \
" netargs=setenv bootargs console=${console},${baudrate} " \
" root=/dev/nfs " \
" ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp \0 " \
" netboot=echo Booting from net ...; " \
" run netargs; " \
" if test ${ip_dyn} = yes; then " \
" setenv get_cmd dhcp; " \
" else " \
" setenv get_cmd tftp; " \
" fi; " \
" ${get_cmd} ${image}; " \
" if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
" if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
" bootz ${loadaddr} - ${fdt_addr}; " \
" else " \
" if test ${boot_fdt} = try; then " \
" bootz; " \
" else " \
" echo WARN: Cannot load the DT; " \
" fi; " \
" fi; " \
" else " \
" bootz; " \
" fi; \0 "
# define CONFIG_BOOTCOMMAND \
" mmc dev ${mmcdev}; " \
" mmc dev ${mmcdev}; if mmc rescan; then " \
" if run loadbootscript; then " \
" run bootscript; " \
" else " \
" if run loadimage; then " \
" run mmcboot; " \
" else run netboot; " \
" fi; " \
" fi; " \
" else run netboot; fi "
# define CONFIG_ARP_TIMEOUT 200UL
/* Miscellaneous configurable options */
# define CONFIG_SYS_MEMTEST_START 0x10000000
# define CONFIG_SYS_MEMTEST_END 0x10010000
/* Physical Memory Map */
# define CONFIG_NR_DRAM_BANKS 1
# define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
# define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
# define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
# define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
# define CONFIG_SYS_INIT_SP_OFFSET \
( CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE )
# define CONFIG_SYS_INIT_SP_ADDR \
( CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET )
/* Environment organization */
# define CONFIG_ENV_OFFSET (6 * 64 * 1024)
# define CONFIG_ENV_SIZE (8 * 1024)
# define CONFIG_ENV_IS_IN_MMC
# define CONFIG_SYS_MMC_ENV_DEV 1
/* USB Configs */
# define CONFIG_CMD_USB
# ifdef CONFIG_CMD_USB
# define CONFIG_USB_EHCI
# define CONFIG_USB_EHCI_MX6
# define CONFIG_USB_STORAGE
# define CONFIG_EHCI_HCD_INIT_AFTER_RESET
# define CONFIG_USB_HOST_ETHER
# define CONFIG_USB_ETHER_ASIX
# define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
# define CONFIG_MXC_USB_FLAGS 0
# define CONFIG_USB_MAX_CONTROLLER_COUNT 1
# endif
# endif /* __CONFIG_H */