1*c21c28b6SMarek Vasut /* 2*c21c28b6SMarek Vasut * DENX MA5D4 configuration 3*c21c28b6SMarek Vasut * Copyright (C) 2015 Marek Vasut <marex@denx.de> 4*c21c28b6SMarek Vasut * 5*c21c28b6SMarek Vasut * SPDX-License-Identifier: GPL-2.0+ 6*c21c28b6SMarek Vasut */ 7*c21c28b6SMarek Vasut 8*c21c28b6SMarek Vasut #ifndef __MA5D4EVK_CONFIG_H__ 9*c21c28b6SMarek Vasut #define __MA5D4EVK_CONFIG_H__ 10*c21c28b6SMarek Vasut 11*c21c28b6SMarek Vasut #define CONFIG_SYS_NO_FLASH 12*c21c28b6SMarek Vasut 13*c21c28b6SMarek Vasut #define CONFIG_FIT 14*c21c28b6SMarek Vasut 15*c21c28b6SMarek Vasut #define CONFIG_TIMESTAMP /* Print image info with timestamp */ 16*c21c28b6SMarek Vasut 17*c21c28b6SMarek Vasut #include "at91-sama5_common.h" 18*c21c28b6SMarek Vasut #undef CONFIG_BOOTARGS 19*c21c28b6SMarek Vasut #define CONFIG_SYS_USE_SERIALFLASH 1 20*c21c28b6SMarek Vasut 21*c21c28b6SMarek Vasut /* 22*c21c28b6SMarek Vasut * U-Boot Commands 23*c21c28b6SMarek Vasut */ 24*c21c28b6SMarek Vasut #define CONFIG_DOS_PARTITION 25*c21c28b6SMarek Vasut #define CONFIG_FAT_WRITE 26*c21c28b6SMarek Vasut /*#define CONFIG_LCD*/ 27*c21c28b6SMarek Vasut 28*c21c28b6SMarek Vasut #define CONFIG_CMD_ASKENV 29*c21c28b6SMarek Vasut #define CONFIG_CMD_CACHE 30*c21c28b6SMarek Vasut #define CONFIG_CMD_DHCP 31*c21c28b6SMarek Vasut #define CONFIG_CMD_EXT4 32*c21c28b6SMarek Vasut #define CONFIG_CMD_EXT4_WRITE 33*c21c28b6SMarek Vasut #define CONFIG_CMD_FAT 34*c21c28b6SMarek Vasut #define CONFIG_CMD_FS_GENERIC 35*c21c28b6SMarek Vasut #define CONFIG_CMD_GREPENV 36*c21c28b6SMarek Vasut #define CONFIG_CMD_MII 37*c21c28b6SMarek Vasut #define CONFIG_CMD_MMC 38*c21c28b6SMarek Vasut #define CONFIG_CMD_PING 39*c21c28b6SMarek Vasut #define CONFIG_CMD_SF 40*c21c28b6SMarek Vasut #define CONFIG_CMD_USB 41*c21c28b6SMarek Vasut 42*c21c28b6SMarek Vasut /* 43*c21c28b6SMarek Vasut * Memory configurations 44*c21c28b6SMarek Vasut */ 45*c21c28b6SMarek Vasut #define CONFIG_NR_DRAM_BANKS 1 46*c21c28b6SMarek Vasut #define CONFIG_SYS_SDRAM_BASE ATMEL_BASE_DDRCS 47*c21c28b6SMarek Vasut #define CONFIG_SYS_SDRAM_SIZE 0x10000000 48*c21c28b6SMarek Vasut 49*c21c28b6SMarek Vasut #ifdef CONFIG_SPL_BUILD 50*c21c28b6SMarek Vasut #define CONFIG_SYS_INIT_SP_ADDR 0x210000 51*c21c28b6SMarek Vasut #else 52*c21c28b6SMarek Vasut #define CONFIG_SYS_INIT_SP_ADDR \ 53*c21c28b6SMarek Vasut (CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE) 54*c21c28b6SMarek Vasut #endif 55*c21c28b6SMarek Vasut 56*c21c28b6SMarek Vasut /* 57*c21c28b6SMarek Vasut * Environment 58*c21c28b6SMarek Vasut */ 59*c21c28b6SMarek Vasut #define CONFIG_ENV_IS_IN_SPI_FLASH 60*c21c28b6SMarek Vasut #define CONFIG_SYS_REDUNDAND_ENVIRONMENT 61*c21c28b6SMarek Vasut #define CONFIG_ENV_OFFSET 0x8000 62*c21c28b6SMarek Vasut #define CONFIG_ENV_SIZE 0x4000 63*c21c28b6SMarek Vasut #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) 64*c21c28b6SMarek Vasut #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 65*c21c28b6SMarek Vasut #define CONFIG_ENV_SECT_SIZE 0x1000 66*c21c28b6SMarek Vasut 67*c21c28b6SMarek Vasut /* 68*c21c28b6SMarek Vasut * U-Boot general configurations 69*c21c28b6SMarek Vasut */ 70*c21c28b6SMarek Vasut #define CONFIG_VERSION_VARIABLE /* U-BOOT version */ 71*c21c28b6SMarek Vasut 72*c21c28b6SMarek Vasut /* 73*c21c28b6SMarek Vasut * Serial Driver 74*c21c28b6SMarek Vasut */ 75*c21c28b6SMarek Vasut #define CONFIG_ATMEL_USART 76*c21c28b6SMarek Vasut #define CONFIG_USART_BASE ATMEL_BASE_USART0 77*c21c28b6SMarek Vasut #define CONFIG_USART_ID ATMEL_ID_USART0 78*c21c28b6SMarek Vasut 79*c21c28b6SMarek Vasut /* 80*c21c28b6SMarek Vasut * Ethernet 81*c21c28b6SMarek Vasut */ 82*c21c28b6SMarek Vasut #ifdef CONFIG_CMD_NET 83*c21c28b6SMarek Vasut #define CONFIG_MACB 84*c21c28b6SMarek Vasut #define CONFIG_RMII 85*c21c28b6SMarek Vasut #define CONFIG_NET_RETRY_COUNT 20 86*c21c28b6SMarek Vasut #define CONFIG_MACB_SEARCH_PHY 87*c21c28b6SMarek Vasut #define CONFIG_ARP_TIMEOUT 200UL 88*c21c28b6SMarek Vasut #define CONFIG_IP_DEFRAG 89*c21c28b6SMarek Vasut #endif 90*c21c28b6SMarek Vasut 91*c21c28b6SMarek Vasut /* 92*c21c28b6SMarek Vasut * LCD 93*c21c28b6SMarek Vasut */ 94*c21c28b6SMarek Vasut #ifdef CONFIG_LCD 95*c21c28b6SMarek Vasut #define CONFIG_CMD_BMP 96*c21c28b6SMarek Vasut #define CONFIG_BMP_16BPP 97*c21c28b6SMarek Vasut #define CONFIG_BMP_24BPP 98*c21c28b6SMarek Vasut #define CONFIG_BMP_32BPP 99*c21c28b6SMarek Vasut #define LCD_BPP LCD_COLOR16 100*c21c28b6SMarek Vasut #define LCD_OUTPUT_BPP 24 101*c21c28b6SMarek Vasut #define CONFIG_ATMEL_HLCD 102*c21c28b6SMarek Vasut #define CONFIG_SYS_CONSOLE_IS_IN_ENV 103*c21c28b6SMarek Vasut #endif 104*c21c28b6SMarek Vasut 105*c21c28b6SMarek Vasut /* 106*c21c28b6SMarek Vasut * SD/MMC 107*c21c28b6SMarek Vasut */ 108*c21c28b6SMarek Vasut #ifdef CONFIG_CMD_MMC 109*c21c28b6SMarek Vasut #define CONFIG_MMC 110*c21c28b6SMarek Vasut #define CONFIG_GENERIC_MMC 111*c21c28b6SMarek Vasut #define CONFIG_GENERIC_ATMEL_MCI 112*c21c28b6SMarek Vasut #endif 113*c21c28b6SMarek Vasut 114*c21c28b6SMarek Vasut /* 115*c21c28b6SMarek Vasut * SPI NOR (boot memory) 116*c21c28b6SMarek Vasut */ 117*c21c28b6SMarek Vasut #ifdef CONFIG_CMD_SF 118*c21c28b6SMarek Vasut #define CONFIG_ATMEL_SPI 119*c21c28b6SMarek Vasut #define CONFIG_ATMEL_SPI0 120*c21c28b6SMarek Vasut #define CONFIG_SPI_FLASH_ATMEL 121*c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_BUS 0 122*c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_CS 0 123*c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_SPEED 30000000 124*c21c28b6SMarek Vasut #endif 125*c21c28b6SMarek Vasut 126*c21c28b6SMarek Vasut /* 127*c21c28b6SMarek Vasut * USB 128*c21c28b6SMarek Vasut */ 129*c21c28b6SMarek Vasut #ifdef CONFIG_CMD_USB 130*c21c28b6SMarek Vasut #define CONFIG_USB_EHCI 131*c21c28b6SMarek Vasut #define CONFIG_USB_EHCI_ATMEL 132*c21c28b6SMarek Vasut #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 133*c21c28b6SMarek Vasut #define CONFIG_USB_STORAGE 134*c21c28b6SMarek Vasut 135*c21c28b6SMarek Vasut /* USB device */ 136*c21c28b6SMarek Vasut #define CONFIG_USB_GADGET 137*c21c28b6SMarek Vasut #define CONFIG_USB_GADGET_DUALSPEED 138*c21c28b6SMarek Vasut #define CONFIG_USB_GADGET_ATMEL_USBA 139*c21c28b6SMarek Vasut #define CONFIG_USB_ETHER 140*c21c28b6SMarek Vasut #define CONFIG_USB_ETH_RNDIS 141*c21c28b6SMarek Vasut #define CONFIG_USBNET_MANUFACTURER "DENX" 142*c21c28b6SMarek Vasut #endif 143*c21c28b6SMarek Vasut 144*c21c28b6SMarek Vasut /* 145*c21c28b6SMarek Vasut * Boot Linux 146*c21c28b6SMarek Vasut */ 147*c21c28b6SMarek Vasut #define CONFIG_CMDLINE_TAG 148*c21c28b6SMarek Vasut #define CONFIG_INITRD_TAG 149*c21c28b6SMarek Vasut #define CONFIG_SETUP_MEMORY_TAGS 150*c21c28b6SMarek Vasut #define CONFIG_BOOTDELAY 3 151*c21c28b6SMarek Vasut #define CONFIG_BOOTFILE "fitImage" 152*c21c28b6SMarek Vasut #define CONFIG_BOOTARGS "console=ttyS3,115200" 153*c21c28b6SMarek Vasut #define CONFIG_LOADADDR 0x20800000 154*c21c28b6SMarek Vasut #define CONFIG_BOOTCOMMAND "run mmc_mmc" 155*c21c28b6SMarek Vasut #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 156*c21c28b6SMarek Vasut #define CONFIG_OF_LIBFDT 157*c21c28b6SMarek Vasut 158*c21c28b6SMarek Vasut /* 159*c21c28b6SMarek Vasut * Extra Environments 160*c21c28b6SMarek Vasut */ 161*c21c28b6SMarek Vasut #define CONFIG_PREBOOT "run try_bootscript" 162*c21c28b6SMarek Vasut #define CONFIG_HOSTNAME ma5d4evk 163*c21c28b6SMarek Vasut 164*c21c28b6SMarek Vasut #define CONFIG_EXTRA_ENV_SETTINGS \ 165*c21c28b6SMarek Vasut "consdev=ttyS3\0" \ 166*c21c28b6SMarek Vasut "baudrate=115200\0" \ 167*c21c28b6SMarek Vasut "bootscript=boot.scr\0" \ 168*c21c28b6SMarek Vasut "bootdev=/dev/mmcblk1p1\0" \ 169*c21c28b6SMarek Vasut "bootpart=1:1\0" \ 170*c21c28b6SMarek Vasut "rootdev=/dev/mmcblk1p2\0" \ 171*c21c28b6SMarek Vasut "netdev=eth0\0" \ 172*c21c28b6SMarek Vasut "kernel_addr_r=0x22000000\0" \ 173*c21c28b6SMarek Vasut "update_spi_firmware_spl_addr=0x21000000\0" \ 174*c21c28b6SMarek Vasut "update_spi_firmware_spl_filename=boot.bin\0" \ 175*c21c28b6SMarek Vasut "update_spi_firmware_addr=0x22000000\0" \ 176*c21c28b6SMarek Vasut "update_spi_firmware_filename=u-boot.img\0" \ 177*c21c28b6SMarek Vasut "update_spi_firmware=" /* Update the SPI flash firmware */ \ 178*c21c28b6SMarek Vasut "if sf probe ; then " \ 179*c21c28b6SMarek Vasut "if tftp ${update_spi_firmware_spl_addr} " \ 180*c21c28b6SMarek Vasut "${update_spi_firmware_spl_filename} ; then " \ 181*c21c28b6SMarek Vasut "setenv update_spi_firmware_spl_filesize ${filesize} ; "\ 182*c21c28b6SMarek Vasut "if tftp ${update_spi_firmware_addr} " \ 183*c21c28b6SMarek Vasut "${update_spi_firmware_filename} ; then " \ 184*c21c28b6SMarek Vasut "setenv update_spi_firmware_filesize ${filesize} ; " \ 185*c21c28b6SMarek Vasut "sf update ${update_spi_firmware_spl_addr} 0x0 " \ 186*c21c28b6SMarek Vasut "${update_spi_firmware_spl_filesize} ; " \ 187*c21c28b6SMarek Vasut "sf update ${update_spi_firmware_addr} 0x10000 " \ 188*c21c28b6SMarek Vasut "${update_spi_firmware_filesize} ; " \ 189*c21c28b6SMarek Vasut "fi ; " \ 190*c21c28b6SMarek Vasut "fi ; " \ 191*c21c28b6SMarek Vasut "fi\0" \ 192*c21c28b6SMarek Vasut "addcons=" \ 193*c21c28b6SMarek Vasut "setenv bootargs ${bootargs} " \ 194*c21c28b6SMarek Vasut "console=${consdev},${baudrate}\0" \ 195*c21c28b6SMarek Vasut "addip=" \ 196*c21c28b6SMarek Vasut "setenv bootargs ${bootargs} " \ 197*c21c28b6SMarek Vasut "ip=${ipaddr}:${serverip}:${gatewayip}:" \ 198*c21c28b6SMarek Vasut "${netmask}:${hostname}:${netdev}:off\0" \ 199*c21c28b6SMarek Vasut "addmisc=" \ 200*c21c28b6SMarek Vasut "setenv bootargs ${bootargs} ${miscargs}\0" \ 201*c21c28b6SMarek Vasut "addargs=run addcons addmisc\0" \ 202*c21c28b6SMarek Vasut "mmcload=" \ 203*c21c28b6SMarek Vasut "mmc rescan ; " \ 204*c21c28b6SMarek Vasut "load mmc ${bootpart} ${kernel_addr_r} ${bootfile}\0" \ 205*c21c28b6SMarek Vasut "netload=" \ 206*c21c28b6SMarek Vasut "tftp ${kernel_addr_r} ${hostname}/${bootfile}\0" \ 207*c21c28b6SMarek Vasut "miscargs=nohlt panic=1\0" \ 208*c21c28b6SMarek Vasut "mmcargs=setenv bootargs root=${rootdev} rw rootwait\0" \ 209*c21c28b6SMarek Vasut "nfsargs=" \ 210*c21c28b6SMarek Vasut "setenv bootargs root=/dev/nfs rw " \ 211*c21c28b6SMarek Vasut "nfsroot=${serverip}:${rootpath},v3,tcp\0" \ 212*c21c28b6SMarek Vasut "mmc_mmc=" \ 213*c21c28b6SMarek Vasut "run mmcload mmcargs addargs ; " \ 214*c21c28b6SMarek Vasut "bootm ${kernel_addr_r}\0" \ 215*c21c28b6SMarek Vasut "mmc_nfs=" \ 216*c21c28b6SMarek Vasut "run mmcload nfsargs addip addargs ; " \ 217*c21c28b6SMarek Vasut "bootm ${kernel_addr_r}\0" \ 218*c21c28b6SMarek Vasut "net_mmc=" \ 219*c21c28b6SMarek Vasut "run netload mmcargs addargs ; " \ 220*c21c28b6SMarek Vasut "bootm ${kernel_addr_r}\0" \ 221*c21c28b6SMarek Vasut "net_nfs=" \ 222*c21c28b6SMarek Vasut "run netload nfsargs addip addargs ; " \ 223*c21c28b6SMarek Vasut "bootm ${kernel_addr_r}\0" \ 224*c21c28b6SMarek Vasut "try_bootscript=" \ 225*c21c28b6SMarek Vasut "mmc rescan;" \ 226*c21c28b6SMarek Vasut "if test -e mmc ${bootpart} ${bootscript} ; then " \ 227*c21c28b6SMarek Vasut "if load mmc ${bootpart} ${kernel_addr_r} ${bootscript};"\ 228*c21c28b6SMarek Vasut "then ; " \ 229*c21c28b6SMarek Vasut "echo Running bootscript... ; " \ 230*c21c28b6SMarek Vasut "source ${kernel_addr_r} ; " \ 231*c21c28b6SMarek Vasut "fi ; " \ 232*c21c28b6SMarek Vasut "fi\0" 233*c21c28b6SMarek Vasut /* SPL */ 234*c21c28b6SMarek Vasut #define CONFIG_SPL_FRAMEWORK 235*c21c28b6SMarek Vasut #define CONFIG_SPL_TEXT_BASE 0x200000 236*c21c28b6SMarek Vasut #define CONFIG_SPL_MAX_SIZE 0x10000 237*c21c28b6SMarek Vasut #define CONFIG_SPL_BSS_START_ADDR 0x20000000 238*c21c28b6SMarek Vasut #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 239*c21c28b6SMarek Vasut #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 240*c21c28b6SMarek Vasut #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 241*c21c28b6SMarek Vasut 242*c21c28b6SMarek Vasut #define CONFIG_SPL_LIBCOMMON_SUPPORT 243*c21c28b6SMarek Vasut #define CONFIG_SPL_LIBGENERIC_SUPPORT 244*c21c28b6SMarek Vasut #define CONFIG_SPL_GPIO_SUPPORT 245*c21c28b6SMarek Vasut #define CONFIG_SPL_SERIAL_SUPPORT 246*c21c28b6SMarek Vasut 247*c21c28b6SMarek Vasut #define CONFIG_SPL_BOARD_INIT 248*c21c28b6SMarek Vasut #define CONFIG_SYS_MONITOR_LEN (512 << 10) 249*c21c28b6SMarek Vasut 250*c21c28b6SMarek Vasut #define CONFIG_SPL_SPI_SUPPORT 251*c21c28b6SMarek Vasut #define CONFIG_SPL_SPI_FLASH_SUPPORT 252*c21c28b6SMarek Vasut #define CONFIG_SPL_SPI_LOAD 253*c21c28b6SMarek Vasut #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000 254*c21c28b6SMarek Vasut 255*c21c28b6SMarek Vasut #endif /* __MA5D4EVK_CONFIG_H__ */ 256