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