1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 2463ec1caSVladimir Zapolskiy /* 3463ec1caSVladimir Zapolskiy * Embest/Timll DevKit3250 board configuration file 4463ec1caSVladimir Zapolskiy * 5768ddeeeSVladimir Zapolskiy * Copyright (C) 2011-2015 Vladimir Zapolskiy <vz@mleia.com> 6463ec1caSVladimir Zapolskiy */ 7463ec1caSVladimir Zapolskiy 8463ec1caSVladimir Zapolskiy #ifndef __CONFIG_DEVKIT3250_H__ 9463ec1caSVladimir Zapolskiy #define __CONFIG_DEVKIT3250_H__ 10463ec1caSVladimir Zapolskiy 11463ec1caSVladimir Zapolskiy /* SoC and board defines */ 121ace4022SAlexey Brodkin #include <linux/sizes.h> 13463ec1caSVladimir Zapolskiy #include <asm/arch/cpu.h> 14463ec1caSVladimir Zapolskiy 15463ec1caSVladimir Zapolskiy #define CONFIG_MACH_TYPE MACH_TYPE_DEVKIT3250 16463ec1caSVladimir Zapolskiy 17463ec1caSVladimir Zapolskiy #define CONFIG_SYS_ICACHE_OFF 18463ec1caSVladimir Zapolskiy #define CONFIG_SYS_DCACHE_OFF 19e9b3ce3fSVladimir Zapolskiy #if !defined(CONFIG_SPL_BUILD) 20463ec1caSVladimir Zapolskiy #define CONFIG_SKIP_LOWLEVEL_INIT 21e9b3ce3fSVladimir Zapolskiy #endif 22463ec1caSVladimir Zapolskiy 23463ec1caSVladimir Zapolskiy /* 24463ec1caSVladimir Zapolskiy * Memory configurations 25463ec1caSVladimir Zapolskiy */ 26463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MALLOC_LEN SZ_1M 27463ec1caSVladimir Zapolskiy #define CONFIG_SYS_SDRAM_BASE EMC_DYCS0_BASE 28463ec1caSVladimir Zapolskiy #define CONFIG_SYS_SDRAM_SIZE SZ_64M 29463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MEMTEST_START (CONFIG_SYS_SDRAM_BASE + SZ_32K) 30463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_TEXT_BASE - SZ_1M) 31463ec1caSVladimir Zapolskiy 32463ec1caSVladimir Zapolskiy #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_32K) 33463ec1caSVladimir Zapolskiy 34463ec1caSVladimir Zapolskiy #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_4K \ 35463ec1caSVladimir Zapolskiy - GENERATED_GBL_DATA_SIZE) 36463ec1caSVladimir Zapolskiy 37463ec1caSVladimir Zapolskiy /* 38463ec1caSVladimir Zapolskiy * Serial Driver 39463ec1caSVladimir Zapolskiy */ 40768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_LPC32XX_UART 5 /* UART5 */ 41463ec1caSVladimir Zapolskiy 42463ec1caSVladimir Zapolskiy /* 436cbaf4c1SVladimir Zapolskiy * DMA 446cbaf4c1SVladimir Zapolskiy */ 456cbaf4c1SVladimir Zapolskiy #if !defined(CONFIG_SPL_BUILD) 466cbaf4c1SVladimir Zapolskiy #define CONFIG_DMA_LPC32XX 476cbaf4c1SVladimir Zapolskiy #endif 486cbaf4c1SVladimir Zapolskiy 496cbaf4c1SVladimir Zapolskiy /* 50768ddeeeSVladimir Zapolskiy * I2C 51768ddeeeSVladimir Zapolskiy */ 52768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C 53768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C_LPC32XX 54768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C_SPEED 100000 55768ddeeeSVladimir Zapolskiy 56768ddeeeSVladimir Zapolskiy /* 57768ddeeeSVladimir Zapolskiy * GPIO 58768ddeeeSVladimir Zapolskiy */ 59768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_GPIO 60768ddeeeSVladimir Zapolskiy 61768ddeeeSVladimir Zapolskiy /* 62768ddeeeSVladimir Zapolskiy * SSP/SPI 63768ddeeeSVladimir Zapolskiy */ 64768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_SSP_TIMEOUT 100000 65768ddeeeSVladimir Zapolskiy 66768ddeeeSVladimir Zapolskiy /* 67768ddeeeSVladimir Zapolskiy * Ethernet 68768ddeeeSVladimir Zapolskiy */ 69768ddeeeSVladimir Zapolskiy #define CONFIG_RMII 70768ddeeeSVladimir Zapolskiy #define CONFIG_PHY_SMSC 71768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_ETH 72768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 73768ddeeeSVladimir Zapolskiy 74768ddeeeSVladimir Zapolskiy /* 75463ec1caSVladimir Zapolskiy * NOR Flash 76463ec1caSVladimir Zapolskiy */ 77463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MAX_FLASH_BANKS 1 78463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MAX_FLASH_SECT 71 79463ec1caSVladimir Zapolskiy #define CONFIG_SYS_FLASH_BASE EMC_CS0_BASE 80463ec1caSVladimir Zapolskiy #define CONFIG_SYS_FLASH_SIZE SZ_4M 81463ec1caSVladimir Zapolskiy 82463ec1caSVladimir Zapolskiy /* 83768ddeeeSVladimir Zapolskiy * NAND controller 84768ddeeeSVladimir Zapolskiy */ 85768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_BASE SLC_NAND_BASE 86768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_MAX_NAND_DEVICE 1 87768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE } 88768ddeeeSVladimir Zapolskiy 89768ddeeeSVladimir Zapolskiy /* 90768ddeeeSVladimir Zapolskiy * NAND chip timings 91768ddeeeSVladimir Zapolskiy */ 92768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WDR_CLKS 14 93768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WWIDTH 66666666 94768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WHOLD 200000000 95768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WSETUP 50000000 96768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RDR_CLKS 14 97768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RWIDTH 66666666 98768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RHOLD 200000000 99768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RSETUP 50000000 100768ddeeeSVladimir Zapolskiy 101327f0d23SVladimir Zapolskiy #define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000 102327f0d23SVladimir Zapolskiy #define CONFIG_SYS_NAND_PAGE_SIZE NAND_LARGE_BLOCK_PAGE_SIZE 103768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_USE_FLASH_BBT 104327f0d23SVladimir Zapolskiy 105768ddeeeSVladimir Zapolskiy /* 1066cbaf4c1SVladimir Zapolskiy * USB 1076cbaf4c1SVladimir Zapolskiy */ 1086cbaf4c1SVladimir Zapolskiy #define CONFIG_USB_OHCI_LPC32XX 1096cbaf4c1SVladimir Zapolskiy #define CONFIG_USB_ISP1301_I2C_ADDR 0x2d 1106cbaf4c1SVladimir Zapolskiy 1116cbaf4c1SVladimir Zapolskiy /* 112463ec1caSVladimir Zapolskiy * U-Boot General Configurations 113463ec1caSVladimir Zapolskiy */ 114463ec1caSVladimir Zapolskiy #define CONFIG_SYS_CBSIZE 1024 115463ec1caSVladimir Zapolskiy #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 116463ec1caSVladimir Zapolskiy 117768ddeeeSVladimir Zapolskiy /* 118768ddeeeSVladimir Zapolskiy * Pass open firmware flat tree 119768ddeeeSVladimir Zapolskiy */ 120768ddeeeSVladimir Zapolskiy 121768ddeeeSVladimir Zapolskiy /* 122768ddeeeSVladimir Zapolskiy * Environment 123768ddeeeSVladimir Zapolskiy */ 124463ec1caSVladimir Zapolskiy #define CONFIG_ENV_SIZE SZ_128K 125768ddeeeSVladimir Zapolskiy #define CONFIG_ENV_OFFSET 0x000A0000 126768ddeeeSVladimir Zapolskiy 127768ddeeeSVladimir Zapolskiy #define CONFIG_BOOTCOMMAND \ 128768ddeeeSVladimir Zapolskiy "dhcp; " \ 129768ddeeeSVladimir Zapolskiy "tftp ${loadaddr} ${serverip}:${tftpdir}/${bootfile}; " \ 130768ddeeeSVladimir Zapolskiy "tftp ${dtbaddr} ${serverip}:${tftpdir}/devkit3250.dtb; " \ 131768ddeeeSVladimir Zapolskiy "setenv nfsargs ip=dhcp root=/dev/nfs nfsroot=${serverip}:${nfsroot},tcp; " \ 132768ddeeeSVladimir Zapolskiy "setenv bootargs ${bootargs} ${nfsargs} ${userargs}; " \ 133768ddeeeSVladimir Zapolskiy "bootm ${loadaddr} - ${dtbaddr}" 134768ddeeeSVladimir Zapolskiy 135768ddeeeSVladimir Zapolskiy #define CONFIG_EXTRA_ENV_SETTINGS \ 136768ddeeeSVladimir Zapolskiy "autoload=no\0" \ 137768ddeeeSVladimir Zapolskiy "ethaddr=00:01:90:00:C0:81\0" \ 138768ddeeeSVladimir Zapolskiy "dtbaddr=0x81000000\0" \ 139768ddeeeSVladimir Zapolskiy "nfsroot=/opt/projects/images/vladimir/oe/devkit3250/rootfs\0" \ 140768ddeeeSVladimir Zapolskiy "tftpdir=vladimir/oe/devkit3250\0" \ 141768ddeeeSVladimir Zapolskiy "userargs=oops=panic\0" 142463ec1caSVladimir Zapolskiy 143463ec1caSVladimir Zapolskiy /* 144463ec1caSVladimir Zapolskiy * U-Boot Commands 145463ec1caSVladimir Zapolskiy */ 146463ec1caSVladimir Zapolskiy 147463ec1caSVladimir Zapolskiy /* 148463ec1caSVladimir Zapolskiy * Boot Linux 149463ec1caSVladimir Zapolskiy */ 150463ec1caSVladimir Zapolskiy #define CONFIG_CMDLINE_TAG 151463ec1caSVladimir Zapolskiy #define CONFIG_SETUP_MEMORY_TAGS 152463ec1caSVladimir Zapolskiy 153463ec1caSVladimir Zapolskiy #define CONFIG_BOOTFILE "uImage" 154463ec1caSVladimir Zapolskiy #define CONFIG_LOADADDR 0x80008000 155463ec1caSVladimir Zapolskiy 156463ec1caSVladimir Zapolskiy /* 157e9b3ce3fSVladimir Zapolskiy * SPL specific defines 158e9b3ce3fSVladimir Zapolskiy */ 159e9b3ce3fSVladimir Zapolskiy /* SPL will be executed at offset 0 */ 160e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_TEXT_BASE 0x00000000 161e9b3ce3fSVladimir Zapolskiy 162e9b3ce3fSVladimir Zapolskiy /* SPL will use SRAM as stack */ 163e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_STACK 0x0000FFF8 164e9b3ce3fSVladimir Zapolskiy 165e9b3ce3fSVladimir Zapolskiy /* Use the framework and generic lib */ 166e9b3ce3fSVladimir Zapolskiy 167e9b3ce3fSVladimir Zapolskiy /* SPL will use serial */ 168e9b3ce3fSVladimir Zapolskiy 169e9b3ce3fSVladimir Zapolskiy /* SPL loads an image from NAND */ 170e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_RAW_ONLY 171e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_DRIVERS 172e9b3ce3fSVladimir Zapolskiy 173e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_ECC 174e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_SOFTECC 175e9b3ce3fSVladimir Zapolskiy 176e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_MAX_SIZE 0x20000 177e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_PAD_TO CONFIG_SPL_MAX_SIZE 178e9b3ce3fSVladimir Zapolskiy 179e9b3ce3fSVladimir Zapolskiy /* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */ 180e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 181e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_SIZE 0x60000 182e9b3ce3fSVladimir Zapolskiy 183e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 184e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_DST CONFIG_SYS_TEXT_BASE 185e9b3ce3fSVladimir Zapolskiy 186e9b3ce3fSVladimir Zapolskiy /* See common/spl/spl.c spl_set_header_raw_uboot() */ 187e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_MONITOR_LEN CONFIG_SYS_NAND_U_BOOT_SIZE 188e9b3ce3fSVladimir Zapolskiy 189e9b3ce3fSVladimir Zapolskiy /* 190463ec1caSVladimir Zapolskiy * Include SoC specific configuration 191463ec1caSVladimir Zapolskiy */ 192463ec1caSVladimir Zapolskiy #include <asm/arch/config.h> 193463ec1caSVladimir Zapolskiy 194463ec1caSVladimir Zapolskiy #endif /* __CONFIG_DEVKIT3250_H__*/ 195