xref: /rk3399_rockchip-uboot/include/configs/dbau1x00.h (revision 8bde63eb3f79d68f693201528dafc8ae7aa087de)
15da627a4Swdenk /*
25da627a4Swdenk  * (C) Copyright 2003
35da627a4Swdenk  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
45da627a4Swdenk  *
55da627a4Swdenk  * See file CREDITS for list of people who contributed to this
65da627a4Swdenk  * project.
75da627a4Swdenk  *
85da627a4Swdenk  * This program is free software; you can redistribute it and/or
95da627a4Swdenk  * modify it under the terms of the GNU General Public License as
105da627a4Swdenk  * published by the Free Software Foundation; either version 2 of
115da627a4Swdenk  * the License, or (at your option) any later version.
125da627a4Swdenk  *
135da627a4Swdenk  * This program is distributed in the hope that it will be useful,
145da627a4Swdenk  * but WITHOUT ANY WARRANTY; without even the implied warranty of
155da627a4Swdenk  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
165da627a4Swdenk  * GNU General Public License for more details.
175da627a4Swdenk  *
185da627a4Swdenk  * You should have received a copy of the GNU General Public License
195da627a4Swdenk  * along with this program; if not, write to the Free Software
205da627a4Swdenk  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
215da627a4Swdenk  * MA 02111-1307 USA
225da627a4Swdenk  */
235da627a4Swdenk 
245da627a4Swdenk /*
255da627a4Swdenk  * This file contains the configuration parameters for the dbau1x00 board.
265da627a4Swdenk  */
275da627a4Swdenk 
285da627a4Swdenk #ifndef __CONFIG_H
295da627a4Swdenk #define __CONFIG_H
305da627a4Swdenk 
315da627a4Swdenk #define CONFIG_MIPS32		1  /* MIPS32 CPU core	*/
325da627a4Swdenk #define CONFIG_DBAU1X00		1
33*8bde63ebSShinya Kuribayashi #define CONFIG_SOC_AU1X00	1  /* alchemy series cpu */
345da627a4Swdenk 
35a2663ea4Swdenk #ifdef CONFIG_DBAU1000
365da627a4Swdenk /* Also known as Merlot */
37*8bde63ebSShinya Kuribayashi #define CONFIG_SOC_AU1000	1
38a2663ea4Swdenk #else
39a2663ea4Swdenk #ifdef CONFIG_DBAU1100
40*8bde63ebSShinya Kuribayashi #define CONFIG_SOC_AU1100	1
41a2663ea4Swdenk #else
42a2663ea4Swdenk #ifdef CONFIG_DBAU1500
43*8bde63ebSShinya Kuribayashi #define CONFIG_SOC_AU1500	1
44a2663ea4Swdenk #else
45ff36fd85Swdenk #ifdef CONFIG_DBAU1550
46ff36fd85Swdenk /* Cabernet */
47*8bde63ebSShinya Kuribayashi #define CONFIG_SOC_AU1550	1
48ff36fd85Swdenk #else
49a2663ea4Swdenk #error "No valid board set"
50a2663ea4Swdenk #endif
51a2663ea4Swdenk #endif
52a2663ea4Swdenk #endif
53ff36fd85Swdenk #endif
545da627a4Swdenk 
555da627a4Swdenk #define CONFIG_ETHADDR		DE:AD:BE:EF:01:01    /* Ethernet address */
565da627a4Swdenk 
575da627a4Swdenk #define CONFIG_BOOTDELAY	2	/* autoboot after 2 seconds	*/
585da627a4Swdenk 
595da627a4Swdenk #define CONFIG_BAUDRATE		115200
605da627a4Swdenk 
615da627a4Swdenk /* valid baudrates */
625da627a4Swdenk #define CFG_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 }
635da627a4Swdenk 
645da627a4Swdenk #define	CONFIG_TIMESTAMP		/* Print image info with timestamp */
655da627a4Swdenk #undef	CONFIG_BOOTARGS
665da627a4Swdenk 
675da627a4Swdenk #define	CONFIG_EXTRA_ENV_SETTINGS					\
68fe126d8bSWolfgang Denk 	"addmisc=setenv bootargs ${bootargs} "				\
69fe126d8bSWolfgang Denk 		"console=ttyS0,${baudrate} "				\
705da627a4Swdenk 		"panic=1\0"						\
715da627a4Swdenk 	"bootfile=/tftpboot/vmlinux.srec\0"				\
72fe126d8bSWolfgang Denk 	"load=tftp 80500000 ${u-boot}\0"				\
735da627a4Swdenk 	""
74ff36fd85Swdenk 
75ff36fd85Swdenk #ifdef CONFIG_DBAU1550
76ff36fd85Swdenk /* Boot from flash by default, revert to bootp */
77ff36fd85Swdenk #define CONFIG_BOOTCOMMAND	"bootm 0xbfc20000; bootp; bootm"
78ff36fd85Swdenk #else /* CONFIG_DBAU1550 */
79ad88297eSHeiko Schocher #define CONFIG_BOOTCOMMAND	"bootp;bootm"
80ff36fd85Swdenk #endif /* CONFIG_DBAU1550 */
81ff36fd85Swdenk 
82ab999ba1SJon Loeliger 
83ab999ba1SJon Loeliger /*
8480ff4f99SJon Loeliger  * BOOTP options
8580ff4f99SJon Loeliger  */
8680ff4f99SJon Loeliger #define CONFIG_BOOTP_BOOTFILESIZE
8780ff4f99SJon Loeliger #define CONFIG_BOOTP_BOOTPATH
8880ff4f99SJon Loeliger #define CONFIG_BOOTP_GATEWAY
8980ff4f99SJon Loeliger #define CONFIG_BOOTP_HOSTNAME
9080ff4f99SJon Loeliger 
9180ff4f99SJon Loeliger 
9280ff4f99SJon Loeliger /*
93ab999ba1SJon Loeliger  * Command line configuration.
94ab999ba1SJon Loeliger  */
95ab999ba1SJon Loeliger #include <config_cmd_default.h>
96ab999ba1SJon Loeliger 
97ab999ba1SJon Loeliger #undef CONFIG_CMD_BDI
98ab999ba1SJon Loeliger #undef CONFIG_CMD_BEDBUG
99ab999ba1SJon Loeliger #undef CONFIG_CMD_ELF
100ab999ba1SJon Loeliger #undef CONFIG_CMD_ENV
101ab999ba1SJon Loeliger #undef CONFIG_CMD_FAT
102ab999ba1SJon Loeliger #undef CONFIG_CMD_FPGA
103ab999ba1SJon Loeliger #undef CONFIG_CMD_MII
104ab999ba1SJon Loeliger #undef CONFIG_CMD_RUN
105ab999ba1SJon Loeliger 
106ab999ba1SJon Loeliger 
107ab999ba1SJon Loeliger #ifdef CONFIG_DBAU1550
108ab999ba1SJon Loeliger 
109ab999ba1SJon Loeliger #define CONFIG_CMD_FLASH
110ab999ba1SJon Loeliger #define CONFIG_CMD_LOADB
111ab999ba1SJon Loeliger #define CONFIG_CMD_NET
112ab999ba1SJon Loeliger 
113ab999ba1SJon Loeliger #undef CONFIG_CMD_I2C
114ab999ba1SJon Loeliger #undef CONFIG_CMD_IDE
115ab999ba1SJon Loeliger #undef CONFIG_CMD_NFS
116ab999ba1SJon Loeliger #undef CONFIG_CMD_PCMCIA
117ab999ba1SJon Loeliger 
118ab999ba1SJon Loeliger #else
119ab999ba1SJon Loeliger 
120ab999ba1SJon Loeliger #define CONFIG_CMD_IDE
121ab999ba1SJon Loeliger #define CONFIG_CMD_DHCP
122ab999ba1SJon Loeliger 
123ab999ba1SJon Loeliger #undef CONFIG_CMD_FLASH
124ab999ba1SJon Loeliger #undef CONFIG_CMD_LOADB
125ab999ba1SJon Loeliger #undef CONFIG_CMD_LOADS
126ab999ba1SJon Loeliger 
127ab999ba1SJon Loeliger #endif
128ab999ba1SJon Loeliger 
1295da627a4Swdenk 
1305da627a4Swdenk /*
1315da627a4Swdenk  * Miscellaneous configurable options
1325da627a4Swdenk  */
1335da627a4Swdenk #define	CFG_LONGHELP				/* undef to save memory      */
134ff36fd85Swdenk 
135ff36fd85Swdenk #define	CFG_PROMPT		"DbAu1xx0 # "	/* Monitor Command Prompt    */
136ff36fd85Swdenk 
1375da627a4Swdenk #define	CFG_CBSIZE		256		/* Console I/O Buffer Size   */
1385da627a4Swdenk #define	CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16)  /* Print Buffer Size */
1395da627a4Swdenk #define	CFG_MAXARGS		16		/* max number of command args*/
1405da627a4Swdenk 
1415da627a4Swdenk #define CFG_MALLOC_LEN		128*1024
1425da627a4Swdenk 
1435da627a4Swdenk #define CFG_BOOTPARAMS_LEN	128*1024
1445da627a4Swdenk 
145ff36fd85Swdenk #define CFG_MHZ			396
146ff36fd85Swdenk 
147ff36fd85Swdenk #if (CFG_MHZ % 12) != 0
148ff36fd85Swdenk #error "Invalid CPU frequency - must be multiple of 12!"
149ff36fd85Swdenk #endif
150ff36fd85Swdenk 
151a55d4817SShinya Kuribayashi #define CFG_MIPS_TIMER_FREQ	(CFG_MHZ * 1000000)
152a55d4817SShinya Kuribayashi 
153a55d4817SShinya Kuribayashi #define CFG_HZ			1000
1545da627a4Swdenk 
1555da627a4Swdenk #define CFG_SDRAM_BASE		0x80000000     /* Cached addr */
1565da627a4Swdenk 
1575da627a4Swdenk #define	CFG_LOAD_ADDR		0x81000000     /* default load address	*/
1585da627a4Swdenk 
1595da627a4Swdenk #define CFG_MEMTEST_START	0x80100000
1605da627a4Swdenk #define CFG_MEMTEST_END		0x80800000
1615da627a4Swdenk 
1625da627a4Swdenk /*-----------------------------------------------------------------------
1635da627a4Swdenk  * FLASH and environment organization
1645da627a4Swdenk  */
165ff36fd85Swdenk #ifdef CONFIG_DBAU1550
166ff36fd85Swdenk 
167ff36fd85Swdenk #define CFG_MAX_FLASH_BANKS	2	/* max number of memory banks */
168ff36fd85Swdenk #define CFG_MAX_FLASH_SECT	(512)	/* max number of sectors on one chip */
169ff36fd85Swdenk 
170ff36fd85Swdenk #define PHYS_FLASH_1		0xb8000000 /* Flash Bank #1 */
171ff36fd85Swdenk #define PHYS_FLASH_2		0xbc000000 /* Flash Bank #2 */
172ff36fd85Swdenk 
173ff36fd85Swdenk #else /* CONFIG_DBAU1550 */
174ff36fd85Swdenk 
1755da627a4Swdenk #define CFG_MAX_FLASH_BANKS	2	/* max number of memory banks */
1765da627a4Swdenk #define CFG_MAX_FLASH_SECT	(128)	/* max number of sectors on one chip */
1775da627a4Swdenk 
1785da627a4Swdenk #define PHYS_FLASH_1		0xbec00000 /* Flash Bank #1 */
1795da627a4Swdenk #define PHYS_FLASH_2		0xbfc00000 /* Flash Bank #2 */
1805da627a4Swdenk 
181ff36fd85Swdenk #endif /* CONFIG_DBAU1550 */
182ff36fd85Swdenk 
183ad88297eSHeiko Schocher #define CFG_FLASH_BANKS_LIST {PHYS_FLASH_1, PHYS_FLASH_2}
184ad88297eSHeiko Schocher 
185ff36fd85Swdenk #define CFG_FLASH_CFI           1
186ff36fd85Swdenk #define CFG_FLASH_CFI_DRIVER    1
187ff36fd85Swdenk 
1885da627a4Swdenk /* The following #defines are needed to get flash environment right */
1895da627a4Swdenk #define	CFG_MONITOR_BASE	TEXT_BASE
1905da627a4Swdenk #define	CFG_MONITOR_LEN		(192 << 10)
1915da627a4Swdenk 
1925da627a4Swdenk #define CFG_INIT_SP_OFFSET	0x400000
1935da627a4Swdenk 
1945da627a4Swdenk /* We boot from this flash, selected with dip switch */
1955da627a4Swdenk #define CFG_FLASH_BASE		PHYS_FLASH_2
1965da627a4Swdenk 
1975da627a4Swdenk /* timeout values are in ticks */
1985da627a4Swdenk #define CFG_FLASH_ERASE_TOUT	(2 * CFG_HZ) /* Timeout for Flash Erase */
1995da627a4Swdenk #define CFG_FLASH_WRITE_TOUT	(2 * CFG_HZ) /* Timeout for Flash Write */
2005da627a4Swdenk 
2015da627a4Swdenk #define	CFG_ENV_IS_NOWHERE	1
2025da627a4Swdenk 
2035da627a4Swdenk /* Address and size of Primary Environment Sector	*/
2045da627a4Swdenk #define CFG_ENV_ADDR		0xB0030000
2055da627a4Swdenk #define CFG_ENV_SIZE		0x10000
2065da627a4Swdenk 
2075da627a4Swdenk #define CONFIG_FLASH_16BIT
2085da627a4Swdenk 
2095da627a4Swdenk #define CONFIG_NR_DRAM_BANKS	2
2105da627a4Swdenk 
2115da627a4Swdenk #define CONFIG_NET_MULTI
2125da627a4Swdenk 
213ff36fd85Swdenk #ifdef CONFIG_DBAU1550
214ff36fd85Swdenk #define MEM_SIZE 192
215ff36fd85Swdenk #else
216ff36fd85Swdenk #define MEM_SIZE 64
217ff36fd85Swdenk #endif
218ff36fd85Swdenk 
2195da627a4Swdenk #define CONFIG_MEMSIZE_IN_BYTES
2205da627a4Swdenk 
221ff36fd85Swdenk #ifndef CONFIG_DBAU1550
2225da627a4Swdenk /*---ATA PCMCIA ------------------------------------*/
2235da627a4Swdenk #define CFG_PCMCIA_MEM_SIZE 0x4000000 /* Offset to slot 1 FIXME!!! */
2245da627a4Swdenk #define CFG_PCMCIA_MEM_ADDR 0x20000000
2255da627a4Swdenk #define CONFIG_PCMCIA_SLOT_A
2265da627a4Swdenk 
2275da627a4Swdenk #define CONFIG_ATAPI 1
2285da627a4Swdenk #define CONFIG_MAC_PARTITION 1
2295da627a4Swdenk 
2305da627a4Swdenk /* We run CF in "true ide" mode or a harddrive via pcmcia */
2315da627a4Swdenk #define CONFIG_IDE_PCMCIA 1
2325da627a4Swdenk 
2335da627a4Swdenk /* We only support one slot for now */
2345da627a4Swdenk #define CFG_IDE_MAXBUS		1	/* max. 1 IDE bus		*/
2355da627a4Swdenk #define CFG_IDE_MAXDEVICE	1	/* max. 1 drive per IDE bus	*/
2365da627a4Swdenk 
2375da627a4Swdenk #undef	CONFIG_IDE_LED			/* LED   for ide not supported	*/
2385da627a4Swdenk #undef	CONFIG_IDE_RESET		/* reset for ide not supported	*/
2395da627a4Swdenk 
2405da627a4Swdenk #define CFG_ATA_IDE0_OFFSET	0x0000
2415da627a4Swdenk 
2425da627a4Swdenk #define CFG_ATA_BASE_ADDR       CFG_PCMCIA_MEM_ADDR
2435da627a4Swdenk 
2445da627a4Swdenk /* Offset for data I/O			*/
2455da627a4Swdenk #define CFG_ATA_DATA_OFFSET     8
2465da627a4Swdenk 
2475da627a4Swdenk /* Offset for normal register accesses  */
2485da627a4Swdenk #define CFG_ATA_REG_OFFSET      0
2495da627a4Swdenk 
2505da627a4Swdenk /* Offset for alternate registers       */
2515da627a4Swdenk #define CFG_ATA_ALT_OFFSET      0x0100
252ff36fd85Swdenk #endif /* CONFIG_DBAU1550 */
2535da627a4Swdenk 
2545da627a4Swdenk /*-----------------------------------------------------------------------
2555da627a4Swdenk  * Cache Configuration
2565da627a4Swdenk  */
2575da627a4Swdenk #define CFG_DCACHE_SIZE		16384
2585da627a4Swdenk #define CFG_ICACHE_SIZE		16384
2595da627a4Swdenk #define CFG_CACHELINE_SIZE	32
2605da627a4Swdenk 
2615da627a4Swdenk #endif	/* __CONFIG_H */
262