1419adbfbSFabio Estevam /* 2419adbfbSFabio Estevam * (C) Copyright 2011 Freescale Semiconductor, Inc. 3419adbfbSFabio Estevam * 41a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 5419adbfbSFabio Estevam */ 6419adbfbSFabio Estevam 7419adbfbSFabio Estevam #ifndef __CONFIG_H 8419adbfbSFabio Estevam #define __CONFIG_H 9419adbfbSFabio Estevam 100208a53fSFabio Estevam #include <asm/arch/imx-regs.h> 110208a53fSFabio Estevam 12419adbfbSFabio Estevam /* High Level Configuration Options */ 13419adbfbSFabio Estevam 14d6d94e73SFabio Estevam #define CONFIG_MX25 15419adbfbSFabio Estevam #define CONFIG_SYS_TEXT_BASE 0x81200000 16af2a4093SFabio Estevam #define CONFIG_MXC_GPIO 1718fb0e3cSGong Qianyu #define CONFIG_SYS_FSL_CLK 18419adbfbSFabio Estevam 193dae5b51SRob Herring #define CONFIG_SYS_TIMER_RATE 32768 203dae5b51SRob Herring #define CONFIG_SYS_TIMER_COUNTER \ 213dae5b51SRob Herring (&((struct gpt_regs *)IMX_GPT1_BASE)->counter) 223dae5b51SRob Herring 23419adbfbSFabio Estevam #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 24419adbfbSFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS 25419adbfbSFabio Estevam #define CONFIG_INITRD_TAG 26419adbfbSFabio Estevam 27f39c008eSFabio Estevam #define CONFIG_MACH_TYPE MACH_TYPE_MX25_3DS 28f39c008eSFabio Estevam 29419adbfbSFabio Estevam /* Size of malloc() pool */ 30419adbfbSFabio Estevam #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024) 31419adbfbSFabio Estevam 32419adbfbSFabio Estevam /* Physical Memory Map */ 33419adbfbSFabio Estevam 34419adbfbSFabio Estevam #define CONFIG_NR_DRAM_BANKS 1 35419adbfbSFabio Estevam #define PHYS_SDRAM_1 0x80000000 36419adbfbSFabio Estevam #define PHYS_SDRAM_1_SIZE (64 * 1024 * 1024) 37419adbfbSFabio Estevam 38419adbfbSFabio Estevam #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 390208a53fSFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR IMX_RAM_BASE 400208a53fSFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE IMX_RAM_SIZE 410208a53fSFabio Estevam 420208a53fSFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \ 430208a53fSFabio Estevam (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 440208a53fSFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \ 450208a53fSFabio Estevam (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 46419adbfbSFabio Estevam 47419adbfbSFabio Estevam /* Memory Test */ 48419adbfbSFabio Estevam #define CONFIG_SYS_MEMTEST_START (PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE/2) 49419adbfbSFabio Estevam #define CONFIG_SYS_MEMTEST_END (PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE) 50419adbfbSFabio Estevam 51419adbfbSFabio Estevam /* Serial Info */ 52419adbfbSFabio Estevam #define CONFIG_MXC_UART 5340f6fffeSStefano Babic #define CONFIG_MXC_UART_BASE UART1_BASE 54419adbfbSFabio Estevam #define CONFIG_CONS_INDEX 1 /* use UART0 for console */ 55419adbfbSFabio Estevam 56419adbfbSFabio Estevam /* No NOR flash present */ 57419adbfbSFabio Estevam #define CONFIG_ENV_OFFSET (6 * 64 * 1024) 58419adbfbSFabio Estevam #define CONFIG_ENV_SIZE (8 * 1024) 5981a1d617SFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV 0 60419adbfbSFabio Estevam 61af2a4093SFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV 0 62419adbfbSFabio Estevam 63419adbfbSFabio Estevam /* U-Boot general configuration */ 64419adbfbSFabio Estevam #define CONFIG_AUTO_COMPLETE 6581a1d617SFabio Estevam #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 66419adbfbSFabio Estevam /* Boot Argument Buffer Size */ 67419adbfbSFabio Estevam #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 68419adbfbSFabio Estevam #define CONFIG_CMDLINE_EDITING 69419adbfbSFabio Estevam #define CONFIG_SYS_LONGHELP 70419adbfbSFabio Estevam 71419adbfbSFabio Estevam /* U-Boot commands */ 72419adbfbSFabio Estevam 73419adbfbSFabio Estevam /* Ethernet */ 74419adbfbSFabio Estevam #define CONFIG_FEC_MXC 75419adbfbSFabio Estevam #define CONFIG_FEC_MXC_PHYADDR 0x1f 76419adbfbSFabio Estevam #define CONFIG_MII 77419adbfbSFabio Estevam #define CONFIG_ENV_OVERWRITE 78419adbfbSFabio Estevam 79af2a4093SFabio Estevam /* ESDHC driver */ 80af2a4093SFabio Estevam #define CONFIG_FSL_ESDHC 813098ef42SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR IMX_MMC_SDHC1_BASE 82af2a4093SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_NUM 1 83af2a4093SFabio Estevam 84e00c89dfSFabio Estevam /* PMIC Configs */ 85cabe240bSFabio Estevam #define CONFIG_POWER 86cabe240bSFabio Estevam #define CONFIG_POWER_I2C 87cabe240bSFabio Estevam #define CONFIG_POWER_FSL 88913702caSSimon Glass #define CONFIG_POWER_FSL_MC34704 89e00c89dfSFabio Estevam #define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x54 90e00c89dfSFabio Estevam 91e00c89dfSFabio Estevam /* I2C Configs */ 92b089d039Strem #define CONFIG_SYS_I2C 93b089d039Strem #define CONFIG_SYS_I2C_MXC 9403544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 9503544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 96e00c89dfSFabio Estevam 97d37b3348SBenoît Thébaudeau /* RTC */ 98d37b3348SBenoît Thébaudeau #define CONFIG_RTC_IMXDI 99d37b3348SBenoît Thébaudeau 100*9e408a39SFabio Estevam /* Fuse API support */ 101*9e408a39SFabio Estevam #define CONFIG_FSL_IIM 102*9e408a39SFabio Estevam #define CONFIG_CMD_FUSE 103*9e408a39SFabio Estevam 104e00c89dfSFabio Estevam /* Ethernet Configs */ 105e00c89dfSFabio Estevam 106419adbfbSFabio Estevam 107419adbfbSFabio Estevam #define CONFIG_LOADADDR 0x81000000 /* loadaddr env var */ 108419adbfbSFabio Estevam #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 109419adbfbSFabio Estevam 110419adbfbSFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \ 111419adbfbSFabio Estevam "script=boot.scr\0" \ 11281a1d617SFabio Estevam "image=zImage\0" \ 11381a1d617SFabio Estevam "console=ttymxc0\0" \ 11481a1d617SFabio Estevam "splashpos=m,m\0" \ 11581a1d617SFabio Estevam "fdt_high=0xffffffff\0" \ 11681a1d617SFabio Estevam "initrd_high=0xffffffff\0" \ 11781a1d617SFabio Estevam "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ 11881a1d617SFabio Estevam "fdt_addr=0x82000000\0" \ 11981a1d617SFabio Estevam "boot_fdt=try\0" \ 12081a1d617SFabio Estevam "ip_dyn=yes\0" \ 12181a1d617SFabio Estevam "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \ 12281a1d617SFabio Estevam "mmcpart=1\0" \ 12381a1d617SFabio Estevam "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \ 12481a1d617SFabio Estevam "update_sd_firmware_filename=u-boot.imx\0" \ 12581a1d617SFabio Estevam "update_sd_firmware=" \ 12681a1d617SFabio Estevam "if test ${ip_dyn} = yes; then " \ 12781a1d617SFabio Estevam "setenv get_cmd dhcp; " \ 12881a1d617SFabio Estevam "else " \ 12981a1d617SFabio Estevam "setenv get_cmd tftp; " \ 13081a1d617SFabio Estevam "fi; " \ 13181a1d617SFabio Estevam "if mmc dev ${mmcdev}; then " \ 13281a1d617SFabio Estevam "if ${get_cmd} ${update_sd_firmware_filename}; then " \ 13381a1d617SFabio Estevam "setexpr fw_sz ${filesize} / 0x200; " \ 13481a1d617SFabio Estevam "setexpr fw_sz ${fw_sz} + 1; " \ 13581a1d617SFabio Estevam "mmc write ${loadaddr} 0x2 ${fw_sz}; " \ 13681a1d617SFabio Estevam "fi; " \ 13781a1d617SFabio Estevam "fi\0" \ 13881a1d617SFabio Estevam "mmcargs=setenv bootargs console=${console},${baudrate} " \ 13981a1d617SFabio Estevam "root=${mmcroot}\0" \ 14081a1d617SFabio Estevam "loadbootscript=" \ 14181a1d617SFabio Estevam "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 14281a1d617SFabio Estevam "bootscript=echo Running bootscript from mmc ...; " \ 14381a1d617SFabio Estevam "source\0" \ 14481a1d617SFabio Estevam "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ 14581a1d617SFabio Estevam "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 14681a1d617SFabio Estevam "mmcboot=echo Booting from mmc ...; " \ 14781a1d617SFabio Estevam "run mmcargs; " \ 14881a1d617SFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 14981a1d617SFabio Estevam "if run loadfdt; then " \ 15081a1d617SFabio Estevam "bootz ${loadaddr} - ${fdt_addr}; " \ 15181a1d617SFabio Estevam "else " \ 15281a1d617SFabio Estevam "if test ${boot_fdt} = try; then " \ 15381a1d617SFabio Estevam "bootz; " \ 15481a1d617SFabio Estevam "else " \ 15581a1d617SFabio Estevam "echo WARN: Cannot load the DT; " \ 15681a1d617SFabio Estevam "fi; " \ 15781a1d617SFabio Estevam "fi; " \ 15881a1d617SFabio Estevam "else " \ 15981a1d617SFabio Estevam "bootz; " \ 16081a1d617SFabio Estevam "fi;\0" \ 16181a1d617SFabio Estevam "netargs=setenv bootargs console=${console},${baudrate} " \ 162419adbfbSFabio Estevam "root=/dev/nfs " \ 163419adbfbSFabio Estevam "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 16481a1d617SFabio Estevam "netboot=echo Booting from net ...; " \ 16581a1d617SFabio Estevam "run netargs; " \ 16681a1d617SFabio Estevam "if test ${ip_dyn} = yes; then " \ 16781a1d617SFabio Estevam "setenv get_cmd dhcp; " \ 16881a1d617SFabio Estevam "else " \ 16981a1d617SFabio Estevam "setenv get_cmd tftp; " \ 17081a1d617SFabio Estevam "fi; " \ 17181a1d617SFabio Estevam "${get_cmd} ${image}; " \ 17281a1d617SFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 17381a1d617SFabio Estevam "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 17481a1d617SFabio Estevam "bootz ${loadaddr} - ${fdt_addr}; " \ 17581a1d617SFabio Estevam "else " \ 17681a1d617SFabio Estevam "if test ${boot_fdt} = try; then " \ 17781a1d617SFabio Estevam "bootz; " \ 17881a1d617SFabio Estevam "else " \ 17981a1d617SFabio Estevam "echo WARN: Cannot load the DT; " \ 18081a1d617SFabio Estevam "fi; " \ 18181a1d617SFabio Estevam "fi; " \ 18281a1d617SFabio Estevam "else " \ 18381a1d617SFabio Estevam "bootz; " \ 18481a1d617SFabio Estevam "fi;\0" 18581a1d617SFabio Estevam 18681a1d617SFabio Estevam #define CONFIG_BOOTCOMMAND \ 18781a1d617SFabio Estevam "mmc dev ${mmcdev}; if mmc rescan; then " \ 18881a1d617SFabio Estevam "if run loadbootscript; then " \ 18981a1d617SFabio Estevam "run bootscript; " \ 19081a1d617SFabio Estevam "else " \ 19181a1d617SFabio Estevam "if run loadimage; then " \ 19281a1d617SFabio Estevam "run mmcboot; " \ 19381a1d617SFabio Estevam "else run netboot; " \ 19481a1d617SFabio Estevam "fi; " \ 19581a1d617SFabio Estevam "fi; " \ 19681a1d617SFabio Estevam "else run netboot; fi" 19781a1d617SFabio Estevam 19881a1d617SFabio Estevam /* Miscellaneous configurable options */ 19981a1d617SFabio Estevam #define CONFIG_SYS_LONGHELP 20081a1d617SFabio Estevam #define CONFIG_AUTO_COMPLETE 20181a1d617SFabio Estevam 202419adbfbSFabio Estevam #endif /* __CONFIG_H */ 203