xref: /OK3568_Linux_fs/u-boot/include/configs/usb_a9263.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * (C) Copyright 2007-2013
3*4882a593Smuzhiyun  * Stelian Pop <stelian.pop@leadtechdesign.com>
4*4882a593Smuzhiyun  * Lead Tech Design <www.leadtechdesign.com>
5*4882a593Smuzhiyun  * Thomas Petazzoni, Free Electrons, <thomas.petazzoni@free-electrons.com>
6*4882a593Smuzhiyun  * Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
7*4882a593Smuzhiyun  *
8*4882a593Smuzhiyun  * Settings for Calao USB-A9263 board
9*4882a593Smuzhiyun  *
10*4882a593Smuzhiyun  * U-Boot image has to be less than 200704 bytes, otherwise at91bootstrap
11*4882a593Smuzhiyun  * installed on board will not be able to load it properly.
12*4882a593Smuzhiyun  *
13*4882a593Smuzhiyun  * SPDX-License-Identifier:	GPL-2.0+
14*4882a593Smuzhiyun  */
15*4882a593Smuzhiyun 
16*4882a593Smuzhiyun #ifndef __CONFIG_H
17*4882a593Smuzhiyun #define __CONFIG_H
18*4882a593Smuzhiyun #include <asm/hardware.h>
19*4882a593Smuzhiyun 
20*4882a593Smuzhiyun /* ARM asynchronous clock */
21*4882a593Smuzhiyun #define CONFIG_SYS_AT91_MAIN_CLOCK	12000000	/* 12 MHz crystal */
22*4882a593Smuzhiyun #define CONFIG_SYS_AT91_SLOW_CLOCK	32768
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun #define CONFIG_MACH_TYPE		MACH_TYPE_USB_A9263
25*4882a593Smuzhiyun 
26*4882a593Smuzhiyun #define CONFIG_ARCH_CPU_INIT
27*4882a593Smuzhiyun 
28*4882a593Smuzhiyun #define CONFIG_CMDLINE_TAG	/* enable passing of ATAGs      */
29*4882a593Smuzhiyun #define CONFIG_SETUP_MEMORY_TAGS
30*4882a593Smuzhiyun #define CONFIG_INITRD_TAG
31*4882a593Smuzhiyun 
32*4882a593Smuzhiyun #define CONFIG_SKIP_LOWLEVEL_INIT
33*4882a593Smuzhiyun 
34*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE		0x23f00000
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun /*
37*4882a593Smuzhiyun  * Hardware drivers
38*4882a593Smuzhiyun  */
39*4882a593Smuzhiyun /*
40*4882a593Smuzhiyun  * BOOTP options
41*4882a593Smuzhiyun  */
42*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTFILESIZE
43*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTPATH
44*4882a593Smuzhiyun #define CONFIG_BOOTP_GATEWAY
45*4882a593Smuzhiyun #define CONFIG_BOOTP_HOSTNAME
46*4882a593Smuzhiyun 
47*4882a593Smuzhiyun /* SDRAM */
48*4882a593Smuzhiyun #define CONFIG_NR_DRAM_BANKS		1
49*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE		ATMEL_BASE_CS1
50*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_SIZE		0x04000000
51*4882a593Smuzhiyun 
52*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_ADDR \
53*4882a593Smuzhiyun 	(ATMEL_BASE_SRAM1 + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
54*4882a593Smuzhiyun 
55*4882a593Smuzhiyun /* NAND flash */
56*4882a593Smuzhiyun #ifdef CONFIG_CMD_NAND
57*4882a593Smuzhiyun #define CONFIG_SYS_MAX_NAND_DEVICE		1
58*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE			ATMEL_BASE_CS3
59*4882a593Smuzhiyun /* our ALE is AD21 */
60*4882a593Smuzhiyun #define CONFIG_SYS_NAND_MASK_ALE		(1 << 21)
61*4882a593Smuzhiyun /* our CLE is AD22 */
62*4882a593Smuzhiyun #define CONFIG_SYS_NAND_MASK_CLE		(1 << 22)
63*4882a593Smuzhiyun #define CONFIG_SYS_NAND_ENABLE_PIN		GPIO_PIN_PD(15)
64*4882a593Smuzhiyun #define CONFIG_SYS_NAND_READY_PIN		GPIO_PIN_PA(22)
65*4882a593Smuzhiyun #endif
66*4882a593Smuzhiyun 
67*4882a593Smuzhiyun #define MTDPARTS_DEFAULT \
68*4882a593Smuzhiyun 	"mtdparts=atmel_nand:16m(kernel)ro,120m(root1),-(root2)"
69*4882a593Smuzhiyun 
70*4882a593Smuzhiyun /* Ethernet */
71*4882a593Smuzhiyun #define CONFIG_MACB
72*4882a593Smuzhiyun #define CONFIG_RMII
73*4882a593Smuzhiyun #define CONFIG_NET_RETRY_COUNT			20
74*4882a593Smuzhiyun #define CONFIG_AT91_WANTS_COMMON_PHY
75*4882a593Smuzhiyun 
76*4882a593Smuzhiyun /* USB */
77*4882a593Smuzhiyun #ifdef CONFIG_CMD_USB
78*4882a593Smuzhiyun #define CONFIG_USB_ATMEL
79*4882a593Smuzhiyun #define CONFIG_USB_OHCI_NEW
80*4882a593Smuzhiyun #define CONFIG_SYS_USB_OHCI_CPU_INIT
81*4882a593Smuzhiyun #define CONFIG_SYS_USB_OHCI_REGS_BASE		0x00a00000
82*4882a593Smuzhiyun #define CONFIG_SYS_USB_OHCI_SLOT_NAME		"at91sam9263"
83*4882a593Smuzhiyun #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS	2
84*4882a593Smuzhiyun #endif
85*4882a593Smuzhiyun 
86*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR			0x22000000
87*4882a593Smuzhiyun 
88*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_START		CONFIG_SYS_SDRAM_BASE
89*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_END			0x23e00000
90*4882a593Smuzhiyun 
91*4882a593Smuzhiyun /* bootstrap + u-boot + env + linux in dataflash on CS0 */
92*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET	0x2000
93*4882a593Smuzhiyun #define CONFIG_ENV_SIZE		0x2000
94*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE	CONFIG_ENV_SIZE
95*4882a593Smuzhiyun #define CONFIG_ENV_SPI_MAX_HZ	15000000
96*4882a593Smuzhiyun #define CONFIG_BOOTCOMMAND	"nboot 21000000 0"
97*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \
98*4882a593Smuzhiyun 	"mtdparts=" MTDPARTS_DEFAULT "\0" \
99*4882a593Smuzhiyun 
100*4882a593Smuzhiyun #define CONFIG_CMDLINE_EDITING
101*4882a593Smuzhiyun #define CONFIG_AUTO_COMPLETE
102*4882a593Smuzhiyun #define CONFIG_SYS_LONGHELP
103*4882a593Smuzhiyun 
104*4882a593Smuzhiyun /*
105*4882a593Smuzhiyun  * Size of malloc() pool
106*4882a593Smuzhiyun  */
107*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN	ROUND(3 * CONFIG_ENV_SIZE + 128*1024, 0x1000)
108*4882a593Smuzhiyun 
109*4882a593Smuzhiyun #endif
110