175238f23SWenyou Yang /*
275238f23SWenyou Yang  * Configuration file for the SAMA5D2 Xplained Board.
375238f23SWenyou Yang  *
475238f23SWenyou Yang  * Copyright (C) 2015 Atmel Corporation
575238f23SWenyou Yang  *		      Wenyou Yang <wenyou.yang@atmel.com>
675238f23SWenyou Yang  *
775238f23SWenyou Yang  * SPDX-License-Identifier:	GPL-2.0+
875238f23SWenyou Yang  */
975238f23SWenyou Yang 
1075238f23SWenyou Yang #ifndef __CONFIG_H
1175238f23SWenyou Yang #define __CONFIG_H
1275238f23SWenyou Yang 
1375238f23SWenyou Yang /* No NOR flash, this definition should put before common header */
1475238f23SWenyou Yang #define CONFIG_SYS_NO_FLASH
1575238f23SWenyou Yang 
1675238f23SWenyou Yang #include "at91-sama5_common.h"
1775238f23SWenyou Yang 
1875238f23SWenyou Yang /* serial console */
1975238f23SWenyou Yang #define CONFIG_ATMEL_USART
2075238f23SWenyou Yang #define CONFIG_USART_BASE		ATMEL_BASE_UART1
2175238f23SWenyou Yang #define CONFIG_USART_ID			ATMEL_ID_UART1
2275238f23SWenyou Yang 
2375238f23SWenyou Yang /* SDRAM */
2475238f23SWenyou Yang #define CONFIG_NR_DRAM_BANKS		1
2575238f23SWenyou Yang #define CONFIG_SYS_SDRAM_BASE           ATMEL_BASE_DDRCS
2675238f23SWenyou Yang #define CONFIG_SYS_SDRAM_SIZE		0x20000000
2775238f23SWenyou Yang 
28*37dadbcaSWenyou Yang #ifdef CONFIG_SPL_BUILD
29*37dadbcaSWenyou Yang #define CONFIG_SYS_INIT_SP_ADDR		0x210000
30*37dadbcaSWenyou Yang #else
3175238f23SWenyou Yang #define CONFIG_SYS_INIT_SP_ADDR \
3275238f23SWenyou Yang 	(CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE)
33*37dadbcaSWenyou Yang #endif
3475238f23SWenyou Yang 
3575238f23SWenyou Yang #define CONFIG_SYS_LOAD_ADDR		0x22000000 /* load address */
3675238f23SWenyou Yang 
3775238f23SWenyou Yang #undef CONFIG_AT91_GPIO
3875238f23SWenyou Yang #define CONFIG_ATMEL_PIO4
3975238f23SWenyou Yang 
4075238f23SWenyou Yang /* SerialFlash */
4175238f23SWenyou Yang #ifdef CONFIG_CMD_SF
4275238f23SWenyou Yang #define CONFIG_ATMEL_SPI
4375238f23SWenyou Yang #define CONFIG_ATMEL_SPI0
4475238f23SWenyou Yang #define CONFIG_SPI_FLASH_ATMEL
4575238f23SWenyou Yang #define CONFIG_SF_DEFAULT_BUS		0
4675238f23SWenyou Yang #define CONFIG_SF_DEFAULT_CS		0
4775238f23SWenyou Yang #define CONFIG_SF_DEFAULT_SPEED		30000000
4875238f23SWenyou Yang #endif
4975238f23SWenyou Yang 
5075238f23SWenyou Yang /* NAND flash */
5175238f23SWenyou Yang #undef CONFIG_CMD_NAND
5275238f23SWenyou Yang 
5375238f23SWenyou Yang /* MMC */
5475238f23SWenyou Yang #define CONFIG_CMD_MMC
5575238f23SWenyou Yang 
5675238f23SWenyou Yang #ifdef CONFIG_CMD_MMC
5775238f23SWenyou Yang #define CONFIG_MMC
5875238f23SWenyou Yang #define CONFIG_GENERIC_MMC
5975238f23SWenyou Yang #define CONFIG_SDHCI
6075238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI
6175238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI0
6275238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI1
6375238f23SWenyou Yang #define CONFIG_SUPPORT_EMMC_BOOT
6475238f23SWenyou Yang #endif
6575238f23SWenyou Yang 
6675238f23SWenyou Yang /* USB */
6775238f23SWenyou Yang #define CONFIG_CMD_USB
6875238f23SWenyou Yang 
6975238f23SWenyou Yang #ifdef CONFIG_CMD_USB
7075238f23SWenyou Yang #define CONFIG_USB_EHCI
7175238f23SWenyou Yang #define CONFIG_USB_EHCI_ATMEL
7275238f23SWenyou Yang #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS	3
7375238f23SWenyou Yang #define CONFIG_USB_STORAGE
7475238f23SWenyou Yang #endif
7575238f23SWenyou Yang 
7675238f23SWenyou Yang /* USB device */
7775238f23SWenyou Yang #define CONFIG_USB_GADGET
7875238f23SWenyou Yang #define CONFIG_USB_GADGET_DUALSPEED
7975238f23SWenyou Yang #define CONFIG_USB_GADGET_ATMEL_USBA
8075238f23SWenyou Yang #define CONFIG_USB_ETHER
8175238f23SWenyou Yang #define CONFIG_USB_ETH_RNDIS
8275238f23SWenyou Yang #define CONFIG_USBNET_MANUFACTURER      "Atmel SAMA5D2 XPlained"
8375238f23SWenyou Yang 
8475238f23SWenyou Yang #if defined(CONFIG_CMD_USB) || defined(CONFIG_CMD_MMC)
8575238f23SWenyou Yang #define CONFIG_CMD_FAT
8675238f23SWenyou Yang #define CONFIG_DOS_PARTITION
8775238f23SWenyou Yang #endif
8875238f23SWenyou Yang 
8975238f23SWenyou Yang /* Ethernet Hardware */
9075238f23SWenyou Yang #define CONFIG_MACB
9175238f23SWenyou Yang #define CONFIG_RMII
9275238f23SWenyou Yang #define CONFIG_NET_RETRY_COUNT		20
9375238f23SWenyou Yang #define CONFIG_MACB_SEARCH_PHY
9475238f23SWenyou Yang 
9575238f23SWenyou Yang /* LCD */
9675238f23SWenyou Yang /* #define CONFIG_LCD */
9775238f23SWenyou Yang 
9875238f23SWenyou Yang #ifdef CONFIG_LCD
9975238f23SWenyou Yang #define LCD_BPP				LCD_COLOR16
10075238f23SWenyou Yang #define LCD_OUTPUT_BPP                  24
10175238f23SWenyou Yang #define CONFIG_LCD_LOGO
10275238f23SWenyou Yang #define CONFIG_LCD_INFO
10375238f23SWenyou Yang #define CONFIG_LCD_INFO_BELOW_LOGO
10475238f23SWenyou Yang #define CONFIG_SYS_WHITE_ON_BLACK
10575238f23SWenyou Yang #define CONFIG_ATMEL_HLCD
10675238f23SWenyou Yang #define CONFIG_ATMEL_LCD_RGB565
10775238f23SWenyou Yang #define CONFIG_SYS_CONSOLE_IS_IN_ENV
10875238f23SWenyou Yang #endif
10975238f23SWenyou Yang 
11075238f23SWenyou Yang #ifdef CONFIG_SYS_USE_MMC
11175238f23SWenyou Yang 
11275238f23SWenyou Yang /* bootstrap + u-boot + env in sd card */
11375238f23SWenyou Yang #undef FAT_ENV_DEVICE_AND_PART
11475238f23SWenyou Yang #undef CONFIG_BOOTCOMMAND
11575238f23SWenyou Yang 
11675238f23SWenyou Yang #define FAT_ENV_DEVICE_AND_PART	"1"
11775238f23SWenyou Yang #define CONFIG_BOOTCOMMAND	"fatload mmc 1:1 0x21000000 at91-sama5d2_xplained.dtb; " \
11875238f23SWenyou Yang 				"fatload mmc 1:1 0x22000000 zImage; " \
11975238f23SWenyou Yang 				"bootz 0x22000000 - 0x21000000"
12075238f23SWenyou Yang #undef CONFIG_BOOTARGS
12175238f23SWenyou Yang #define CONFIG_BOOTARGS \
12275238f23SWenyou Yang 	"console=ttyS0,115200 earlyprintk root=/dev/mmcblk1p2 rw rootwait"
12375238f23SWenyou Yang 
12475238f23SWenyou Yang #endif
12575238f23SWenyou Yang 
126*37dadbcaSWenyou Yang /* SPL */
127*37dadbcaSWenyou Yang #define CONFIG_SPL_FRAMEWORK
128*37dadbcaSWenyou Yang #define CONFIG_SPL_TEXT_BASE		0x200000
129*37dadbcaSWenyou Yang #define CONFIG_SPL_MAX_SIZE		0x10000
130*37dadbcaSWenyou Yang #define CONFIG_SPL_BSS_START_ADDR	0x20000000
131*37dadbcaSWenyou Yang #define CONFIG_SPL_BSS_MAX_SIZE		0x80000
132*37dadbcaSWenyou Yang #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
133*37dadbcaSWenyou Yang #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
134*37dadbcaSWenyou Yang 
135*37dadbcaSWenyou Yang #define CONFIG_SPL_LIBCOMMON_SUPPORT
136*37dadbcaSWenyou Yang #define CONFIG_SPL_LIBGENERIC_SUPPORT
137*37dadbcaSWenyou Yang #define CONFIG_SPL_GPIO_SUPPORT
138*37dadbcaSWenyou Yang #define CONFIG_SPL_SERIAL_SUPPORT
139*37dadbcaSWenyou Yang 
140*37dadbcaSWenyou Yang #define CONFIG_SPL_BOARD_INIT
141*37dadbcaSWenyou Yang #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
142*37dadbcaSWenyou Yang 
143*37dadbcaSWenyou Yang #ifdef CONFIG_SYS_USE_MMC
144*37dadbcaSWenyou Yang #define CONFIG_SPL_LDSCRIPT		arch/arm/mach-at91/armv7/u-boot-spl.lds
145*37dadbcaSWenyou Yang #define CONFIG_SPL_MMC_SUPPORT
146*37dadbcaSWenyou Yang #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	0x400
147*37dadbcaSWenyou Yang #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200
148*37dadbcaSWenyou Yang #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	1
149*37dadbcaSWenyou Yang #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME		"u-boot.img"
150*37dadbcaSWenyou Yang #define CONFIG_SPL_FAT_SUPPORT
151*37dadbcaSWenyou Yang #define CONFIG_SPL_LIBDISK_SUPPORT
152*37dadbcaSWenyou Yang 
153*37dadbcaSWenyou Yang #elif CONFIG_SYS_USE_SERIALFLASH
154*37dadbcaSWenyou Yang #define CONFIG_SPL_SPI_SUPPORT
155*37dadbcaSWenyou Yang #define CONFIG_SPL_SPI_FLASH_SUPPORT
156*37dadbcaSWenyou Yang #define CONFIG_SPL_SPI_LOAD
157*37dadbcaSWenyou Yang #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x8000
158*37dadbcaSWenyou Yang 
159*37dadbcaSWenyou Yang #endif
160*37dadbcaSWenyou Yang 
16175238f23SWenyou Yang #endif
162