13225f34eSBo Shen /* 23225f34eSBo Shen * Configuation settings for the SAMA5D3xEK board. 33225f34eSBo Shen * 43225f34eSBo Shen * Copyright (C) 2012 - 2013 Atmel 53225f34eSBo Shen * 63225f34eSBo Shen * based on at91sam9m10g45ek.h by: 73225f34eSBo Shen * Stelian Pop <stelian@popies.net> 83225f34eSBo Shen * Lead Tech Design <www.leadtechdesign.com> 93225f34eSBo Shen * 101a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 113225f34eSBo Shen */ 123225f34eSBo Shen 133225f34eSBo Shen #ifndef __CONFIG_H 143225f34eSBo Shen #define __CONFIG_H 153225f34eSBo Shen 16b2d387bcSWu, Josh #include "at91-sama5_common.h" 173225f34eSBo Shen 1889a3658aSWu, Josh #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG 1989a3658aSWu, Josh 203225f34eSBo Shen /* serial console */ 213225f34eSBo Shen #define CONFIG_ATMEL_USART 223225f34eSBo Shen #define CONFIG_USART_BASE ATMEL_BASE_DBGU 233225f34eSBo Shen #define CONFIG_USART_ID ATMEL_ID_DBGU 243225f34eSBo Shen 253225f34eSBo Shen /* 263225f34eSBo Shen * This needs to be defined for the OHCI code to work but it is defined as 273225f34eSBo Shen * ATMEL_ID_UHPHS in the CPU specific header files. 283225f34eSBo Shen */ 293225f34eSBo Shen #define ATMEL_ID_UHP ATMEL_ID_UHPHS 303225f34eSBo Shen 313225f34eSBo Shen /* 323225f34eSBo Shen * Specify the clock enable bit in the PMC_SCER register. 333225f34eSBo Shen */ 343225f34eSBo Shen #define ATMEL_PMC_UHP AT91SAM926x_PMC_UHP 353225f34eSBo Shen 363225f34eSBo Shen /* LCD */ 373225f34eSBo Shen #define LCD_BPP LCD_COLOR16 383225f34eSBo Shen #define LCD_OUTPUT_BPP 24 393225f34eSBo Shen #define CONFIG_LCD_LOGO 403225f34eSBo Shen #define CONFIG_LCD_INFO 413225f34eSBo Shen #define CONFIG_LCD_INFO_BELOW_LOGO 423225f34eSBo Shen #define CONFIG_SYS_WHITE_ON_BLACK 433225f34eSBo Shen #define CONFIG_ATMEL_HLCD 443225f34eSBo Shen #define CONFIG_ATMEL_LCD_RGB565 453225f34eSBo Shen 463225f34eSBo Shen /* board specific (not enough SRAM) */ 473225f34eSBo Shen #define CONFIG_SAMA5D3_LCD_BASE 0x23E00000 483225f34eSBo Shen 49d6b79434SBo Shen /* NOR flash */ 50*e856bdcfSMasahiro Yamada #ifdef CONFIG_MTD_NOR_FLASH 51d6b79434SBo Shen #define CONFIG_FLASH_CFI_DRIVER 52d6b79434SBo Shen #define CONFIG_SYS_FLASH_CFI 53d6b79434SBo Shen #define CONFIG_SYS_FLASH_PROTECTION 54d6b79434SBo Shen #define CONFIG_SYS_FLASH_BASE 0x10000000 55d6b79434SBo Shen #define CONFIG_SYS_MAX_FLASH_SECT 131 56d6b79434SBo Shen #define CONFIG_SYS_MAX_FLASH_BANKS 1 57d6b79434SBo Shen #endif 583225f34eSBo Shen 593225f34eSBo Shen /* SDRAM */ 603225f34eSBo Shen #define CONFIG_NR_DRAM_BANKS 1 613225f34eSBo Shen #define CONFIG_SYS_SDRAM_BASE ATMEL_BASE_DDRCS 623225f34eSBo Shen #define CONFIG_SYS_SDRAM_SIZE 0x20000000 633225f34eSBo Shen 64c5e8885aSBo Shen #ifdef CONFIG_SPL_BUILD 65c5e8885aSBo Shen #define CONFIG_SYS_INIT_SP_ADDR 0x310000 66c5e8885aSBo Shen #else 673225f34eSBo Shen #define CONFIG_SYS_INIT_SP_ADDR \ 683225f34eSBo Shen (CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE) 69c5e8885aSBo Shen #endif 703225f34eSBo Shen 713225f34eSBo Shen /* SerialFlash */ 723225f34eSBo Shen 733225f34eSBo Shen #ifdef CONFIG_CMD_SF 743225f34eSBo Shen #define CONFIG_ATMEL_SPI 753225f34eSBo Shen #define CONFIG_SF_DEFAULT_SPEED 30000000 763225f34eSBo Shen #endif 773225f34eSBo Shen 783225f34eSBo Shen /* NAND flash */ 793225f34eSBo Shen #define CONFIG_CMD_NAND 803225f34eSBo Shen 813225f34eSBo Shen #ifdef CONFIG_CMD_NAND 823225f34eSBo Shen #define CONFIG_NAND_ATMEL 833225f34eSBo Shen #define CONFIG_SYS_MAX_NAND_DEVICE 1 843225f34eSBo Shen #define CONFIG_SYS_NAND_BASE ATMEL_BASE_CS3 853225f34eSBo Shen /* our ALE is AD21 */ 863225f34eSBo Shen #define CONFIG_SYS_NAND_MASK_ALE (1 << 21) 873225f34eSBo Shen /* our CLE is AD22 */ 883225f34eSBo Shen #define CONFIG_SYS_NAND_MASK_CLE (1 << 22) 893225f34eSBo Shen #define CONFIG_SYS_NAND_ONFI_DETECTION 903225f34eSBo Shen /* PMECC & PMERRLOC */ 913225f34eSBo Shen #define CONFIG_ATMEL_NAND_HWECC 923225f34eSBo Shen #define CONFIG_ATMEL_NAND_HW_PMECC 933225f34eSBo Shen #define CONFIG_PMECC_CAP 4 943225f34eSBo Shen #define CONFIG_PMECC_SECTOR_SIZE 512 953225f34eSBo Shen #define CONFIG_CMD_NAND_TRIMFFS 963225f34eSBo Shen #endif 973225f34eSBo Shen 983225f34eSBo Shen /* Ethernet Hardware */ 993225f34eSBo Shen #define CONFIG_MACB 1003225f34eSBo Shen #define CONFIG_RMII 1013225f34eSBo Shen #define CONFIG_NET_RETRY_COUNT 20 1023225f34eSBo Shen #define CONFIG_MACB_SEARCH_PHY 103e08d6f3aSBo Shen #define CONFIG_RGMII 104e08d6f3aSBo Shen #define CONFIG_PHYLIB 105e08d6f3aSBo Shen #define CONFIG_PHY_MICREL 106e08d6f3aSBo Shen #define CONFIG_PHY_MICREL_KSZ9021 1073225f34eSBo Shen 1083225f34eSBo Shen /* MMC */ 1093225f34eSBo Shen 1103225f34eSBo Shen #ifdef CONFIG_CMD_MMC 1113225f34eSBo Shen #define CONFIG_GENERIC_ATMEL_MCI 1123225f34eSBo Shen #define ATMEL_BASE_MMCI ATMEL_BASE_MCI0 1133225f34eSBo Shen #endif 1143225f34eSBo Shen 1153225f34eSBo Shen /* USB */ 1163225f34eSBo Shen 1173225f34eSBo Shen #ifdef CONFIG_CMD_USB 1183225f34eSBo Shen #define CONFIG_USB_ATMEL 119dcd2f1a0SBo Shen #define CONFIG_USB_ATMEL_CLK_SEL_UPLL 1203225f34eSBo Shen #define CONFIG_USB_OHCI_NEW 1213225f34eSBo Shen #define CONFIG_SYS_USB_OHCI_CPU_INIT 1223225f34eSBo Shen #define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI 1233225f34eSBo Shen #define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3" 1243225f34eSBo Shen #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3 1253225f34eSBo Shen #endif 1263225f34eSBo Shen 1273668ce3cSBo Shen /* USB device */ 1283668ce3cSBo Shen #define CONFIG_USB_ETHER 1293668ce3cSBo Shen #define CONFIG_USB_ETH_RNDIS 1303668ce3cSBo Shen #define CONFIG_USBNET_MANUFACTURER "Atmel SAMA5D3xEK" 1313668ce3cSBo Shen 1323225f34eSBo Shen #if defined(CONFIG_CMD_USB) || defined(CONFIG_CMD_MMC) 133a248558aSWu, Josh #define CONFIG_FAT_WRITE 1343225f34eSBo Shen #endif 1353225f34eSBo Shen 1363225f34eSBo Shen #define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */ 1373225f34eSBo Shen 1383225f34eSBo Shen #ifdef CONFIG_SYS_USE_SERIALFLASH 1397a53b954SWu, Josh /* override the bootcmd, bootargs and other configuration for spi flash env*/ 1403225f34eSBo Shen #elif CONFIG_SYS_USE_NANDFLASH 141dc018fefSWu, Josh /* override the bootcmd, bootargs and other configuration nandflash env */ 1423225f34eSBo Shen #elif CONFIG_SYS_USE_MMC 143372ca03fSWu, Josh /* override the bootcmd, bootargs and other configuration for sd/mmc env */ 1443225f34eSBo Shen #else 145a4c79b3aSBo Shen #define CONFIG_ENV_IS_NOWHERE 1463225f34eSBo Shen #endif 1473225f34eSBo Shen 148c5e8885aSBo Shen /* SPL */ 149c5e8885aSBo Shen #define CONFIG_SPL_FRAMEWORK 150c5e8885aSBo Shen #define CONFIG_SPL_TEXT_BASE 0x300000 151c5e8885aSBo Shen #define CONFIG_SPL_MAX_SIZE 0x10000 152c5e8885aSBo Shen #define CONFIG_SPL_BSS_START_ADDR 0x20000000 153c5e8885aSBo Shen #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 154c5e8885aSBo Shen #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 155c5e8885aSBo Shen #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 156c5e8885aSBo Shen 157c5e8885aSBo Shen #define CONFIG_SPL_BOARD_INIT 1588a45b0baSBo Shen #define CONFIG_SYS_MONITOR_LEN (512 << 10) 1598a45b0baSBo Shen 160c5e8885aSBo Shen #ifdef CONFIG_SYS_USE_MMC 161993ea97eSBo Shen #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds 162e2ccdf89SPaul Kocialkowski #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 163205b4f33SGuillaume GARDET #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" 1648a45b0baSBo Shen 16527019e4aSBo Shen #elif CONFIG_SYS_USE_NANDFLASH 16627019e4aSBo Shen #define CONFIG_SPL_NAND_DRIVERS 16727019e4aSBo Shen #define CONFIG_SPL_NAND_BASE 16827019e4aSBo Shen #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 16927019e4aSBo Shen #define CONFIG_SYS_NAND_5_ADDR_CYCLE 17027019e4aSBo Shen #define CONFIG_SYS_NAND_PAGE_SIZE 0x800 17127019e4aSBo Shen #define CONFIG_SYS_NAND_PAGE_COUNT 64 17227019e4aSBo Shen #define CONFIG_SYS_NAND_OOBSIZE 64 17327019e4aSBo Shen #define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000 17427019e4aSBo Shen #define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0 175e166a831SAndreas Bießmann #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER 17627019e4aSBo Shen 1778a45b0baSBo Shen #elif CONFIG_SYS_USE_SERIALFLASH 1788a45b0baSBo Shen #define CONFIG_SPL_SPI_LOAD 1797a53b954SWu, Josh #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 1808a45b0baSBo Shen 181c5e8885aSBo Shen #endif 182c5e8885aSBo Shen 1833225f34eSBo Shen #endif 184