1c21c28b6SMarek Vasut /* 2f1d56dffSMarek 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 #define CONFIG_SYS_USE_SERIALFLASH 1 15e3f40720SMarek Vasut #define CONFIG_BOARD_LATE_INIT 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 */ 34cc6f9deeSMarek Vasut #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE 35cc6f9deeSMarek Vasut #define CONFIG_SYS_CONSOLE_ENV_OVERWRITE 36c21c28b6SMarek Vasut #define CONFIG_ENV_SIZE 0x4000 37cc6f9deeSMarek Vasut #define CONFIG_SYS_MMC_ENV_DEV 0 /* eMMC */ 38cc6f9deeSMarek Vasut #define CONFIG_ENV_OFFSET 512 /* just after the MBR */ 39c21c28b6SMarek Vasut 40c21c28b6SMarek Vasut /* 41c21c28b6SMarek Vasut * U-Boot general configurations 42c21c28b6SMarek Vasut */ 43c21c28b6SMarek Vasut 44c21c28b6SMarek Vasut /* 45c21c28b6SMarek Vasut * Serial Driver 46c21c28b6SMarek Vasut */ 47c21c28b6SMarek Vasut #define CONFIG_ATMEL_USART 48c21c28b6SMarek Vasut #define CONFIG_USART_BASE ATMEL_BASE_USART0 49c21c28b6SMarek Vasut #define CONFIG_USART_ID ATMEL_ID_USART0 50c21c28b6SMarek Vasut 51c21c28b6SMarek Vasut /* 52c21c28b6SMarek Vasut * Ethernet 53c21c28b6SMarek Vasut */ 54c21c28b6SMarek Vasut #ifdef CONFIG_CMD_NET 55c21c28b6SMarek Vasut #define CONFIG_MACB 56c21c28b6SMarek Vasut #define CONFIG_RMII 57c21c28b6SMarek Vasut #define CONFIG_NET_RETRY_COUNT 20 58c21c28b6SMarek Vasut #define CONFIG_MACB_SEARCH_PHY 59c21c28b6SMarek Vasut #define CONFIG_ARP_TIMEOUT 200UL 60c21c28b6SMarek Vasut #define CONFIG_IP_DEFRAG 61c21c28b6SMarek Vasut #endif 62c21c28b6SMarek Vasut 63c21c28b6SMarek Vasut /* 64c21c28b6SMarek Vasut * LCD 65c21c28b6SMarek Vasut */ 66c21c28b6SMarek Vasut #ifdef CONFIG_LCD 67c21c28b6SMarek Vasut #define CONFIG_BMP_16BPP 68c21c28b6SMarek Vasut #define CONFIG_BMP_24BPP 69c21c28b6SMarek Vasut #define CONFIG_BMP_32BPP 70c21c28b6SMarek Vasut #define LCD_BPP LCD_COLOR16 71c21c28b6SMarek Vasut #define LCD_OUTPUT_BPP 24 72c21c28b6SMarek Vasut #define CONFIG_ATMEL_HLCD 73c21c28b6SMarek Vasut #endif 74c21c28b6SMarek Vasut 75c21c28b6SMarek Vasut /* 76c21c28b6SMarek Vasut * SD/MMC 77c21c28b6SMarek Vasut */ 78c21c28b6SMarek Vasut #ifdef CONFIG_CMD_MMC 79c21c28b6SMarek Vasut #define CONFIG_GENERIC_ATMEL_MCI 80c21c28b6SMarek Vasut #endif 81c21c28b6SMarek Vasut 82c21c28b6SMarek Vasut /* 83c21c28b6SMarek Vasut * SPI NOR (boot memory) 84c21c28b6SMarek Vasut */ 85c21c28b6SMarek Vasut #ifdef CONFIG_CMD_SF 86*10f7c0a9STom Rini #define CONFIG_ATMEL_SPI 87*10f7c0a9STom Rini #define CONFIG_ATMEL_SPI0 88c21c28b6SMarek Vasut #define CONFIG_SPI_FLASH_ATMEL 89c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_BUS 0 90c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_CS 0 91c21c28b6SMarek Vasut #define CONFIG_SF_DEFAULT_SPEED 30000000 92c21c28b6SMarek Vasut #endif 93c21c28b6SMarek Vasut 94c21c28b6SMarek Vasut /* 95c21c28b6SMarek Vasut * USB 96c21c28b6SMarek Vasut */ 97c21c28b6SMarek Vasut #ifdef CONFIG_CMD_USB 98c21c28b6SMarek Vasut 99c21c28b6SMarek Vasut /* USB device */ 100cdc12eedSMarek Vasut #define CONFIG_USB_FUNCTION_MASS_STORAGE 101cdc12eedSMarek Vasut #define CONFIG_SYS_DFU_DATA_BUF_SIZE (1 * 1024 * 1024) 102cdc12eedSMarek Vasut #define DFU_DEFAULT_POLL_TIMEOUT 300 103c21c28b6SMarek Vasut #endif 104c21c28b6SMarek Vasut 105c21c28b6SMarek Vasut /* 106c21c28b6SMarek Vasut * Boot Linux 107c21c28b6SMarek Vasut */ 108c21c28b6SMarek Vasut #define CONFIG_CMDLINE_TAG 109c21c28b6SMarek Vasut #define CONFIG_INITRD_TAG 110c21c28b6SMarek Vasut #define CONFIG_SETUP_MEMORY_TAGS 111c21c28b6SMarek Vasut #define CONFIG_BOOTFILE "fitImage" 112c21c28b6SMarek Vasut #define CONFIG_LOADADDR 0x20800000 113c21c28b6SMarek Vasut #define CONFIG_BOOTCOMMAND "run mmc_mmc" 114c21c28b6SMarek Vasut #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 115c21c28b6SMarek Vasut 116c21c28b6SMarek Vasut /* 117c21c28b6SMarek Vasut * Extra Environments 118c21c28b6SMarek Vasut */ 119c21c28b6SMarek Vasut #define CONFIG_PREBOOT "run try_bootscript" 120c21c28b6SMarek Vasut #define CONFIG_HOSTNAME ma5d4evk 121c21c28b6SMarek Vasut 122c21c28b6SMarek Vasut #define CONFIG_EXTRA_ENV_SETTINGS \ 123c21c28b6SMarek Vasut "consdev=ttyS3\0" \ 124c21c28b6SMarek Vasut "baudrate=115200\0" \ 125c21c28b6SMarek Vasut "bootscript=boot.scr\0" \ 1264425be39SMarek Vasut "bootdev=/dev/mmcblk0p1\0" \ 1274425be39SMarek Vasut "bootpart=0:1\0" \ 1284425be39SMarek Vasut "rootdev=/dev/mmcblk0p2\0" \ 129c21c28b6SMarek Vasut "netdev=eth0\0" \ 130cdc12eedSMarek Vasut "dfu_alt_info=mmc raw 0 3867148288\0" \ 131c21c28b6SMarek Vasut "kernel_addr_r=0x22000000\0" \ 132c21c28b6SMarek Vasut "update_spi_firmware_spl_addr=0x21000000\0" \ 133c21c28b6SMarek Vasut "update_spi_firmware_spl_filename=boot.bin\0" \ 134c21c28b6SMarek Vasut "update_spi_firmware_addr=0x22000000\0" \ 135c21c28b6SMarek Vasut "update_spi_firmware_filename=u-boot.img\0" \ 136c21c28b6SMarek Vasut "update_spi_firmware=" /* Update the SPI flash firmware */ \ 137c21c28b6SMarek Vasut "if sf probe ; then " \ 138c21c28b6SMarek Vasut "if tftp ${update_spi_firmware_spl_addr} " \ 139c21c28b6SMarek Vasut "${update_spi_firmware_spl_filename} ; then " \ 140c21c28b6SMarek Vasut "setenv update_spi_firmware_spl_filesize ${filesize} ; "\ 141c21c28b6SMarek Vasut "if tftp ${update_spi_firmware_addr} " \ 142c21c28b6SMarek Vasut "${update_spi_firmware_filename} ; then " \ 143c21c28b6SMarek Vasut "setenv update_spi_firmware_filesize ${filesize} ; " \ 144c21c28b6SMarek Vasut "sf update ${update_spi_firmware_spl_addr} 0x0 " \ 145c21c28b6SMarek Vasut "${update_spi_firmware_spl_filesize} ; " \ 146c21c28b6SMarek Vasut "sf update ${update_spi_firmware_addr} 0x10000 " \ 147c21c28b6SMarek Vasut "${update_spi_firmware_filesize} ; " \ 148c21c28b6SMarek Vasut "fi ; " \ 149c21c28b6SMarek Vasut "fi ; " \ 150c21c28b6SMarek Vasut "fi\0" \ 151c21c28b6SMarek Vasut "addcons=" \ 152c21c28b6SMarek Vasut "setenv bootargs ${bootargs} " \ 153c21c28b6SMarek Vasut "console=${consdev},${baudrate}\0" \ 154c21c28b6SMarek Vasut "addip=" \ 155c21c28b6SMarek Vasut "setenv bootargs ${bootargs} " \ 156c21c28b6SMarek Vasut "ip=${ipaddr}:${serverip}:${gatewayip}:" \ 157c21c28b6SMarek Vasut "${netmask}:${hostname}:${netdev}:off\0" \ 158c21c28b6SMarek Vasut "addmisc=" \ 159c21c28b6SMarek Vasut "setenv bootargs ${bootargs} ${miscargs}\0" \ 160c21c28b6SMarek Vasut "addargs=run addcons addmisc\0" \ 161c21c28b6SMarek Vasut "mmcload=" \ 162c21c28b6SMarek Vasut "mmc rescan ; " \ 163c21c28b6SMarek Vasut "load mmc ${bootpart} ${kernel_addr_r} ${bootfile}\0" \ 164c21c28b6SMarek Vasut "netload=" \ 165c21c28b6SMarek Vasut "tftp ${kernel_addr_r} ${hostname}/${bootfile}\0" \ 166c21c28b6SMarek Vasut "miscargs=nohlt panic=1\0" \ 167c21c28b6SMarek Vasut "mmcargs=setenv bootargs root=${rootdev} rw rootwait\0" \ 168c21c28b6SMarek Vasut "nfsargs=" \ 169c21c28b6SMarek Vasut "setenv bootargs root=/dev/nfs rw " \ 170c21c28b6SMarek Vasut "nfsroot=${serverip}:${rootpath},v3,tcp\0" \ 171e3f40720SMarek Vasut "fdtimg=if test ${bootmode} = \"sf\" ; then " \ 172e3f40720SMarek Vasut "setenv kernel_fdt 1 ; " \ 173e3f40720SMarek Vasut "else ; " \ 174e3f40720SMarek Vasut "setenv kernel_fdt 2 ; " \ 175e3f40720SMarek Vasut "fi\0" \ 176c21c28b6SMarek Vasut "mmc_mmc=" \ 177e3f40720SMarek Vasut "run fdtimg mmcload mmcargs addargs ; " \ 178e3f40720SMarek Vasut "bootm ${kernel_addr_r}:kernel@1 - ${kernel_addr_r}:fdt@${kernel_fdt}\0" \ 179c21c28b6SMarek Vasut "mmc_nfs=" \ 180e3f40720SMarek Vasut "run fdtimg mmcload nfsargs addip addargs ; " \ 181e3f40720SMarek Vasut "bootm ${kernel_addr_r}:kernel@1 - ${kernel_addr_r}:fdt@${kernel_fdt}\0" \ 182c21c28b6SMarek Vasut "net_mmc=" \ 183e3f40720SMarek Vasut "run fdtimg netload mmcargs addargs ; " \ 184e3f40720SMarek Vasut "bootm ${kernel_addr_r}:kernel@1 - ${kernel_addr_r}:fdt@${kernel_fdt}\0" \ 185c21c28b6SMarek Vasut "net_nfs=" \ 186e3f40720SMarek Vasut "run fdtimg netload nfsargs addip addargs ; " \ 187e3f40720SMarek Vasut "bootm ${kernel_addr_r}:kernel@1 - ${kernel_addr_r}:fdt@${kernel_fdt}\0" \ 188c21c28b6SMarek Vasut "try_bootscript=" \ 189c21c28b6SMarek Vasut "mmc rescan;" \ 1904425be39SMarek Vasut "if test -e mmc 1:1 ${bootscript} ; then " \ 1914425be39SMarek Vasut "if load mmc 1:1 ${kernel_addr_r} ${bootscript};" \ 192c21c28b6SMarek Vasut "then ; " \ 193c21c28b6SMarek Vasut "echo Running bootscript... ; " \ 194c21c28b6SMarek Vasut "source ${kernel_addr_r} ; " \ 195c21c28b6SMarek Vasut "fi ; " \ 196c21c28b6SMarek Vasut "fi\0" 197c21c28b6SMarek Vasut /* SPL */ 198c21c28b6SMarek Vasut #define CONFIG_SPL_FRAMEWORK 199c21c28b6SMarek Vasut #define CONFIG_SPL_TEXT_BASE 0x200000 200c21c28b6SMarek Vasut #define CONFIG_SPL_MAX_SIZE 0x10000 201c21c28b6SMarek Vasut #define CONFIG_SPL_BSS_START_ADDR 0x20000000 202c21c28b6SMarek Vasut #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 203c21c28b6SMarek Vasut #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 204c21c28b6SMarek Vasut #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 205c21c28b6SMarek Vasut 206c21c28b6SMarek Vasut #define CONFIG_SYS_MONITOR_LEN (512 << 10) 207c21c28b6SMarek Vasut 208c21c28b6SMarek Vasut #define CONFIG_SPL_SPI_LOAD 209c21c28b6SMarek Vasut #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000 210c21c28b6SMarek Vasut 2114e843834SMarek Vasut #define CONFIG_SYS_USE_MMC 2124e843834SMarek Vasut #define CONFIG_SPL_MMC_SUPPORT 2134e843834SMarek Vasut #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 2144e843834SMarek Vasut #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 2154e843834SMarek Vasut #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" 2164e843834SMarek Vasut #define CONFIG_SPL_FAT_SUPPORT 2174e843834SMarek Vasut #define CONFIG_SPL_LIBDISK_SUPPORT 2184e843834SMarek Vasut 219c21c28b6SMarek Vasut #endif /* __MA5D4EVK_CONFIG_H__ */ 220