xref: /rk3399_rockchip-uboot/include/configs/omap3_logic.h (revision 1a4f6af8bfd44c8ae6e87a81ff125eed47042cc5)
186887f8eSPeter Barada /*
286887f8eSPeter Barada  * (C) Copyright 2011 Logic Product Development <www.logicpd.com>
386887f8eSPeter Barada  *	Peter Barada <peter.barada@logicpd.com>
486887f8eSPeter Barada  *
586887f8eSPeter Barada  * Configuration settings for the Logic OMAP35x/DM37x SOM LV/Torpedo
686887f8eSPeter Barada  * reference boards.
786887f8eSPeter Barada  *
81a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
986887f8eSPeter Barada  */
1086887f8eSPeter Barada 
1186887f8eSPeter Barada #ifndef __CONFIG_H
1286887f8eSPeter Barada #define __CONFIG_H
1386887f8eSPeter Barada 
1449c7303fSAdam Ford /* High Level Configuration Options */
1586887f8eSPeter Barada 
167b77b1f6SAdam Ford #define CONFIG_NR_DRAM_BANKS	2	/* CS1 may or may not be populated */
1749c7303fSAdam Ford 
187b77b1f6SAdam Ford #include <configs/ti_omap3_common.h>
1949c7303fSAdam Ford 
20*15fde737SAdam Ford #ifdef CONFIG_SPL_BUILD
21*15fde737SAdam Ford /*
22*15fde737SAdam Ford  * Disable MMC DM for SPL build and can be re-enabled after adding
23*15fde737SAdam Ford  * DM support in SPL
24*15fde737SAdam Ford  */
25*15fde737SAdam Ford #undef CONFIG_DM_MMC
26*15fde737SAdam Ford #undef OMAP_HSMMC_USE_GPIO
27*15fde737SAdam Ford 
28*15fde737SAdam Ford /* select serial console configuration for SPL */
29*15fde737SAdam Ford #undef CONFIG_CONS_INDEX
30*15fde737SAdam Ford #define CONFIG_CONS_INDEX              1
31*15fde737SAdam Ford #define CONFIG_SYS_NS16550_COM1                OMAP34XX_UART1
32*15fde737SAdam Ford #endif
33*15fde737SAdam Ford 
34*15fde737SAdam Ford 
35fa2f81b0STom Rini /*
36fa2f81b0STom Rini  * We are only ever GP parts and will utilize all of the "downloaded image"
37fa2f81b0STom Rini  * area in SRAM which starts at 0x40200000 and ends at 0x4020FFFF (64KB) in
38fa2f81b0STom Rini  * order to allow for BCH8 to fit in.
39fa2f81b0STom Rini  */
40f92dfc87SAdam Ford #undef CONFIG_SPL_TEXT_BASE
41*15fde737SAdam Ford #define CONFIG_SPL_FRAMEWORK
42f92dfc87SAdam Ford #define CONFIG_SPL_TEXT_BASE		0x40200000
43f92dfc87SAdam Ford 
4486887f8eSPeter Barada #define CONFIG_MISC_INIT_R		/* misc_init_r dumps the die id */
4586887f8eSPeter Barada #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */
4686887f8eSPeter Barada #define CONFIG_SETUP_MEMORY_TAGS
4786887f8eSPeter Barada #define CONFIG_INITRD_TAG
4886887f8eSPeter Barada #define CONFIG_REVISION_TAG
4986887f8eSPeter Barada 
5049c7303fSAdam Ford /* Hardware drivers */
5186887f8eSPeter Barada 
5249c7303fSAdam Ford #define CONFIG_USB_OMAP3
5349c7303fSAdam Ford 
5449c7303fSAdam Ford /* I2C */
5549c7303fSAdam Ford #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* EEPROM AT24C64      */
5686887f8eSPeter Barada 
57588e41d2SAdam Ford /* USB */
58588e41d2SAdam Ford #define CONFIG_USB_MUSB_OMAP2PLUS
59588e41d2SAdam Ford #define CONFIG_USB_MUSB_PIO_ONLY
60588e41d2SAdam Ford 
6149c7303fSAdam Ford /* TWL4030 */
62588e41d2SAdam Ford #define CONFIG_TWL4030_USB
637b77b1f6SAdam Ford 
6449c7303fSAdam Ford /* Board NAND Info. */
6549c7303fSAdam Ford #ifdef CONFIG_NAND
6686887f8eSPeter Barada #define CONFIG_SYS_NAND_ADDR		NAND_BASE /* physical address */
6786887f8eSPeter Barada 						  /* to access nand */
6886887f8eSPeter Barada #define CONFIG_SYS_MAX_NAND_DEVICE	1	  /* Max number of */
6986887f8eSPeter Barada 						  /* NAND devices */
7049c7303fSAdam Ford #define CONFIG_SYS_NAND_5_ADDR_CYCLE
7149c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_COUNT	64
7249c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_SIZE	2048
7349c7303fSAdam Ford #define CONFIG_SYS_NAND_OOBSIZE		64
7449c7303fSAdam Ford #define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024)
7549c7303fSAdam Ford #define CONFIG_SYS_NAND_BAD_BLOCK_POS	NAND_LARGE_BADBLOCK_POS
7649c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCPOS		{2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \
7749c7303fSAdam Ford 					 13, 14, 16, 17, 18, 19, 20, 21, 22, \
7849c7303fSAdam Ford 					 23, 24, 25, 26, 27, 28, 30, 31, 32, \
7949c7303fSAdam Ford 					 33, 34, 35, 36, 37, 38, 39, 40, 41, \
8049c7303fSAdam Ford 					 42, 44, 45, 46, 47, 48, 49, 50, 51, \
8149c7303fSAdam Ford 					 52, 53, 54, 55, 56}
827b77b1f6SAdam Ford 
8349c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCSIZE		512
8449c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCBYTES	13
8549c7303fSAdam Ford #define CONFIG_NAND_OMAP_ECCSCHEME	OMAP_ECC_BCH8_CODE_HW_DETECTION_SW
8649c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_OOBFREE	2
8749c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_ECCPOS	56
8849c7303fSAdam Ford #endif
8986887f8eSPeter Barada 
9086887f8eSPeter Barada /* Environment information */
9186887f8eSPeter Barada 
9286887f8eSPeter Barada #define CONFIG_PREBOOT \
9386887f8eSPeter Barada 	"setenv preboot;"						\
9449c7303fSAdam Ford 	"nand unlock;"							\
9586887f8eSPeter Barada 	"saveenv;"
9686887f8eSPeter Barada 
9786887f8eSPeter Barada #define CONFIG_EXTRA_ENV_SETTINGS \
98bb5854c4SAdam Ford 	DEFAULT_LINUX_BOOT_ENV \
9986887f8eSPeter Barada 	"mtdids=" MTDIDS_DEFAULT "\0"	\
10086887f8eSPeter Barada 	"mtdparts=" MTDPARTS_DEFAULT "\0" \
10186887f8eSPeter Barada 	"mmcdev=0\0" \
10249c7303fSAdam Ford 	"mmcroot=/dev/mmcblk0p2 rw\0" \
10349c7303fSAdam Ford 	"mmcrootfstype=ext4 rootwait\0" \
104a094c921SAdam Ford 	"nandroot=ubi0:rootfs rw ubi.mtd=fs noinitrd\0" \
105a094c921SAdam Ford 	"nandrootfstype=ubifs rootwait\0" \
10666968110SAndrew Bradford 	"autoboot=mmc dev ${mmcdev}; if mmc rescan; then " \
10786887f8eSPeter Barada 			"if run loadbootscript; then " \
10886887f8eSPeter Barada 				"run bootscript; " \
10986887f8eSPeter Barada 			"else " \
11086887f8eSPeter Barada 				"run defaultboot;" \
11186887f8eSPeter Barada 			"fi; " \
11286887f8eSPeter Barada 		"else run defaultboot; fi\0" \
11386887f8eSPeter Barada 	"defaultboot=run mmcramboot\0" \
11486887f8eSPeter Barada 	"consoledevice=ttyO0\0" \
11586887f8eSPeter Barada 	"setconsole=setenv console ${consoledevice},${baudrate}n8\0" \
11686887f8eSPeter Barada 	"dump_bootargs=echo 'Bootargs: '; echo $bootargs\0" \
11786887f8eSPeter Barada 	"rotation=0\0" \
11886887f8eSPeter Barada 	"vrfb_arg=if itest ${rotation} -ne 0; then " \
11986887f8eSPeter Barada 		"setenv bootargs ${bootargs} omapfb.vrfb=y " \
12086887f8eSPeter Barada 		"omapfb.rotate=${rotation}; " \
12186887f8eSPeter Barada 		"fi\0" \
12249c7303fSAdam Ford 	"optargs=ignore_loglevel early_printk no_console_suspend\0" \
123476e16e8SAdam Ford 	"common_bootargs=run setconsole; setenv bootargs " \
124476e16e8SAdam Ford 		"${bootargs} "\
125476e16e8SAdam Ford 		"console=${console} " \
126476e16e8SAdam Ford 		"${mtdparts} "\
12749c7303fSAdam Ford 		"${optargs}; " \
12886887f8eSPeter Barada 		"run vrfb_arg\0" \
129bb5854c4SAdam Ford 	"loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
13086887f8eSPeter Barada 	"bootscript=echo 'Running bootscript from mmc ...'; " \
13186887f8eSPeter Barada 		"source ${loadaddr}\0" \
132476e16e8SAdam Ford 	"loadimage=mmc rescan; " \
133476e16e8SAdam Ford 		"load mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \
13486887f8eSPeter Barada 	"ramdisksize=64000\0" \
13586887f8eSPeter Barada 	"ramdiskimage=rootfs.ext2.gz.uboot\0" \
13649c7303fSAdam Ford 	"loadramdisk=mmc rescan; " \
137bb5854c4SAdam Ford 		"load mmc ${mmcdev} ${rdaddr} ${ramdiskimage}\0" \
138476e16e8SAdam Ford 	"ramargs=setenv bootargs "\
13986887f8eSPeter Barada 		"root=/dev/ram rw ramdisk_size=${ramdisksize}\0" \
140476e16e8SAdam Ford 	"mmcargs=setenv bootargs "\
141476e16e8SAdam Ford 		"root=${mmcroot} rootfstype=${mmcrootfstype}\0" \
142476e16e8SAdam Ford 	"nandargs=setenv bootargs "\
143a094c921SAdam Ford 		"root=${nandroot} " \
144a094c921SAdam Ford 		"rootfstype=${nandrootfstype}\0" \
145476e16e8SAdam Ford 	"nfsargs=setenv serverip ${tftpserver}; " \
146476e16e8SAdam Ford 		"setenv bootargs root=/dev/nfs " \
147760d1afdSAdam Ford 		"nfsroot=${nfsrootpath} " \
148760d1afdSAdam Ford 		"ip=${ipaddr}:${tftpserver}:${gatewayip}:${netmask}::eth0:off\0" \
149760d1afdSAdam Ford 	"nfsrootpath=/opt/nfs-exports/omap\0" \
150760d1afdSAdam Ford 	"autoload=no\0" \
151bb5854c4SAdam Ford 	"loadfdt=mmc rescan; " \
152bb5854c4SAdam Ford 		"load mmc ${mmcdev} ${fdtaddr} ${fdtimage}\0" \
153476e16e8SAdam Ford 	"mmcbootcommon=echo Booting with DT from mmc${mmcdev} ...; " \
15449c7303fSAdam Ford 		"run mmcargs; " \
15549c7303fSAdam Ford 		"run common_bootargs; " \
15649c7303fSAdam Ford 		"run dump_bootargs; " \
157476e16e8SAdam Ford 		"run loadimage; " \
158476e16e8SAdam Ford 		"run loadfdt;\0 " \
159476e16e8SAdam Ford 	"mmcbootz=setenv bootfile zImage; " \
160476e16e8SAdam Ford 		"run mmcbootcommon; "\
16149c7303fSAdam Ford 		"bootz ${loadaddr} - ${fdtaddr}\0" \
162476e16e8SAdam Ford 	"mmcboot=setenv bootfile uImage; "\
163476e16e8SAdam Ford 		"run mmcbootcommon; "\
164476e16e8SAdam Ford 		"bootm ${loadaddr} - ${fdtaddr}\0" \
165476e16e8SAdam Ford 	"mmcrambootcommon=echo 'Booting kernel from MMC w/ramdisk...'; " \
16686887f8eSPeter Barada 		"run ramargs; " \
16786887f8eSPeter Barada 		"run common_bootargs; " \
16886887f8eSPeter Barada 		"run dump_bootargs; " \
169476e16e8SAdam Ford 		"run loadimage; " \
170bb5854c4SAdam Ford 		"run loadfdt; " \
171476e16e8SAdam Ford 		"run loadramdisk\0" \
172476e16e8SAdam Ford 	"mmcramboot=setenv bootfile uImage; " \
173476e16e8SAdam Ford 		"run mmcrambootcommon; " \
174476e16e8SAdam Ford 		"bootm ${loadaddr} ${rdaddr} ${fdtimage}\0" \
175476e16e8SAdam Ford 	"mmcrambootz=setenv bootfile zImage; " \
176476e16e8SAdam Ford 		"run mmcrambootcommon; " \
177476e16e8SAdam Ford 		"bootz ${loadaddr} ${rdaddr} ${fdtimage}\0" \
17849c7303fSAdam Ford 	"tftpboot=echo 'Booting kernel/ramdisk rootfs from tftp...'; " \
17949c7303fSAdam Ford 		"run ramargs; " \
18049c7303fSAdam Ford 		"run common_bootargs; " \
18149c7303fSAdam Ford 		"run dump_bootargs; " \
182760d1afdSAdam Ford 		"tftpboot ${loadaddr} ${zimage}; " \
183bb5854c4SAdam Ford 		"tftpboot ${rdaddr} ${ramdiskimage}; " \
184bb5854c4SAdam Ford 		"bootm ${loadaddr} ${rdaddr}\0" \
185760d1afdSAdam Ford 	"tftpbootz=echo 'Booting kernel NFS rootfs...'; " \
186760d1afdSAdam Ford 		"dhcp;" \
187760d1afdSAdam Ford 		"run nfsargs;" \
188760d1afdSAdam Ford 		"run common_bootargs;" \
189760d1afdSAdam Ford 		"run dump_bootargs;" \
190760d1afdSAdam Ford 		"tftpboot $loadaddr zImage;" \
191476e16e8SAdam Ford 		"bootz $loadaddr\0" \
192476e16e8SAdam Ford 	"nandbootcommon=echo 'Booting kernel from NAND...';" \
193476e16e8SAdam Ford 		"nand unlock;" \
194476e16e8SAdam Ford 		"run nandargs;" \
195476e16e8SAdam Ford 		"run common_bootargs;" \
196476e16e8SAdam Ford 		"run dump_bootargs;" \
197476e16e8SAdam Ford 		"nand read ${loadaddr} kernel;" \
198476e16e8SAdam Ford 		"nand read ${fdtaddr} spl-os;\0" \
199476e16e8SAdam Ford 	"nandbootz=run nandbootcommon; "\
200476e16e8SAdam Ford 		"bootz ${loadaddr} - ${fdtaddr}\0"\
201476e16e8SAdam Ford 	"nandboot=run nandbootcommon; "\
202476e16e8SAdam Ford 		"bootm ${loadaddr} - ${fdtaddr}\0"\
20386887f8eSPeter Barada 
20486887f8eSPeter Barada #define CONFIG_BOOTCOMMAND \
20586887f8eSPeter Barada 	"run autoboot"
20686887f8eSPeter Barada 
20749c7303fSAdam Ford /* Miscellaneous configurable options */
2087b77b1f6SAdam Ford 
20986887f8eSPeter Barada /* memtest works on */
21086887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_START	(OMAP34XX_SDRC_CS0)
21186887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_END		(OMAP34XX_SDRC_CS0 + \
21286887f8eSPeter Barada 					0x01F00000) /* 31MB */
21386887f8eSPeter Barada 
21449c7303fSAdam Ford /* FLASH and environment organization */
21586887f8eSPeter Barada 
21686887f8eSPeter Barada /* **** PISMO SUPPORT *** */
21786887f8eSPeter Barada #if defined(CONFIG_CMD_NAND)
218222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE		NAND_BASE
21986887f8eSPeter Barada #endif
22086887f8eSPeter Barada 
22186887f8eSPeter Barada /* Monitor at start of flash */
22286887f8eSPeter Barada #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
22386887f8eSPeter Barada 
22449c7303fSAdam Ford #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
22586887f8eSPeter Barada #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
22686887f8eSPeter Barada 
22786887f8eSPeter Barada #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
22849c7303fSAdam Ford #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
22949c7303fSAdam Ford #define CONFIG_ENV_ADDR			SMNAND_ENV_OFFSET
23086887f8eSPeter Barada 
23149c7303fSAdam Ford /* SMSC922x Ethernet */
23286887f8eSPeter Barada #if defined(CONFIG_CMD_NET)
23386887f8eSPeter Barada #define CONFIG_SMC911X
2341e1acc76SAdam Ford #define CONFIG_SMC911X_32_BIT
23586887f8eSPeter Barada #define CONFIG_SMC911X_BASE	0x08000000
23686887f8eSPeter Barada #endif /* (CONFIG_CMD_NET) */
23786887f8eSPeter Barada 
23849c7303fSAdam Ford /* Defines for SPL */
23949c7303fSAdam Ford 
24049c7303fSAdam Ford /* NAND: SPL falcon mode configs */
24149c7303fSAdam Ford #ifdef CONFIG_SPL_OS_BOOT
24249c7303fSAdam Ford #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
24349c7303fSAdam Ford #endif
24449c7303fSAdam Ford 
24586887f8eSPeter Barada #endif /* __CONFIG_H */
246