157ca432fSFabio Estevam /* 257ca432fSFabio Estevam * Copyright 2013 Freescale Semiconductor, Inc. 357ca432fSFabio Estevam * 457ca432fSFabio Estevam * Configuration settings for the Freescale i.MX6SL EVK board. 557ca432fSFabio Estevam * 61a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 757ca432fSFabio Estevam */ 857ca432fSFabio Estevam 957ca432fSFabio Estevam #ifndef __CONFIG_H 1057ca432fSFabio Estevam #define __CONFIG_H 1157ca432fSFabio Estevam 12a6bbee66SFabio Estevam #include "mx6_common.h" 1357ca432fSFabio Estevam 14e7d3b21bSPeng Fan #ifdef CONFIG_SPL 15e7d3b21bSPeng Fan #include "imx6_spl.h" 16e7d3b21bSPeng Fan #endif 17e7d3b21bSPeng Fan 18*92a1babfSTom Rini #define CONFIG_MACH_TYPE MACH_TYPE_MX6SL_EVK 1957ca432fSFabio Estevam 2057ca432fSFabio Estevam /* Size of malloc() pool */ 2157ca432fSFabio Estevam #define CONFIG_SYS_MALLOC_LEN (3 * SZ_1M) 2257ca432fSFabio Estevam 2357ca432fSFabio Estevam #define CONFIG_MXC_UART 2457ca432fSFabio Estevam #define CONFIG_MXC_UART_BASE UART1_IPS_BASE_ADDR 2557ca432fSFabio Estevam 2657ca432fSFabio Estevam /* MMC Configs */ 2708129d61SPeng Fan #define CONFIG_SYS_FSL_ESDHC_ADDR USDHC2_BASE_ADDR 2857ca432fSFabio Estevam 29c8200905SPeng Fan /* I2C Configs */ 30c8200905SPeng Fan #define CONFIG_SYS_I2C 31c8200905SPeng Fan #define CONFIG_SYS_I2C_MXC 3203544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 3303544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 34f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 35c8200905SPeng Fan #define CONFIG_SYS_I2C_SPEED 100000 36c8200905SPeng Fan 37c8200905SPeng Fan /* PMIC */ 38c8200905SPeng Fan #define CONFIG_POWER 39c8200905SPeng Fan #define CONFIG_POWER_I2C 40c8200905SPeng Fan #define CONFIG_POWER_PFUZE100 41c8200905SPeng Fan #define CONFIG_POWER_PFUZE100_I2C_ADDR 0x08 42c8200905SPeng Fan 4331f07964SFabio Estevam #define CONFIG_FEC_MXC 4431f07964SFabio Estevam #define CONFIG_MII 4531f07964SFabio Estevam #define IMX_FEC_BASE ENET_BASE_ADDR 4631f07964SFabio Estevam #define CONFIG_FEC_XCV_TYPE RMII 4731f07964SFabio Estevam #define CONFIG_FEC_MXC_PHYADDR 0 4831f07964SFabio Estevam 4931f07964SFabio Estevam #define CONFIG_PHYLIB 5031f07964SFabio Estevam #define CONFIG_PHY_SMSC 5131f07964SFabio Estevam 5257ca432fSFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \ 5357ca432fSFabio Estevam "script=boot.scr\0" \ 548e184a53SOtavio Salvador "image=zImage\0" \ 5557ca432fSFabio Estevam "console=ttymxc0\0" \ 5657ca432fSFabio Estevam "fdt_high=0xffffffff\0" \ 5757ca432fSFabio Estevam "initrd_high=0xffffffff\0" \ 5857ca432fSFabio Estevam "fdt_file=imx6sl-evk.dtb\0" \ 596fc049beSFabio Estevam "fdt_addr=0x88000000\0" \ 6057ca432fSFabio Estevam "boot_fdt=try\0" \ 6157ca432fSFabio Estevam "ip_dyn=yes\0" \ 62adc5a667SYe.Li "mmcdev=1\0" \ 6394aeb8a6SOtavio Salvador "mmcpart=1\0" \ 6494aeb8a6SOtavio Salvador "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \ 6557ca432fSFabio Estevam "mmcargs=setenv bootargs console=${console},${baudrate} " \ 6657ca432fSFabio Estevam "root=${mmcroot}\0" \ 6757ca432fSFabio Estevam "loadbootscript=" \ 6857ca432fSFabio Estevam "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 6957ca432fSFabio Estevam "bootscript=echo Running bootscript from mmc ...; " \ 7057ca432fSFabio Estevam "source\0" \ 718e184a53SOtavio Salvador "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ 7257ca432fSFabio Estevam "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 7357ca432fSFabio Estevam "mmcboot=echo Booting from mmc ...; " \ 7457ca432fSFabio Estevam "run mmcargs; " \ 7557ca432fSFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 7657ca432fSFabio Estevam "if run loadfdt; then " \ 778e184a53SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 7857ca432fSFabio Estevam "else " \ 7957ca432fSFabio Estevam "if test ${boot_fdt} = try; then " \ 808e184a53SOtavio Salvador "bootz; " \ 8157ca432fSFabio Estevam "else " \ 8257ca432fSFabio Estevam "echo WARN: Cannot load the DT; " \ 8357ca432fSFabio Estevam "fi; " \ 8457ca432fSFabio Estevam "fi; " \ 8557ca432fSFabio Estevam "else " \ 868e184a53SOtavio Salvador "bootz; " \ 8757ca432fSFabio Estevam "fi;\0" \ 8857ca432fSFabio Estevam "netargs=setenv bootargs console=${console},${baudrate} " \ 8957ca432fSFabio Estevam "root=/dev/nfs " \ 9057ca432fSFabio Estevam "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 9157ca432fSFabio Estevam "netboot=echo Booting from net ...; " \ 9257ca432fSFabio Estevam "run netargs; " \ 9357ca432fSFabio Estevam "if test ${ip_dyn} = yes; then " \ 9457ca432fSFabio Estevam "setenv get_cmd dhcp; " \ 9557ca432fSFabio Estevam "else " \ 9657ca432fSFabio Estevam "setenv get_cmd tftp; " \ 9757ca432fSFabio Estevam "fi; " \ 988e184a53SOtavio Salvador "${get_cmd} ${image}; " \ 9957ca432fSFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 10057ca432fSFabio Estevam "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 1018e184a53SOtavio Salvador "bootz ${loadaddr} - ${fdt_addr}; " \ 10257ca432fSFabio Estevam "else " \ 10357ca432fSFabio Estevam "if test ${boot_fdt} = try; then " \ 1048e184a53SOtavio Salvador "bootz; " \ 10557ca432fSFabio Estevam "else " \ 10657ca432fSFabio Estevam "echo WARN: Cannot load the DT; " \ 10757ca432fSFabio Estevam "fi; " \ 10857ca432fSFabio Estevam "fi; " \ 10957ca432fSFabio Estevam "else " \ 1108e184a53SOtavio Salvador "bootz; " \ 11157ca432fSFabio Estevam "fi;\0" 11257ca432fSFabio Estevam 11357ca432fSFabio Estevam #define CONFIG_BOOTCOMMAND \ 11457ca432fSFabio Estevam "mmc dev ${mmcdev};" \ 11557ca432fSFabio Estevam "mmc dev ${mmcdev}; if mmc rescan; then " \ 11657ca432fSFabio Estevam "if run loadbootscript; then " \ 11757ca432fSFabio Estevam "run bootscript; " \ 11857ca432fSFabio Estevam "else " \ 1198e184a53SOtavio Salvador "if run loadimage; then " \ 12057ca432fSFabio Estevam "run mmcboot; " \ 12157ca432fSFabio Estevam "else run netboot; " \ 12257ca432fSFabio Estevam "fi; " \ 12357ca432fSFabio Estevam "fi; " \ 12457ca432fSFabio Estevam "else run netboot; fi" 12557ca432fSFabio Estevam 12657ca432fSFabio Estevam /* Miscellaneous configurable options */ 12757ca432fSFabio Estevam #define CONFIG_SYS_MEMTEST_START 0x80000000 12857ca432fSFabio Estevam #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + SZ_512M) 12957ca432fSFabio Estevam 13057ca432fSFabio Estevam #define CONFIG_STACKSIZE SZ_128K 13157ca432fSFabio Estevam 13257ca432fSFabio Estevam /* Physical Memory Map */ 13357ca432fSFabio Estevam #define CONFIG_NR_DRAM_BANKS 1 13457ca432fSFabio Estevam #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 13557ca432fSFabio Estevam 13657ca432fSFabio Estevam #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 13757ca432fSFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 13857ca432fSFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 13957ca432fSFabio Estevam 14057ca432fSFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \ 14157ca432fSFabio Estevam (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 14257ca432fSFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \ 14357ca432fSFabio Estevam (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 14457ca432fSFabio Estevam 145056845c2SPeter Robinson /* Environment organization */ 14657ca432fSFabio Estevam #define CONFIG_ENV_SIZE SZ_8K 147be2fde60SPeng Fan 148be2fde60SPeng Fan #if defined CONFIG_SYS_BOOT_SPINOR 149be2fde60SPeng Fan #define CONFIG_ENV_IS_IN_SPI_FLASH 150be2fde60SPeng Fan #define CONFIG_ENV_OFFSET (768 * 1024) 151be2fde60SPeng Fan #define CONFIG_ENV_SECT_SIZE (64 * 1024) 152be2fde60SPeng Fan #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS 153be2fde60SPeng Fan #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS 154be2fde60SPeng Fan #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE 155be2fde60SPeng Fan #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED 156be2fde60SPeng Fan #else 1570da040bfSYe.Li #define CONFIG_ENV_OFFSET (8 * SZ_64K) 15857ca432fSFabio Estevam #define CONFIG_ENV_IS_IN_MMC 159be2fde60SPeng Fan #endif 16057ca432fSFabio Estevam 161694c3bc1SFabio Estevam #ifdef CONFIG_CMD_SF 162694c3bc1SFabio Estevam #define CONFIG_MXC_SPI 163694c3bc1SFabio Estevam #define CONFIG_SF_DEFAULT_BUS 0 164155fa9afSNikita Kiryanov #define CONFIG_SF_DEFAULT_CS 0 165694c3bc1SFabio Estevam #define CONFIG_SF_DEFAULT_SPEED 20000000 166694c3bc1SFabio Estevam #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 167694c3bc1SFabio Estevam #endif 168694c3bc1SFabio Estevam 1693b9c1a5dSPeng Fan /* USB Configs */ 1703b9c1a5dSPeng Fan #ifdef CONFIG_CMD_USB 1713b9c1a5dSPeng Fan #define CONFIG_USB_EHCI 1723b9c1a5dSPeng Fan #define CONFIG_USB_EHCI_MX6 1733b9c1a5dSPeng Fan #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 1743b9c1a5dSPeng Fan #define CONFIG_USB_HOST_ETHER 1753b9c1a5dSPeng Fan #define CONFIG_USB_ETHER_ASIX 1763b9c1a5dSPeng Fan #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) 1773b9c1a5dSPeng Fan #define CONFIG_MXC_USB_FLAGS 0 1783b9c1a5dSPeng Fan #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 1793b9c1a5dSPeng Fan #endif 1803b9c1a5dSPeng Fan 18136255d67SYe.Li #define CONFIG_SYS_FSL_USDHC_NUM 3 18236255d67SYe.Li #if defined(CONFIG_ENV_IS_IN_MMC) 18336255d67SYe.Li #define CONFIG_SYS_MMC_ENV_DEV 1 /* SDHC2*/ 18436255d67SYe.Li #endif 18536255d67SYe.Li 1861368f993SAdrian Alonso #define CONFIG_IMX_THERMAL 18727d36080SPeng Fan 18857ca432fSFabio Estevam #endif /* __CONFIG_H */ 189