xref: /rk3399_rockchip-uboot/include/configs/pcm051.h (revision 1a4f6af8bfd44c8ae6e87a81ff125eed47042cc5)
11c1b7c37SLars Poeschel /*
21c1b7c37SLars Poeschel  * pcm051.h
31c1b7c37SLars Poeschel  *
41c1b7c37SLars Poeschel  * Phytec phyCORE-AM335x (pcm051) boards information header
51c1b7c37SLars Poeschel  *
61c1b7c37SLars Poeschel  * Copyright (C) 2013 Lemonage Software GmbH
71c1b7c37SLars Poeschel  * Author Lars Poeschel <poeschel@lemonage.de>
81c1b7c37SLars Poeschel  *
91c1b7c37SLars Poeschel  * This program is free software; you can redistribute it and/or
101c1b7c37SLars Poeschel  * modify it under the terms of the GNU General Public License as
111c1b7c37SLars Poeschel  * published by the Free Software Foundation version 2.
121c1b7c37SLars Poeschel  *
131c1b7c37SLars Poeschel  * This program is distributed "as is" WITHOUT ANY WARRANTY of any
141c1b7c37SLars Poeschel  * kind, whether express or implied; without even the implied warranty
151c1b7c37SLars Poeschel  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
161c1b7c37SLars Poeschel  * GNU General Public License for more details.
171c1b7c37SLars Poeschel  */
181c1b7c37SLars Poeschel 
191c1b7c37SLars Poeschel #ifndef __CONFIG_PCM051_H
201c1b7c37SLars Poeschel #define __CONFIG_PCM051_H
211c1b7c37SLars Poeschel 
22b640b460SMatwey V. Kornilov #include <configs/ti_am335x_common.h>
231c1b7c37SLars Poeschel 
241c1b7c37SLars Poeschel #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
251c1b7c37SLars Poeschel #define CONFIG_MACH_TYPE		MACH_TYPE_PCM051
261c1b7c37SLars Poeschel 
271c1b7c37SLars Poeschel /* set to negative value for no autoboot */
281c1b7c37SLars Poeschel #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
291c1b7c37SLars Poeschel #define CONFIG_EXTRA_ENV_SETTINGS \
301c1b7c37SLars Poeschel 	"loadaddr=0x80007fc0\0" \
311c1b7c37SLars Poeschel 	"fdtaddr=0x80000000\0" \
321c1b7c37SLars Poeschel 	"rdaddr=0x81000000\0" \
331c1b7c37SLars Poeschel 	"bootfile=uImage\0" \
341c1b7c37SLars Poeschel 	"fdtfile=pcm051.dtb\0" \
351c1b7c37SLars Poeschel 	"console=ttyO0,115200n8\0" \
361c1b7c37SLars Poeschel 	"optargs=\0" \
371c1b7c37SLars Poeschel 	"mmcdev=0\0" \
381c1b7c37SLars Poeschel 	"mmcroot=/dev/mmcblk0p2 ro\0" \
391c1b7c37SLars Poeschel 	"mmcrootfstype=ext4 rootwait\0" \
401c1b7c37SLars Poeschel 	"ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \
411c1b7c37SLars Poeschel 	"ramrootfstype=ext2\0" \
421c1b7c37SLars Poeschel 	"mmcargs=setenv bootargs console=${console} " \
431c1b7c37SLars Poeschel 		"${optargs} " \
441c1b7c37SLars Poeschel 		"root=${mmcroot} " \
451c1b7c37SLars Poeschel 		"rootfstype=${mmcrootfstype}\0" \
461c1b7c37SLars Poeschel 	"bootenv=uEnv.txt\0" \
471ee9c6c0Smatwey.kornilov@gmail.com 	"loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
481ee9c6c0Smatwey.kornilov@gmail.com 	"bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
491ee9c6c0Smatwey.kornilov@gmail.com 		"source ${loadaddr}\0" \
501c1b7c37SLars Poeschel 	"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
511c1b7c37SLars Poeschel 	"importbootenv=echo Importing environment from mmc ...; " \
521c1b7c37SLars Poeschel 		"env import -t $loadaddr $filesize\0" \
531c1b7c37SLars Poeschel 	"ramargs=setenv bootargs console=${console} " \
541c1b7c37SLars Poeschel 		"${optargs} " \
551c1b7c37SLars Poeschel 		"root=${ramroot} " \
561c1b7c37SLars Poeschel 		"rootfstype=${ramrootfstype}\0" \
571c1b7c37SLars Poeschel 	"loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
581c1b7c37SLars Poeschel 	"loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \
591c1b7c37SLars Poeschel 	"loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} ${bootfile}\0" \
601c1b7c37SLars Poeschel 	"mmcboot=echo Booting from mmc ...; " \
611c1b7c37SLars Poeschel 		"run mmcargs; " \
621c1b7c37SLars Poeschel 		"bootm ${loadaddr}\0" \
631c1b7c37SLars Poeschel 	"ramboot=echo Booting from ramdisk ...; " \
641c1b7c37SLars Poeschel 		"run ramargs; " \
651c1b7c37SLars Poeschel 		"bootm ${loadaddr}\0" \
661c1b7c37SLars Poeschel 
671c1b7c37SLars Poeschel #define CONFIG_BOOTCOMMAND \
681c1b7c37SLars Poeschel 	"mmc dev ${mmcdev}; if mmc rescan; then " \
691c1b7c37SLars Poeschel 		"echo SD/MMC found on device ${mmcdev};" \
701ee9c6c0Smatwey.kornilov@gmail.com 		"if run loadbootscript; then " \
711ee9c6c0Smatwey.kornilov@gmail.com 			"run bootscript;" \
721ee9c6c0Smatwey.kornilov@gmail.com 		"else " \
731c1b7c37SLars Poeschel 			"if run loadbootenv; then " \
741c1b7c37SLars Poeschel 				"echo Loaded environment from ${bootenv};" \
751c1b7c37SLars Poeschel 				"run importbootenv;" \
761c1b7c37SLars Poeschel 			"fi;" \
771c1b7c37SLars Poeschel 			"if test -n $uenvcmd; then " \
781c1b7c37SLars Poeschel 				"echo Running uenvcmd ...;" \
791c1b7c37SLars Poeschel 				"run uenvcmd;" \
801c1b7c37SLars Poeschel 			"fi;" \
811c1b7c37SLars Poeschel 			"if run loaduimage; then " \
821c1b7c37SLars Poeschel 				"run mmcboot;" \
831c1b7c37SLars Poeschel 			"fi;" \
841c1b7c37SLars Poeschel 		"fi ;" \
851ee9c6c0Smatwey.kornilov@gmail.com 	"fi;" \
861c1b7c37SLars Poeschel 
871c1b7c37SLars Poeschel /* Clock Defines */
881c1b7c37SLars Poeschel #define V_OSCK				25000000  /* Clock output from T2 */
891c1b7c37SLars Poeschel #define V_SCLK				(V_OSCK)
901c1b7c37SLars Poeschel 
911c1b7c37SLars Poeschel /*
921c1b7c37SLars Poeschel  * memtest works on 8 MB in DRAM after skipping 32MB from
931c1b7c37SLars Poeschel  * start addr of ram disk
941c1b7c37SLars Poeschel  */
9573feefdcSTom Rini #define CONFIG_SYS_MEMTEST_START	(CONFIG_SYS_SDRAM_BASE + (64 << 20))
961c1b7c37SLars Poeschel #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START \
971c1b7c37SLars Poeschel 					+ (8 * 1024 * 1024))
981c1b7c37SLars Poeschel 
991c1b7c37SLars Poeschel #define CONFIG_SF_DEFAULT_SPEED		24000000
1001c1b7c37SLars Poeschel 
1011c1b7c37SLars Poeschel #define CONFIG_CONS_INDEX		1
1021c1b7c37SLars Poeschel /* NS16550 Configuration */
1031c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM1		0x44e09000	/* Base EVM has UART0 */
1041c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM2		0x48022000	/* UART1 */
1051c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM3		0x48024000	/* UART2 */
1061c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM4		0x481a6000	/* UART3 */
1071c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM5		0x481a8000	/* UART4 */
1081c1b7c37SLars Poeschel #define CONFIG_SYS_NS16550_COM6		0x481aa000	/* UART5 */
1091c1b7c37SLars Poeschel 
1101c1b7c37SLars Poeschel /* I2C Configuration */
1111c1b7c37SLars Poeschel #define CONFIG_ENV_EEPROM_IS_ON_I2C
1121c1b7c37SLars Poeschel #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */
1131c1b7c37SLars Poeschel #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
1141c1b7c37SLars Poeschel 
1151c1b7c37SLars Poeschel #define CONFIG_SYS_BAUDRATE_TABLE	{ 110, 300, 600, 1200, 2400, \
1161c1b7c37SLars Poeschel 4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
1171c1b7c37SLars Poeschel 
11847c6ea07SSRICHARAN R /* CPU */
1191c1b7c37SLars Poeschel 
120b640b460SMatwey V. Kornilov #ifdef CONFIG_SPI_BOOT
1211c1b7c37SLars Poeschel #define CONFIG_SPL_SPI_LOAD
1221c1b7c37SLars Poeschel #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000
1231c1b7c37SLars Poeschel #define CONFIG_SYS_SPI_U_BOOT_SIZE	0x40000
1241c1b7c37SLars Poeschel #endif
1251c1b7c37SLars Poeschel 
1261c1b7c37SLars Poeschel /*
1271c1b7c37SLars Poeschel  * USB configuration
1281c1b7c37SLars Poeschel  */
1291c1b7c37SLars Poeschel #define CONFIG_USB_MUSB_DSPS
130*95de1e2fSPaul Kocialkowski #define CONFIG_USB_MUSB_PIO_ONLY
1311c1b7c37SLars Poeschel #define CONFIG_AM335X_USB0
1321c1b7c37SLars Poeschel #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
1331c1b7c37SLars Poeschel #define CONFIG_AM335X_USB1
1341c1b7c37SLars Poeschel #define CONFIG_AM335X_USB1_MODE MUSB_HOST
1351c1b7c37SLars Poeschel 
1361c1b7c37SLars Poeschel #define CONFIG_PHY_SMSC
1371c1b7c37SLars Poeschel 
1381c1b7c37SLars Poeschel #endif	/* ! __CONFIG_PCM051_H */
139