1*75238f23SWenyou Yang /*
2*75238f23SWenyou Yang  * Configuration file for the SAMA5D2 Xplained Board.
3*75238f23SWenyou Yang  *
4*75238f23SWenyou Yang  * Copyright (C) 2015 Atmel Corporation
5*75238f23SWenyou Yang  *		      Wenyou Yang <wenyou.yang@atmel.com>
6*75238f23SWenyou Yang  *
7*75238f23SWenyou Yang  * SPDX-License-Identifier:	GPL-2.0+
8*75238f23SWenyou Yang  */
9*75238f23SWenyou Yang 
10*75238f23SWenyou Yang #ifndef __CONFIG_H
11*75238f23SWenyou Yang #define __CONFIG_H
12*75238f23SWenyou Yang 
13*75238f23SWenyou Yang /* No NOR flash, this definition should put before common header */
14*75238f23SWenyou Yang #define CONFIG_SYS_NO_FLASH
15*75238f23SWenyou Yang 
16*75238f23SWenyou Yang #include "at91-sama5_common.h"
17*75238f23SWenyou Yang 
18*75238f23SWenyou Yang /* serial console */
19*75238f23SWenyou Yang #define CONFIG_ATMEL_USART
20*75238f23SWenyou Yang #define CONFIG_USART_BASE		ATMEL_BASE_UART1
21*75238f23SWenyou Yang #define CONFIG_USART_ID			ATMEL_ID_UART1
22*75238f23SWenyou Yang 
23*75238f23SWenyou Yang /* SDRAM */
24*75238f23SWenyou Yang #define CONFIG_NR_DRAM_BANKS		1
25*75238f23SWenyou Yang #define CONFIG_SYS_SDRAM_BASE           ATMEL_BASE_DDRCS
26*75238f23SWenyou Yang #define CONFIG_SYS_SDRAM_SIZE		0x20000000
27*75238f23SWenyou Yang 
28*75238f23SWenyou Yang #define CONFIG_SYS_INIT_SP_ADDR \
29*75238f23SWenyou Yang 	(CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE)
30*75238f23SWenyou Yang 
31*75238f23SWenyou Yang #define CONFIG_SYS_LOAD_ADDR		0x22000000 /* load address */
32*75238f23SWenyou Yang 
33*75238f23SWenyou Yang #undef CONFIG_AT91_GPIO
34*75238f23SWenyou Yang #define CONFIG_ATMEL_PIO4
35*75238f23SWenyou Yang 
36*75238f23SWenyou Yang /* SerialFlash */
37*75238f23SWenyou Yang #ifdef CONFIG_CMD_SF
38*75238f23SWenyou Yang #define CONFIG_ATMEL_SPI
39*75238f23SWenyou Yang #define CONFIG_ATMEL_SPI0
40*75238f23SWenyou Yang #define CONFIG_SPI_FLASH_ATMEL
41*75238f23SWenyou Yang #define CONFIG_SF_DEFAULT_BUS		0
42*75238f23SWenyou Yang #define CONFIG_SF_DEFAULT_CS		0
43*75238f23SWenyou Yang #define CONFIG_SF_DEFAULT_SPEED		30000000
44*75238f23SWenyou Yang #endif
45*75238f23SWenyou Yang 
46*75238f23SWenyou Yang /* NAND flash */
47*75238f23SWenyou Yang #undef CONFIG_CMD_NAND
48*75238f23SWenyou Yang 
49*75238f23SWenyou Yang /* MMC */
50*75238f23SWenyou Yang #define CONFIG_CMD_MMC
51*75238f23SWenyou Yang 
52*75238f23SWenyou Yang #ifdef CONFIG_CMD_MMC
53*75238f23SWenyou Yang #define CONFIG_MMC
54*75238f23SWenyou Yang #define CONFIG_GENERIC_MMC
55*75238f23SWenyou Yang #define CONFIG_SDHCI
56*75238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI
57*75238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI0
58*75238f23SWenyou Yang #define CONFIG_ATMEL_SDHCI1
59*75238f23SWenyou Yang #define CONFIG_SUPPORT_EMMC_BOOT
60*75238f23SWenyou Yang #endif
61*75238f23SWenyou Yang 
62*75238f23SWenyou Yang /* USB */
63*75238f23SWenyou Yang #define CONFIG_CMD_USB
64*75238f23SWenyou Yang 
65*75238f23SWenyou Yang #ifdef CONFIG_CMD_USB
66*75238f23SWenyou Yang #define CONFIG_USB_EHCI
67*75238f23SWenyou Yang #define CONFIG_USB_EHCI_ATMEL
68*75238f23SWenyou Yang #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS	3
69*75238f23SWenyou Yang #define CONFIG_USB_STORAGE
70*75238f23SWenyou Yang #endif
71*75238f23SWenyou Yang 
72*75238f23SWenyou Yang /* USB device */
73*75238f23SWenyou Yang #define CONFIG_USB_GADGET
74*75238f23SWenyou Yang #define CONFIG_USB_GADGET_DUALSPEED
75*75238f23SWenyou Yang #define CONFIG_USB_GADGET_ATMEL_USBA
76*75238f23SWenyou Yang #define CONFIG_USB_ETHER
77*75238f23SWenyou Yang #define CONFIG_USB_ETH_RNDIS
78*75238f23SWenyou Yang #define CONFIG_USBNET_MANUFACTURER      "Atmel SAMA5D2 XPlained"
79*75238f23SWenyou Yang 
80*75238f23SWenyou Yang #if defined(CONFIG_CMD_USB) || defined(CONFIG_CMD_MMC)
81*75238f23SWenyou Yang #define CONFIG_CMD_FAT
82*75238f23SWenyou Yang #define CONFIG_DOS_PARTITION
83*75238f23SWenyou Yang #endif
84*75238f23SWenyou Yang 
85*75238f23SWenyou Yang /* Ethernet Hardware */
86*75238f23SWenyou Yang #define CONFIG_MACB
87*75238f23SWenyou Yang #define CONFIG_RMII
88*75238f23SWenyou Yang #define CONFIG_NET_RETRY_COUNT		20
89*75238f23SWenyou Yang #define CONFIG_MACB_SEARCH_PHY
90*75238f23SWenyou Yang 
91*75238f23SWenyou Yang /* LCD */
92*75238f23SWenyou Yang /* #define CONFIG_LCD */
93*75238f23SWenyou Yang 
94*75238f23SWenyou Yang #ifdef CONFIG_LCD
95*75238f23SWenyou Yang #define LCD_BPP				LCD_COLOR16
96*75238f23SWenyou Yang #define LCD_OUTPUT_BPP                  24
97*75238f23SWenyou Yang #define CONFIG_LCD_LOGO
98*75238f23SWenyou Yang #define CONFIG_LCD_INFO
99*75238f23SWenyou Yang #define CONFIG_LCD_INFO_BELOW_LOGO
100*75238f23SWenyou Yang #define CONFIG_SYS_WHITE_ON_BLACK
101*75238f23SWenyou Yang #define CONFIG_ATMEL_HLCD
102*75238f23SWenyou Yang #define CONFIG_ATMEL_LCD_RGB565
103*75238f23SWenyou Yang #define CONFIG_SYS_CONSOLE_IS_IN_ENV
104*75238f23SWenyou Yang #endif
105*75238f23SWenyou Yang 
106*75238f23SWenyou Yang #ifdef CONFIG_SYS_USE_MMC
107*75238f23SWenyou Yang 
108*75238f23SWenyou Yang /* bootstrap + u-boot + env in sd card */
109*75238f23SWenyou Yang #undef FAT_ENV_DEVICE_AND_PART
110*75238f23SWenyou Yang #undef CONFIG_BOOTCOMMAND
111*75238f23SWenyou Yang 
112*75238f23SWenyou Yang #define FAT_ENV_DEVICE_AND_PART	"1"
113*75238f23SWenyou Yang #define CONFIG_BOOTCOMMAND	"fatload mmc 1:1 0x21000000 at91-sama5d2_xplained.dtb; " \
114*75238f23SWenyou Yang 				"fatload mmc 1:1 0x22000000 zImage; " \
115*75238f23SWenyou Yang 				"bootz 0x22000000 - 0x21000000"
116*75238f23SWenyou Yang #undef CONFIG_BOOTARGS
117*75238f23SWenyou Yang #define CONFIG_BOOTARGS \
118*75238f23SWenyou Yang 	"console=ttyS0,115200 earlyprintk root=/dev/mmcblk1p2 rw rootwait"
119*75238f23SWenyou Yang 
120*75238f23SWenyou Yang #endif
121*75238f23SWenyou Yang 
122*75238f23SWenyou Yang #endif
123